llvm-6502/test/Transforms
Jingyue Wu e4d0a5ec18 [ValueTracking] Extend range metadata to call/invoke
Summary:
With this patch, range metadata can be added to call/invoke including
IntrinsicInst. Previously, it could only be added to load.

Rename computeKnownBitsLoad to computeKnownBitsFromRangeMetadata because
range metadata is not only used by load.

Update the language reference to reflect this change.

Test Plan:
Add several tests in range-2.ll to confirm the verifier is happy with
having range metadata on call/invoke.

Add two tests in AddOverFlow.ll to confirm annotating range metadata to
call/invoke can benefit InstCombine.

Reviewers: meheff, nlewycky, reames, hfinkel, eliben

Reviewed By: eliben

Subscribers: llvm-commits

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@211281 91177308-0d34-0410-b5e6-96231b3b80d8
2014-06-19 16:50:16 +00:00
..
ADCE
AddDiscriminators
ArgumentPromotion
AtomicExpandLoadLinked/ARM Atomics: make use of the "cmpxchg weak" instruction. 2014-06-13 16:45:52 +00:00
BBVectorize Reduce verbiage of lit.local.cfg files 2014-06-09 22:42:55 +00:00
BranchFolding
CodeExtractor
CodeGenPrepare Reduce verbiage of lit.local.cfg files 2014-06-09 22:42:55 +00:00
ConstantHoisting [ConstantHoisting][X86] Improve the cost model for small constants with large types (i64 and above). 2014-06-10 00:32:29 +00:00
ConstantMerge
ConstProp
CorrelatedValuePropagation
DeadArgElim
DeadStoreElimination
DebugIR
EarlyCSE
FunctionAttrs
GCOVProfiling
GlobalDCE
GlobalOpt
GVN GVN: Enable value forwarding for calloc 2014-06-12 21:16:19 +00:00
IndVarSimplify
Inline
InstCombine [ValueTracking] Extend range metadata to call/invoke 2014-06-19 16:50:16 +00:00
InstSimplify Move optimization of some cases of (A & C1)|(B & C2) from instcombine to instsimplify. Patch by Rahul Jain, plus some last minute changes by me -- you can blame me for any bugs. 2014-06-19 03:51:46 +00:00
Internalize
IPConstantProp
JumpThreading Fixed jump threading going to infinite loop. 2014-06-17 14:34:19 +00:00
LCSSA
LICM
LoadCombine
LoopDeletion
LoopIdiom Reduce verbiage of lit.local.cfg files 2014-06-09 22:42:55 +00:00
LoopReroll
LoopRotate
LoopSimplify
LoopStrengthReduce Reduce verbiage of lit.local.cfg files 2014-06-09 22:42:55 +00:00
LoopUnroll Teach LoopUnrollPass to respect loop unrolling hints in metadata. 2014-06-16 23:53:02 +00:00
LoopUnswitch
LoopVectorize Reduce verbiage of lit.local.cfg files 2014-06-09 22:42:55 +00:00
LowerAtomic IR: add "cmpxchg weak" variant to support permitted failure. 2014-06-13 14:24:07 +00:00
LowerExpectIntrinsic
LowerInvoke
LowerSwitch LowerSwitch: track bounding range for the condition tree. 2014-06-16 16:55:20 +00:00
Mem2Reg
MemCpyOpt
MergeFunc Added functions cross-reference test. 2014-06-09 19:03:02 +00:00
MetaRenamer
ObjCARC
PhaseOrdering
PruneEH
Reassociate [Reassociate] FileCheckize and cleanup a few testcases. No functional change 2014-06-11 18:28:45 +00:00
Reg2Mem
SampleProfile
Scalarizer
ScalarRepl
SCCP SCCP: update for cmpxchg returning { iN, i1 } now. 2014-06-13 14:54:09 +00:00
SeparateConstOffsetFromGEP/NVPTX Reduce verbiage of lit.local.cfg files 2014-06-09 22:42:55 +00:00
SimplifyCFG Reduce verbiage of lit.local.cfg files 2014-06-09 22:42:55 +00:00
Sink
SLPVectorizer Reduce verbiage of lit.local.cfg files 2014-06-09 22:42:55 +00:00
SROA SROA: Only split loads on byte boundaries 2014-06-17 00:19:35 +00:00
StripSymbols
StructurizeCFG
TailCallElim
TailDup Reduce verbiage of lit.local.cfg files 2014-06-09 22:42:55 +00:00