llvm-mirror/test/Transforms
Nick Lewycky a0b2f7ca1d 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
..
ADCE Try to eliminate the use of the 'unwind' instruction. 2011-09-02 22:41:11 +00:00
ArgumentPromotion fix PR8932, a case where arg promotion could infinitely promote. 2011-01-16 08:09:24 +00:00
BlockPlacement Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
BranchFolding Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
CodeExtractor Update this test to the new EH model. 2011-09-20 22:29:43 +00:00
CodeGenPrepare Roll r127459 back in: 2011-03-11 21:52:04 +00:00
ConstantMerge Teach the ConstantMerge pass about alignment. Fixes PR10514! 2011-07-27 19:47:34 +00:00
ConstProp Land the long talked about "type system rewrite" patch. This 2011-07-09 17:41:24 +00:00
CorrelatedValuePropagation Test for lazy value info's ability to prove the absense of NULLs in pointers. 2011-01-16 21:57:20 +00:00
DeadArgElim Update some tests to the new EH scheme. 2011-09-01 00:58:03 +00:00
DeadStoreElimination DeadStoreElimination can now trim the size of a store if the end of the store is dead. 2011-11-09 23:07:35 +00:00
EarlyCSE Move "atomic" and "volatile" designations on instructions after the opcode 2011-08-12 22:50:01 +00:00
FunctionAttrs Update some tests to the new EH scheme. 2011-09-01 00:58:03 +00:00
GlobalDCE Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
GlobalOpt Refactor code from inlining and globalopt that checks whether a function definition is unused, and enhance it so it can tell that functions which are only used by a blockaddress are in fact dead. This probably doesn't happen much on most code, but the Linux kernel's _THIS_IP_ can trigger this issue with blockaddress. (GlobalDCE can also handle the given tescase, but we only run that at -O3.) Found while looking at PR11180. 2011-10-20 05:23:42 +00:00
GVN Refactor capture tracking (which already had a couple flags for whether returns 2011-11-14 22:49:42 +00:00
IndVarSimplify Rewrite LinearFunctionTestReplace to handle pointer-type IVs. 2011-11-02 17:19:57 +00:00
Inline Remap blockaddress correctly when inlining a function. Fixes PR10162. 2011-10-21 20:45:19 +00:00
InstCombine Convert to the new EH model. 2011-11-08 00:23:01 +00:00
InstSimplify Fix code to match comment. Fixes PR11340, a regression from r143209. 2011-11-08 21:08:02 +00:00
Internalize Add test for r127138. 2011-03-07 21:28:14 +00:00
IPConstantProp Update some tests to the new EH scheme. 2011-09-01 00:58:03 +00:00
JumpThreading Move "atomic" and "volatile" designations on instructions after the opcode 2011-08-12 22:50:01 +00:00
LCSSA Try to eliminate the use of the 'unwind' instruction. 2011-09-02 22:41:11 +00:00
LICM LICM pass now understands invariant load metadata. Nothing generates this yet so it will currently never get used in real tests 2011-11-08 19:30:00 +00:00
LoopDeletion Remove the old tail duplication pass. It is not used and is unable to update 2011-08-30 23:03:45 +00:00
LoopIdiom Stop emitting instructions with the name "tmp" they eat up memory and have to be uniqued, without any benefit. 2011-09-27 20:39:19 +00:00
LoopRotate remove asmparser support for the old getresult instruction, which has been subsumed by extractvalue. 2011-06-17 06:57:15 +00:00
LoopSimplify Removed colons from some target datalayout strings in test, since they don't match the required format. 2011-10-12 22:24:17 +00:00
LoopStrengthReduce Fix SCEVExpander assert during LSR: "argument of incompatible type". 2011-10-15 06:19:55 +00:00
LoopUnroll Don't try to loop on iterators that are potentially invalidated inside the loop. Fixes PR11361! 2011-11-12 03:09:12 +00:00
LoopUnswitch Split the landing pad basic block with the correct function. Also merge the 2011-09-27 00:59:31 +00:00
LowerAtomic Convert more tests over to the new atomic instructions. 2011-09-26 20:27:49 +00:00
LowerExpectIntrinsic Introduce "expect" intrinsic instructions. 2011-07-06 18:22:43 +00:00
LowerInvoke Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
LowerSwitch Change tests from "opt %s" to "opt < %s" so that opt doesn't see the 2009-09-11 18:01:28 +00:00
Mem2Reg Add the returns_twice attribute to LLVM. 2011-10-03 14:45:37 +00:00
MemCpyOpt Oops! Fix test I forgot to submit as part of r142735. 2011-10-22 22:07:31 +00:00
MergeFunc Convert to the new EH model. 2011-11-08 00:23:01 +00:00
ObjCARC Teach the ARC optimizer about the !clang.arc.copy_on_escape metadata 2011-10-17 22:53:25 +00:00
PhaseOrdering Add file. 2011-08-19 21:21:20 +00:00
PruneEH Update more tests to the new EH scheme. 2011-08-31 21:04:11 +00:00
Reassociate Remove empty test. 2011-08-02 02:47:45 +00:00
ScalarRepl Make sure scalarrepl picks the correct alloca when it rewrites a bitcast. Fixes PR11353. 2011-11-12 02:07:50 +00:00
SCCP Get rid of an optimization in SCCP which appears to have many issues. Specifically, it doesn't handle many cases involving undef correctly, and it is missing other checks which 2011-11-11 01:16:15 +00:00
SimplifyCFG Replace more uses of 'unwind' in the tests with calls to landingpad and 2011-09-19 22:11:35 +00:00
SimplifyLibCalls SimplifyLibCalls: Use IRBuilder.CreateGlobalString when creating a string for printf->puts, which correctly sets the unnamed_addr bit on the resulting GlobalVariable. 2011-10-29 19:43:31 +00:00
Sink Fix test; sorry for any inconvenience. 2011-09-01 21:25:42 +00:00
StripSymbols fix PR10286, a problem with the .ll printer handling block addresses that are out-of-scope. 2011-08-03 06:15:41 +00:00
TailCallElim Correct over-zealous removal of hack. 2011-10-17 18:43:40 +00:00
TailDup Remove the old tail duplication pass. It is not used and is unable to update 2011-08-30 23:03:45 +00:00