LLVM API Documentation
#include <DebugInfo.h>


Public Types | |
| enum | { Version7 = 7 << 16, Version6 = 6 << 16, Version5 = 5 << 16, Version4 = 4 << 16, VersionMask = 0xffff0000 } |
Public Member Functions | |
| DIDescriptor () | |
| DIDescriptor (GlobalVariable *gv) | |
| bool | isNull () const |
| GlobalVariable * | getGV () const |
| unsigned | getVersion () const |
| unsigned | getTag () const |
Static Public Member Functions | |
| static bool | classof (const DIDescriptor *D) |
Protected Member Functions | |
| DIDescriptor (GlobalVariable *GV, unsigned RequiredTag) | |
| std::string | getStringField (unsigned Elt) const |
| unsigned | getUnsignedField (unsigned Elt) const |
| uint64_t | getUInt64Field (unsigned Elt) const |
| DIDescriptor | getDescriptorField (unsigned Elt) const |
| template<typename DescTy> | |
| DescTy | getFieldAs (unsigned Elt) const |
| GlobalVariable * | getGlobalVariableField (unsigned Elt) const |
Protected Attributes | |
| GlobalVariable * | GV |
Definition at line 33 of file DebugInfo.h.
| anonymous enum |
Definition at line 35 of file DebugInfo.h.
| DIDescriptor::DIDescriptor | ( | GlobalVariable * | GV, | |
| unsigned | RequiredTag | |||
| ) | [protected] |
DIDescriptor constructor. If the specified GV is non-null, this checks to make sure that the tag in the descriptor matches 'RequiredTag'. If not, the debug info is corrupt and we ignore it.
Definition at line 30 of file DebugInfo.cpp.
| llvm::DIDescriptor::DIDescriptor | ( | ) | [inline, explicit] |
| llvm::DIDescriptor::DIDescriptor | ( | GlobalVariable * | gv | ) | [inline, explicit] |
Definition at line 67 of file DebugInfo.h.
| std::string DIDescriptor::getStringField | ( | unsigned | Elt | ) | const [protected] |
Definition at line 39 of file DebugInfo.cpp.
References llvm::CallingConv::C, llvm::GetConstantStringInfo(), llvm::GlobalVariable::getInitializer(), llvm::User::getNumOperands(), llvm::Constant::getOperand(), and GV.
Referenced by llvm::DIVariable::getDirectory(), llvm::DIGlobalVariable::getDirectory(), llvm::DISubprogram::getDirectory(), llvm::DICompositeType::getDirectory(), llvm::DIDerivedType::getDirectory(), llvm::DIBasicType::getDirectory(), llvm::DICompileUnit::getDirectory(), llvm::DIGlobal::getDisplayName(), llvm::DIVariable::getFilename(), llvm::DIGlobalVariable::getFilename(), llvm::DISubprogram::getFilename(), llvm::DICompositeType::getFilename(), llvm::DIDerivedType::getFilename(), llvm::DIBasicType::getFilename(), llvm::DICompileUnit::getFilename(), llvm::DIGlobal::getLinkageName(), llvm::DIVariable::getName(), llvm::DIGlobal::getName(), llvm::DIType::getName(), llvm::DIEnumerator::getName(), and llvm::DICompileUnit::getProducer().
Definition at line 52 of file DebugInfo.h.
References getUInt64Field().
Referenced by llvm::DIAnchor::getAnchorTag(), llvm::DIBasicType::getEncoding(), llvm::DIType::getFlags(), llvm::DICompileUnit::getLanguage(), llvm::DIVariable::getLineNumber(), llvm::DIGlobal::getLineNumber(), llvm::DIType::getLineNumber(), getTag(), getVersion(), llvm::DIGlobal::isDefinition(), and llvm::DIGlobal::isLocalToUnit().
| uint64_t DIDescriptor::getUInt64Field | ( | unsigned | Elt | ) | const [protected] |
Definition at line 52 of file DebugInfo.cpp.
References llvm::CallingConv::C, CI, llvm::GlobalVariable::getInitializer(), llvm::User::getNumOperands(), llvm::Constant::getOperand(), and GV.
Referenced by llvm::DIType::getAlignInBits(), llvm::DIEnumerator::getEnumValue(), llvm::DISubrange::getHi(), llvm::DISubrange::getLo(), llvm::DIType::getOffsetInBits(), llvm::DIType::getSizeInBits(), and getUnsignedField().
| DIDescriptor DIDescriptor::getDescriptorField | ( | unsigned | Elt | ) | const [protected] |
Definition at line 63 of file DebugInfo.cpp.
References llvm::CallingConv::C, DIDescriptor(), llvm::GlobalVariable::getInitializer(), llvm::User::getNumOperands(), llvm::Constant::getOperand(), GV, and llvm::Value::stripPointerCasts().
Referenced by llvm::DIBlock::getContext(), llvm::DIVariable::getContext(), llvm::DIGlobal::getContext(), llvm::DIType::getContext(), llvm::DIArray::getElement(), and getFieldAs().
| DescTy llvm::DIDescriptor::getFieldAs | ( | unsigned | Elt | ) | const [inline, protected] |
| GlobalVariable * DIDescriptor::getGlobalVariableField | ( | unsigned | Elt | ) | const [protected] |
Definition at line 72 of file DebugInfo.cpp.
References llvm::CallingConv::C, llvm::dyn_cast(), llvm::GlobalVariable::getInitializer(), llvm::User::getNumOperands(), llvm::Constant::getOperand(), GV, and llvm::Value::stripPointerCasts().
Referenced by llvm::DIGlobalVariable::getGlobal().
| bool llvm::DIDescriptor::isNull | ( | ) | const [inline] |
Definition at line 69 of file DebugInfo.h.
References GV.
Referenced by llvm::DIFactory::GetOrCreateCompileUnitAnchor(), llvm::DIFactory::GetOrCreateGlobalVariableAnchor(), llvm::DIFactory::GetOrCreateSubprogramAnchor(), and llvm::DIFactory::GetOrCreateSubrange().
| GlobalVariable* llvm::DIDescriptor::getGV | ( | ) | const [inline] |
Definition at line 71 of file DebugInfo.h.
References GV.
Referenced by getFieldAs(), and llvm::DIFactory::GetOrCreateSubrange().
| unsigned llvm::DIDescriptor::getVersion | ( | ) | const [inline] |
| unsigned llvm::DIDescriptor::getTag | ( | ) | const [inline] |
Definition at line 77 of file DebugInfo.h.
References getUnsignedField(), and VersionMask.
Referenced by llvm::DICompositeType::classof(), llvm::DIDerivedType::classof(), llvm::DISubrange::classof(), llvm::DICompositeType::DICompositeType(), llvm::DIDerivedType::DIDerivedType(), DIDescriptor(), llvm::DIType::DIType(), and llvm::DIVariable::DIVariable().
| static bool llvm::DIDescriptor::classof | ( | const DIDescriptor * | D | ) | [inline, static] |
Reimplemented in llvm::DISubrange, llvm::DIDerivedType, and llvm::DICompositeType.
Definition at line 80 of file DebugInfo.h.
GlobalVariable* llvm::DIDescriptor::GV [protected] |
Definition at line 44 of file DebugInfo.h.
Referenced by DIDescriptor(), llvm::DIType::DIType(), getDescriptorField(), getGlobalVariableField(), getGV(), llvm::DIArray::getNumElements(), getStringField(), getUInt64Field(), and isNull().
This web site is hosted by the Computer Science Department at the University of Illinois at Urbana-Champaign.