LLVM API Documentation
This class is used to track local variable information. More...
#include <DwarfDebug.h>
Public Member Functions | |
| DbgVariable (DIVariable V, DwarfDebug *DD) | |
| Construct a DbgVariable from a DIVariable. | |
| DbgVariable (const MachineInstr *DbgValue, DwarfDebug *DD) | |
| DIVariable | getVariable () const |
| void | setDIE (DIE &D) |
| DIE * | getDIE () const |
| void | setDotDebugLocOffset (unsigned O) |
| unsigned | getDotDebugLocOffset () const |
| StringRef | getName () const |
| const MachineInstr * | getMInsn () const |
| int | getFrameIndex () const |
| void | setFrameIndex (int FI) |
| dwarf::Tag | getTag () const |
| bool | isArtificial () const |
| Return true if DbgVariable is artificial. | |
| bool | isObjectPointer () const |
| bool | variableHasComplexAddress () const |
| bool | isBlockByrefVariable () const |
| unsigned | getNumAddrElements () const |
| uint64_t | getAddrElement (unsigned i) const |
| DIType | getType () const |
This class is used to track local variable information.
Definition at line 71 of file DwarfDebug.h.
| llvm::DbgVariable::DbgVariable | ( | DIVariable | V, |
| DwarfDebug * | DD | ||
| ) | [inline] |
Construct a DbgVariable from a DIVariable.
Definition at line 81 of file DwarfDebug.h.
| llvm::DbgVariable::DbgVariable | ( | const MachineInstr * | DbgValue, |
| DwarfDebug * | DD | ||
| ) | [inline] |
Construct a DbgVariable from a DEBUG_VALUE. AbstractVar may be NULL.
Definition at line 87 of file DwarfDebug.h.
| uint64_t llvm::DbgVariable::getAddrElement | ( | unsigned | i | ) | const [inline] |
Definition at line 134 of file DwarfDebug.h.
References llvm::DIVariable::getAddrElement().
Referenced by llvm::DwarfUnit::addComplexAddress().
| DIE* llvm::DbgVariable::getDIE | ( | ) | const [inline] |
Definition at line 94 of file DwarfDebug.h.
| unsigned llvm::DbgVariable::getDotDebugLocOffset | ( | ) | const [inline] |
Definition at line 96 of file DwarfDebug.h.
| int llvm::DbgVariable::getFrameIndex | ( | ) | const [inline] |
Definition at line 99 of file DwarfDebug.h.
| const MachineInstr* llvm::DbgVariable::getMInsn | ( | ) | const [inline] |
Definition at line 98 of file DwarfDebug.h.
| StringRef llvm::DbgVariable::getName | ( | ) | const [inline] |
Definition at line 97 of file DwarfDebug.h.
References llvm::DIVariable::getName().
Referenced by llvm::DwarfUnit::addBlockByrefAddress(), llvm::DwarfUnit::applyVariableAttributes(), and getType().
| unsigned llvm::DbgVariable::getNumAddrElements | ( | ) | const [inline] |
Definition at line 130 of file DwarfDebug.h.
References llvm::DIVariable::getNumAddrElements(), and llvm::DIDescriptor::isVariable().
Referenced by llvm::DwarfUnit::addComplexAddress().
| dwarf::Tag llvm::DbgVariable::getTag | ( | ) | const [inline] |
Definition at line 102 of file DwarfDebug.h.
References llvm::dwarf::DW_TAG_arg_variable, llvm::dwarf::DW_TAG_formal_parameter, llvm::dwarf::DW_TAG_variable, and llvm::DIDescriptor::getTag().
| DIType DbgVariable::getType | ( | ) | const |
Definition at line 119 of file DwarfDebug.cpp.
References llvm::dwarf::DW_TAG_pointer_type, llvm::DITypedArray< T >::getElement(), llvm::DICompositeType::getElements(), getName(), llvm::DITypedArray< T >::getNumElements(), llvm::DIDescriptor::getTag(), llvm::DIVariable::getType(), llvm::DwarfDebug::getTypeIdentifierMap(), llvm::DIVariable::isBlockByrefVariable(), N, and llvm::DIRef< T >::resolve().
Referenced by llvm::DwarfUnit::addBlockByrefAddress(), llvm::DwarfUnit::applyVariableAttributes(), isArtificial(), and isObjectPointer().
| DIVariable llvm::DbgVariable::getVariable | ( | ) | const [inline] |
Definition at line 92 of file DwarfDebug.h.
Referenced by llvm::DwarfUnit::addComplexAddress(), llvm::DwarfUnit::addVariableAddress(), llvm::DwarfUnit::applyVariableAttributes(), and llvm::DwarfDebug::emitLocPieces().
| bool llvm::DbgVariable::isArtificial | ( | ) | const [inline] |
Return true if DbgVariable is artificial.
Definition at line 109 of file DwarfDebug.h.
References getType(), llvm::DIType::isArtificial(), and llvm::DIVariable::isArtificial().
Referenced by llvm::DwarfUnit::applyVariableAttributes().
| bool DbgVariable::isBlockByrefVariable | ( | ) | const |
Definition at line 114 of file DwarfDebug.cpp.
References llvm::DwarfDebug::getTypeIdentifierMap(), llvm::DIVariable::isBlockByrefVariable(), and llvm::DIDescriptor::isVariable().
Referenced by llvm::DwarfUnit::addVariableAddress().
| bool llvm::DbgVariable::isObjectPointer | ( | ) | const [inline] |
Definition at line 117 of file DwarfDebug.h.
References getType(), llvm::DIType::isObjectPointer(), and llvm::DIVariable::isObjectPointer().
Referenced by constructVariableDIE().
| void llvm::DbgVariable::setDIE | ( | DIE & | D | ) | [inline] |
Definition at line 93 of file DwarfDebug.h.
Referenced by llvm::DwarfUnit::constructVariableDIE().
| void llvm::DbgVariable::setDotDebugLocOffset | ( | unsigned | O | ) | [inline] |
Definition at line 95 of file DwarfDebug.h.
| void llvm::DbgVariable::setFrameIndex | ( | int | FI | ) | [inline] |
Definition at line 100 of file DwarfDebug.h.
| bool llvm::DbgVariable::variableHasComplexAddress | ( | ) | const [inline] |
Definition at line 125 of file DwarfDebug.h.
References llvm::DIVariable::hasComplexAddress(), and llvm::DIDescriptor::isVariable().
Referenced by llvm::DwarfUnit::addVariableAddress().