LLVM 20.0.0git
Public Member Functions | Static Public Member Functions | Friends | List of all members
llvm::MCCVInlineLineTableFragment Class Reference

Fragment representing the binary annotations produced by the .cv_inline_linetable directive. More...

#include "llvm/MC/MCFragment.h"

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

Public Member Functions

 MCCVInlineLineTableFragment (unsigned SiteFuncId, unsigned StartFileId, unsigned StartLineNum, const MCSymbol *FnStartSym, const MCSymbol *FnEndSym)
 
const MCSymbolgetFnStartSym () const
 
const MCSymbolgetFnEndSym () const
 
SmallString< 8 > & getContents ()
 
const SmallString< 8 > & getContents () const
 
- Public Member Functions inherited from llvm::MCFragment
 MCFragment ()=delete
 
 MCFragment (const MCFragment &)=delete
 
MCFragmentoperator= (const MCFragment &)=delete
 
void destroy ()
 Destroys the current fragment.
 
MCFragmentgetNext () const
 
FragmentType getKind () const
 
MCSectiongetParent () const
 
void setParent (MCSection *Value)
 
const MCSymbolgetAtom () const
 
unsigned getLayoutOrder () const
 
void setLayoutOrder (unsigned Value)
 
bool hasInstructions () const
 Does this fragment have instructions emitted into it? By default this is false, but specific fragment types may set it to true.
 
void dump () const
 

Static Public Member Functions

static bool classof (const MCFragment *F)
 

Friends

class CodeViewContext
 CodeViewContext has the real knowledge about this format, so let it access our members.
 

Additional Inherited Members

- Public Types inherited from llvm::MCFragment
enum  FragmentType : uint8_t {
  FT_Align , FT_Data , FT_Fill , FT_Nops ,
  FT_Relaxable , FT_Org , FT_Dwarf , FT_DwarfFrame ,
  FT_LEB , FT_BoundaryAlign , FT_SymbolId , FT_CVInlineLines ,
  FT_CVDefRange , FT_PseudoProbe , FT_Dummy
}
 
- Protected Member Functions inherited from llvm::MCFragment
 MCFragment (FragmentType Kind, bool HasInstructions)
 
- Protected Attributes inherited from llvm::MCFragment
bool HasInstructions: 1
 Used by subclasses for better packing.
 
bool AlignToBundleEnd: 1
 
bool LinkerRelaxable: 1
 MCDataFragment.
 
bool AllowAutoPadding: 1
 MCRelaxableFragment: x86-specific.
 

Detailed Description

Fragment representing the binary annotations produced by the .cv_inline_linetable directive.

Definition at line 471 of file MCFragment.h.

Constructor & Destructor Documentation

◆ MCCVInlineLineTableFragment()

llvm::MCCVInlineLineTableFragment::MCCVInlineLineTableFragment ( unsigned  SiteFuncId,
unsigned  StartFileId,
unsigned  StartLineNum,
const MCSymbol FnStartSym,
const MCSymbol FnEndSym 
)
inline

Definition at line 484 of file MCFragment.h.

Member Function Documentation

◆ classof()

static bool llvm::MCCVInlineLineTableFragment::classof ( const MCFragment F)
inlinestatic

Definition at line 497 of file MCFragment.h.

References F, and llvm::MCFragment::FT_CVInlineLines.

◆ getContents() [1/2]

SmallString< 8 > & llvm::MCCVInlineLineTableFragment::getContents ( )
inline

Definition at line 494 of file MCFragment.h.

Referenced by llvm::CodeViewContext::encodeInlineLineTable().

◆ getContents() [2/2]

const SmallString< 8 > & llvm::MCCVInlineLineTableFragment::getContents ( ) const
inline

Definition at line 495 of file MCFragment.h.

◆ getFnEndSym()

const MCSymbol * llvm::MCCVInlineLineTableFragment::getFnEndSym ( ) const
inline

Definition at line 492 of file MCFragment.h.

Referenced by llvm::CodeViewContext::encodeInlineLineTable().

◆ getFnStartSym()

const MCSymbol * llvm::MCCVInlineLineTableFragment::getFnStartSym ( ) const
inline

Definition at line 491 of file MCFragment.h.

Referenced by llvm::CodeViewContext::encodeInlineLineTable().

Friends And Related Function Documentation

◆ CodeViewContext

friend class CodeViewContext
friend

CodeViewContext has the real knowledge about this format, so let it access our members.

Definition at line 481 of file MCFragment.h.


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