llvm-6502/test/Transforms
Paul Redmond 6da2e22dff Transform (x&C)>V into (x&C)!=0 where possible
When the least bit of C is greater than V, (x&C) must be greater than V
if it is not zero, so the comparison can be simplified.

Although this was suggested in Target/X86/README.txt, it benefits any
architecture with a directly testable form of AND.

Patch by Kevin Schoedel


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@170576 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-19 19:47:13 +00:00
..
ADCE
ArgumentPromotion
BBVectorize BBVectorize: Correctly merge SubclassOptionalData 2012-11-28 03:04:10 +00:00
BlockPlacement
BranchFolding
CodeExtractor
CodeGenPrepare
ConstantMerge
ConstProp
CorrelatedValuePropagation
DeadArgElim
DeadStoreElimination
EarlyCSE
FunctionAttrs
GlobalDCE
GlobalOpt Revert previous check in r168581, r169079 as they are still in code review status. 2012-12-01 10:54:28 +00:00
GVN unHECKify test. It was fixed by Chris in 2009. 2012-12-12 20:43:00 +00:00
IndVarSimplify Follow up to 168711: It's safe to base this analysis on the found compare, just return the value for the right predicate. 2012-11-29 19:07:57 +00:00
Inline Take into account minimize size attribute in the inliner. 2012-12-13 01:05:25 +00:00
InstCombine Transform (x&C)>V into (x&C)!=0 where possible 2012-12-19 19:47:13 +00:00
InstSimplify Added a slew of SimplifyInstruction floating-point optimizations, many of which take advantage of fast-math flags. Test cases included. 2012-12-12 00:27:46 +00:00
Internalize
IPConstantProp
JumpThreading
LCSSA
LICM
LoopDeletion
LoopIdiom - Re-enable population count loop idiom recognization 2012-12-09 03:12:46 +00:00
LoopRotate
LoopSimplify
LoopStrengthReduce
LoopUnroll
LoopUnswitch
LoopVectorize Make TargetLowering::getTypeConversion more resilient against odd illegal MVTs. 2012-12-19 14:34:28 +00:00
LowerAtomic
LowerExpectIntrinsic
LowerInvoke
LowerSwitch
Mem2Reg
MemCpyOpt
MergeFunc
MetaRenamer
ObjCARC
PhaseOrdering
PruneEH
Reassociate Fix PR14060, an infinite loop in reassociate. The problem was that one of the 2012-11-18 19:27:01 +00:00
ScalarRepl
SCCP
SimplifyCFG Fix logic to determine whether to turn a switch into a lookup table. When 2012-11-30 02:02:42 +00:00
SimplifyLibCalls instcombine: Migrate puts optimizations 2012-11-29 19:15:17 +00:00
Sink
SROA Rename the test so that we can add additional vectors-of-pointers tests 2012-12-18 05:50:54 +00:00
StripSymbols
TailCallElim
TailDup