forked from OSchip/llvm-project
f9471b0010
Summary: Select folding in JumpThreading can create a conditional branch on a code patch that did not have one in the original program. This is not a valid transformation in sanitize_memory functions. Note that JumpThreading does select folding in 3 different places. Two of them seem safe - they apply to a select instruction in a BB that ends with an unconditional branch to another BB, which (in turn) ends with a conditional branch or a switch with the same condition. Fixes PR45220. Reviewers: glider, dvyukov, efriedma Subscribers: hiraditya, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D76332 |
||
---|---|---|
.. | ||
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 | ||
PR33357-lvi-recursion.ll | ||
PR37745.ll | ||
PR44611-across-header-hang.ll | ||
and-and-cond.ll | ||
and-cond.ll | ||
assume-edge-dom.ll | ||
assume.ll | ||
basic.ll | ||
bb-unreachable-from-entry.ll | ||
branch-debug-info.ll | ||
branch-no-const.ll | ||
callbr-edge-split.ll | ||
codesize-loop.ll | ||
combine-metadata.ll | ||
compare.ll | ||
conservative-lvi.ll | ||
crash.ll | ||
ddt-crash.ll | ||
ddt-crash2.ll | ||
ddt-crash3.ll | ||
ddt-crash4.ll | ||
degenerate-phi.ll | ||
fold-not-thread.ll | ||
guards.ll | ||
header-succ.ll | ||
implied-cond.ll | ||
indirectbr.ll | ||
induction.ll | ||
is_constant.ll | ||
landing-pad.ll | ||
loop-phi.ll | ||
lvi-load.ll | ||
lvi-tristate.ll | ||
ne-undef.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 | ||
pr33917.ll | ||
pr36133.ll | ||
pr40992-indirectbr-folding.ll | ||
range-compare.ll | ||
redundant-dbg-info.ll | ||
removed-use.ll | ||
select-unfold-msan.ll | ||
select.ll | ||
stale-loop-info-after-unfold-select.ll | ||
static-profile.ll | ||
thread-cmp.ll | ||
thread-loads.ll | ||
thread-two-bbs1.ll | ||
thread-two-bbs2.ll | ||
thread-two-bbs3.ll | ||
thread-two-bbs4.ll | ||
thread-two-bbs5.ll | ||
thread-two-bbs6.ll | ||
threading_prof1.ll | ||
threading_prof2.ll | ||
unreachable-loops.ll | ||
update-edge-weight.ll |