LLVM  3.7.0
Namespaces | Macros | Functions | Variables
SpeculativeExecution.cpp File Reference
#include "llvm/ADT/SmallSet.h"
#include "llvm/Analysis/TargetTransformInfo.h"
#include "llvm/Analysis/ValueTracking.h"
#include "llvm/IR/Instructions.h"
#include "llvm/IR/Module.h"
#include "llvm/IR/Operator.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/Debug.h"
Include dependency graph for SpeculativeExecution.cpp:

Go to the source code of this file.

Namespaces

 llvm
 Compute iterated dominance frontiers using a linear time algorithm.
 

Macros

#define DEBUG_TYPE   "speculative-execution"
 

Functions

 INITIALIZE_PASS_BEGIN (SpeculativeExecution,"speculative-execution","Speculatively execute instructions", false, false) INITIALIZE_PASS_END(SpeculativeExecution
 
static unsigned ComputeSpeculationCost (const Instruction *I, const TargetTransformInfo &TTI)
 
FunctionPassllvm::createSpeculativeExecutionPass ()
 

Variables

static cl::opt< unsignedSpecExecMaxSpeculationCost ("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< unsignedSpecExecMaxNotHoisted ("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."))
 
speculative execution
 
speculative Speculatively execute instructions
 
speculative Speculatively execute false
 

Macro Definition Documentation

#define DEBUG_TYPE   "speculative-execution"

Definition at line 66 of file SpeculativeExecution.cpp.

Function Documentation

static unsigned ComputeSpeculationCost ( const Instruction I,
const TargetTransformInfo TTI 
)
static
INITIALIZE_PASS_BEGIN ( SpeculativeExecution  ,
"speculative-execution ,
"Speculatively execute instructions ,
false  ,
false   
)

Variable Documentation

speculative execution

Definition at line 107 of file SpeculativeExecution.cpp.

speculative Speculatively execute false

Definition at line 107 of file SpeculativeExecution.cpp.

speculative Speculatively execute instructions

Definition at line 107 of file SpeculativeExecution.cpp.

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<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