llvm-project/llvm/test/Transforms/JumpThreading
Krzysztof Parzyszek 1dc313727e Disable jump threading into loop headers
Consider this type of a loop:
    for (...) {
      ...
      if (...) continue;
      ...
    }
Normally, the "continue" would branch to the loop control code that
checks whether the loop should continue iterating and which contains
the (often) unique loop latch branch. In certain cases jump threading
can "thread" the inner branch directly to the loop header, creating
a second loop latch. Loop canonicalization would then transform this
loop into a loop nest. The problem with this is that in such a loop
nest neither loop is countable even if the original loop was. This
may inhibit subsequent loop optimizations and be detrimental to
performance.

Differential Revision: https://reviews.llvm.org/D36404

llvm-svn: 312664
2017-09-06 19:36:58 +00:00
..
2008-11-27-EntryMunge.ll
2010-08-26-and.ll
2011-04-02-SimplifyDeadBlock.ll
2011-04-14-InfLoop.ll
2012-07-19-NoSuccessorIndirectBr.ll
and-and-cond.ll
and-cond.ll
assume-edge-dom.ll
assume.ll [JumpThreading] Safely replace uses of condition 2017-05-23 13:36:25 +00:00
basic.ll Revert r300657 due to crashes in stage2 of bootstraps: 2017-04-19 06:23:20 +00:00
branch-no-const.ll
compare.ll
conservative-lvi.ll
crash.ll
degenerate-phi.ll
fold-not-thread.ll [JumpThreading] Safely replace uses of condition 2017-05-23 13:36:25 +00:00
guards.ll [JumpThreading] Safely replace uses of condition 2017-05-23 13:36:25 +00:00
implied-cond.ll
indirectbr.ll
induction.ll
landing-pad.ll
lvi-load.ll
no-irreducible-loops.ll
or-undef.ll
phi-eq.ll
phi-known.ll
pr9331.ll
pr15851_hang.ll
pr22086.ll
pr26096.ll
pr27840.ll
pr33605.ll [SimplifyCFG] Defer folding unconditional branches to LateSimplifyCFG if it can destroy canonical loop structure. 2017-07-19 08:53:34 +00:00
pr33917.ll [JumpThreading] Stop falsely preserving LazyValueInfo. 2017-07-28 03:10:43 +00:00
range-compare.ll [JumpThreading] Add test case that was supposed to go with r306085. 2017-06-27 15:26:47 +00:00
select.ll [JumpThreading] Add a pattern to TryToUnfoldSelectInCurrBB() 2017-07-14 19:16:47 +00:00
static-profile.ll Disable jump threading into loop headers 2017-09-06 19:36:58 +00:00
thread-cmp.ll
thread-loads.ll [JumpThreading] Perform phi-translation in SimplifyPartiallyRedundantLoad. 2017-03-19 15:30:53 +00:00
threading_prof1.ll [Profile] backward propagate profile info in JumpThreading 2017-08-24 22:54:01 +00:00
threading_prof2.ll [Profile] backward propagate profile info in JumpThreading 2017-08-24 22:54:01 +00:00
update-edge-weight.ll