LLVM 24.0.0git
llvm::MCCVDefRangeFragment Class Reference

Fragment representing the .cv_def_range directive. More...

#include "llvm/MC/MCSection.h"

Inheritance diagram for llvm::MCCVDefRangeFragment:
[legend]

Public Member Functions

 MCCVDefRangeFragment (ArrayRef< std::pair< const MCSymbol *, const MCSymbol * > > Ranges, StringRef FixedSizePortion)
ArrayRef< std::pair< const MCSymbol *, const MCSymbol * > > getRanges () const
StringRef getFixedSizePortion () const
Public Member Functions inherited from llvm::MCFragment
LLVM_ABI MCFragment (FragmentType Kind=MCFragment::FT_Data, bool HasInstructions=false)
 MCFragment (const MCFragment &)=delete
MCFragment & operator= (const MCFragment &)=delete
MCFragment * getNext () const
FragmentType getKind () const
MCSection * getParent () const
void setParent (MCSection *Value)
LLVM_ABI const MCSymbol * getAtom () 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 MCSubtargetInfo * getSubtargetInfo () 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< char > getContents ()
ArrayRef< char > getContents () const
LLVM_ABI void setVarContents (ArrayRef< char > Contents)
void clearVarContents ()
MutableArrayRef< char > getVarContents ()
ArrayRef< char > getVarContents () const
size_t getFixedSize () const
size_t getVarSize () const
size_t getSize () const
void clearFixups ()
LLVM_ABI void addFixup (MCFixup Fixup)
LLVM_ABI void insertRelocFixups (ArrayRef< MCFixup > Fixups)
LLVM_ABI void appendFixups (ArrayRef< MCFixup > Fixups)
LLVM_ABI void moveFixupsToEnd ()
MutableArrayRef< MCFixup > getFixups ()
ArrayRef< MCFixup > getFixups () const
LLVM_ABI void setVarFixups (ArrayRef< MCFixup > Fixups)
void clearVarFixups ()
MutableArrayRef< MCFixup > getVarFixups ()
ArrayRef< MCFixup > getVarFixups () const
unsigned getOpcode () const
ArrayRef< MCOperand > getOperands () 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 makePrefAlign (Align PrefAlign, const MCSymbol &End, bool EmitNops, uint8_t Fill)
const MCSymbol & getPrefAlignEnd () const
Align getPrefAlignPreferred () const
Align getPrefAlignComputed () const
void setPrefAlignComputed (Align A)
bool getPrefAlignEmitNops () const
uint8_t getPrefAlignFill () const
void makeLEB (bool IsSigned, const MCExpr *Value)
const MCExpr & getLEBValue () const
void setLEBValue (const MCExpr *Expr)
bool isLEBSigned () const
const MCExpr & getDwarfAddrDelta () const
void setDwarfAddrDelta (const MCExpr *E)
int64_t getDwarfLineDelta () const
void setDwarfLineDelta (int64_t LineDelta)
const MCExpr & getSFrameAddrDelta () const
void setSFrameAddrDelta (const MCExpr *E)
MCFragment * getSFrameFDE () 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_PrefAlign ,
  FT_Fill , FT_LEB , FT_Nops , FT_Org ,
  FT_Dwarf , FT_DwarfFrame , FT_SFrame , FT_BoundaryAlign ,
  FT_SymbolId , FT_CVInlineLines , FT_CVDefRange
}
Protected Attributes inherited from llvm::MCFragment
const MCSubtargetInfo * STI = nullptr

Detailed Description

Fragment representing the .cv_def_range directive.

Definition at line 510 of file MCSection.h.

Constructor & Destructor Documentation

◆ MCCVDefRangeFragment()

llvm::MCCVDefRangeFragment::MCCVDefRangeFragment ( ArrayRef< std::pair< const MCSymbol *, const MCSymbol * > > Ranges,
StringRef FixedSizePortion )
inline

Definition at line 519 of file MCSection.h.

References llvm::MCFragment::FT_CVDefRange, and llvm::MCFragment::MCFragment().

Member Function Documentation

◆ classof()

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

Definition at line 531 of file MCSection.h.

References F, llvm::MCFragment::FT_CVDefRange, and llvm::MCFragment::MCFragment().

◆ getFixedSizePortion()

StringRef llvm::MCCVDefRangeFragment::getFixedSizePortion ( ) const
inline

Definition at line 529 of file MCSection.h.

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

◆ getRanges()

ArrayRef< std::pair< const MCSymbol *, const MCSymbol * > > llvm::MCCVDefRangeFragment::getRanges ( ) const
inline

Definition at line 525 of file MCSection.h.

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

◆ CodeViewContext

friend class CodeViewContext
friend

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

Definition at line 516 of file MCSection.h.

References CodeViewContext.

Referenced by CodeViewContext.


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