llvm-6502/test/Transforms
Andrew Trick 53b28f8623 indvars: Improve LFTR by eliminating truncation when comparing against a constant.
Patch by Michele Scandale!

Adds a special handling of the case where, during the loop exit
condition rewriting, the exit value is a constant of bitwidth lower
than the type of the induction variable: instead of introducing a
trunc operation in order to match correctly the operand types, it
allows to convert the constant value to an equivalent constant,
depending on the initial value of the induction variable and the trip
count, in order have an equivalent comparison between the induction
variable and the new constant.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186107 91177308-0d34-0410-b5e6-96231b3b80d8
2013-07-11 17:08:59 +00:00
..
ADCE
ArgumentPromotion
BBVectorize Revert "InstCombine: Fold more shuffles of shuffles." 2013-05-01 00:25:27 +00:00
BlockPlacement
BranchFolding
CodeExtractor
CodeGenPrepare
ConstantMerge Fix const merging when an alias of a const is llvm.used. 2013-05-06 01:48:55 +00:00
ConstProp
CorrelatedValuePropagation
DeadArgElim DeadArgumentElimination: keep return value on functions that have a live argument with the 'returned' attribute (rather than generate invalid IR); however, if both can be eliminated, both will be 2013-06-30 20:26:21 +00:00
DeadStoreElimination TBAA: remove !tbaa from testing cases if not used. 2013-04-30 17:52:57 +00:00
DebugIR Adding tests for DebugIR pass 2013-06-28 20:37:20 +00:00
EarlyCSE
FunctionAttrs Extend 'readonly' and 'readnone' to work on function arguments as well as 2013-07-06 00:29:58 +00:00
GCOVProfiling
GlobalDCE
GlobalOpt Always remove an alias when we rename the target. 2013-06-12 16:45:47 +00:00
GVN Eliminate trivial redundant loads across nocapture+readonly calls to uncaptured 2013-07-07 10:15:16 +00:00
IndVarSimplify indvars: Improve LFTR by eliminating truncation when comparing against a constant. 2013-07-11 17:08:59 +00:00
Inline
InstCombine InstSimplify: X >> X -> 0 2013-07-09 22:01:22 +00:00
InstSimplify InstSimplify: X >> X -> 0 2013-07-09 22:01:22 +00:00
Internalize
IPConstantProp
JumpThreading TBAA: remove !tbaa from testing cases if not used. 2013-04-30 17:52:57 +00:00
LCSSA
LICM
LoopDeletion
LoopIdiom
LoopRotate Rotate multi-exit loops even if the latch was simplified. 2013-05-06 17:58:18 +00:00
LoopSimplify
LoopStrengthReduce LSR: Fix the parameters used to compute the scaling factor cost. 2013-06-19 19:59:41 +00:00
LoopUnroll Prevent loop-unroll from making assumptions about undefined behavior. 2013-05-31 23:34:46 +00:00
LoopUnswitch TBAA: remove !tbaa from testing cases if not used. 2013-04-30 17:52:57 +00:00
LoopVectorize LoopVectorize: Vectorize all accesses in address space zero with unit stride 2013-07-11 15:21:55 +00:00
LowerAtomic
LowerExpectIntrinsic
LowerInvoke
LowerSwitch
Mem2Reg
MemCpyOpt Fix a potential bug in r183584. 2013-06-08 04:56:05 +00:00
MergeFunc TBAA: remove !tbaa from testing cases if not used. 2013-04-30 17:52:57 +00:00
MetaRenamer
ObjCARC [objc-arc] Committed test for r185770 as per dblaikie's suggestion. 2013-07-08 02:13:47 +00:00
PhaseOrdering
PruneEH
Reassociate TBAA: remove !tbaa from testing cases if not used. 2013-04-30 17:52:57 +00:00
Reg2Mem
ScalarRepl Fix SROA to avoid unnecessary scalar conversions for 1-element vectors. 2013-06-25 19:09:50 +00:00
SCCP
SimplifyCFG TryToSimplifyUncondBranchFromEmptyBlock was checking that any common 2013-07-11 08:28:20 +00:00
Sink
SLPVectorizer Consolidate more lit tests. 2013-07-11 05:15:11 +00:00
SROA SROA: Generate selects instead of shuffles when blending values because this is the cannonical form. 2013-05-01 19:53:30 +00:00
StripSymbols
StructurizeCFG Move StructurizeCFG out of R600 to generic Transforms. 2013-06-19 20:18:24 +00:00
TailCallElim Teach TailRecursionElimination to handle certain cases of nocapture escaping allocas. 2013-07-11 04:40:01 +00:00
TailDup