llvm-project/llvm/test/Transforms/JumpThreading
Eli Friedman 02419a9849 [JumpThreading] Fix handling of aliasing metadata.
Summary:
The correctness fix here is that when we CSE a load with another load,
we need to combine the metadata on the two loads. This matches the
behavior of other passes, like instcombine and GVN.

There's also a minor optimization improvement here: for load PRE, the
aliasing metadata on the inserted load should be the same as the
metadata on the original load. Not sure why the old code was throwing
it away.

Issue found by inspection.

Differential Revision: http://reviews.llvm.org/D21460

llvm-svn: 277977
2016-08-08 04:10:22 +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
basic.ll [JumpThreading] See through Cast Instructions 2016-03-16 04:52:52 +00:00
branch-no-const.ll
compare.ll
conservative-lvi.ll
crash-assertingvh.ll Work around PR28400 a bit harder. 2016-07-06 19:05:41 +00:00
crash.ll
degenerate-phi.ll
implied-cond.ll [ValueTracking] Improve isImpliedCondition when the dominating cond is false. 2016-04-25 17:23:36 +00:00
indirectbr.ll
induction.ll [LVI] Introduce an intersect operation on lattice values 2016-02-02 03:15:40 +00:00
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 Avoid inlining call sites in unreachable-terminated block 2016-02-01 20:55:11 +00:00
select.ll [JumpThreading] Split select that has constant conditions coming from the PHI node 2016-01-08 19:39:39 +00:00
thread-cmp.ll
thread-loads.ll [JumpThreading] Fix handling of aliasing metadata. 2016-08-08 04:10:22 +00:00
update-edge-weight.ll [BPI] Replace weights by probabilities in BPI. 2015-12-22 18:56:14 +00:00