llvm-project/llvm/test/Transforms
Andrew Trick c2c79c90f2 Rewrite LinearFunctionTestReplace to handle pointer-type IVs.
We've been hitting asserts in this code due to the many supported
combintions of modes (iv-rewrite/no-iv-rewrite) and IV types. This
second rewrite of the code attempts to deal with these cases systematically.

llvm-svn: 143546
2011-11-02 17:19:57 +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
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 Land the long talked about "type system rewrite" patch. This 2011-07-09 17:41:24 +00:00
ConstantMerge Teach the ConstantMerge pass about alignment. Fixes PR10514! 2011-07-27 19:47:34 +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 A dead malloc, a free(NULL) and a free(undef) are all trivially dead 2011-10-24 04:35:36 +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
GVN Teach GVN to also propagate switch cases. For example, in this code 2011-10-07 08:29:06 +00:00
GlobalDCE
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
IPConstantProp Update some tests to the new EH scheme. 2011-09-01 00:58:03 +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 Make sure we use the right insertion point when instcombine replaces a PHI with another instruction. (Specifically, don't insert an arbitrary instruction before a PHI.) Fixes PR11275. 2011-11-01 04:49:29 +00:00
InstSimplify Reapply commit 143214 with a fix: m_ICmp doesn't match conditions 2011-10-30 19:56:36 +00:00
Internalize Add test for r127138. 2011-03-07 21:28:14 +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 Atomic load/store support in LICM. 2011-08-15 20:52:09 +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 Unit test for r140919, loop unroll heuristics. 2011-10-04 00:07:02 +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
LowerSwitch
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 When removing a function from the function set and adding it to deferred, we 2011-02-09 06:32:02 +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
SCCP Make sure IPSCCP never marks a tracked call as overdefined in SCCPSolver::ResolvedUndefsIn. If we do, we can end up in a situation where a function is resolved to return a constant, but the caller is marked overdefined, which confuses the code later. 2011-09-20 23:28:51 +00:00
ScalarRepl The element insertion code in scalar replacement doesn't handle incorrect 2011-10-23 07:02:10 +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