llvm-project/llvm/test/Transforms/GVN/PRE
Alexandros Lamprineas e4c91f5c4c [GVN] Don't perform scalar PRE on GEPs
Partial Redundancy Elimination of GEPs prevents CodeGenPrepare from
sinking the addressing mode computation of memory instructions back
to its uses. The problem comes from the insertion of PHIs, which
confuse CGP and make it bail.

I've autogenerated the check lines of an existing test and added a
store instruction to demonstrate the motivation behind this change.
The store is now using the gep instead of a phi.

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

llvm-svn: 348496
2018-12-06 16:11:58 +00:00
..
2009-02-17-LoadPRECrash.ll
2009-06-17-InvalidPRE.ll
2011-06-01-NonLocalMemdepMiscompile.ll
2017-06-28-pre-load-dbgloc.ll [DebugInfo] Add DILabel metadata and intrinsic llvm.dbg.label. 2018-05-09 02:40:45 +00:00
2017-10-16-LoadPRECrash.ll
2018-06-08-pre-load-dbgloc-no-null-opt.ll llvm: Add support for "-fno-delete-null-pointer-checks" 2018-07-09 22:27:23 +00:00
atomic.ll
invariant-load.ll
load-metadata.ll
load-pre-align.ll
load-pre-licm.ll
load-pre-nonlocal.ll [DebugInfo] Add DILabel metadata and intrinsic llvm.dbg.label. 2018-05-09 02:40:45 +00:00
local-pre.ll
lpre-call-wrap-2.ll
lpre-call-wrap.ll
nonintegral.ll
phi-translate-2.ll [GVN] Don't use the eliminated load as an available value in phi construction 2018-07-23 12:14:45 +00:00
phi-translate.ll [DebugInfo] Add DILabel metadata and intrinsic llvm.dbg.label. 2018-05-09 02:40:45 +00:00
pre-after-rle.ll [MemDep] Use PhiValuesAnalysis to improve alias analysis results 2018-07-31 14:19:29 +00:00
pre-basic-add.ll
pre-gep-load.ll [GVN] Don't perform scalar PRE on GEPs 2018-12-06 16:11:58 +00:00
pre-jt-add.ll
pre-load-guards.ll
pre-load-implicit-cf-updates.ll
pre-load.ll
pre-no-cost-phi.ll
pre-poison-add.ll
pre-single-pred.ll
preserve-tbaa.ll
rle-addrspace-cast.ll
rle-phi-translate.ll
rle-semidominated.ll
rle.ll
volatile.ll