LLVM  3.7.0
Public Member Functions | List of all members
llvm::DIELoc Class Reference

DIELoc - Represents an expression location. More...

#include <DIE.h>

Inheritance diagram for llvm::DIELoc:
[legend]
Collaboration diagram for llvm::DIELoc:
[legend]

Public Member Functions

 DIELoc ()
 
unsigned ComputeSize (const AsmPrinter *AP) const
 ComputeSize - Calculate the size of the location expression. More...
 
dwarf::Form BestForm (unsigned DwarfVersion) const
 BestForm - Choose the best form for data. More...
 
void EmitValue (const AsmPrinter *AP, dwarf::Form Form) const
 EmitValue - Emit location data. More...
 
unsigned SizeOf (const AsmPrinter *AP, dwarf::Form Form) const
 SizeOf - Determine size of location data in bytes. More...
 
void print (raw_ostream &O) const
 
- Public Member Functions inherited from llvm::DIE
unsigned getAbbrevNumber () const
 
dwarf::Tag getTag () const
 
unsigned getOffset () const
 
unsigned getSize () const
 
bool hasChildren () const
 
child_range children ()
 
const_child_range children () const
 
value_range values ()
 
const_value_range values () const
 
DIEgetParent () const
 
DIEAbbrev generateAbbrev () const
 Generate the abbreviation for this DIE. More...
 
void setAbbrevNumber (unsigned I)
 Set the abbreviation number for this DIE. More...
 
const DIEgetUnit () const
 Climb up the parent chain to get the compile or type unit DIE this DIE belongs to. More...
 
const DIEgetUnitOrNull () const
 Similar to getUnit, returns null when DIE is not added to an owner yet. More...
 
void setOffset (unsigned O)
 
void setSize (unsigned S)
 
value_iterator addValue (BumpPtrAllocator &Alloc, DIEValue Value)
 addValue - Add a value and attributes to a DIE. More...
 
template<class T >
value_iterator addValue (BumpPtrAllocator &Alloc, dwarf::Attribute Attribute, dwarf::Form Form, T &&Value)
 
DIEaddChild (DIE *Child)
 Add a child to the DIE. More...
 
DIEValue findAttribute (dwarf::Attribute Attribute) const
 Find a value in the DIE with the attribute given. More...
 
void print (raw_ostream &O, unsigned IndentCount=0) const
 
void dump ()
 

Additional Inherited Members

- Public Types inherited from llvm::DIE
typedef IntrusiveBackList< DIE >
::iterator 
child_iterator
 
typedef IntrusiveBackList< DIE >
::const_iterator 
const_child_iterator
 
typedef iterator_range
< child_iterator
child_range
 
typedef iterator_range
< const_child_iterator
const_child_range
 
typedef DIEValueList::iterator value_iterator
 
typedef iterator_range
< value_iterator
value_range
 
typedef
DIEValueList::const_iterator 
const_value_iterator
 
typedef iterator_range
< const_value_iterator
const_value_range
 
- Static Public Member Functions inherited from llvm::DIE
static DIEget (BumpPtrAllocator &Alloc, dwarf::Tag Tag)
 
- Protected Member Functions inherited from llvm::DIE
 DIE ()
 
- Protected Attributes inherited from llvm::DIE
unsigned Offset
 Offset - Offset in debug info section. More...
 
unsigned Size
 Size - Size of instance + children. More...
 
unsigned AbbrevNumber = ~0u
 
dwarf::Tag Tag = (dwarf::Tag)0
 Tag - Dwarf tag code. More...
 
IntrusiveBackList< DIEChildren
 Children DIEs. More...
 
DIEParent = nullptr
 
DIEValueList Values
 Attribute values. More...
 

Detailed Description

DIELoc - Represents an expression location.

Definition at line 748 of file DIE.h.

Constructor & Destructor Documentation

llvm::DIELoc::DIELoc ( )
inline

Definition at line 752 of file DIE.h.

Member Function Documentation

dwarf::Form llvm::DIELoc::BestForm ( unsigned  DwarfVersion) const
inline

BestForm - Choose the best form for data.

Definition at line 760 of file DIE.h.

References llvm::dwarf::DW_FORM_block, llvm::dwarf::DW_FORM_block1, llvm::dwarf::DW_FORM_block2, llvm::dwarf::DW_FORM_block4, and llvm::dwarf::DW_FORM_exprloc.

Referenced by llvm::DwarfUnit::addBlock().

unsigned DIELoc::ComputeSize ( const AsmPrinter AP) const

ComputeSize - Calculate the size of the location expression.

ComputeSize - calculate the size of the location expression.

Definition at line 506 of file DIE.cpp.

References llvm::DIE::Values.

Referenced by llvm::DwarfUnit::addBlock().

void DIELoc::EmitValue ( const AsmPrinter AP,
dwarf::Form  Form 
) const
void DIELoc::print ( raw_ostream O) const

Definition at line 547 of file DIE.cpp.

References llvm::DIE::print().

unsigned DIELoc::SizeOf ( const AsmPrinter AP,
dwarf::Form  Form 
) const

The documentation for this class was generated from the following files: