llvm-project/llvm/test/Transforms/LoopStrengthReduce
Quentin Colombet 8aa7abe2ae Modify how the formulae are rated in Loop Strength Reduce.
Namely, check if the target allows to fold more that one register in the
addressing mode and if yes, adjust the cost accordingly.

Prior to this commit, reg1 + scale * reg2 accesses were artificially preferred
to reg1 + reg2 accesses. Indeed, the cost model wrongly assumed that reg1 + reg2
needs a temporary register for the computation, whereas it was correctly
estimated for reg1 + scale * reg2.

<rdar://problem/13973908>

llvm-svn: 183021
2013-05-31 17:20:29 +00:00
..
ARM TBAA: remove !tbaa from testing cases if not used. 2013-05-02 18:11:35 +00:00
X86 Track IR ordering of SelectionDAG nodes 3/4. 2013-05-25 03:08:10 +00:00
2005-08-15-AddRecIV.ll
2005-08-17-OutOfLoopVariant.ll
2005-09-12-UsesOutOutsideOfLoop.ll
2007-04-23-UseIterator.ll
2008-08-13-CmpStride.ll
2008-09-09-Overflow.ll
2009-01-13-nonconstant-stride-outside-loop.ll
2009-04-28-no-reduce-mul.ll
2011-07-19-CritEdgeBreakCrash.ll
2011-10-03-CritEdgeMerge.ll LSR critical edge splitting fix for PR13756. 2012-09-18 17:51:33 +00:00
2011-10-06-ReusePhi.ll
2011-10-13-SCEVChain.ll
2011-10-14-IntPtr.ll
2011-12-19-PostincQuadratic.ll
2012-01-02-nopreheader.ll
2012-01-16-nopreheader.ll
2012-03-15-nopreheader.ll LSR: teach isSimplifiedLoopNest to handle PHI IVUsers. 2012-03-20 21:24:44 +00:00
2012-03-26-constexpr.ll Unit test for PR11950: LSR crash. 2012-03-26 21:45:37 +00:00
2012-07-13-ExpandUDiv.ll TBAA: remove !tbaa from testing cases if not used. 2013-04-30 17:52:57 +00:00
2012-07-18-LimitReassociate.ll Remove triple from this test, it makes it fail when X86 TTI is missing. 2013-01-16 13:19:59 +00:00
2013-01-05-IndBr.ll Fix a crash in LSR replaceCongruentIVs. 2013-01-06 05:59:39 +00:00
2013-01-14-ReuseCast.ll Modify how the formulae are rated in Loop Strength Reduce. 2013-05-31 17:20:29 +00:00
addrec-gep.ll Convert -indvars tests that rely on SCEV expansion to -loop-reduce tests. 2012-03-22 17:10:07 +00:00
count-to-zero.ll
dead-phi.ll
different-type-ivs.ll
dominate-assert.ll Tests: rewrite 'opt ... %s' to 'opt ... < %s' so that opt does not emit a ModuleID 2012-12-30 02:33:22 +00:00
dont-hoist-simple-loop-constants.ll Fix the remaining TCL-style quotes found in the testsuite. This is 2012-07-02 19:09:46 +00:00
dont_insert_redundant_ops.ll
dont_reduce_bytes.ll
dont_reverse.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
exit_compare_live_range.ll Tests: rewrite 'opt ... %s' to 'opt ... < %s' so that opt does not emit a ModuleID 2012-12-30 01:28:40 +00:00
hoist-parent-preheader.ll
invariant_value_first.ll Fix the remaining TCL-style quotes found in the testsuite. This is 2012-07-02 19:09:46 +00:00
invariant_value_first_arg.ll Fix the remaining TCL-style quotes found in the testsuite. This is 2012-07-02 19:09:46 +00:00
ivchain.ll
lit.local.cfg Replace all instances of dg.exp file with lit.local.cfg, since all tests are run with LIT now and now Dejagnu. dg.exp is no longer needed. 2012-02-16 06:28:33 +00:00
nested-reduce.ll
nonlinear-postinc.ll
ops_after_indvar.ll
phi_node_update_multiple_preds.ll
post-inc-icmpzero.ll Remove target triple from an LSR test. 2013-01-22 00:57:16 +00:00
pr2537.ll
pr2570.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
pr3086.ll
pr3399.ll
pr3571.ll
pr12018.ll Don't skip debug instructions when looking for the insertion point of 2012-02-18 17:22:58 +00:00
pr12048.ll Semantically revert 151015. Add a comment on why we should be able to assert 2012-02-22 03:21:39 +00:00
pr12691.ll Make sure HoistInsertPosition finds a position that is dominated by all 2012-04-30 03:53:06 +00:00
preserve-gep-loop-variant.ll Convert -indvars tests that rely on SCEV expansion to -loop-reduce tests. 2012-03-22 17:10:07 +00:00
quadradic-exit-value.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
related_indvars.ll
remove_indvar.ll
share_code_in_preheader.ll
share_ivs.ll
uglygep.ll Modify how the formulae are rated in Loop Strength Reduce. 2013-05-31 17:20:29 +00:00
use_postinc_value_outside_loop.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
var_stride_used_by_compare.ll Fix the remaining TCL-style quotes found in the testsuite. This is 2012-07-02 19:09:46 +00:00
variable_stride.ll