llvm-project/llvm/test/Transforms/LoopInterchange
Florian Hahn 8393b9fd1f [LoopInterchange] Move instructions from preheader to outer loop header.
Instructions defined in the original inner loop preheader may depend on
values defined in the outer loop header, but the inner loop header will
become the entry block in the loop nest. Move the instructions from the
preheader to the outer loop header, so we do not break dominance. We
also have to check for unsafe instructions in the preheader. If there
are no unsafe instructions, all instructions should be movable.

Currently we move all instructions except the terminator and rely on
LICM to hoist out invariant instructions later.

Fixes PR45743
2020-08-10 12:41:33 +01:00
..
call-instructions.ll [BasicAA] Rename deprecated -basicaa to -basic-aa 2020-06-26 20:41:37 -07:00
currentLimitation.ll [BasicAA] Rename deprecated -basicaa to -basic-aa 2020-06-26 20:41:37 -07:00
debuginfo.ll [BasicAA] Rename deprecated -basicaa to -basic-aa 2020-06-26 20:41:37 -07:00
inner-only-reductions.ll [BasicAA] Rename deprecated -basicaa to -basic-aa 2020-06-26 20:41:37 -07:00
interchange-flow-dep-outer.ll [BasicAA] Rename deprecated -basicaa to -basic-aa 2020-06-26 20:41:37 -07:00
interchange-insts-between-indvar.ll [BasicAA] Rename deprecated -basicaa to -basic-aa 2020-06-26 20:41:37 -07:00
interchange-no-deps.ll
interchangeable.ll [BasicAA] Rename deprecated -basicaa to -basic-aa 2020-06-26 20:41:37 -07:00
lcssa-preheader.ll [LoopInterchange] Move instructions from preheader to outer loop header. 2020-08-10 12:41:33 +01:00
lcssa.ll [BasicAA] Rename deprecated -basicaa to -basic-aa 2020-06-26 20:41:37 -07:00
loop-interchange-optimization-remarks.ll [BasicAA] Rename deprecated -basicaa to -basic-aa 2020-06-26 20:41:37 -07:00
not-interchanged-dependencies-1.ll [BasicAA] Rename deprecated -basicaa to -basic-aa 2020-06-26 20:41:37 -07:00
not-interchanged-loop-nest-3.ll [BasicAA] Rename deprecated -basicaa to -basic-aa 2020-06-26 20:41:37 -07:00
not-interchanged-tightly-nested.ll [BasicAA] Rename deprecated -basicaa to -basic-aa 2020-06-26 20:41:37 -07:00
outer-only-reductions.ll [BasicAA] Rename deprecated -basicaa to -basic-aa 2020-06-26 20:41:37 -07:00
perserve-lcssa.ll
phi-ordering.ll
pr43176-move-to-new-latch.ll
pr43473-invalid-lcssa-phis-in-inner-exit.ll
pr43797-lcssa-for-multiple-outer-loop-blocks.ll
pr45743-move-from-inner-preheader.ll [LoopInterchange] Move instructions from preheader to outer loop header. 2020-08-10 12:41:33 +01:00
profitability.ll [DA] Delinearization of fixed-size multi-dimensional arrays 2020-02-27 10:29:01 -05:00
reductions-across-inner-and-outer-loop.ll [BasicAA] Rename deprecated -basicaa to -basic-aa 2020-06-26 20:41:37 -07:00
update-condbranch-duplicate-successors.ll