LLVM API Documentation

llvm::DIEBlock Struct Reference

Inheritance diagram for llvm::DIEBlock:

Inheritance graph
[legend]
Collaboration diagram for llvm::DIEBlock:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 DIEBlock ()
 ~DIEBlock ()
unsigned ComputeSize (DwarfWriter &DW)
unsigned BestForm ()
virtual void EmitValue (const DwarfWriter &DW, unsigned Form) const
virtual unsigned SizeOf (const DwarfWriter &DW, unsigned Form) const
void AddUInt (unsigned Form, uint64_t Integer)
void AddSInt (unsigned Form, int64_t Integer)
void AddString (unsigned Form, const std::string &String)
void AddLabel (unsigned Form, const DWLabel &Label)
void AddObjectLabel (unsigned Form, const std::string &Label)
void AddDelta (unsigned Form, const DWLabel &Hi, const DWLabel &Lo)
void AddDIEntry (unsigned Form, DIE *Entry)

Static Public Member Functions

static bool classof (const DIEBlock *)
static bool classof (const DIEValue *E)

Public Attributes

unsigned Size
std::vector< unsigned > Forms
std::vector< DIEValue * > Values

Detailed Description

Definition at line 355 of file DwarfWriter.cpp.


Constructor & Destructor Documentation

llvm::DIEBlock::DIEBlock (  )  [inline]

Definition at line 360 of file DwarfWriter.cpp.

DIEBlock::~DIEBlock (  ) 

Definition at line 722 of file DwarfWriter.cpp.

References Values.


Member Function Documentation

void DIEBlock::AddDelta ( unsigned  Form,
const DWLabel Hi,
const DWLabel Lo 
)

AddDelta - Add a label delta value.

Definition at line 817 of file DwarfWriter.cpp.

References Forms, llvm::PPCISD::Hi, llvm::PPCISD::Lo, and Values.

void DIEBlock::AddDIEntry ( unsigned  Form,
DIE Entry 
)

AddDIEntry - Add a DIE value.

Definition at line 824 of file DwarfWriter.cpp.

References Forms, and Values.

void DIEBlock::AddLabel ( unsigned  Form,
const DWLabel Label 
)

AddLabel - Add a Dwarf label value.

Definition at line 803 of file DwarfWriter.cpp.

References Forms, and Values.

void DIEBlock::AddObjectLabel ( unsigned  Form,
const std::string &  Label 
)

AddObjectLabel - Add a non-Dwarf label value.

Definition at line 810 of file DwarfWriter.cpp.

References Forms, and Values.

void DIEBlock::AddSInt ( unsigned  Form,
int64_t  Integer 
)

AddSInt - Add an signed integer value.

Definition at line 787 of file DwarfWriter.cpp.

References llvm::DIEInteger::BestForm(), Forms, and Values.

void DIEBlock::AddString ( unsigned  Form,
const std::string &  String 
)

AddString - Add a std::string value.

Definition at line 796 of file DwarfWriter.cpp.

References Forms, and Values.

void DIEBlock::AddUInt ( unsigned  Form,
uint64_t  Integer 
)

AddUInt - Add an unsigned integer value.

Definition at line 778 of file DwarfWriter.cpp.

References llvm::DIEInteger::BestForm(), Forms, and Values.

unsigned DIEBlock::BestForm (  ) 

BestForm - Choose the best form for data.

Definition at line 740 of file DwarfWriter.cpp.

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

Referenced by llvm::DIE::AddBlock().

static bool llvm::DIEBlock::classof ( const DIEValue E  )  [inline, static]

Reimplemented from llvm::DIEValue.

Definition at line 370 of file DwarfWriter.cpp.

References E, and llvm::DIEValue::isBlock.

static bool llvm::DIEBlock::classof ( const DIEBlock  )  [inline, static]

Definition at line 369 of file DwarfWriter.cpp.

unsigned DIEBlock::ComputeSize ( DwarfWriter DW  ) 

ComputeSize - calculate the size of the block.

Definition at line 730 of file DwarfWriter.cpp.

References DW, Forms, Size, SizeOf(), and Values.

void DIEBlock::EmitValue ( const DwarfWriter DW,
unsigned  Form 
) const [virtual]

EmitValue - Emit block data.

Implements llvm::DIEValue.

Definition at line 749 of file DwarfWriter.cpp.

References DW, llvm::dwarf::DW_FORM_block, llvm::dwarf::DW_FORM_block1, llvm::dwarf::DW_FORM_block2, llvm::dwarf::DW_FORM_block4, Forms, Size, and Values.

unsigned DIEBlock::SizeOf ( const DwarfWriter DW,
unsigned  Form 
) const [virtual]

SizeOf - Determine size of block data in bytes.

Implements llvm::DIEValue.

Definition at line 765 of file DwarfWriter.cpp.

References DW, llvm::dwarf::DW_FORM_block, llvm::dwarf::DW_FORM_block1, llvm::dwarf::DW_FORM_block2, llvm::dwarf::DW_FORM_block4, and Size.

Referenced by ComputeSize().


Member Data Documentation

std::vector<unsigned> llvm::DIEBlock::Forms

Definition at line 357 of file DwarfWriter.cpp.

Referenced by AddDelta(), AddDIEntry(), AddLabel(), AddObjectLabel(), AddSInt(), AddString(), AddUInt(), ComputeSize(), and EmitValue().

unsigned llvm::DIEBlock::Size

Definition at line 356 of file DwarfWriter.cpp.

Referenced by llvm::DIE::AddBlock(), BestForm(), ComputeSize(), EmitValue(), and SizeOf().

std::vector<DIEValue *> llvm::DIEBlock::Values

Definition at line 358 of file DwarfWriter.cpp.

Referenced by AddDelta(), AddDIEntry(), AddLabel(), AddObjectLabel(), AddSInt(), AddString(), AddUInt(), ComputeSize(), EmitValue(), and ~DIEBlock().


The documentation for this struct was generated from the following file: