|
LLVM 24.0.0git
|
#include "llvm/CodeGen/LiveDebugVariables.h"
Classes | |
| class | LDVImpl |
Public Member Functions | |
| LLVM_ABI | LiveDebugVariables () |
| Implementation of the LiveDebugVariables pass. | |
| LLVM_ABI | ~LiveDebugVariables () |
| LLVM_ABI | LiveDebugVariables (LiveDebugVariables &&) |
| LLVM_ABI void | analyze (MachineFunction &MF, LiveIntervals *LIS) |
| LLVM_ABI void | splitRegister (Register OldReg, ArrayRef< Register > NewRegs, LiveIntervals &LIS) |
| splitRegister - Move any user variables in OldReg to the live ranges in NewRegs where they are live. | |
| LLVM_ABI void | canonicalizeIndexes (const SlotIndexes &SI) |
| canonicalizeIndexes - Replace every SlotIndex held by this analysis that refers to an erased instruction. | |
| LLVM_ABI void | emitDebugValues (VirtRegMap *VRM) |
| emitDebugValues - Emit new DBG_VALUE instructions reflecting the changes that happened during register allocation. | |
| void | dump () const |
| dump - Print data structures to dbgs(). | |
| LLVM_ABI void | print (raw_ostream &OS) const |
| LLVM_ABI void | releaseMemory () |
| LLVM_ABI bool | invalidate (MachineFunction &MF, const PreservedAnalyses &PA, MachineFunctionAnalysisManager::Invalidator &Inv) |
Definition at line 36 of file LiveDebugVariables.h.
|
default |
Implementation of the LiveDebugVariables pass.
References LLVM_ABI.
Referenced by LiveDebugVariables().
|
default |
References LLVM_ABI.
|
default |
References LiveDebugVariables(), and LLVM_ABI.
| void LiveDebugVariables::analyze | ( | MachineFunction & | MF, |
| LiveIntervals * | LIS ) |
Definition at line 1369 of file LiveDebugVariables.cpp.
References EnableLDV, llvm::MachineFunction::getFunction(), llvm::Function::getSubprogram(), removeDebugInstrs(), and llvm::MachineFunction::useDebugInstrRef().
| void LiveDebugVariables::canonicalizeIndexes | ( | const SlotIndexes & | SI | ) |
canonicalizeIndexes - Replace every SlotIndex held by this analysis that refers to an erased instruction.
Described locations do not change, as a stale index already resolves to the same position at the point of use, but intervals resolving to one position now emit a single DBG_VALUE rather than identical consecutive ones.
Definition at line 1684 of file LiveDebugVariables.cpp.
Referenced by llvm::LiveDebugVariables::LDVImpl::emitDebugValues().
| LLVM_DUMP_METHOD void LiveDebugVariables::dump | ( | ) | const |
dump - Print data structures to dbgs().
Definition at line 2145 of file LiveDebugVariables.cpp.
References llvm::dbgs(), LLVM_DUMP_METHOD, and print().
| void LiveDebugVariables::emitDebugValues | ( | VirtRegMap * | VRM | ) |
emitDebugValues - Emit new DBG_VALUE instructions reflecting the changes that happened during register allocation.
| VRM | Rename virtual registers according to map. |
Definition at line 2139 of file LiveDebugVariables.cpp.
| bool LiveDebugVariables::invalidate | ( | MachineFunction & | MF, |
| const PreservedAnalyses & | PA, | ||
| MachineFunctionAnalysisManager::Invalidator & | Inv ) |
Definition at line 1359 of file LiveDebugVariables.cpp.
References llvm::PreservedAnalyses::getChecker().
| void LiveDebugVariables::print | ( | raw_ostream & | OS | ) | const |
Definition at line 2148 of file LiveDebugVariables.cpp.
Referenced by dump(), and llvm::LiveDebugVariables::LDVImpl::runOnMachineFunction().
| void LiveDebugVariables::releaseMemory | ( | ) |
Definition at line 1354 of file LiveDebugVariables.cpp.
| void LiveDebugVariables::splitRegister | ( | Register | OldReg, |
| ArrayRef< Register > | NewRegs, | ||
| LiveIntervals & | LIS ) |
splitRegister - Move any user variables in OldReg to the live ranges in NewRegs where they are live.
Mark the values as unavailable where no new register is live.
Definition at line 1564 of file LiveDebugVariables.cpp.