llvm-project/llvm/test/Transforms
Hal Finkel c34e51132c Add a basic-block autovectorization pass.
This is the initial checkin of the basic-block autovectorization pass along with some supporting vectorization infrastructure.
Special thanks to everyone who helped review this code over the last several months (especially Tobias Grosser).

llvm-svn: 149468
2012-02-01 03:51:43 +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
BBVectorize Add a basic-block autovectorization pass. 2012-02-01 03:51:43 +00:00
BlockPlacement
BranchFolding
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
ConstProp Add r149110 back with a fix for when the vector and the int have the same 2012-01-27 23:33:07 +00:00
ConstantMerge If the global variable is removed by the linker, then don't constant merge it 2012-01-11 00:13:08 +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 Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
DeadStoreElimination Fix infinite loop in DSE when deleting a free in a reachable loop that's also 2011-12-08 22:36:35 +00:00
EarlyCSE Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
FunctionAttrs Change CaptureTracking to pass a Use* instead of a Value* when a value is 2011-12-28 23:24:21 +00:00
GVN Fix crasher in GVN due to my recent capture tracking changes. 2011-11-21 19:42:56 +00:00
GlobalDCE remove a test that is using old-style llvm.dbg intrinsics, apparently only 2011-11-27 18:13:47 +00:00
GlobalOpt PR11705, part 2: globalopt shouldn't put inttoptr/ptrtoint operations into global initializers if there's an implied extension or truncation. 2012-01-05 23:03:32 +00:00
IPConstantProp Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
IndVarSimplify Extended replaceCongruentPhis to handle mixed phi types. 2012-01-07 01:12:09 +00:00
Inline Remove all references to the old EH. 2012-01-31 02:09:07 +00:00
InstCombine Disable InstCombine unsafe folding bitcasts of calls w/ varargs. 2012-02-01 00:08:17 +00:00
InstSimplify Add support for vectors of pointers. 2011-12-05 06:29:09 +00:00
Internalize Add test for r127138. 2011-03-07 21:28:14 +00:00
JumpThreading Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
LCSSA Try to eliminate the use of the 'unwind' instruction. 2011-09-02 22:41:11 +00:00
LICM Move Instruction::isSafeToSpeculativelyExecute out of VMCore and 2011-12-14 23:49:11 +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 Make loop preheader insertion in LoopSimplify handle the case where the loop header is a landing pad correctly (by splitting the landingpad out of the loop header). Make some adjustments to the rest of LoopSimplify to make it clear that the rest of LoopSimplify isn't making bad assumptions about the presence of landing pads. PR11575. 2011-12-15 00:50:34 +00:00
LoopStrengthReduce Handle a corner case with IV chain collection with bailout instead of assert. 2012-01-20 21:23:40 +00:00
LoopUnroll Add -unroll-runtime for unrolling loops with run-time trip counts. 2011-12-09 06:19:40 +00:00
LoopUnswitch Improved compile time: 2012-01-11 08:40:51 +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
LowerSwitch
Mem2Reg Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
MemCpyOpt Probably not a good idea to convert a single vector load into a memcpy. We 2011-12-06 00:19:08 +00:00
MergeFunc Convert to the new EH model. 2011-11-08 00:23:01 +00:00
ObjCARC Set the "tail" flag on pattern-matched objc_storeStrong calls. 2012-01-19 19:14:36 +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
SCCP Remove all references to the old EH. 2012-01-31 02:09:07 +00:00
ScalarRepl Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +00:00
SimplifyCFG Make Value::isDereferenceablePointer() handle unreachable code blocks. (This 2012-01-23 00:05:17 +00:00
SimplifyLibCalls Turn cos(-x) into cos(x). Patch by Alexander Malyshev! 2011-12-27 18:25:50 +00:00
Sink Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +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 Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic. 2011-11-27 06:54:59 +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