llvm-6502/test/Transforms
Hans Wennborg 89fa06ba0f Switch-to-lookup tables: set threshold to 3 cases
There has been an old FIXME to find the right cut-off for when it's worth
analyzing and potentially transforming a switch to a lookup table.

The switches always have two or more cases. I could not measure any speed-up
by transforming a switch with two cases. A switch with three cases gets a nice
speed-up, and I couldn't measure any compile-time regression, so I think this
is the right threshold.

In a Clang self-host, this causes 480 new switches to be transformed,
and reduces the final binary size with 8 KB.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@199294 91177308-0d34-0410-b5e6-96231b3b80d8
2014-01-15 05:00:27 +00:00
..
ADCE
ArgumentPromotion
BBVectorize
BranchFolding
CodeExtractor
CodeGenPrepare
ConstantMerge
ConstProp
CorrelatedValuePropagation
DeadArgElim
DeadStoreElimination
DebugIR
EarlyCSE
FunctionAttrs Make nocapture analysis work with addrspacecast 2014-01-14 19:11:52 +00:00
GCOVProfiling
GlobalDCE
GlobalOpt Delete unread globals through addrspacecast 2014-01-02 20:01:43 +00:00
GVN Fix broken CHECK lines. 2014-01-11 21:06:00 +00:00
IndVarSimplify Fix broken CHECK lines. 2014-01-11 21:06:00 +00:00
Inline
InstCombine Do pointer cast simplifications on addrspacecast 2014-01-14 20:00:45 +00:00
InstSimplify
Internalize
IPConstantProp
JumpThreading
LCSSA
LICM Fix broken CHECK lines. 2014-01-11 21:06:00 +00:00
LoopDeletion
LoopIdiom
LoopReroll Fix loop rerolling pass failure with non-consant loop lower bound 2014-01-03 17:20:01 +00:00
LoopRotate
LoopSimplify Reapply r198478 "Fix PR18361: Invalidate LoopDispositions after LoopSimplify hoists things." 2014-01-06 19:43:14 +00:00
LoopStrengthReduce Fix broken CHECK lines. 2014-01-11 21:06:00 +00:00
LoopUnroll
LoopUnswitch
LoopVectorize LoopVectorize: Only strip casts from integer types when replacing symbolic 2014-01-15 03:35:46 +00:00
LowerAtomic
LowerExpectIntrinsic
LowerInvoke
LowerSwitch
Mem2Reg
MemCpyOpt
MergeFunc
MetaRenamer
ObjCARC BasicAA: Use reachabilty instead of dominance for checking value equality in phi 2014-01-03 05:47:03 +00:00
PhaseOrdering
PruneEH
Reassociate
Reg2Mem
SampleProfile llvm/test/Transforms/SampleProfile/syntax.ll: Eliminate locale-sensitive message check. 2014-01-11 09:23:52 +00:00
Scalarizer Fix Scalarizer insertion point when replacing PHIs with insertelements 2013-12-23 14:51:56 +00:00
ScalarRepl
SCCP
SimplifyCFG Switch-to-lookup tables: set threshold to 3 cases 2014-01-15 05:00:27 +00:00
Sink
SLPVectorizer Fix broken CHECK lines. 2014-01-11 21:06:00 +00:00
SROA
StripSymbols
StructurizeCFG
TailCallElim
TailDup