LLVM: llvm::LiveDebugVariables::LDVImpl Class Reference (original) (raw)

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 &)

Definition at line 539 of file LiveDebugVariables.cpp.

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

clear()

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

emitDebugValues()

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

Recreate DBG_VALUE instruction from data structures.

Definition at line 1857 of file LiveDebugVariables.cpp.

References assert(), llvm::MachineBasicBlock::begin(), llvm::BuildMI(), llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::clear(), llvm::dbgs(), findInsertLocation(), llvm::VirtRegMap::getPhys(), llvm::VirtRegMap::getStackSlot(), llvm::VirtRegMap::hasPhys(), llvm::VirtRegMap::isAssignedReg(), LLVM_DEBUG, MBB, MI, MRI, llvm::VirtRegMap::NO_STACK_SLOT, llvm::printReg(), llvm::skipDebugInstructionsForward(), SubReg, llvm::Success, and TII.

mapVirtReg()

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

print()

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

runOnMachineFunction()

Definition at line 1274 of file LiveDebugVariables.cpp.

References Changed, clear(), llvm::dbgs(), llvm::SlotIndexes::getMBBStartIdx(), llvm::MachineFunction::getName(), llvm::TargetSubtargetInfo::getRegisterInfo(), llvm::MachineFunction::getSubtarget(), LLVM_DEBUG, MBB, llvm::LiveDebugVariables::print(), and SubReg.

splitPHIRegister()

splitRegister()


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