forked from OSchip/llvm-project
965edde695
So far we separated constant factors from multiplications, however, only when they are at the outermost level of a parameter SCEV. Now, we also separate constant factors from the parameter SCEV if the outermost expression is a SCEVAddRecExpr. With the changes to the SCEVAffinator we can now improve the extractConstantFactor(...) function at will without worrying about any other code part. Thus, if needed we can implement a more comprehensive extractConstantFactor(...) function that will traverse the SCEV instead of looking only at the outermost level. Four test cases were affected. One did not change much and the other three were simplified. llvm-svn: 260859 |
||
---|---|---|
.. | ||
alias-metadata.ll | ||
invariant_base_pointer_preloaded.ll | ||
invariant_base_pointer_preloaded_different_bb.ll | ||
invariant_base_pointer_preloaded_pass_only_needed.ll | ||
invariant_base_pointers_preloaded.ll | ||
loop-body-references-outer-iv.ll | ||
loop-body-references-outer-values-2.ll | ||
loop-body-references-outer-values-3.ll | ||
loop-body-references-outer-values.ll | ||
loop-bounds-reference-outer-ids.ll | ||
new_multidim_access.ll | ||
new_multidim_access___%bb1---%bb17.jscop | ||
reference-argument-from-non-affine-region.ll | ||
reference-other-bb.ll | ||
reference-preceeding-loop.ll | ||
single_loop.ll | ||
single_loop_with_loop_invariant_baseptr.ll | ||
single_loop_with_param.ll | ||
single_parallel_loop___%for.i---%exit.jscop | ||
two-parallel-loops-reference-outer-indvar.ll |