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: