LLVM API Documentation

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Public Types | Public Member Functions | Static Public Member Functions | List of all members
llvm::DWARFFormValue Class Reference

#include <DWARFFormValue.h>

Public Types

enum  FormClass {
  FC_Unknown, FC_Address, FC_Block, FC_Constant,
  FC_String, FC_Flag, FC_Reference, FC_Indirect,
  FC_SectionOffset, FC_Exprloc
}
 

Public Member Functions

 DWARFFormValue (uint16_t Form=0)
 
uint16_t getForm () const
 
bool isFormClass (FormClass FC) const
 
void dump (raw_ostream &OS, const DWARFUnit *U) const
 
bool extractValue (DataExtractor data, uint32_t *offset_ptr, const DWARFUnit *u)
 
bool isInlinedCStr () const
 
Optional< uint64_t > getAsReference (const DWARFUnit *U) const
 
Optional< uint64_t > getAsUnsignedConstant () const
 
Optional< const char * > getAsCString (const DWARFUnit *U) const
 
Optional< uint64_t > getAsAddress (const DWARFUnit *U) const
 
Optional< uint64_t > getAsSectionOffset () const
 
bool skipValue (DataExtractor debug_info_data, uint32_t *offset_ptr, const DWARFUnit *u) const
 

Static Public Member Functions

static bool skipValue (uint16_t form, DataExtractor debug_info_data, uint32_t *offset_ptr, const DWARFUnit *u)
 
static ArrayRef< uint8_t > getFixedFormSizes (uint8_t AddrSize, uint16_t Version)
 

Detailed Description

Definition at line 22 of file DWARFFormValue.h.

Member Enumeration Documentation

Enumerator
FC_Unknown 
FC_Address 
FC_Block 
FC_Constant 
FC_String 
FC_Flag 
FC_Reference 
FC_Indirect 
FC_SectionOffset 
FC_Exprloc 

Definition at line 24 of file DWARFFormValue.h.

Constructor & Destructor Documentation

llvm::DWARFFormValue::DWARFFormValue ( uint16_t  Form = 0)
inline

Definition at line 55 of file DWARFFormValue.h.

Member Function Documentation

void DWARFFormValue::dump ( raw_ostream OS,
const DWARFUnit U 
) const
bool DWARFFormValue::extractValue ( DataExtractor  data,
uint32_t *  offset_ptr,
const DWARFUnit u 
)
Optional< uint64_t > DWARFFormValue::getAsAddress ( const DWARFUnit U) const
Optional< const char * > DWARFFormValue::getAsCString ( const DWARFUnit U) const
Optional< uint64_t > DWARFFormValue::getAsReference ( const DWARFUnit U) const

getAsFoo functions below return the extracted value as Foo if only DWARFFormValue has form class is suitable for representing Foo.

Definition at line 519 of file DWARFFormValue.cpp.

References llvm::DWARFUnit::getOffset(), and llvm::None.

Referenced by llvm::DWARFDebugInfoEntryMinimal::getAttributeValueAsReference().

Optional< uint64_t > DWARFFormValue::getAsSectionOffset ( ) const
Optional< uint64_t > DWARFFormValue::getAsUnsignedConstant ( ) const
ArrayRef< uint8_t > DWARFFormValue::getFixedFormSizes ( uint8_t  AddrSize,
uint16_t  Version 
)
static

Definition at line 63 of file DWARFFormValue.cpp.

References llvm::None.

Referenced by llvm::DWARFDebugInfoEntryMinimal::extractFast().

uint16_t llvm::DWARFFormValue::getForm ( ) const
inline

Definition at line 56 of file DWARFFormValue.h.

bool DWARFFormValue::isFormClass ( DWARFFormValue::FormClass  FC) const

Definition at line 108 of file DWARFFormValue.cpp.

References DWARF4FormClasses.

bool llvm::DWARFFormValue::isInlinedCStr ( ) const
inline

Definition at line 62 of file DWARFFormValue.h.

bool DWARFFormValue::skipValue ( DataExtractor  debug_info_data,
uint32_t *  offset_ptr,
const DWARFUnit u 
) const
bool DWARFFormValue::skipValue ( uint16_t  form,
DataExtractor  debug_info_data,
uint32_t *  offset_ptr,
const DWARFUnit u 
)
static

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