LLVM: llvm::MachineTraceMetrics Class Reference (original) (raw)
#include "[llvm/CodeGen/MachineTraceMetrics.h](MachineTraceMetrics%5F8h%5Fsource.html)"
Classes | |
---|---|
class | Ensemble |
A trace ensemble is a collection of traces selected using the same strategy, for example 'minimum resource height'. More... | |
struct | FixedBlockInfo |
Per-basic block information that doesn't depend on the trace through the block. More... | |
struct | InstrCycles |
InstrCycles represents the cycle height and depth of an instruction in a trace. More... | |
struct | LiveInReg |
A virtual register or regunit required by a basic block or its trace successors. More... | |
class | Trace |
A trace represents a plausible sequence of executed basic blocks that passes through the current basic block one. More... | |
struct | TraceBlockInfo |
Per-basic block information that relates to a specific trace through the block. More... | |
Public Member Functions | |
---|---|
MachineTraceMetrics ()=default | |
MachineTraceMetrics (MachineFunction &MF, const MachineLoopInfo &LI) | |
MachineTraceMetrics (MachineTraceMetrics &&)=default | |
~MachineTraceMetrics () | |
void | init (MachineFunction &Func, const MachineLoopInfo &LI) |
void | clear () |
const FixedBlockInfo * | getResources (const MachineBasicBlock *) |
Get the fixed resource information about MBB. Compute it on demand. | |
ArrayRef< unsigned > | getProcReleaseAtCycles (unsigned MBBNum) const |
Get the scaled number of cycles used per processor resource in MBB. | |
Ensemble * | getEnsemble (MachineTraceStrategy) |
Get the trace ensemble representing the given trace selection strategy. | |
void | invalidate (const MachineBasicBlock *MBB) |
Invalidate cached information about MBB. | |
bool | invalidate (MachineFunction &, const PreservedAnalyses &PA, MachineFunctionAnalysisManager::Invalidator &) |
Handle invalidation explicitly. | |
void | verifyAnalysis () const |
Friends | |
---|---|
class | MachineTraceMetricsWrapperPass |
class | Ensemble |
class | Trace |
Definition at line 97 of file MachineTraceMetrics.h.
llvm::MachineTraceMetrics::MachineTraceMetrics ( ) | default |
---|
◆ MachineTraceMetrics() [2/3]
◆ MachineTraceMetrics() [3/3]
◆ ~MachineTraceMetrics()
MachineTraceMetrics::~MachineTraceMetrics | ( | ) |
---|
◆ clear()
void MachineTraceMetrics::clear | ( | ) |
---|
◆ getEnsemble()
◆ getProcReleaseAtCycles()
◆ getResources()
Get the fixed resource information about MBB. Compute it on demand.
Compute the resource usage in basic block MBB.
Definition at line 111 of file MachineTraceMetrics.cpp.
References assert(), llvm::MachineBasicBlock::getNumber(), llvm::TargetSchedModel::getNumProcResourceKinds(), llvm::TargetSchedModel::getResourceFactor(), llvm::TargetSchedModel::getWriteProcResBegin(), llvm::TargetSchedModel::getWriteProcResEnd(), llvm::MachineTraceMetrics::FixedBlockInfo::HasCalls, llvm::TargetSchedModel::hasInstrSchedModel(), llvm::MachineTraceMetrics::FixedBlockInfo::hasResources(), llvm::MachineTraceMetrics::FixedBlockInfo::InstrCount, InstrCount, MBB, MI, and llvm::TargetSchedModel::resolveSchedClass().
◆ init()
◆ invalidate() [1/2]
◆ invalidate() [2/2]
◆ verifyAnalysis()
void MachineTraceMetrics::verifyAnalysis | ( | ) | const |
---|
◆ Ensemble
◆ MachineTraceMetricsWrapperPass
◆ Trace
The documentation for this class was generated from the following files:
- include/llvm/CodeGen/MachineTraceMetrics.h
- lib/CodeGen/MachineTraceMetrics.cpp