llvm-mirror/test/Transforms/GVN
Duncan Sands 39edcc75ac Fix PR12858, a crash due to GVN's PRE not fully removing an instruction from the
leader table.  That's because it wasn't expecting instructions to turn up as
leader for a value number that is not its own, but equality propagation could
create this situation.  One solution is to have the leader table use a WeakVH
but this slows down GVN by about 5%.  Instead just have equality propagation not
add instructions to the leader table, only constants and arguments.  In theory
this might cause GVN to run more (each time it changes something it runs again)
but it doesn't seem to occur enough to cause a slow down.

llvm-svn: 157251
2012-05-22 14:17:53 +00:00
..
2007-07-25-DominatedLoop.ll
2007-07-25-InfiniteLoop.ll
2007-07-25-Loop.ll
2007-07-25-NestedLoop.ll
2007-07-25-SinglePredecessor.ll
2007-07-26-InterlockingLoops.ll
2007-07-26-NonRedundant.ll
2007-07-26-PhiErasure.ll
2007-07-30-PredIDom.ll
2007-07-31-NoDomInherit.ll
2007-07-31-RedundantPhi.ll
2008-02-12-UndefLoad.ll
2008-02-13-NewPHI.ll
2008-07-02-Unreachable.ll
2008-12-09-SelfRemove.ll
2008-12-12-RLE-Crash.ll
2008-12-14-rle-reanalyze.ll
2008-12-15-CacheVisited.ll
2009-01-21-SortInvalidation.ll
2009-01-22-SortInvalidation.ll
2009-02-17-LoadPRECrash.ll
2009-03-10-PREOnVoid.ll
2009-06-17-InvalidPRE.ll
2009-07-13-MemDepSortFail.ll
2009-11-12-MemDepMallocBitCast.ll
2010-03-31-RedundantPHIs.ll
2010-05-08-OneBit.ll
2010-11-13-Simplify.ll
2011-04-27-phioperands.ll
2011-06-01-NonLocalMemdepMiscompile.ll
2011-07-07-MatchIntrinsicExtract.ll
2011-09-07-TypeIdFor.ll
2012-05-22-PreCrash.ll Fix PR12858, a crash due to GVN's PRE not fully removing an instruction from the 2012-05-22 14:17:53 +00:00
atomic.ll
basic.ll
bitcast-of-call.ll
calls-nonlocal.ll
calls-readonly.ll
commute.ll Teach GVN that x+y is the same as y+x and that x<y is the same as y>x. 2012-02-24 15:16:31 +00:00
condprop.ll Nick pointed out on IRC that GVN's propagateEquality wasn't propagating 2012-03-04 13:25:19 +00:00
crash-no-aa.ll
crash.ll
lifetime-simple.ll
lit.local.cfg Replace all instances of dg.exp file with lit.local.cfg, since all tests are run with LIT now and now Dejagnu. dg.exp is no longer needed. 2012-02-16 06:28:33 +00:00
load-constant-mem.ll
load-pre-align.ll
load-pre-licm.ll
local-pre.ll
lpre-call-wrap-2.ll
lpre-call-wrap.ll
non-local-offset.ll
nonescaping-malloc.ll
null-aliases-nothing.ll
phi-translate-partial-alias.ll
phi-translate.ll
pr10820.ll
pre-basic-add.ll
pre-compare.ll Don't PRE compares. 2012-03-29 17:22:39 +00:00
pre-load.ll
pre-single-pred.ll
preserve-tbaa.ll
rle-must-alias.ll
rle-no-phi-translate.ll
rle-nonlocal.ll
rle-phi-translate.ll
rle-semidominated.ll
rle.ll Fix crasher in GVN due to my recent capture tracking changes. 2011-11-21 19:42:56 +00:00