llvm-project/llvm/test/Transforms/JumpThreading
Anna Thomas c07d5544dd [JumpThreading] Safely replace uses of condition
This patch builds over https://reviews.llvm.org/rL303349 and replaces
the use of the condition only if it is safe to do so.

We should not blindly RAUW the condition if experimental.guard or assume
is a use of that
condition. This is because LVI may have used the guard/assume to
identify the
value of the condition, and RUAWing will fold the guard/assume and uses
before the guards/assumes.

Reviewers: sanjoy, reames, trentxintong, mkazantsev

Reviewed by: sanjoy, reames

Subscribers: llvm-commits

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

llvm-svn: 303633
2017-05-23 13:36:25 +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 Revert @llvm.assume with operator bundles (r289755-r289757) 2016-12-19 08:22:17 +00:00
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 Jump threading: avoid trying to split edge into landingpad block (PR27840) 2016-10-03 18:18:04 +00:00
select.ll
static-profile.ll [JumpThreading] Only write back branch-weight MDs for blocks that originally had PGO info 2016-09-06 16:08:33 +00:00
thread-cmp.ll
thread-loads.ll [JumpThreading] Perform phi-translation in SimplifyPartiallyRedundantLoad. 2017-03-19 15:30:53 +00:00
update-edge-weight.ll