llvm/test/Transforms/IndVarSimplify
Dan Gohman 763bad1a2b Generalize isLoopGuardedByCond's checking to consider two
SCEVUnknowns with identical Instructions to be equal. This allows
it to analze cases such as the attached testcase, where the front-end
has cloned the loop controlling expression. Along with r73805, this
lets IndVarSimplify eliminate all the sign-extend casts in the
loop in the attached testcase.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73807 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-20 00:35:32 +00:00
..
2002-09-09-PointerIndVar.ll
2003-04-16-ExprAnalysis.ll
2003-09-12-MultiplePred.ll
2003-09-23-NotAtTop.ll Teach SCEVExpander's visitAddRecExpr to reuse an existing canonical 2009-06-13 16:25:49 +00:00
2003-12-10-IndVarDeadCode.ll
2003-12-10-RemoveInstrCrash.ll
2003-12-15-Crash.ll
2003-12-21-IndVarSize.ll
2004-03-10-PHIInsertionBug.ll
2004-04-05-InvokeCastCrash.ll
2004-04-07-ScalarEvolutionCrash.ll
2005-02-11-InvokeCrash.ll
2005-02-17-TruncateExprCrash.ll
2005-02-26-ExitValueCompute.ll
2005-06-15-InstMoveCrash.ll
2005-11-18-Crash.ll
2006-03-31-NegativeStride.ll
2006-06-16-Indvar-LCSSA-Crash.ll
2006-09-20-LFTR-Crash.ll
2006-12-10-BitCast.ll Split the Add, Sub, and Mul instruction opcodes into separate 2009-06-04 22:49:04 +00:00
2007-01-06-TripCount.ll
2007-01-08-X86-64-Pointer.ll Add nounwind to a few tests. 2009-05-18 15:16:49 +00:00
2007-06-06-DeleteDanglesPtr.ll
2007-11-23-BitcastCrash.ll
2008-06-15-SCEVExpanderBug.ll
2008-09-02-IVType.ll
2008-10-03-CouldNotCompute.ll
2008-11-03-Floating.ll Split the Add, Sub, and Mul instruction opcodes into separate 2009-06-04 22:49:04 +00:00
2008-11-17-Floating.ll Split the Add, Sub, and Mul instruction opcodes into separate 2009-06-04 22:49:04 +00:00
2008-11-25-APFloatAssert.ll Split the Add, Sub, and Mul instruction opcodes into separate 2009-06-04 22:49:04 +00:00
2009-04-14-shorten_iv_vars.ll Enhance induction variable code to remove the 2009-04-15 01:10:12 +00:00
2009-04-15-shorten-iv-vars-2.ll Factor the code for collecting IV users out of LSR into an IVUsers class, 2009-05-12 02:17:14 +00:00
2009-04-22-IndvarCrash.ll Make sure both operands have binary instructions have the same type. 2009-04-22 23:39:28 +00:00
2009-04-27-Floating.ll Split the Add, Sub, and Mul instruction opcodes into separate 2009-06-04 22:49:04 +00:00
2009-05-24-useafterfree.ll The rewriter may hold references to instructions that are deleted because they are trivially dead. 2009-05-24 14:23:16 +00:00
ada-loops.ll Factor the code for collecting IV users out of LSR into an IVUsers class, 2009-05-12 02:17:14 +00:00
addrec-gep.ll Generalize SCEVExpander::visitAddRecExpr's GEP persuit, and avoid 2009-05-24 18:06:31 +00:00
ashr-tripcount.ll Generalize isLoopGuardedByCond's checking to consider two 2009-06-20 00:35:32 +00:00
avoid-i0.ll Handle ands with ~0 correctly too. This fixes PR4052. 2009-04-27 01:41:10 +00:00
casted-argument.ll Fix an error in this test. 2009-04-23 15:22:28 +00:00
complex-scev.ll
dg.exp
divide-pointer.ll In cases where a pointer value is an operand of a multiplication or 2009-05-26 17:41:16 +00:00
exit_value_tests.ll
gep-with-mul-base.ll Generalize SCEVExpander::visitAddRecExpr's GEP persuit, and avoid 2009-05-24 18:06:31 +00:00
interesting-invoke-use.ll Teach IndVarSimplify's FixUsesBeforeDefs to handle InvokeInsts by 2009-05-22 16:47:11 +00:00
iterationCount_zext_or_trunc.ll
iv-zext.ll Split the Add, Sub, and Mul instruction opcodes into separate 2009-06-04 22:49:04 +00:00
lftr_simple.ll
lftr-other-uses.ll When rewriting the loop exit test with the canonical induction variable, 2009-05-24 19:11:38 +00:00
loop_evaluate_1.ll
loop_evaluate_2.ll
loop_evaluate_3.ll
loop_evaluate_4.ll
loop_evaluate_5.ll When forgetting SCEVs for loop PHIs, don't forget SCEVUnknown values. 2009-05-12 01:27:58 +00:00
loop_evaluate_6.ll Factor the code for collecting IV users out of LSR into an IVUsers class, 2009-05-12 02:17:14 +00:00
masked-iv.ll Remove the code from IVUsers that attempted to handle 2009-06-18 16:54:06 +00:00
pointer-indvars.ll
pointer.ll Implement more aggressive folding of add operand lists when 2009-06-14 22:58:51 +00:00
preserve-gep-remainder.ll Teach SCEVExpander to avoid creating over-indexed GEP indices when 2009-05-27 02:00:53 +00:00
preserve-gep.ll Teach SCEVExpander to expand arithmetic involving pointers into GEP 2009-05-19 02:15:55 +00:00
preserve-signed-wrap.ll Back out the change in 64918 that used sign-extensions when promoting 2009-02-23 23:20:35 +00:00
promote-iv-to-eliminate-casts.ll Back out the change in 64918 that used sign-extensions when promoting 2009-02-23 23:20:35 +00:00
shrunk-constant.ll Remove the code from IVUsers that attempted to handle 2009-06-18 16:54:06 +00:00
signed-trip-count.ll Back out the change in 64918 that used sign-extensions when promoting 2009-02-23 23:20:35 +00:00
subtract.ll
tripcount_compute.ll
tripcount_infinite.ll
variable-stride-ivs-0.ll Don't attempt to simplify an non-affine IV expression if it can't 2009-06-03 19:11:31 +00:00
variable-stride-ivs-1.ll Don't attempt to simplify an non-affine IV expression if it can't 2009-06-03 19:11:31 +00:00