llvm-project/llvm/test/Transforms/GVN
Philip Reames e75a2dfe20 [tests] Stablize tests for possible change in deref semantics
There's a potential change in dereferenceability attribute semantics in the nearish future.  See llvm-dev thread "RFC: Decomposing deref(N) into deref(N) + nofree" and D99100 for context.

This change simply adds appropriate attributes to tests to keep transform logic exercised under both old and new/proposed semantics.  Note that for many of these cases, O3 would infer exactly these attributes on the test IR.

This change handles the idiomatic pattern of a dereferenceable object being passed to a call which can not free that memory.  There's a couple other tests which need more one-off attention, they'll be handled in another change.
2021-07-14 13:05:43 -07:00
..
PRE [tests] Stablize tests for possible change in deref semantics 2021-07-14 13:05:43 -07:00
2007-07-25-DominatedLoop.ll
2007-07-25-InfiniteLoop.ll [NewPM][BasicAA] basicaa -> basic-aa in Transforms/{New,}GVN 2020-06-26 20:28:18 -07:00
2007-07-25-Loop.ll
2007-07-25-NestedLoop.ll
2007-07-25-SinglePredecessor.ll
2007-07-26-InterlockingLoops.ll [NewPM][BasicAA] basicaa -> basic-aa in Transforms/{New,}GVN 2020-06-26 20:28:18 -07:00
2007-07-26-NonRedundant.ll
2007-07-26-PhiErasure.ll
2007-07-30-PredIDom.ll
2007-07-31-NoDomInherit.ll [NewPM][BasicAA] basicaa -> basic-aa in Transforms/{New,}GVN 2020-06-26 20:28:18 -07:00
2007-07-31-RedundantPhi.ll [NewPM][BasicAA] basicaa -> basic-aa in Transforms/{New,}GVN 2020-06-26 20:28:18 -07:00
2008-02-12-UndefLoad.ll
2008-02-13-NewPHI.ll
2008-07-02-Unreachable.ll [NewPM][BasicAA] basicaa -> basic-aa in Transforms/{New,}GVN 2020-06-26 20:28:18 -07:00
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-03-10-PREOnVoid.ll OpaquePtr: Bulk update tests to use typed sret 2020-11-20 17:58:26 -05:00
2009-07-13-MemDepSortFail.ll
2009-11-12-MemDepMallocBitCast.ll
2010-03-31-RedundantPHIs.ll [NewPM][BasicAA] basicaa -> basic-aa in Transforms/{New,}GVN 2020-06-26 20:28:18 -07:00
2010-05-08-OneBit.ll
2010-11-13-Simplify.ll [NewPM][BasicAA] basicaa -> basic-aa in Transforms/{New,}GVN 2020-06-26 20:28:18 -07:00
2011-04-27-phioperands.ll
2011-07-07-MatchIntrinsicExtract.ll
2011-09-07-TypeIdFor.ll [NewPM][BasicAA] basicaa -> basic-aa in Transforms/{New,}GVN 2020-06-26 20:28:18 -07:00
2012-05-22-PreCrash.ll
2016-08-30-MaskedScatterGather-inseltpoison.ll Precommit transform tests that have poison as insertelement's placeholder 2020-12-24 11:46:17 +09:00
2016-08-30-MaskedScatterGather.ll [NewPM][BasicAA] basicaa -> basic-aa in Transforms/{New,}GVN 2020-06-26 20:28:18 -07:00
MemdepMiscompile.ll [NewPM][BasicAA] basicaa -> basic-aa in Transforms/{New,}GVN 2020-06-26 20:28:18 -07:00
addrspacecast.ll
assume-equal.ll
assume.ll [GVN] Use that assume(!X) implies X==false (PR47496) 2020-09-17 21:34:44 +02:00
basic-undef-test.ll [NewPM][BasicAA] basicaa -> basic-aa in Transforms/{New,}GVN 2020-06-26 20:28:18 -07:00
basic.ll
big-endian.ll [test, GVN] Fix use of var defined in CHECK-NOT 2021-04-06 17:00:21 +01:00
bitcast-of-call.ll
br-identical.ll
callbr-loadpre-critedge.ll
callbr-scalarpre-critedge.ll
calloc-load-removal.ll [NewPM][BasicAA] basicaa -> basic-aa in Transforms/{New,}GVN 2020-06-26 20:28:18 -07:00
calls-nonlocal.ll [NewPM][BasicAA] basicaa -> basic-aa in Transforms/{New,}GVN 2020-06-26 20:28:18 -07:00
calls-readonly.ll [NewPM][BasicAA] basicaa -> basic-aa in Transforms/{New,}GVN 2020-06-26 20:28:18 -07:00
commute.ll [IR][GVN] add/allow commutative intrinsics with >2 args 2020-09-03 10:14:53 -04:00
cond_br.ll [NewPM][BasicAA] basicaa -> basic-aa in Transforms/{New,}GVN 2020-06-26 20:28:18 -07:00
cond_br2.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
condprop.ll [Test] Auto-update test checks 2021-03-31 19:15:28 +07:00
constexpr-vector-constainsundef-crash-inseltpoison.ll Precommit transform tests that have poison as insertelement's placeholder 2020-12-24 11:46:17 +09:00
constexpr-vector-constainsundef-crash.ll [ValueTracking] Check for ConstantExpr before using recursive helpers. 2020-07-24 17:37:09 +01:00
crash-no-aa.ll [BasicAA] Rename -disable-basicaa to -disable-basic-aa to be consistent with the canonical name "basic-aa" 2020-06-26 20:55:44 -07:00
crash.ll
critical-edge-split-failure.ll [GVN] do not repeat PRE on failure to split critical edge 2021-01-25 11:23:44 -08:00
critical-edge-split-indbr-pred-in-loop.ll [BreakCritEdges] Add option to opt-out of perserving loop-simplify. 2020-06-12 11:47:13 +01:00
dbg-redundant-load.ll
debugloc.ll
edge.ll
equality-assume.ll
fence.ll [NewPM][BasicAA] basicaa -> basic-aa in Transforms/{New,}GVN 2020-06-26 20:28:18 -07:00
flags.ll
fold-const-expr.ll
fpmath.ll
freeze.ll
funclet.ll [NewPM][BasicAA] basicaa -> basic-aa in Transforms/{New,}GVN 2020-06-26 20:28:18 -07:00
gc_relocate.ll [gvn] CSE gc.relocates based on meaning, not spelling (try 2) 2021-03-16 10:59:31 -07:00
int_sideeffect.ll
invariant.group.ll StoreInst should store Align, not MaybeAlign 2020-05-15 12:26:58 -07:00
invariant.start.ll
lifetime-simple.ll [NewPM][BasicAA] basicaa -> basic-aa in Transforms/{New,}GVN 2020-06-26 20:28:18 -07:00
load-constant-mem.ll [NewPM][BasicAA] basicaa -> basic-aa in Transforms/{New,}GVN 2020-06-26 20:28:18 -07:00
load-dead-block.ll [GVN] Don't explicitly materialize undefs from dead blocks 2021-03-06 23:46:24 +01:00
load-from-unreachable-predecessor.ll
loadpre-context.ll [tests] Stablize tests for possible change in deref semantics 2021-07-14 13:05:43 -07:00
loadpre-missed-opportunity.ll [GVN] Remove unused check-prefixes 2020-11-08 13:36:42 +00:00
malloc-load-removal.ll [NewPM][BasicAA] basicaa -> basic-aa in Transforms/{New,}GVN 2020-06-26 20:28:18 -07:00
masked-load-store-vn-crash.ll [GVN] Account for masked loads/stores depending on load/store instructions 2020-09-10 10:57:33 -05:00
masked-load-store.ll Handle masked loads and stores in MemoryLocation/Dependence 2020-09-08 19:08:44 -05:00
no-mem-dep-info.ll
no_speculative_loads_with_asan.ll
noalias.ll [MemCpyOpt] Correctly merge alias scopes during call slot optimization 2020-12-03 09:23:37 -08:00
non-integral-pointers-inseltpoison.ll Reapply [ConstantFold] Handle vectors in ConstantFoldLoadThroughBitcast() 2021-03-21 17:48:21 +01:00
non-integral-pointers.ll Reapply [ConstantFold] Handle vectors in ConstantFoldLoadThroughBitcast() 2021-03-21 17:48:21 +01:00
non-local-offset.ll [NewPM][BasicAA] basicaa -> basic-aa in Transforms/{New,}GVN 2020-06-26 20:28:18 -07:00
nonescaping-malloc.ll [NewPM][BasicAA] basicaa -> basic-aa in Transforms/{New,}GVN 2020-06-26 20:28:18 -07:00
null-aliases-nothing.ll [NewPM][BasicAA] basicaa -> basic-aa in Transforms/{New,}GVN 2020-06-26 20:28:18 -07:00
opt-remarks-multiple-users.ll [GVN] Improve analysis for missed optimization remark 2021-05-17 21:51:15 -07:00
opt-remarks-non-dominating.ll [GVN] Improve analysis for missed optimization remark 2021-05-17 21:51:15 -07:00
opt-remarks.ll
phi-translate-partial-alias.ll [NewPM][BasicAA] basicaa -> basic-aa in Transforms/{New,}GVN 2020-06-26 20:28:18 -07:00
phi.ll [gvn] Precisely propagate equalities to phi operands 2021-03-08 08:59:00 -08:00
pr10820.ll [NewPM][BasicAA] basicaa -> basic-aa in Transforms/{New,}GVN 2020-06-26 20:28:18 -07:00
pr12979.ll
pr14166.ll [BasicAA] Rename -disable-basicaa to -disable-basic-aa to be consistent with the canonical name "basic-aa" 2020-06-26 20:55:44 -07:00
pr17732.ll
pr17852.ll OpaquePtr: Bulk update tests to use typed byval 2020-11-20 14:00:46 -05:00
pr24397.ll [NewPM][BasicAA] basicaa -> basic-aa in Transforms/{New,}GVN 2020-06-26 20:28:18 -07:00
pr24426.ll
pr25440.ll
pr28562.ll
pr28879.ll
pr32314.ll
pr33549.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
pr34908.ll
pr36063.ll
pr42605.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
pr46054-md-nonlocaldefcache-cleanup.ll [MemDep] Also remove load instructions from NonLocalDesCache. 2020-06-17 09:36:53 +01:00
pr49193.ll [GVN] Add missing ICF update 2021-04-06 10:13:42 -07:00
pre-compare.ll
pre-new-inst.ll [NewPM][BasicAA] basicaa -> basic-aa in Transforms/{New,}GVN 2020-06-26 20:28:18 -07:00
pre-skip-convergent.ll [gvn] PRE needs to skip convergent intrinsics/calls. 2020-10-30 11:24:40 -04:00
preserve-analysis.ll [NewPM] Pin tests with -debug-pass to legacy PM 2020-09-22 17:54:25 -07:00
preserve-memoryssa.ll [MSSAUpdater] Skip renaming when inserting def in unreachable block. 2020-12-29 18:22:12 +00:00
propagate-ir-flags.ll
range.ll [NewPM][BasicAA] basicaa -> basic-aa in Transforms/{New,}GVN 2020-06-26 20:28:18 -07:00
readattrs.ll
rle-must-alias.ll [NewPM][BasicAA] basicaa -> basic-aa in Transforms/{New,}GVN 2020-06-26 20:28:18 -07:00
rle-no-phi-translate.ll
rle-nonlocal.ll [NewPM][BasicAA] basicaa -> basic-aa in Transforms/{New,}GVN 2020-06-26 20:28:18 -07:00
simplify-icf-cache-invalidation.ll [GVN] Properly invalidate ICF cache when we simplify a value 2021-04-08 14:01:57 -07:00
stale-loop-info.ll
storeinvgroup.ll [MemoryDependence] Fix invariant group store 2021-03-09 19:03:39 -05:00
tbaa.ll [NewPM][BasicAA] basicaa -> basic-aa in Transforms/{New,}GVN 2020-06-26 20:28:18 -07:00
unreachable-predecessor.ll
unreachable_block_infinite_loop.ll
volatile-nonvolatile.ll
vscale.ll [NewPM][BasicAA] basicaa -> basic-aa in Transforms/{New,}GVN 2020-06-26 20:28:18 -07:00