llvm-6502/test/Transforms
Jingyue Wu 529f49db93 [InstCombine] call SimplifyICmpInst with correct context
Summary:
Fixes PR23809. Without passing the context to SimplifyICmpInst, we would
use the assume to prove that the condition feeding the assume is
trivially true (see isValidAssumeForContext in ValueTracking.cpp),
causing the removal of the assume which may be useful for later
optimizations.

Test Plan: pr23800.ll

Reviewers: hfinkel, majnemer

Reviewed By: hfinkel

Subscribers: henryhu, llvm-commits, wengxt, broune, meheff, eliben

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@240683 91177308-0d34-0410-b5e6-96231b3b80d8
2015-06-25 20:14:47 +00:00
..
ADCE Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
AddDiscriminators
AlignmentFromAssumptions
ArgumentPromotion Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
AtomicExpand/ARM
BBVectorize
BDCE Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
BranchFolding
CodeExtractor Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
CodeGenPrepare AMDGPU: Fix some places missed in rename 2015-06-19 17:39:03 +00:00
ConstantHoisting
ConstantMerge
ConstProp
CorrelatedValuePropagation [CVP] Don't assume Constants of type i1 can be known to be true or false 2015-06-06 04:56:51 +00:00
DeadArgElim Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
DeadStoreElimination
EarlyCSE Correct a mistaken comment from 238071 [NFC] 2015-05-23 00:05:43 +00:00
Float2Int
FunctionAttrs Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
GCOVProfiling
GlobalDCE
GlobalOpt Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
GVN GVN: If a branch has two identical successors, we cannot declare either dead. 2015-06-25 18:32:02 +00:00
IndVarSimplify Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
Inline Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
InstCombine [InstCombine] call SimplifyICmpInst with correct context 2015-06-25 20:14:47 +00:00
InstMerge
InstSimplify Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
Internalize
IPConstantProp Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
IRCE
JumpThreading Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
LCSSA Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
LICM [LICM] Sinking doesn't involve the preheader 2015-05-22 02:14:05 +00:00
LoadCombine
LoopDeletion
LoopDistribute [LoopDist] Improve variable names and comments in LoopVersioning class, NFC 2015-06-22 22:59:40 +00:00
LoopIdiom [LSR] canonicalize Prod*(1<<C) to Prod<<C 2015-06-24 19:28:40 +00:00
LoopInterchange
LoopReroll [LSR] canonicalize Prod*(1<<C) to Prod<<C 2015-06-24 19:28:40 +00:00
LoopRotate Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
LoopSimplify Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
LoopStrengthReduce [LSR] canonicalize Prod*(1<<C) to Prod<<C 2015-06-24 19:28:40 +00:00
LoopUnroll Set proper debug location for branch added in BasicBlock::splitBasicBlock(). 2015-06-11 18:25:54 +00:00
LoopUnswitch Fix PR13851: Preserve metadata for the unswitched branch 2015-06-23 05:31:09 +00:00
LoopVectorize [LoopVectorizer] Fix bailing-out condition for OptForSize case. 2015-06-24 17:26:24 +00:00
LowerAtomic
LowerBitSets LowerBitSets: Do not assign names to aliases of unnamed bitset element objects. 2015-06-17 18:31:02 +00:00
LowerExpectIntrinsic
LowerInvoke Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
LowerSwitch
Mem2Reg Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
MemCpyOpt [MemCpyOpt] Do move the memset, but look at its dest's dependencies. 2015-05-21 01:43:39 +00:00
MergeFunc Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
MetaRenamer
NaryReassociate [NaryReassociate] Run EarlyCSE after NaryReassociate 2015-05-28 04:56:52 +00:00
ObjCARC Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
PartiallyInlineLibCalls
PhaseOrdering Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
PlaceSafepoints Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
PruneEH Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
Reassociate [Reassociate] Don't propogate flags when creating negations 2015-06-24 21:27:36 +00:00
Reg2Mem Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
RewriteStatepointsForGC Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
SafeStack SafeStack: Create the unsafe stack pointer on demand. 2015-06-22 20:26:54 +00:00
SampleProfile
Scalarizer
ScalarRepl Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
SCCP Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
SeparateConstOffsetFromGEP AMDGPU: Fix some places missed in rename 2015-06-19 17:39:03 +00:00
SimplifyCFG AMDGPU: Fix some places missed in rename 2015-06-19 17:39:03 +00:00
Sink Teach the IR Sink pass to (conservatively) respect convergent annotations. 2015-06-01 17:20:31 +00:00
SLPVectorizer [SLP] Vectorize for all-constant entries. 2015-06-19 17:40:15 +00:00
SpeculativeExecution
SROA
StraightLineStrengthReduce AMDGPU: Fix some places missed in rename 2015-06-19 17:39:03 +00:00
StripSymbols
StructurizeCFG
TailCallElim
TailDup
Util