Go to the source code of this file.
|
static cl::opt< bool > | ForceFunctionSpecialization ("force-function-specialization", cl::init(false), cl::Hidden, cl::desc("Force function specialization for every call site with a " "constant argument")) |
|
static cl::opt< unsigned > | MaxClonesThreshold ("func-specialization-max-clones", cl::Hidden, cl::desc("The maximum number of clones allowed for a single function " "specialization"), cl::init(3)) |
|
static cl::opt< unsigned > | SmallFunctionThreshold ("func-specialization-size-threshold", cl::Hidden, cl::desc("Don't specialize functions that have less than this theshold " "number of instructions"), cl::init(100)) |
|
static cl::opt< unsigned > | AvgLoopIterationCount ("func-specialization-avg-iters-cost", cl::Hidden, cl::desc("Average loop iteration count cost"), cl::init(10)) |
|
static cl::opt< bool > | SpecializeOnAddresses ("func-specialization-on-address", cl::init(false), cl::Hidden, cl::desc("Enable function specialization on the address of global values")) |
|
static cl::opt< bool > | EnableSpecializationForLiteralConstant ("function-specialization-for-literal-constant", cl::init(false), cl::Hidden, cl::desc("Enable specialization of functions that take a literal constant " "as an argument.")) |
|
◆ DEBUG_TYPE
#define DEBUG_TYPE "function-specialization" |
◆ cloneCandidateFunction()
◆ getUserBonus()
◆ removeSSACopy()
static void removeSSACopy |
( |
Function & |
F | ) |
|
|
static |
◆ STATISTIC()
STATISTIC |
( |
NumFuncSpecialized |
, |
|
|
"Number of functions specialized" |
|
|
) |
| |
◆ AvgLoopIterationCount
cl::opt< unsigned > AvgLoopIterationCount("func-specialization-avg-iters-cost", cl::Hidden, cl::desc("Average loop iteration count cost"), cl::init(10)) |
( |
"func-specialization-avg-iters-cost" |
, |
|
|
cl::Hidden |
, |
|
|
cl::desc("Average loop iteration count cost") |
, |
|
|
cl::init(10) |
|
|
) |
| |
|
static |
◆ EnableSpecializationForLiteralConstant
cl::opt< bool > EnableSpecializationForLiteralConstant("function-specialization-for-literal-constant", cl::init(false), cl::Hidden, cl::desc("Enable specialization of functions that take a literal constant " "as an argument.")) |
( |
"function-specialization-for-literal-constant" |
, |
|
|
cl::init(false) |
, |
|
|
cl::Hidden |
, |
|
|
cl::desc("Enable specialization of functions that take a literal constant " "as an argument.") |
|
|
) |
| |
|
static |
◆ ForceFunctionSpecialization
cl::opt< bool > ForceFunctionSpecialization("force-function-specialization", cl::init(false), cl::Hidden, cl::desc("Force function specialization for every call site with a " "constant argument")) |
( |
"force-function-specialization" |
, |
|
|
cl::init(false) |
, |
|
|
cl::Hidden |
, |
|
|
cl::desc("Force function specialization for every call site with a " "constant argument") |
|
|
) |
| |
|
static |
◆ MaxClonesThreshold
cl::opt< unsigned > MaxClonesThreshold("func-specialization-max-clones", cl::Hidden, cl::desc("The maximum number of clones allowed for a single function " "specialization"), cl::init(3)) |
( |
"func-specialization-max-clones" |
, |
|
|
cl::Hidden |
, |
|
|
cl::desc("The maximum number of clones allowed for a single function " "specialization") |
, |
|
|
cl::init(3) |
|
|
) |
| |
|
static |
◆ SmallFunctionThreshold
cl::opt< unsigned > SmallFunctionThreshold("func-specialization-size-threshold", cl::Hidden, cl::desc("Don't specialize functions that have less than this theshold " "number of instructions"), cl::init(100)) |
( |
"func-specialization-size-threshold" |
, |
|
|
cl::Hidden |
, |
|
|
cl::desc("Don't specialize functions that have less than this theshold " "number of instructions") |
, |
|
|
cl::init(100) |
|
|
) |
| |
|
static |
◆ SpecializeOnAddresses
cl::opt< bool > SpecializeOnAddresses("func-specialization-on-address", cl::init(false), cl::Hidden, cl::desc("Enable function specialization on the address of global values")) |
( |
"func-specialization-on-address" |
, |
|
|
cl::init(false) |
, |
|
|
cl::Hidden |
, |
|
|
cl::desc("Enable function specialization on the address of global values") |
|
|
) |
| |
|
static |