llvm-project/llvm/test/Transforms/LICM
Sanjoy Das d7e8206b58 [ValueTracking] Calls to @llvm.assume always return
This change teaches llvm::isGuaranteedToTransferExecutionToSuccessor
that calls to @llvm.assume always terminate.  Most other relevant
intrinsics should be covered by the "CS.onlyReadsMemory() ||
CS.onlyAccessesArgMemory()" bit but we were missing @llvm.assumes
because we state that it clobbers memory.

Added an LICM test case, but this change is not specific to LICM.

llvm-svn: 272703
2016-06-14 20:23:16 +00:00
..
2003-02-26-LoopExitNotDominated.ll
2003-02-27-NestedLoopExitBlocks.ll
2003-02-27-PreheaderExitNodeUpdate.ll
2003-02-27-PreheaderProblem.ll
2003-02-27-StoreSinkPHIs.ll
2003-02-28-PromoteDifferentType.ll
2003-05-02-LoadHoist.ll
2003-12-11-SinkingToPHI.ll
2004-09-14-AliasAnalysisInvalidate.ll
2004-11-17-UndefIndexCrash.ll
2006-09-12-DeadUserOfSunkInstr.ll
2007-05-22-VolatileSink.ll
2007-07-30-AliasSet.ll
2007-09-17-PromoteValue.ll
2007-09-24-PromoteNullValue.ll
2007-10-01-PromoteSafeValue.ll
2008-05-20-AliasSetVAArg.ll
2008-07-22-LoadGlobalConstant.ll
2009-12-10-LICM-Indbr-Crash.ll
2011-04-06-HoistMissedASTUpdate.ll
2011-04-06-PromoteResultOfPromotion.ll
2011-04-09-RAUW-AST.ll
2011-07-06-Alignment.ll
2014-09-10-doFinalizationAssert.ll
AliasSetMemSet.ll [AliasSetTracker] Teach AliasSetTracker about MemSetInst 2016-02-17 02:01:50 +00:00
PR19798.ll
PR21582.ll
PR24013.ll
Preserve-LCSSA.ll
alias-set-tracker-loss.ll [LICM] Teach LICM how to handle cases where the alias set tracker was 2016-02-27 04:34:07 +00:00
argmemonly-call.ll
assume.ll [ValueTracking] Calls to @llvm.assume always return 2016-06-14 20:23:16 +00:00
atomics.ll
basictest.ll
constexpr.ll
crash.ll
debug-value.ll [PR27284] Reverse the ownership between DICompileUnit and DISubprogram. 2016-04-15 15:57:41 +00:00
extra-copies.ll
funclet.ll [LICM] Fix a small oversight introduced in r256763 2016-01-04 23:16:22 +00:00
hoist-bitcast-load.ll
hoist-deref-load.ll [ValueTracking] Use guards to prove non-nullness of a value 2016-05-10 02:35:44 +00:00
hoist-invariant-load.ll
hoist-nounwind.ll [LICM] Make isGuaranteedToExecute more accurate. 2016-06-11 21:48:25 +00:00
hoist-round.ll Mark some FP intrinsics as safe to speculatively execute 2016-04-03 12:30:46 +00:00
hoisting.ll [LICM] Make isGuaranteedToExecute more accurate. 2016-06-11 21:48:25 +00:00
lcssa-ssa-promoter.ll
no-preheader-test.ll
pr23608.ll
pr26843.ll [AliasSetTracker] Do not strip pointer casts when processing MemSetInst 2016-03-14 18:34:29 +00:00
pr27262.ll [AliasSetTracker] Correctly handle changing the size of an entry 2016-04-14 22:00:11 +00:00
preheader-safe.ll [LICM] Make isGuaranteedToExecute more accurate. 2016-06-11 21:48:25 +00:00
promote-order.ll
promote-tls.ll [LICM] Make isGuaranteedToExecute more accurate. 2016-06-11 21:48:25 +00:00
scalar-promote-memmodel.ll
scalar_promote-unwind.ll LICM: Don't sink stores out of loops that may throw. 2016-06-05 22:13:52 +00:00
scalar_promote.ll [LICM] Make isGuaranteedToExecute more accurate. 2016-06-11 21:48:25 +00:00
sinking.ll [LICM] Make instruction sinking funclet-aware 2016-01-04 03:37:39 +00:00
speculate.ll
update-scev.ll [LICM] Kill SCEV loop dispositions if needed 2016-05-03 17:50:11 +00:00
volatile-alias.ll [LICM] Make isGuaranteedToExecute more accurate. 2016-06-11 21:48:25 +00:00