LLVM 22.0.0git
MachineTraceMetrics.cpp File Reference

Go to the source code of this file.

Classes

class  llvm::po_iterator_storage< LoopBounds, true >

Namespaces

namespace  llvm
 This is an optimization pass for GlobalISel generic memory operations.

Macros

#define DEBUG_TYPE   "machine-trace-metrics"

Typedefs

using MIHeightMap = DenseMap<const MachineInstr *, unsigned>

Functions

 INITIALIZE_PASS_BEGIN (MachineTraceMetricsWrapperPass, DEBUG_TYPE, "Machine Trace Metrics", false, true) INITIALIZE_PASS_END(MachineTraceMetricsWrapperPass
static bool isExitingLoop (const MachineLoop *From, const MachineLoop *To)
static bool getDataDeps (const MachineInstr &UseMI, SmallVectorImpl< DataDep > &Deps, const MachineRegisterInfo *MRI)
static void getPHIDeps (const MachineInstr &UseMI, SmallVectorImpl< DataDep > &Deps, const MachineBasicBlock *Pred, const MachineRegisterInfo *MRI)
static void updatePhysDepsDownwards (const MachineInstr *UseMI, SmallVectorImpl< DataDep > &Deps, SparseSet< LiveRegUnit > &RegUnits, const TargetRegisterInfo *TRI)
static unsigned updatePhysDepsUpwards (const MachineInstr &MI, unsigned Height, SparseSet< LiveRegUnit > &RegUnits, const TargetSchedModel &SchedModel, const TargetInstrInfo *TII, const TargetRegisterInfo *TRI)
static bool pushDepHeight (const DataDep &Dep, const MachineInstr &UseMI, unsigned UseHeight, MIHeightMap &Heights, const TargetSchedModel &SchedModel, const TargetInstrInfo *TII)

Variables

 DEBUG_TYPE
Machine Trace Metrics
Machine Trace false

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "machine-trace-metrics"

Definition at line 38 of file MachineTraceMetrics.cpp.

Typedef Documentation

◆ MIHeightMap

Definition at line 986 of file MachineTraceMetrics.cpp.

Function Documentation

◆ getDataDeps()

bool getDataDeps ( const MachineInstr & UseMI,
SmallVectorImpl< DataDep > & Deps,
const MachineRegisterInfo * MRI )
static

◆ getPHIDeps()

◆ INITIALIZE_PASS_BEGIN()

INITIALIZE_PASS_BEGIN ( MachineTraceMetricsWrapperPass ,
DEBUG_TYPE ,
"Machine Trace Metrics" ,
false ,
true  )

◆ isExitingLoop()

◆ pushDepHeight()

◆ updatePhysDepsDownwards()

◆ updatePhysDepsUpwards()

Variable Documentation

◆ DEBUG_TYPE

DEBUG_TYPE

Definition at line 62 of file MachineTraceMetrics.cpp.

◆ false

Machine Trace false

Definition at line 63 of file MachineTraceMetrics.cpp.

◆ Metrics