Jim Grosbach
7b03fbd25c
Tidy up. Formatting.
...
llvm-svn: 144598
2011-11-15 01:05:12 +00:00
Nick Lewycky
5f2899cbfa
The optimizers figured out how to make this store 6.
...
llvm-svn: 144597
2011-11-15 00:19:16 +00:00
Nick Lewycky
b2489b7484
Fix linking for some users who already have tsan enabled code and are trying to
...
link it against llvm code, by making our definitions weak. "Some users."
llvm-svn: 144596
2011-11-15 00:14:04 +00:00
Ted Kremenek
ec9b50d961
Fix potential memory leak for clients of clang_getOverriddenCursors(). If the number of overriden cursors is 0, do not allocate an array of CXCursors. This fixes a memory leak in c-index-test, and clients who use this API in a similar way.
...
llvm-svn: 144595
2011-11-14 23:51:37 +00:00
Benjamin Kramer
02faa35477
A space in a diagnostic group is a bead idea.
...
llvm-svn: 144594
2011-11-14 23:44:04 +00:00
Jim Grosbach
a498af2b1d
ARM parsing datatype suffix variants for non-writeback VST1 instructions.
...
rdar://10435076
llvm-svn: 144593
2011-11-14 23:43:46 +00:00
Jim Grosbach
72838a0345
ARM parsing datatype suffix variants for non-writeback VLD1 instructions.
...
rdar://10435076
llvm-svn: 144592
2011-11-14 23:32:59 +00:00
Benjamin Kramer
116d8879e6
Print a typo correction hint for unknown warning flags.
...
$ clang -Wololo t.c
warning: unknown warning option '-Wololo'; did you mean '-Wall'? [-Wunknown-warning-option]
llvm-svn: 144591
2011-11-14 23:30:34 +00:00
Matt Beaumont-Gay
8e9aae5999
Don't track depfiles as result files which need to be cleaned up on failure.
...
This is a partial revert of r143846. While cleaning up after a crash is
probably a good idea, we were also deleting .d files if the compilation failed
due to invalid input, which is not the desired behavior. The test is XFAIL'd
until the cleanup code can be reworked to do the right thing.
llvm-svn: 144590
2011-11-14 23:24:52 +00:00
Jim Grosbach
750de7a399
Add explanatory comment.
...
llvm-svn: 144589
2011-11-14 23:21:09 +00:00
Jim Grosbach
9c2d9d597b
Split out the plain '.{8|16|32|64}' suffix handling.
...
Make it easier to deal with aliases for instructions that do require a suffix
but accept more specific variants of the same size.
llvm-svn: 144588
2011-11-14 23:20:14 +00:00
Jim Grosbach
3d6c0e0bb2
ARM parsing optional datatype suffix for VAND/VEOR/VORR instructions.
...
rdar://10435076
llvm-svn: 144587
2011-11-14 23:11:19 +00:00
Chad Rosier
057b6d3476
Supporting inline memmove isn't going to be worthwhile. The only way to avoid
...
violating a dependency is to emit all loads prior to stores. This would likely
cause a great deal of spillage offsetting any potential gains.
llvm-svn: 144585
2011-11-14 23:04:09 +00:00
Johnny Chen
8bb27b23aa
Add bench entries.
...
llvm-svn: 144584
2011-11-14 23:04:06 +00:00
Jim Grosbach
3e2c6f380c
ARM VLDR/VSTR instructions don't need a size suffix.
...
Canonicallize on the non-suffixed form, but continue to accept assembly that
has any correctly sized type suffix.
llvm-svn: 144583
2011-11-14 23:03:21 +00:00
Douglas Gregor
0201a4c2d3
When we're checking access in a dependent context, don't try to look
...
at the bases of an undefined class. Fixes <rdar://problem/10438657>.
llvm-svn: 144582
2011-11-14 23:00:43 +00:00
Greg Clayton
02947e04f6
Speed improvements for ULEB128 reading from James McIlree.
...
llvm-svn: 144581
2011-11-14 22:56:58 +00:00
Nick Lewycky
7013a19e8a
Refactor capture tracking (which already had a couple flags for whether returns
...
and stores capture) to permit the caller to see each capture point and decide
whether to continue looking.
Use this inside memdep to do an analysis that basicaa won't do. This lets us
solve another devirtualization case, fixing PR8908!
llvm-svn: 144580
2011-11-14 22:49:42 +00:00
Chad Rosier
4e88fbebde
Add newline to end of file. Thanks, Eli.
...
llvm-svn: 144579
2011-11-14 22:48:33 +00:00
Chad Rosier
ab7223e99a
Add support for inlining small memcpys.
...
rdar://10412592
llvm-svn: 144578
2011-11-14 22:46:17 +00:00
Argyrios Kyrtzidis
86acd72bd2
[libclang] Slight changes to the indexing API and bigger internal changes for it.
...
llvm-svn: 144577
2011-11-14 22:39:19 +00:00
Chad Rosier
45110fdf8d
Fix a performance regression from r144565. Positive offsets were being lowered
...
into registers, rather then encoded directly in the load/store.
llvm-svn: 144576
2011-11-14 22:34:48 +00:00
Jim Grosbach
7996b15724
ARM assembly parsing type suffix options for VLDR/VSTR.
...
rdar://10435076
llvm-svn: 144575
2011-11-14 22:28:39 +00:00
Nick Lewycky
e5dc7550a5
Fix Windows build, don't try to #include <pthread.h> when we know it's not
...
available.
llvm-svn: 144574
2011-11-14 22:10:23 +00:00
Douglas Gregor
4123a86fae
Use Sema::RequireCompleteType to check for the completeness of
...
Objective-C classes. This has two purposes: to consistently provide
"forward declaration here" notes when we hit an incomplete type, and
to give LLDB a chance to complete the type.
RequireCompleteType bits from Sean Callanan!
llvm-svn: 144573
2011-11-14 22:10:01 +00:00
Ted Kremenek
1fcdaa9c05
ARC: make assignment to 'self' within class methods illegal. Fixes <rdar://problem/10416568>.
...
llvm-svn: 144572
2011-11-14 21:59:25 +00:00
Ted Kremenek
8e7fbcc3e4
[static analyzer] Tweak RetainCountChecker's diagnostics to correctly indicate if a message was due to a property access. This can
...
potentially be refactored for other clients, and this is a regression from the refactoring of property acceses.
llvm-svn: 144571
2011-11-14 21:59:21 +00:00
Evan Cheng
f2fc508d4d
Avoid dereferencing off the beginning of lists.
...
llvm-svn: 144569
2011-11-14 21:11:15 +00:00
Evan Cheng
28ffb7e444
At -O0, multiple uses of a virtual registers in the same BB are being marked
...
"kill". This looks like a bug upstream. Since that's going to take some time
to understand, loosen the assertion and disable the optimization when
multiple kills are seen.
llvm-svn: 144568
2011-11-14 21:02:09 +00:00
Nick Lewycky
fe856110aa
Add support for tsan annotations (thread sanitizer, a valgrind-based tool).
...
These annotations are disabled entirely when either ENABLE_THREADS is off, or
building a release build. When enabled, they add calls to functions with no
statements to ManagedStatic's getters.
Use these annotations to inform tsan that the race used inside ManagedStatic
initialization is actually benign. Thanks to Kostya Serebryany for helping
write this patch!
llvm-svn: 144567
2011-11-14 20:50:16 +00:00
Evan Cheng
fb13d32b3f
Add a missing pattern for X86ISD::MOVLPD. rdar://10436044
...
llvm-svn: 144566
2011-11-14 20:35:52 +00:00
Chad Rosier
adfd200bcb
Add support for Thumb load/stores with negative offsets.
...
rdar://10412592
llvm-svn: 144565
2011-11-14 20:22:27 +00:00
Ted Kremenek
731607fab2
[analyzer;Regionstore] handle loads from StringLiteral elements for StringLiterals representing wide strings. Fixes PR 11294.
...
llvm-svn: 144563
2011-11-14 20:05:54 +00:00
Jim Ingham
c8b47586bb
Confirm should accept both "Y" and "y" in case somebody confuses the "default answer" indicator for a
...
directive to enter a capital letter.
llvm-svn: 144562
2011-11-14 20:02:01 +00:00
John McCall
16de4d20e0
In ARC, don't reclaim objects of Class type.
...
llvm-svn: 144561
2011-11-14 19:53:16 +00:00
Benjamin Kramer
319904cc7e
Unbreak Release builds.
...
llvm-svn: 144560
2011-11-14 19:51:48 +00:00
Evan Cheng
30f44ad785
Teach two-address pass to re-schedule two-address instructions (or the kill
...
instructions of the two-address operands) in order to avoid inserting copies.
This fixes the few regressions introduced when the two-address hack was
disabled (without regressing the improvements).
rdar://10422688
llvm-svn: 144559
2011-11-14 19:48:55 +00:00
Richard Trieu
5d1aff049e
Change the checks in the type aka printing. A confusing case where the string
...
of the first type is the same as the aka string of the second type, but both
types are different. Update the logic to print an aka for the first type to
show that they are different.
llvm-svn: 144558
2011-11-14 19:39:25 +00:00
Pete Cooper
890e02e854
Changed SSE4/AVX <2 x i64> extract and insert ops to be Custom lowered
...
Constant idx case is still done in tablegen but other cases are then expanded
Fixes <rdar://problem/10435460>
llvm-svn: 144557
2011-11-14 19:38:42 +00:00
Ted Kremenek
b39fcfaa19
[analyzer] teach AnalysisDeclContext::getSelfDecl() about blocks that capture the 'self' variable of the enclosing ObjC method decl. Fixes <rdar://problem/10380300>.
...
llvm-svn: 144556
2011-11-14 19:36:08 +00:00
Benjamin Kramer
42d098e1b4
Fold ConstantVector::isAllOnesValue into Constant::isAllOnesValue and simplify it.
...
llvm-svn: 144555
2011-11-14 19:12:20 +00:00
Akira Hatanaka
f93b3f46f8
32-to-64-bit extended load.
...
llvm-svn: 144554
2011-11-14 19:06:14 +00:00
Akira Hatanaka
0b8bc00424
AnalyzeCallOperands function for N32/64.
...
N32/64 places all variable arguments in integer registers (or on stack),
regardless of their types, but follows calling convention of non-vaarg function
when it handles fixed arguments.
llvm-svn: 144553
2011-11-14 19:02:54 +00:00
Akira Hatanaka
52359363f2
Modify LowerFormalArguments to correctly handle vaarg arguments for Mips64.
...
llvm-svn: 144552
2011-11-14 19:01:09 +00:00
Justin Holewinski
33a519021c
PTX: Let LLVM use loads/stores for all mem* intrinsics, instead of relying on custom implementations.
...
llvm-svn: 144551
2011-11-14 18:58:20 +00:00
Wesley Peck
1c29a83acc
Add release notes for the MicroBlaze backend.
...
llvm-svn: 144550
2011-11-14 18:56:41 +00:00
Akira Hatanaka
d673cfe027
Remove variable that keeps the size of area used to save byval or variable
...
argument registers on the callee's stack frame, along with functions that set
and get it.
It is not necessary to add the size of this area when computing stack size in
emitPrologue, since it has already been accounted for in
PEI::calculateFrameObjectOffsets.
llvm-svn: 144549
2011-11-14 18:56:20 +00:00
Eric Christopher
04832b9210
Fixup comment.
...
llvm-svn: 144548
2011-11-14 18:55:02 +00:00
Jakob Stoklund Olesen
7e6004a3c1
Fix early-clobber handling in shrinkToUses.
...
I broke this in r144515, it affected most ARM testers.
<rdar://problem/10441389>
llvm-svn: 144547
2011-11-14 18:45:38 +00:00
Johnny Chen
6b0a1e3662
Dependency file for dylib source was not being cleaned up.
...
llvm-svn: 144546
2011-11-14 18:37:49 +00:00