LLVM 19.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, MCSection *Sec=nullptr)
 
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.
 
FragmentType getKind () const
 
MCSectiongetParent () const
 
void setParent (MCSection *Value)
 
const MCSymbolgetAtom () const
 
void setAtom (const MCSymbol *Value)
 
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
 
void setSubsectionNumber (unsigned Value)
 
unsigned getSubsectionNumber () const
 
- Public Member Functions inherited from llvm::ilist_node_with_parent< MCFragment, MCSection >
MCFragmentgetPrevNode ()
 
const MCFragmentgetPrevNode () const
 Get the previous node, or nullptr for the list head.
 
MCFragmentgetNextNode ()
 Get the next node, or nullptr for the list tail.
 
const MCFragmentgetNextNode () const
 Get the next node, or nullptr for the list tail.
 
- Public Member Functions inherited from llvm::ilist_node_impl< ilist_detail::compute_node_options< T, Options... >::type >
self_iterator getIterator ()
 
const_self_iterator getIterator () const
 
reverse_self_iterator getReverseIterator ()
 
const_reverse_self_iterator getReverseIterator () const
 
bool isSentinel () const
 Check whether this is the sentinel node.
 

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_CompactEncodedInst , 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 Types inherited from llvm::ilist_node_impl< ilist_detail::compute_node_options< T, Options... >::type >
using self_iterator = typename ilist_select_iterator_type< OptionsT::has_iterator_bits, ilist_detail::compute_node_options< T, Options... >::type, false, false >::type
 
using const_self_iterator = typename ilist_select_iterator_type< OptionsT::has_iterator_bits, ilist_detail::compute_node_options< T, Options... >::type, false, true >::type
 
using reverse_self_iterator = typename ilist_select_iterator_type< OptionsT::has_iterator_bits, ilist_detail::compute_node_options< T, Options... >::type, true, false >::type
 
using const_reverse_self_iterator = typename ilist_select_iterator_type< OptionsT::has_iterator_bits, ilist_detail::compute_node_options< T, Options... >::type, true, true >::type
 
- Protected Member Functions inherited from llvm::MCFragment
 MCFragment (FragmentType Kind, bool HasInstructions, MCSection *Parent=nullptr)
 
- Protected Member Functions inherited from llvm::ilist_node_with_parent< MCFragment, MCSection >
 ilist_node_with_parent ()=default
 
- Protected Member Functions inherited from llvm::ilist_node_impl< ilist_detail::compute_node_options< T, Options... >::type >
 ilist_node_impl ()=default
 
- Protected Attributes inherited from llvm::MCFragment
bool HasInstructions
 
bool LinkerRelaxable = false
 

Detailed Description

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

Definition at line 517 of file MCFragment.h.

Constructor & Destructor Documentation

◆ MCCVInlineLineTableFragment()

llvm::MCCVInlineLineTableFragment::MCCVInlineLineTableFragment ( unsigned  SiteFuncId,
unsigned  StartFileId,
unsigned  StartLineNum,
const MCSymbol FnStartSym,
const MCSymbol FnEndSym,
MCSection Sec = nullptr 
)
inline

Definition at line 530 of file MCFragment.h.

Member Function Documentation

◆ classof()

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

Definition at line 544 of file MCFragment.h.

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

◆ getContents() [1/2]

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

Definition at line 541 of file MCFragment.h.

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

◆ getContents() [2/2]

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

Definition at line 542 of file MCFragment.h.

◆ getFnEndSym()

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

Definition at line 539 of file MCFragment.h.

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

◆ getFnStartSym()

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

Definition at line 538 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 527 of file MCFragment.h.


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