LLVM: lib/CodeGen/LiveDebugVariables.cpp File Reference (original) (raw)
Go to the source code of this file.
| Namespaces | |
|---|---|
| namespace | llvm |
| This is an optimization pass for GlobalISel generic memory operations. |
| Macros | |
|---|---|
| #define | DEBUG_TYPE "livedebugvars" |
| Typedefs | |
|---|---|
| using | LocMap = IntervalMap<SlotIndex, DbgVariableValue, 4> |
| Map of where a user value is live to that value. | |
| using | SpillOffsetMap = DenseMap<unsigned, unsigned> |
| Map of stack slot offsets for spilled locations. | |
| using | BlockSkipInstsMap |
| Cache to save the location where it can be used as the starting position as input for calling MachineBasicBlock::SkipPHIsLabelsAndDebug. |
| Enumerations | |
|---|---|
| enum | : unsigned { UndefLocNo = ~0U } |
◆ DEBUG_TYPE
#define DEBUG_TYPE "livedebugvars"
◆ BlockSkipInstsMap
◆ LocMap
◆ SpillOffsetMap
Map of stack slot offsets for spilled locations.
Non-spilled locations are not added to the map.
Definition at line 269 of file LiveDebugVariables.cpp.
◆ anonymous enum
◆ findInsertLocation()
Find an iterator for inserting a DBG_VALUE instruction.
Definition at line 1636 of file LiveDebugVariables.cpp.
References llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::end(), llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::find(), llvm::SlotIndex::getBaseIndex(), llvm::LiveIntervals::getInstructionFromIndex(), llvm::LiveIntervals::getMBBStartIdx(), llvm::SlotIndex::getPrevIndex(), I, MBB, MI, and llvm::skipDebugInstructionsForward().
Referenced by llvm::LiveDebugVariables::LDVImpl::emitDebugValues().
◆ findNextInsertLocation()
Find an iterator for inserting the next DBG_VALUE instruction (or end if no more insert locations found).
Definition at line 1683 of file LiveDebugVariables.cpp.
References llvm::any_of(), llvm::SmallVectorTemplateCommon< T, typename >::empty(), llvm::LiveIntervals::getInstructionIndex(), llvm::MachineOperand::getReg(), I, llvm::SlotIndex::isEarlierEqualInstr(), llvm::LiveIntervals::isNotInMIMap(), llvm::MachineOperand::isReg(), MBB, llvm::SmallVectorTemplateBase< T, bool >::push_back(), Reg, and TRI.
◆ INITIALIZE_PASS_BEGIN()
◆ printDebugLoc()
◆ printExtendedName()
◆ removeDebugInstrs()
◆ STATISTIC() [1/2]
| STATISTIC | ( | NumInsertedDebugLabels | , |
|---|---|---|---|
| "Number of DBG_LABELs inserted" | ) |
◆ STATISTIC() [2/2]
| STATISTIC | ( | NumInsertedDebugValues | , |
|---|---|---|---|
| "Number of DBG_VALUEs inserted" | ) |
◆ Analysis
◆ DEBUG_TYPE
◆ EnableLDV
| cl::opt< bool > EnableLDV("live-debug-variables", cl::init(true), cl::desc("Enable the live debug variables pass"), cl::Hidden) ( "live-debug-variables" , cl::init(true) , cl::desc("Enable the live debug variables pass") , cl::Hidden ) | static |
|---|