Owen Anderson
523004145e
Be stricter in enforcing IT instruction predicate values, so that we don't end up trying to print out an illegal predicate.
...
llvm-svn: 138443
2011-08-24 17:21:43 +00:00
Enrico Granata
45403f31f1
Documentation edits: correcting typos, adding information and general tweaks for readability
...
llvm-svn: 138442
2011-08-24 17:12:47 +00:00
Owen Anderson
16fd0d96f2
Port over more encoding tests to decoding tests.
...
llvm-svn: 138441
2011-08-24 17:08:34 +00:00
Jim Grosbach
dee9e8a37c
Tidy up. Trailing whitespace.
...
llvm-svn: 138437
2011-08-24 16:44:17 +00:00
Axel Naumann
744f121e5b
Reset FirstID (first diagnostic's file ID) to allow for invocations of the VerifyDiagnosticsClient on several input files.
...
llvm-svn: 138434
2011-08-24 13:36:19 +00:00
Richard Osborne
6e3c83eb1c
Add Uses=[SP] to call instructions. This fixes a miscompilation with a
...
variable sized alloca.
llvm-svn: 138433
2011-08-24 13:32:43 +00:00
Jordy Rose
95589f13ff
[analyzer] Fix a Heisenbug concerning object lifetimes with a hack. Hopefully a better fix coming soon. See comment for more details.
...
llvm-svn: 138432
2011-08-24 09:27:24 +00:00
Jordy Rose
58428b914d
[analyzer] Reapply 138390 "Clean up unused bits of CFRefCount", reverted in 138405. Ended up unrelated to any problems.
...
llvm-svn: 138431
2011-08-24 09:22:31 +00:00
Jordy Rose
14de7c5a88
[analyzer] Fix potential crasher with RAII. No functionality change. (No test because this particular circumstance requires an impossible series of events, but this is future-proofing.)
...
llvm-svn: 138430
2011-08-24 09:02:37 +00:00
Tobias Grosser
3df9c76d5c
RegisterPasses: Rework comments slightly
...
llvm-svn: 138428
2011-08-24 07:33:05 +00:00
Craig Topper
de92622aa5
Break 256-bit vector int add/sub/mul into two 128-bit operations to avoid costly scalarization. Fixes PR10711.
...
llvm-svn: 138427
2011-08-24 06:14:18 +00:00
Jordy Rose
7a53498f20
[analyzer] Reapply 138382 and 138388 (reverted in 138419 and 138420). The issue seems to have been with the uninitialized variable fixed in 138424; a fix for another Heisencrasher coming soon.
...
llvm-svn: 138426
2011-08-24 05:47:39 +00:00
Enrico Granata
c5df00f0b9
Documentation on dynamic types (WIP)
...
llvm-svn: 138425
2011-08-24 04:53:31 +00:00
Jordy Rose
03a8f9e578
[analyzer] Correctly initialize a variable and hopefully fix crashes.
...
llvm-svn: 138424
2011-08-24 04:48:19 +00:00
Enrico Granata
83cfc9abf8
Minor documentation changes (WIP)
...
llvm-svn: 138423
2011-08-24 01:49:09 +00:00
Bruno Cardoso Lopes
fbb8b84f5f
Add testcase for r138411
...
llvm-svn: 138422
2011-08-24 01:35:04 +00:00
Enrico Granata
64997d6c0e
More documentation changes (WIP)
...
llvm-svn: 138421
2011-08-24 01:32:46 +00:00
Eric Christopher
aa8b6a5cf4
Revert "[analyzer] Cleanup: Move temporary declarations of CFRefCount variables closer to their uses. No functionality change."
...
This reverts commit d02b4af7bd6ca4a743c7074d64e205d718aa221d.
llvm-svn: 138420
2011-08-24 00:39:51 +00:00
Eric Christopher
1825e7a260
Revert "[analyzer] Make CFRefBug and CFRefReportVisitor not dependent on CFRefCount. Unfortunately, CFRefReport still is. No functionality change."
...
This reverts commit e3fb7e428b7ba0d5d902dfe3f165d70e09b03a15.
llvm-svn: 138419
2011-08-24 00:39:48 +00:00
Eric Christopher
b58b3e879d
Make constant aggregate constant initializers private linkage.
...
After talking with John making this the case for all of these is
the right way to go.
Fixes rdar://9804564 and PR10414
llvm-svn: 138418
2011-08-24 00:33:55 +00:00
Anna Zaks
0897a23517
[analyzer] MacOSKeychainAPIChecker: Add reasoning about functions which MIGHT deallocate the memory region allocated with SecKeychain APIs. Specifically, when the buffer is passed to CFStringCreateWithBytesNoCopy along with a custom deallocator, which might potentially correctly release the memory.
...
llvm-svn: 138417
2011-08-24 00:06:27 +00:00
Bill Wendling
f4ee0c0db2
Add the sentinal "no handle" value to the ResumeInst.
...
A value of -1 at a call site tells the personality function that this call isn't
handled by the current function. Since the ResumeInsts are converted to calls to
_Unwind_SjLj_Resume, add a (volatile) store of -1 to its 'call site'.
llvm-svn: 138416
2011-08-24 00:00:23 +00:00
Anna Zaks
f9e9c4e9bc
[analyzer] MacOSKeychainAPIChecker: Retrieve the memory region which we are tracking even when it's no longer a SymbolicRegion, for example, when it is cast to char*.
...
llvm-svn: 138415
2011-08-23 23:56:12 +00:00
Anna Zaks
bb167011e3
Move creation of the deallocation mismatch report into a separate function for future reuse.
...
llvm-svn: 138414
2011-08-23 23:47:36 +00:00
Eric Christopher
d28d107099
Whitespace and 80-col cleanup.
...
llvm-svn: 138413
2011-08-23 23:44:09 +00:00
Fariborz Jahanian
73952fc263
objc - fix up the builtin type for objc_assign_ivar.
...
// rdar://9362887.
llvm-svn: 138412
2011-08-23 23:33:09 +00:00
Bruno Cardoso Lopes
7a98a7e681
Fix _mm256_shuffle_ps mask! Example, for mask=203, Instead of:
...
<i32 3, i32 2, i32 8, i32 11, i32 3, i32 6, i32 12, i32 15>
generate:
<i32 3, i32 2, i32 8, i32 11, i32 7, i32 6, i32 12, i32 15>
llvm-svn: 138411
2011-08-23 23:29:45 +00:00
Ted Kremenek
bd91371381
Start reworking -Wunreachable-code. The original analysis had serious flaws with how it
...
handled SCC's of dead code, or simply having false negatives by overly suppressing warnings.
WIP.
llvm-svn: 138410
2011-08-23 23:05:11 +00:00
Ted Kremenek
6b9964d237
CFG: record set of C++ 'try' dispatch blocks, which could be of interest to various analyses (e.g., reachability).
...
llvm-svn: 138409
2011-08-23 23:05:07 +00:00
Ted Kremenek
adfb445466
Constify the result of CFGStmt::getStmt().
...
llvm-svn: 138408
2011-08-23 23:05:04 +00:00
Ted Kremenek
4183a62a53
Add 'const' version of CompoundStmt::children().
...
llvm-svn: 138407
2011-08-23 23:05:01 +00:00
Bill Wendling
2d4f0bea57
Don't replace *all* uses with the new stuff.
...
This is not necessarily the first or dominating use of the EH values. The IR
breaks if it's not. So replace the specific value in the instruction with the
new value.
llvm-svn: 138406
2011-08-23 22:55:03 +00:00
Eric Christopher
fba570c9d8
Revert "[analyzer] Clean up unused bits of CFRefCount."
...
This reverts commit 6886a92640f5bffc972f67c0a1f302d6c6e7c322.
llvm-svn: 138405
2011-08-23 22:38:04 +00:00
Eric Christopher
31ab13047d
Whitespace.
...
llvm-svn: 138404
2011-08-23 22:38:00 +00:00
Johnny Chen
6d1010cb5c
Patch by Filipe to build lldb usng 'make'!
...
llvm-svn: 138403
2011-08-23 22:36:23 +00:00
Tobias Grosser
792509b0db
Register Polly passes automatically
...
Polly adds, after it is loaded into opt or clang, its passes to the default set
of -O3 passes. This means optimizing a program with clang and Polly becomes as
simple as executing.
clang -Xclang -load -Xclang lib/LLVMPolly.so -O3 program.c
The same should work for dragonegg powered gfortran, g++, ... or any other tool
that uses the PassManagerBuilder.
Warning: Even though using Polly became with this commit extremly easy, Polly
is still Pre-Alpha Quality. This means in most cases it will rather
destroy the world than doing anything positive. ;-)
llvm-svn: 138402
2011-08-23 22:35:38 +00:00
Tobias Grosser
a954242c88
ScheduleOptimizer: Fix another memory leak
...
llvm-svn: 138401
2011-08-23 22:35:23 +00:00
Tobias Grosser
83f5c43ede
Add some forgotten passes to LinkAllPasses
...
llvm-svn: 138400
2011-08-23 22:35:08 +00:00
Johnny Chen
04adb62569
Uniquefy the various data-formatter test class names so that:
...
./dotest.py -v -f DataFormatterTestCase.test_with_dsym_and_run_command
will not end up running 14 tests.
llvm-svn: 138399
2011-08-23 22:32:45 +00:00
Eli Friedman
3fa64df543
Refactor and fix checking for initialization of flexible array members. The old version had the checks scattered across the code, missed some checks, and had a couple nasty bugs in existing checks.
...
Fixes PR10648 and another similar accepts-invalid bug.
llvm-svn: 138398
2011-08-23 22:24:57 +00:00
Bill Wendling
01a325a40e
Look at the end of the entry block for an invoke.
...
The invoke could be at the end of the entry block. If it's the only one, then we
won't process all of the landingpad instructions correctly. This code is
currently ugly, but should be made much nicer once the new EH switch is thrown.
llvm-svn: 138397
2011-08-23 22:20:16 +00:00
Johnny Chen
4aa4f5dc0a
Skip these two cases temporarily while investigating the crash on OSX Lion with clang as the compiler.
...
llvm-svn: 138393
2011-08-23 22:10:17 +00:00
Bruno Cardoso Lopes
9e9f2ce32d
Fix a nasty bug where a v4i64 was being wrong emitted with 32-bit
...
permutations. Also tidy up some patterns and make them close to their
instruction definition!
llvm-svn: 138392
2011-08-23 22:06:37 +00:00
Johnny Chen
597cbbbd45
Make clang the default compiler for building the test programs.
...
llvm-svn: 138391
2011-08-23 21:54:10 +00:00
Jordy Rose
5aa9b1dd3f
[analyzer] Clean up unused bits of CFRefCount.
...
llvm-svn: 138390
2011-08-23 21:51:36 +00:00
Eric Christopher
c3fc262423
Right now this requires asserts.
...
llvm-svn: 138389
2011-08-23 21:47:58 +00:00
Jordy Rose
908426aae4
[analyzer] Make CFRefBug and CFRefReportVisitor not dependent on CFRefCount. Unfortunately, CFRefReport still is. No functionality change.
...
llvm-svn: 138388
2011-08-23 21:47:17 +00:00
Bill Wendling
4eb0433672
A landingpad instruction is neither folded nor dead.
...
llvm-svn: 138387
2011-08-23 21:33:05 +00:00
Jim Grosbach
51b554247d
Move ARM frame-unwinding EHABI handling a touch earlier.
...
It should go before AsmPrinter MC pseudo expansion since it's based on
MachineInstr, not MCInst. Otherwise any frame related pseudo instructions
may be missed.
llvm-svn: 138386
2011-08-23 21:32:34 +00:00
Enrico Granata
129c3db6a7
Fixing commas in enums (build breaker on GCC) as reported by Filipe Cabecinhas
...
llvm-svn: 138385
2011-08-23 21:29:50 +00:00