Nadav Rotem
d5aae980cb
In some cases, due to scheduling constraints we copy the EFLAGS.
...
The only way to read the eflags is using push and pop. If we don't
adjust the stack then we run over the first frame index. This is
not something that we want to do, so we have to make sure that
our machine function does not copy the flags. If it does then
we have to emit the prolog that adjusts the stack.
rdar://12896831
llvm-svn: 170961
2012-12-21 23:48:49 +00:00
Akira Hatanaka
6ac2fc4976
[mips] Refactor subword-swap, EXT/INS, load-effective-address and read-hardware
...
instructions.
llvm-svn: 170956
2012-12-21 23:21:32 +00:00
Akira Hatanaka
beea8a34c3
[mips] Refactor SYNC and multiply/divide instructions.
...
llvm-svn: 170955
2012-12-21 23:17:36 +00:00
Akira Hatanaka
31ddec5887
[mips] Refactor BAL instructions.
...
llvm-svn: 170954
2012-12-21 23:15:59 +00:00
Akira Hatanaka
d6b694f036
[mips] Fix encoding of BAL instruction. Also, fix assembler test case which
...
was not catching the error.
llvm-svn: 170953
2012-12-21 23:13:59 +00:00
Akira Hatanaka
a158042a56
[mips] Refactor jump, jump register, jump-and-link and nop instructions.
...
llvm-svn: 170952
2012-12-21 23:03:50 +00:00
Douglas Gregor
2d5a5613ce
Use a safe default width for template-diff'ing integral arguments, in
...
case we can't find an exact width to use. Fixes crash in
<rdar://problem/12456626>.
llvm-svn: 170951
2012-12-21 23:03:27 +00:00
Akira Hatanaka
e1826d7464
[mips] Refactor load/store left/right and load-link and store-conditional
...
instructions.
llvm-svn: 170950
2012-12-21 23:01:24 +00:00
Akira Hatanaka
d9bf8424e5
[mips] Refactor load/store instructions.
...
llvm-svn: 170948
2012-12-21 22:58:55 +00:00
Akira Hatanaka
b59b047fbe
[mips] Remove unnecessary isPseudo parameter.
...
llvm-svn: 170947
2012-12-21 22:57:26 +00:00
Fariborz Jahanian
9017ec3a62
Adding to FormatTest.cpp test for a very long ObjC method
...
declaration requiring formatting of wrap-arounds.
llvm-svn: 170946
2012-12-21 22:51:18 +00:00
Ted Kremenek
6487335f43
Tweak Sema::CheckLiteralKind() to also include block literals
...
This simplifies some diagnostic logic in checkUnsafeAssignLiteral(),
hopefully making it less error prone.
llvm-svn: 170945
2012-12-21 22:46:35 +00:00
Akira Hatanaka
e738efc95b
[mips] Refactor LUI instruction.
...
llvm-svn: 170944
2012-12-21 22:46:07 +00:00
Akira Hatanaka
895e1cb2aa
[mips] Refactor count leading zero or one instructions.
...
llvm-svn: 170942
2012-12-21 22:43:58 +00:00
Matt Beaumont-Gay
cab0f3131e
Insulate this test from the whims of the random number generator.
...
Our internal buildbot just failed because the tempfile happened to be named
'nodefaultlib-lcGA7k.o', which contains the substring '-lc'.
llvm-svn: 170941
2012-12-21 22:43:20 +00:00
Akira Hatanaka
4f4c4aa05e
[mips] Refactor sign-extension-in-register instructions.
...
llvm-svn: 170940
2012-12-21 22:41:52 +00:00
Akira Hatanaka
b14c6e4e5f
[mips] Refactor instructions which copy from and to HI/LO registers.
...
llvm-svn: 170939
2012-12-21 22:39:17 +00:00
Chad Rosier
8a67a65a4b
Add comments back that were accidentally removed in r170933.
...
llvm-svn: 170938
2012-12-21 22:38:37 +00:00
Akira Hatanaka
9e89195dce
[mips] Refactor logical NOR instructions.
...
llvm-svn: 170937
2012-12-21 22:35:47 +00:00
Akira Hatanaka
ac10697207
[mips] Move instruction definitions in MipsInstrInfo.td.
...
llvm-svn: 170936
2012-12-21 22:33:43 +00:00
Chad Rosier
35e18ad918
Fix a warning due to an extraneous comma.
...
llvm-svn: 170935
2012-12-21 22:33:20 +00:00
Sean Callanan
f466a6eddc
Added support for the modulus operator (%) to
...
the IR interpreter.
<rdar://problem/12921700>
llvm-svn: 170934
2012-12-21 22:27:55 +00:00
Chad Rosier
92f0dccbad
Remove unused arguments and rename to conform to coding standards.
...
llvm-svn: 170933
2012-12-21 22:24:43 +00:00
Jim Ingham
e2231ac783
Added an SBAPI to get the PythonPath (if the Host knows how to do that). And a -P option to the Driver
...
to print it out. Changed dotest.py to use that to find the PythonPath it should use given the lldb binary
it was told to run.
llvm-svn: 170932
2012-12-21 22:22:26 +00:00
Ted Kremenek
44c2a2a26e
Change checkUnsafeAssignLiteral() to use the new Sema::CheckLiteralKind().
...
Along the way, fix a bug in CheckLiteralKind(), previously in diagnoseObjCLiteralComparison, where we didn't ignore parentheses
in boxed expressions for purpose of classification.
In other words, both @42 and @(42) should be classified as numeric
literals.
llvm-svn: 170931
2012-12-21 21:59:39 +00:00
Ted Kremenek
01a33f82d2
Hoist logic for classifying Objective-C literals into Sema (proper) for use with other diagnostics.
...
No immediate (intended) functionality change.
llvm-svn: 170930
2012-12-21 21:59:36 +00:00
Richard Smith
a90d567af6
Switch FrontendOptions to using an initializer list rather than initializing
...
the values in the constructor. The constructor implementation is trivial
beyond the value initialisations. Patch by Saleem Abdulrasool!
llvm-svn: 170929
2012-12-21 21:52:01 +00:00
Fariborz Jahanian
7a16a02eec
Fixes couple of friend declaration -ast-print bug
...
found by running -ast-print on all-std-headers.cpp
which caused it to go into infinite loop. Now
-ast-print prints all declarations found in
all-std-headers.cpp.
llvm-svn: 170928
2012-12-21 21:43:05 +00:00
Sean Callanan
5deaa4c902
Made LLDB compile with LLVM top-of-tree again.
...
The results from Clang name lookups changed to
be ArrayRefs, so I had to change the way we
check for the presence of a result and the way
we iterate across results.
llvm-svn: 170927
2012-12-21 21:34:42 +00:00
Sean Callanan
bab7cc405d
Fixed a bug where we could accept the wrong
...
slice of a fat dSYM in certain cases.
<rdar://problem/12921206>
llvm-svn: 170926
2012-12-21 21:32:25 +00:00
Chad Rosier
6c0da1154a
Indent.
...
llvm-svn: 170925
2012-12-21 21:27:13 +00:00
Chad Rosier
eea9ca7e39
Remove unnecessary checks.
...
llvm-svn: 170924
2012-12-21 21:22:20 +00:00
Tom Stellard
09ef8425e9
R600: Coding style - remove empty spaces from the beginning of functions
...
No functionality change.
llvm-svn: 170923
2012-12-21 20:12:02 +00:00
Tom Stellard
41398026e7
R600: Fix MAX_UINT definition
...
Patch by: Vadim Girlin
Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
llvm-svn: 170922
2012-12-21 20:12:01 +00:00
Tom Stellard
4fa7ac29f1
R600: Add SHADOWCUBE to TEX_SHADOW pattern
...
Patch by: Vadim Girlin
Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
llvm-svn: 170921
2012-12-21 20:11:59 +00:00
Ted Kremenek
b6439e6bfe
Use descriptive enum instead of raw integers for checkUnsafeAssignLiteral().
...
llvm-svn: 170920
2012-12-21 19:45:33 +00:00
Ted Kremenek
c1f014afc8
Sink call to checkUnsafeAssignLiteral() into checkUnsafeAssignObject().
...
llvm-svn: 170919
2012-12-21 19:45:30 +00:00
Chad Rosier
6af2d2e4bb
Fix indent.
...
llvm-svn: 170918
2012-12-21 19:43:33 +00:00
Benjamin Kramer
5521b94b07
Cleanup compiler warnings on discarding type qualifiers in casts. Switch to C++ style casts.
...
Patch by Saleem Abdulrasool!
Differential Revision: http://llvm-reviews.chandlerc.com/D204
llvm-svn: 170917
2012-12-21 19:09:53 +00:00
Jakob Stoklund Olesen
0edb164723
Add a missing assertion, the null register has no register units.
...
llvm-svn: 170916
2012-12-21 18:38:09 +00:00
Jordan Rose
7b5bfc795a
[analyzer] Don't perform an expensive assertion in release builds.
...
Unfortunately, we don't seem to have a standard way to do this. I'm using
the __OPTIMIZE__ GNU extension that Clang also defines, but that doesn't
help MSVC. I suppose we could remove the check entirely, but it's useful
for developing new constraint managers.
llvm-svn: 170915
2012-12-21 18:26:48 +00:00
Nico Weber
8f83ee46ba
format: Handle #import as include directive too.
...
llvm-svn: 170914
2012-12-21 18:21:56 +00:00
Benjamin Kramer
b4688f84bd
try to unbreak ppc buildbots.
...
llvm-svn: 170913
2012-12-21 18:11:45 +00:00
Quentin Colombet
9b14ebc355
Add a testcase for ARM cortex-r5 subtarget
...
llvm-svn: 170912
2012-12-21 18:00:32 +00:00
Benjamin Kramer
d0eb39232c
Teach sort_includes.py to drop duplicated includes.
...
llvm-svn: 170911
2012-12-21 18:00:08 +00:00
Daniel Jasper
050948a5a5
clang-format: No spaces around directory specifiers
...
This fixes PR14683. We used to format like this:
#include <a / b>
And this patch changes this to:
#include <a/b>
llvm-svn: 170910
2012-12-21 17:58:39 +00:00
Quentin Colombet
f5a37a3b71
Add ARM cortex-r5 subtarget as available mcpu
...
llvm-svn: 170909
2012-12-21 17:57:47 +00:00
Benjamin Kramer
82d1c371e2
X86: Match pmin/pmax as a target specific dag combine. This occurs during vectorization.
...
Part of PR14667.
llvm-svn: 170908
2012-12-21 17:46:58 +00:00
Anna Zaks
4127750ed8
[analyzer] Fix typos.
...
llvm-svn: 170907
2012-12-21 17:27:04 +00:00
Anna Zaks
1ee76c1bae
[analyzer] Re-apply r170826 and make the dumping of the GallGraph
...
deterministic.
Commit message for r170826:
[analyzer] Traverse the Call Graph in topological order.
Modify the call graph by removing the parentless nodes. Instead all
nodes are children of root to ensure they are all reachable. Remove the
tracking of nodes that are "top level" or global. This information is
not used and can be obtained from the Decls stored inside
CallGraphNodes.
Instead of existing ordering hacks, analyze the functions in topological
order over the Call Graph.
Together with the addition of devirtualizable ObjC message sends and
blocks to the call graph, this gives around 6% performance improvement
on several large ObjC benchmarks.
llvm-svn: 170906
2012-12-21 17:27:01 +00:00