LLVM 20.0.0git
Classes | Public Member Functions | List of all members
llvm::LiveDebugVariables::LDVImpl Class Reference

Public Member Functions

 LDVImpl (LiveIntervals *LIS)
 
bool runOnMachineFunction (MachineFunction &mf, bool InstrRef)
 
void clear ()
 Release all memory.
 
void mapVirtReg (Register VirtReg, UserValue *EC)
 Map virtual register to an equivalence class.
 
void splitPHIRegister (Register OldReg, ArrayRef< Register > NewRegs)
 Replace any PHI referring to OldReg with its corresponding NewReg, if present.
 
void splitRegister (Register OldReg, ArrayRef< Register > NewRegs)
 Replace all references to OldReg with NewRegs.
 
void emitDebugValues (VirtRegMap *VRM)
 Recreate DBG_VALUE instruction from data structures.
 
void print (raw_ostream &)
 

Detailed Description

Definition at line 545 of file LiveDebugVariables.cpp.

Constructor & Destructor Documentation

◆ LDVImpl()

llvm::LiveDebugVariables::LDVImpl::LDVImpl ( LiveIntervals LIS)
inline

Definition at line 649 of file LiveDebugVariables.cpp.

Member Function Documentation

◆ clear()

void llvm::LiveDebugVariables::LDVImpl::clear ( )
inline

◆ emitDebugValues()

void LiveDebugVariables::LDVImpl::emitDebugValues ( VirtRegMap VRM)

◆ mapVirtReg()

void LiveDebugVariables::LDVImpl::mapVirtReg ( Register  VirtReg,
UserValue *  EC 
)

Map virtual register to an equivalence class.

Definition at line 797 of file LiveDebugVariables.cpp.

References assert(), and llvm::Register::isVirtual().

◆ print()

void LiveDebugVariables::LDVImpl::print ( raw_ostream OS)

Definition at line 767 of file LiveDebugVariables.cpp.

References OS, and TRI.

Referenced by llvm::LiveDebugVariablesPrinterPass::run().

◆ runOnMachineFunction()

bool LiveDebugVariables::LDVImpl::runOnMachineFunction ( MachineFunction mf,
bool  InstrRef 
)

◆ splitPHIRegister()

void LiveDebugVariables::LDVImpl::splitPHIRegister ( Register  OldReg,
ArrayRef< Register NewRegs 
)

Replace any PHI referring to OldReg with its corresponding NewReg, if present.

Definition at line 1494 of file LiveDebugVariables.cpp.

References assert(), llvm::LiveRange::end(), llvm::LiveRange::find(), and llvm::LiveIntervals::getInterval().

◆ splitRegister()

void LiveDebugVariables::LDVImpl::splitRegister ( Register  OldReg,
ArrayRef< Register NewRegs 
)

Replace all references to OldReg with NewRegs.

Definition at line 1533 of file LiveDebugVariables.cpp.


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