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

DIELoc - Represents an expression location. More...

#include "llvm/CodeGen/DIE.h"

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

Public Member Functions

 DIELoc ()=default
 
unsigned computeSize (const dwarf::FormParams &FormParams) const
 Calculate the size of the location expression.
 
void setSize (unsigned size)
 
dwarf::Form BestForm (unsigned DwarfVersion) const
 BestForm - Choose the best form for data.
 
void emitValue (const AsmPrinter *Asm, dwarf::Form Form) const
 EmitValue - Emit location data.
 
unsigned sizeOf (const dwarf::FormParams &, dwarf::Form Form) const
 sizeOf - Determine size of location data in bytes.
 
void print (raw_ostream &O) const
 
- Public Member Functions inherited from llvm::DIEValueList
value_iterator addValue (BumpPtrAllocator &Alloc, const DIEValue &V)
 
template<class T >
value_iterator addValue (BumpPtrAllocator &Alloc, dwarf::Attribute Attribute, dwarf::Form Form, T &&Value)
 
template<class T >
bool replaceValue (BumpPtrAllocator &Alloc, dwarf::Attribute Attribute, dwarf::Attribute NewAttribute, dwarf::Form Form, T &&NewValue)
 
template<class T >
bool replaceValue (BumpPtrAllocator &Alloc, dwarf::Attribute Attribute, dwarf::Form Form, T &&NewValue)
 
bool replaceValue (BumpPtrAllocator &Alloc, dwarf::Attribute Attribute, dwarf::Form Form, DIEValue &NewValue)
 
bool deleteValue (dwarf::Attribute Attribute)
 
void takeValues (DIEValueList &Other)
 Take ownership of the nodes in Other, and append them to the back of the list.
 
value_range values ()
 
const_value_range values () const
 

Additional Inherited Members

- Public Types inherited from llvm::DIEValueList
using value_range = iterator_range< value_iterator >
 
using const_value_range = iterator_range< const_value_iterator >
 

Detailed Description

DIELoc - Represents an expression location.

Definition at line 1010 of file DIE.h.

Constructor & Destructor Documentation

◆ DIELoc()

llvm::DIELoc::DIELoc ( )
default

Member Function Documentation

◆ BestForm()

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

BestForm - Choose the best form for data.

Definition at line 1024 of file DIE.h.

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

◆ computeSize()

unsigned DIELoc::computeSize ( const dwarf::FormParams FormParams) const

Calculate the size of the location expression.

Definition at line 706 of file DIE.cpp.

References llvm::DIEValueList::values().

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

◆ emitValue()

void DIELoc::emitValue ( const AsmPrinter Asm,
dwarf::Form  Form 
) const

EmitValue - Emit location data.

Definition at line 717 of file DIE.cpp.

References llvm_unreachable, and llvm::DIEValueList::values().

◆ print()

LLVM_DUMP_METHOD void DIELoc::print ( raw_ostream O) const

Definition at line 748 of file DIE.cpp.

References printValues().

◆ setSize()

void llvm::DIELoc::setSize ( unsigned  size)
inline

Definition at line 1020 of file DIE.h.

References llvm::size().

Referenced by llvm::dwarf_linker::parallel::DIEGenerator::addLocationAttribute().

◆ sizeOf()

unsigned DIELoc::sizeOf ( const dwarf::FormParams ,
dwarf::Form  Form 
) const

sizeOf - Determine size of location data in bytes.

Definition at line 735 of file DIE.cpp.

References llvm::getULEB128Size(), and llvm_unreachable.


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