Go to the source code of this file.
|
namespace | llvm |
| This is an optimization pass for GlobalISel generic memory operations.
|
|
|
static cl::opt< unsigned > | SpecExecMaxSpeculationCost ("spec-exec-max-speculation-cost", cl::init(7), cl::Hidden, cl::desc("Speculative execution is not applied to basic blocks where " "the cost of the instructions to speculatively execute " "exceeds this limit.")) |
|
static cl::opt< unsigned > | SpecExecMaxNotHoisted ("spec-exec-max-not-hoisted", cl::init(5), cl::Hidden, cl::desc("Speculative execution is not applied to basic blocks where the " "number of instructions that would not be speculatively executed " "exceeds this limit.")) |
|
static cl::opt< bool > | SpecExecOnlyIfDivergentTarget ("spec-exec-only-if-divergent-target", cl::init(false), cl::Hidden, cl::desc("Speculative execution is applied only to targets with divergent " "branches, even if the pass was configured to apply only to all " "targets.")) |
|
speculative | execution |
|
speculative Speculatively execute | instructions |
|
speculative Speculatively execute | false |
|
◆ DEBUG_TYPE
#define DEBUG_TYPE "speculative-execution" |
◆ INITIALIZE_PASS_BEGIN()
INITIALIZE_PASS_BEGIN |
( |
SpeculativeExecutionLegacyPass |
, |
|
|
"speculative-execution" |
, |
|
|
"Speculatively execute instructions" |
, |
|
|
false |
, |
|
|
false |
|
|
) |
| |
◆ execution
◆ false
speculative Speculatively execute false |
◆ instructions
speculative Speculatively execute instructions |
◆ SpecExecMaxNotHoisted
cl::opt< unsigned > SpecExecMaxNotHoisted("spec-exec-max-not-hoisted", cl::init(5), cl::Hidden, cl::desc("Speculative execution is not applied to basic blocks where the " "number of instructions that would not be speculatively executed " "exceeds this limit.")) |
( |
"spec-exec-max-not-hoisted" |
, |
|
|
cl::init(5) |
, |
|
|
cl::Hidden |
, |
|
|
cl::desc("Speculative execution is not applied to basic blocks where the " "number of instructions that would not be speculatively executed " "exceeds this limit.") |
|
|
) |
| |
|
static |
◆ SpecExecMaxSpeculationCost
cl::opt< unsigned > SpecExecMaxSpeculationCost("spec-exec-max-speculation-cost", cl::init(7), cl::Hidden, cl::desc("Speculative execution is not applied to basic blocks where " "the cost of the instructions to speculatively execute " "exceeds this limit.")) |
( |
"spec-exec-max-speculation-cost" |
, |
|
|
cl::init(7) |
, |
|
|
cl::Hidden |
, |
|
|
cl::desc("Speculative execution is not applied to basic blocks where " "the cost of the instructions to speculatively execute " "exceeds this limit.") |
|
|
) |
| |
|
static |
◆ SpecExecOnlyIfDivergentTarget