1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-21 20:12:56 +02:00
llvm-mirror/test/Transforms
Sanjoy Das acb331cd8c [ValueTracking] Teach isImpliedCondition a new bitwise trick
Summary:
This change teaches isImpliedCondition to prove things like

  (A | 15) < L  ==>  (A | 14) < L

if the low 4 bits of A are known to be zero.

Depends on D14391

Reviewers: majnemer, reames, hfinkel

Subscribers: llvm-commits

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

llvm-svn: 252673
2015-11-10 23:56:20 +00:00
..
ADCE [PM] Port ADCE to the new pass manager 2015-10-30 23:13:18 +00:00
AddDiscriminators Add discriminators for call instructions that are from the same line and same basic block. 2015-11-09 17:30:38 +00:00
AlignmentFromAssumptions
ArgumentPromotion DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
AtomicExpand
BBVectorize
BDCE
BranchFolding
CodeExtractor
CodeGenPrepare [CodegenPrepare] Do not rematerialize gc.relocates across different basic blocks 2015-11-03 18:37:40 +00:00
ConstantHoisting
ConstantMerge
ConstProp
CorrelatedValuePropagation [CVP] Fold return values if possible 2015-11-04 01:43:54 +00:00
DeadArgElim DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
DeadStoreElimination DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
EarlyCSE [EarlyCSE] Fix handling of target memory intrinsics for CSE'ing loads. 2015-10-07 07:41:29 +00:00
EliminateAvailableExternally
Float2Int
FunctionAttrs [FunctionAttrs] Fix an iterator wraparound bug 2015-11-07 01:55:53 +00:00
GCOVProfiling DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
GlobalDCE
GlobalOpt GlobalOpt should maintain externally_initialized when splitting aggregates 2015-11-09 16:47:16 +00:00
GVN DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
IndVarSimplify Re-apply r251050 with a for PR25421 2015-11-05 23:45:38 +00:00
Inline Inliner: Do zero-cost inlines even if above a negative threshold (PR24851) 2015-11-10 09:47:48 +00:00
InstCombine [InstCombine] Teach FoldPHIArgZextsIntoPHI about EHPads 2015-11-07 00:52:53 +00:00
InstMerge
InstSimplify [ValueTracking] Teach isImpliedCondition a new bitwise trick 2015-11-10 23:56:20 +00:00
Internalize
IPConstantProp
IRCE
JumpThreading [JumpThreading] Use dominating conditions to prove implications 2015-10-28 21:27:08 +00:00
LCSSA
LICM Revert "Strip metadata when speculatively hoisting instructions" 2015-11-10 18:01:16 +00:00
LoadCombine
LoopDeletion
LoopDistribute Allow LLE/LD and the loop versioning infrastructure to use SCEV predicates 2015-11-09 13:26:09 +00:00
LoopIdiom DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
LoopInterchange
LoopLoadElim Allow LLE/LD and the loop versioning infrastructure to use SCEV predicates 2015-11-09 13:26:09 +00:00
LoopReroll DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
LoopRotate DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
LoopSimplify DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
LoopStrengthReduce [LoopStrengthReduce] Don't bother fixing up PHIs from EH Pad preds 2015-11-08 05:04:07 +00:00
LoopUnroll DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
LoopUnswitch Teach LoopUnswitch not to perform non-trivial unswitching on loops containing convergent operations. 2015-10-09 18:40:20 +00:00
LoopVectorize [LoopVectorize] Address post-commit feedback on r250032 2015-11-09 14:32:05 +00:00
LowerAtomic
LowerBitSets
LowerExpectIntrinsic [PM] Port StripDeadPrototypes to the new pass manager 2015-10-30 23:28:12 +00:00
LowerInvoke
LowerSwitch
Mem2Reg DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
MemCpyOpt [MemCpyOpt] Fix wrong merging adjacent nontemporal stores into memset calls. 2015-10-09 10:53:41 +00:00
MergeFunc
MetaRenamer
NaryReassociate
ObjCARC DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
PartiallyInlineLibCalls
PhaseOrdering
PlaceSafepoints [PowerPC] Add an MI SSA peephole pass. 2015-11-10 21:38:26 +00:00
PruneEH
Reassociate
Reg2Mem
RewriteStatepointsForGC [RS4GC] Strip noalias attribute after statepoint rewrite 2015-10-26 19:06:01 +00:00
SafeStack DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
SampleProfile DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
Scalarizer DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
ScalarRepl DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
SCCP
SeparateConstOffsetFromGEP
SimplifyCFG [ARM] add overrides for isCheapToSpeculateCttz() and isCheapToSpeculateCtlz() 2015-11-10 19:24:31 +00:00
Sink
SLPVectorizer Fix SLPVectorizer commutativity reordering 2015-11-06 20:17:51 +00:00
SpeculativeExecution
SROA
StraightLineStrengthReduce
StripDeadPrototypes [PM] Port StripDeadPrototypes to the new pass manager 2015-10-30 23:28:12 +00:00
StripSymbols DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
StructurizeCFG
TailCallElim Add 'notail' marker for call instructions. 2015-11-06 23:55:38 +00:00
TailDup
Util