LLVM API Documentation
#include <MachineDebugInfo.h>
Inheritance diagram for llvm::DebugInfoDesc:
Public Member Functions | |
virtual | ~DebugInfoDesc () |
unsigned | getTag () const |
virtual GlobalValue::LinkageTypes | getLinkage () const |
virtual void | ApplyToFields (DIVisitor *Visitor) |
virtual const char * | getDescString () const =0 |
virtual const char * | getTypeString () const =0 |
virtual void | dump ()=0 |
Static Public Member Functions | |
static unsigned | TagFromGlobal (GlobalVariable *GV) |
static DebugInfoDesc * | DescFactory (unsigned Tag) |
static bool | classof (const DebugInfoDesc *) |
Protected Member Functions | |
DebugInfoDesc (unsigned T) |
Definition at line 91 of file MachineDebugInfo.h.
llvm::DebugInfoDesc::DebugInfoDesc | ( | unsigned | T | ) | [inline, protected] |
Definition at line 98 of file MachineDebugInfo.h.
virtual llvm::DebugInfoDesc::~DebugInfoDesc | ( | ) | [inline, virtual] |
Definition at line 101 of file MachineDebugInfo.h.
void DebugInfoDesc::ApplyToFields | ( | DIVisitor * | Visitor | ) | [virtual] |
ApplyToFields - Target the vistor to the fields of the descriptor.
Reimplemented in llvm::AnchorDesc, llvm::AnchoredDesc, llvm::CompileUnitDesc, llvm::TypeDesc, llvm::BasicTypeDesc, llvm::DerivedTypeDesc, llvm::CompositeTypeDesc, llvm::SubrangeDesc, llvm::EnumeratorDesc, llvm::VariableDesc, llvm::GlobalDesc, llvm::GlobalVariableDesc, llvm::SubprogramDesc, and llvm::BlockDesc.
Definition at line 504 of file MachineDebugInfo.cpp.
References llvm::DIVisitor::Apply().
Referenced by llvm::BlockDesc::ApplyToFields(), llvm::VariableDesc::ApplyToFields(), llvm::EnumeratorDesc::ApplyToFields(), llvm::SubrangeDesc::ApplyToFields(), llvm::TypeDesc::ApplyToFields(), llvm::AnchoredDesc::ApplyToFields(), and llvm::AnchorDesc::ApplyToFields().
static bool llvm::DebugInfoDesc::classof | ( | const DebugInfoDesc * | ) | [inline, static] |
Reimplemented in llvm::AnchorDesc, llvm::CompileUnitDesc, llvm::BasicTypeDesc, llvm::DerivedTypeDesc, llvm::CompositeTypeDesc, llvm::SubrangeDesc, llvm::EnumeratorDesc, llvm::VariableDesc, llvm::GlobalVariableDesc, llvm::SubprogramDesc, and llvm::BlockDesc.
Definition at line 122 of file MachineDebugInfo.h.
DebugInfoDesc * DebugInfoDesc::DescFactory | ( | unsigned | Tag | ) | [static] |
DescFactory - Create an instance of debug info descriptor based on Tag. Return NULL if not a recognized Tag.
Definition at line 467 of file MachineDebugInfo.cpp.
References llvm::dwarf::DW_TAG_anchor, llvm::dwarf::DW_TAG_arg_variable, llvm::dwarf::DW_TAG_array_type, llvm::dwarf::DW_TAG_auto_variable, llvm::dwarf::DW_TAG_base_type, llvm::dwarf::DW_TAG_compile_unit, llvm::dwarf::DW_TAG_const_type, llvm::dwarf::DW_TAG_enumeration_type, llvm::dwarf::DW_TAG_enumerator, llvm::dwarf::DW_TAG_lexical_block, llvm::dwarf::DW_TAG_member, llvm::dwarf::DW_TAG_pointer_type, llvm::dwarf::DW_TAG_reference_type, llvm::dwarf::DW_TAG_restrict_type, llvm::dwarf::DW_TAG_return_variable, llvm::dwarf::DW_TAG_structure_type, llvm::dwarf::DW_TAG_subprogram, llvm::dwarf::DW_TAG_subrange_type, llvm::dwarf::DW_TAG_typedef, llvm::dwarf::DW_TAG_union_type, llvm::dwarf::DW_TAG_variable, and llvm::dwarf::DW_TAG_volatile_type.
Referenced by llvm::DIDeserializer::Deserialize(), and llvm::DIVerifier::Verify().
virtual void llvm::DebugInfoDesc::dump | ( | ) | [pure virtual] |
virtual const char* llvm::DebugInfoDesc::getDescString | ( | ) | const [pure virtual] |
getDescString - Return a string used to compose global names and labels.
Implemented in llvm::AnchorDesc, llvm::CompileUnitDesc, llvm::TypeDesc, llvm::BasicTypeDesc, llvm::DerivedTypeDesc, llvm::CompositeTypeDesc, llvm::SubrangeDesc, llvm::EnumeratorDesc, llvm::VariableDesc, llvm::GlobalVariableDesc, llvm::SubprogramDesc, and llvm::BlockDesc.
GlobalValue::LinkageTypes DebugInfoDesc::getLinkage | ( | ) | const [virtual] |
getLinkage - get linkage appropriate for this type of descriptor.
Reimplemented in llvm::AnchorDesc.
Definition at line 498 of file MachineDebugInfo.cpp.
References llvm::GlobalValue::InternalLinkage.
unsigned llvm::DebugInfoDesc::getTag | ( | ) | const [inline] |
Definition at line 104 of file MachineDebugInfo.h.
Referenced by llvm::BlockDesc::dump(), llvm::SubprogramDesc::dump(), llvm::GlobalVariableDesc::dump(), llvm::VariableDesc::dump(), llvm::EnumeratorDesc::dump(), llvm::SubrangeDesc::dump(), llvm::CompositeTypeDesc::dump(), llvm::DerivedTypeDesc::dump(), llvm::BasicTypeDesc::dump(), llvm::TypeDesc::dump(), llvm::CompileUnitDesc::dump(), and llvm::AnchorDesc::dump().
virtual const char* llvm::DebugInfoDesc::getTypeString | ( | ) | const [pure virtual] |
getTypeString - Return a string used to label this descriptor's type.
Implemented in llvm::AnchorDesc, llvm::CompileUnitDesc, llvm::TypeDesc, llvm::BasicTypeDesc, llvm::DerivedTypeDesc, llvm::CompositeTypeDesc, llvm::SubrangeDesc, llvm::EnumeratorDesc, llvm::VariableDesc, llvm::GlobalVariableDesc, llvm::SubprogramDesc, and llvm::BlockDesc.
unsigned DebugInfoDesc::TagFromGlobal | ( | GlobalVariable * | GV | ) | [static] |
TagFromGlobal - Returns the Tag number from a debug info descriptor GlobalVariable. Return DIIValid if operand is not an unsigned int.
Definition at line 460 of file MachineDebugInfo.cpp.
References llvm::CallingConv::C, llvm::dwarf::DW_TAG_invalid, getUIntOperand(), and GV.
Referenced by llvm::DIDeserializer::Deserialize(), llvm::MachineDebugInfo::getAnchoredDescriptors(), and llvm::DIVerifier::Verify().