LLVM 22.0.0git
llvm::MCCVInlineLineTableFragment Class Reference

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

#include "llvm/MC/MCSection.h"

Inheritance diagram for llvm::MCCVInlineLineTableFragment:
[legend]

Public Member Functions

 MCCVInlineLineTableFragment (unsigned SiteFuncId, unsigned StartFileId, unsigned StartLineNum, const MCSymbol *FnStartSym, const MCSymbol *FnEndSym)
const MCSymbolgetFnStartSym () const
const MCSymbolgetFnEndSym () const
Public Member Functions inherited from llvm::MCFragment
LLVM_ABI MCFragment (FragmentType Kind=MCFragment::FT_Data, bool HasInstructions=false)
 MCFragment (const MCFragment &)=delete
MCFragmentoperator= (const MCFragment &)=delete
MCFragmentgetNext () const
FragmentType getKind () const
MCSectiongetParent () const
void setParent (MCSection *Value)
LLVM_ABI const MCSymbolgetAtom () const
unsigned getLayoutOrder () const
void setLayoutOrder (unsigned Value)
bool hasInstructions () const
 Does this fragment have instructions emitted into it?
LLVM_ABI void dump () const
const MCSubtargetInfogetSubtargetInfo () const
 Retrieve the MCSubTargetInfo in effect when the instruction was encoded.
void setHasInstructions (const MCSubtargetInfo &STI)
 Record that the fragment contains instructions with the MCSubtargetInfo in effect when the instruction was encoded.
bool isLinkerRelaxable () const
void setLinkerRelaxable ()
bool getAllowAutoPadding () const
void setAllowAutoPadding (bool V)
MutableArrayRef< chargetContents ()
ArrayRef< chargetContents () const
LLVM_ABI void setVarContents (ArrayRef< char > Contents)
void clearVarContents ()
MutableArrayRef< chargetVarContents ()
ArrayRef< chargetVarContents () const
size_t getFixedSize () const
size_t getVarSize () const
size_t getSize () const
void clearFixups ()
LLVM_ABI void addFixup (MCFixup Fixup)
LLVM_ABI void appendFixups (ArrayRef< MCFixup > Fixups)
MutableArrayRef< MCFixupgetFixups ()
ArrayRef< MCFixupgetFixups () const
LLVM_ABI void setVarFixups (ArrayRef< MCFixup > Fixups)
void clearVarFixups ()
MutableArrayRef< MCFixupgetVarFixups ()
ArrayRef< MCFixupgetVarFixups () const
unsigned getOpcode () const
ArrayRef< MCOperandgetOperands () const
MCInst getInst () const
void setInst (const MCInst &Inst)
void makeAlign (Align Alignment, int64_t Fill, uint8_t FillLen, unsigned MaxBytesToEmit)
Align getAlignment () const
int64_t getAlignFill () const
uint8_t getAlignFillLen () const
unsigned getAlignMaxBytesToEmit () const
bool hasAlignEmitNops () const
void makeLEB (bool IsSigned, const MCExpr *Value)
const MCExprgetLEBValue () const
void setLEBValue (const MCExpr *Expr)
bool isLEBSigned () const
const MCExprgetDwarfAddrDelta () const
void setDwarfAddrDelta (const MCExpr *E)
int64_t getDwarfLineDelta () const
void setDwarfLineDelta (int64_t LineDelta)
const MCExprgetSFrameAddrDelta () const
void setSFrameAddrDelta (const MCExpr *E)
MCFragmentgetSFrameFDE () const
void setSFrameFDE (MCFragment *F)

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_Data , FT_Relaxable , FT_Align , FT_Fill ,
  FT_LEB , FT_Nops , FT_Org , FT_Dwarf ,
  FT_DwarfFrame , FT_SFrame , FT_BoundaryAlign , FT_SymbolId ,
  FT_CVInlineLines , FT_CVDefRange
}

Detailed Description

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

Definition at line 427 of file MCSection.h.

Constructor & Destructor Documentation

◆ MCCVInlineLineTableFragment()

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

Member Function Documentation

◆ classof()

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

◆ getFnEndSym()

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

Definition at line 447 of file MCSection.h.

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

◆ getFnStartSym()

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

Definition at line 446 of file MCSection.h.

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

◆ CodeViewContext

friend class CodeViewContext
friend

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

Definition at line 436 of file MCSection.h.

References CodeViewContext.

Referenced by CodeViewContext.


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