LLVM API Documentation

Public Member Functions | Protected Member Functions | Protected Attributes | Friends
llvm::MachineTraceMetrics::Ensemble Class Reference

#include <MachineTraceMetrics.h>

Collaboration diagram for llvm::MachineTraceMetrics::Ensemble:
Collaboration graph
[legend]

List of all members.

Public Member Functions

virtual ~Ensemble ()
virtual const char * getName () const =0
void print (raw_ostream &) const
void invalidate (const MachineBasicBlock *MBB)
 Invalidate traces through BadMBB.
void verify () const
Trace getTrace (const MachineBasicBlock *MBB)

Protected Member Functions

virtual const MachineBasicBlockpickTracePred (const MachineBasicBlock *)=0
virtual const MachineBasicBlockpickTraceSucc (const MachineBasicBlock *)=0
 Ensemble (MachineTraceMetrics *)
const MachineLoopgetLoopFor (const MachineBasicBlock *) const
const TraceBlockInfogetDepthResources (const MachineBasicBlock *) const
const TraceBlockInfogetHeightResources (const MachineBasicBlock *) const
ArrayRef< unsignedgetProcResourceDepths (unsigned MBBNum) const
ArrayRef< unsignedgetProcResourceHeights (unsigned MBBNum) const

Protected Attributes

MachineTraceMetricsMTM

Friends

class Trace

Detailed Description

A trace ensemble is a collection of traces selected using the same strategy, for example 'minimum resource height'. There is one trace for every block in the function.

Definition at line 301 of file MachineTraceMetrics.h.


Constructor & Destructor Documentation

Definition at line 155 of file MachineTraceMetrics.cpp.


Member Function Documentation

Definition at line 158 of file MachineTraceMetrics.cpp.

virtual const char* llvm::MachineTraceMetrics::Ensemble::getName ( ) const [pure virtual]

Get an array of processor resource depths for MBB. Indexed by processor resource kind, this array contains the scaled processor resources consumed by all blocks preceding MBB in its trace. It does not include instructions in MBB.

Compare TraceBlockInfo::InstrDepth.

Definition at line 255 of file MachineTraceMetrics.cpp.

References llvm::makeArrayRef().

Get an array of processor resource heights for MBB. Indexed by processor resource kind, this array contains the scaled processor resources consumed by this block and all blocks following it in its trace.

Compare TraceBlockInfo::InstrHeight.

Definition at line 268 of file MachineTraceMetrics.cpp.

References llvm::makeArrayRef().

Get the trace that passes through MBB. The trace is computed on demand.

Definition at line 1137 of file MachineTraceMetrics.cpp.

References llvm::MachineBasicBlock::getNumber(), and llvm::MachineTraceMetrics::Trace.


Friends And Related Function Documentation

friend class Trace [friend]

Definition at line 306 of file MachineTraceMetrics.h.


Member Data Documentation

Definition at line 318 of file MachineTraceMetrics.h.

Referenced by Ensemble().


The documentation for this class was generated from the following files: