llvm-project/llvm/test/Transforms/LoopInterchange
Congzhe Cao 8dc4b2edfa [LoopInterchange][PR56275] Fix legality with negative dependence vectors
This is the 2nd patch of the two-patch series (D130188, D130189) that
fix PR56275 (https://github.com/llvm/llvm-project/issues/56275) which
is a missed opportunity for loop interchange.

As follow-up on the dependence analysis (DA) patch D130188, this patch
normalizes DA results in loop interchange, such that negative dependence
vectors queried by loop interchange are reversed to be non-negative.

Now all tests in PR56275 can get interchanged. Those tests are added
in lit test as `pr56275.ll`.

Reviewed By: kawashima-fj, bmahjour, Meinersbur, #loopoptwg

Differential Revision: https://reviews.llvm.org/D130189
2022-08-03 19:59:01 -04:00
..
call-instructions.ll [LoopInterchange] New cost model for loop interchange 2022-06-28 00:08:37 -04:00
currentLimitation.ll [LoopInterchange] New cost model for loop interchange 2022-06-28 00:08:37 -04:00
debuginfo.ll [LoopInterchange] New cost model for loop interchange 2022-06-28 00:08:37 -04:00
inner-indvar-depend-on-outer-indvar.ll [LoopInterchange] New cost model for loop interchange 2022-06-28 00:08:37 -04:00
inner-only-reductions.ll [LoopInterchange] New cost model for loop interchange 2022-06-28 00:08:37 -04:00
innermost-latch-uses-values-in-middle-header.ll [LoopInterchange] New cost model for loop interchange 2022-06-28 00:08:37 -04:00
interchange-flow-dep-outer.ll [LoopInterchange] New cost model for loop interchange 2022-06-28 00:08:37 -04:00
interchange-insts-between-indvar.ll [LoopInterchange] New cost model for loop interchange 2022-06-28 00:08:37 -04:00
interchange-no-deps.ll [LoopInterchange] New cost model for loop interchange 2022-06-28 00:08:37 -04:00
interchangeable-innerloop-multiple-indvars.ll [LoopInterchange] New cost model for loop interchange 2022-06-28 00:08:37 -04:00
interchangeable-outerloop-multiple-indvars.ll [LoopInterchange] New cost model for loop interchange 2022-06-28 00:08:37 -04:00
interchangeable.ll [LoopInterchange] New cost model for loop interchange 2022-06-28 00:08:37 -04:00
interchanged-loop-nest-3.ll [LoopInterchange] New cost model for loop interchange 2022-06-28 00:08:37 -04:00
lcssa-preheader.ll [LoopInterchange] New cost model for loop interchange 2022-06-28 00:08:37 -04:00
lcssa.ll [LoopInterchange] New cost model for loop interchange 2022-06-28 00:08:37 -04:00
loop-interchange-optimization-remarks.ll [LoopInterchange] New cost model for loop interchange 2022-06-28 00:08:37 -04:00
not-interchanged-dependencies-1.ll [LoopInterchange] New cost model for loop interchange 2022-06-28 00:08:37 -04:00
not-interchanged-loop-nest-3.ll [LoopInterchange] New cost model for loop interchange 2022-06-28 00:08:37 -04:00
not-interchanged-tightly-nested.ll [LoopInterchange] New cost model for loop interchange 2022-06-28 00:08:37 -04:00
outer-header-jump-to-inner-latch.ll [LoopInterchange] New cost model for loop interchange 2022-06-28 00:08:37 -04:00
outer-only-reductions.ll [LoopInterchange] New cost model for loop interchange 2022-06-28 00:08:37 -04:00
perserve-lcssa.ll [LoopInterchange] New cost model for loop interchange 2022-06-28 00:08:37 -04:00
phi-ordering.ll [LoopInterchange] New cost model for loop interchange 2022-06-28 00:08:37 -04:00
pr43176-move-to-new-latch.ll [LoopInterchange] New cost model for loop interchange 2022-06-28 00:08:37 -04:00
pr43326-ideal-access-pattern.ll [LoopInterchange] New cost model for loop interchange 2022-06-28 00:08:37 -04:00
pr43326.ll [LoopInterchange] New cost model for loop interchange 2022-06-28 00:08:37 -04:00
pr43473-invalid-lcssa-phis-in-inner-exit.ll [LoopInterchange] New cost model for loop interchange 2022-06-28 00:08:37 -04:00
pr43797-lcssa-for-multiple-outer-loop-blocks.ll [LoopInterchange] New cost model for loop interchange 2022-06-28 00:08:37 -04:00
pr45743-move-from-inner-preheader.ll [LoopInterchange] New cost model for loop interchange 2022-06-28 00:08:37 -04:00
pr48212.ll [LoopInterchange] New cost model for loop interchange 2022-06-28 00:08:37 -04:00
pr56275.ll [LoopInterchange][PR56275] Fix legality with negative dependence vectors 2022-08-03 19:59:01 -04:00
profitability.ll [LoopInterchange] New cost model for loop interchange 2022-06-28 00:08:37 -04:00
reductions-across-inner-and-outer-loop.ll [LoopInterchange] New cost model for loop interchange 2022-06-28 00:08:37 -04:00
update-condbranch-duplicate-successors.ll [LoopInterchange] New cost model for loop interchange 2022-06-28 00:08:37 -04:00
vector-gep-operand.ll [LoopInterchange] New cost model for loop interchange 2022-06-28 00:08:37 -04:00