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

Helps unique DIEAbbrev objects and assigns abbreviation numbers. More...

#include "llvm/CodeGen/DIE.h"

Public Member Functions

 DIEAbbrevSet (BumpPtrAllocator &A)
 
 ~DIEAbbrevSet ()
 
DIEAbbrevuniqueAbbreviation (DIE &Die)
 Generate the abbreviation declaration for a DIE and return a pointer to the generated abbreviation.
 
void Emit (const AsmPrinter *AP, MCSection *Section) const
 Print all abbreviations using the specified asm printer.
 

Detailed Description

Helps unique DIEAbbrev objects and assigns abbreviation numbers.

This class will unique the DIE abbreviations for a llvm::DIE object and assign a unique abbreviation number to each unique DIEAbbrev object it finds. The resulting collection of DIEAbbrev objects can then be emitted into the .debug_abbrev section.

Definition at line 140 of file DIE.h.

Constructor & Destructor Documentation

◆ DIEAbbrevSet()

llvm::DIEAbbrevSet::DIEAbbrevSet ( BumpPtrAllocator A)
inline

Definition at line 150 of file DIE.h.

◆ ~DIEAbbrevSet()

DIEAbbrevSet::~DIEAbbrevSet ( )

Definition at line 131 of file DIE.cpp.

Member Function Documentation

◆ Emit()

void DIEAbbrevSet::Emit ( const AsmPrinter AP,
MCSection Section 
) const

Print all abbreviations using the specified asm printer.

Definition at line 160 of file DIE.cpp.

References llvm::AsmPrinter::emitDwarfAbbrevs(), and llvm::AsmPrinter::OutStreamer.

Referenced by llvm::DwarfFile::emitAbbrevs().

◆ uniqueAbbreviation()

DIEAbbrev & DIEAbbrevSet::uniqueAbbreviation ( DIE Die)

Generate the abbreviation declaration for a DIE and return a pointer to the generated abbreviation.

Parameters
Diethe debug info entry to generate the abbreviation for.
Returns
A reference to the uniqued abbreviation declaration that is owned by this class.

Definition at line 136 of file DIE.cpp.

References llvm::DIE::generateAbbrev(), llvm::DIEAbbrev::Profile(), and llvm::DIE::setAbbrevNumber().

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


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