class MCFragment
Declaration
class MCFragment : public ilist_node_with_parent { /* full declaration omitted */ };
Description
An ilist node that can access its parent list. Requires \c NodeTy to have \a getParent() to find the parent node, and the\c ParentTy to have \a getSublistAccess() to get a reference to the list.
Declared at: llvm/include/llvm/MC/MCFragment.h:30
Inherits from: ilist_node_with_parent
Member Variables
- private llvm::MCSection* Parent
- The data for the section this fragment is in.
- private const llvm::MCSymbol* Atom
- The atom this fragment is in, as represented by its defining symbol.
- private uint64_t Offset
- The offset of this fragment in its section. This is ~0 until initialized.
- private unsigned int LayoutOrder
- The layout order of this fragment.
- private unsigned int SubsectionNumber = 0
- The subsection this fragment belongs to. This is 0 if the fragment is not
- private llvm::MCFragment::FragmentType Kind
- private bool IsBeingLaidOut
- Whether fragment is being laid out.
- protected bool HasInstructions
Method Overview
- protected MCFragment(llvm::MCFragment::FragmentType Kind, bool HasInstructions, llvm::MCSection * Parent = nullptr)
- public MCFragment()
- public MCFragment(const llvm::MCFragment &)
- public void destroy()
- public void dump() const
- public const llvm::MCSymbol * getAtom() const
- public llvm::MCFragment::FragmentType getKind() const
- public unsigned int getLayoutOrder() const
- public llvm::MCSection * getParent() const
- public unsigned int getSubsectionNumber() const
- public bool hasInstructions() const
- public void setAtom(const llvm::MCSymbol * Value)
- public void setLayoutOrder(unsigned int Value)
- public void setParent(llvm::MCSection * Value)
- public void setSubsectionNumber(unsigned int Value)
Methods
¶MCFragment(llvm::MCFragment::FragmentType Kind,
bool HasInstructions,
llvm::MCSection* Parent = nullptr)
MCFragment(llvm::MCFragment::FragmentType Kind,
bool HasInstructions,
llvm::MCSection* Parent = nullptr)
Declared at: llvm/include/llvm/MC/MCFragment.h:79
Parameters
- llvm::MCFragment::FragmentType Kind
- bool HasInstructions
- llvm::MCSection* Parent = nullptr
¶MCFragment()
MCFragment()
Declared at: llvm/include/llvm/MC/MCFragment.h:83
¶MCFragment(const llvm::MCFragment&)
MCFragment(const llvm::MCFragment&)
Declared at: llvm/include/llvm/MC/MCFragment.h:84
Parameters
- const llvm::MCFragment&
¶void destroy()
void destroy()
Description
Destroys the current fragment. This must be used instead of delete as MCFragment is non-virtual. This method will dispatch to the appropriate subclass.
Declared at: llvm/include/llvm/MC/MCFragment.h:91
¶void dump() const
void dump() const
Declared at: llvm/include/llvm/MC/MCFragment.h:108
¶const llvm::MCSymbol* getAtom() const
const llvm::MCSymbol* getAtom() const
Declared at: llvm/include/llvm/MC/MCFragment.h:98
¶llvm::MCFragment::FragmentType getKind() const
llvm::MCFragment::FragmentType getKind() const
Declared at: llvm/include/llvm/MC/MCFragment.h:93
¶unsigned int getLayoutOrder() const
unsigned int getLayoutOrder() const
Declared at: llvm/include/llvm/MC/MCFragment.h:101
¶llvm::MCSection* getParent() const
llvm::MCSection* getParent() const
Declared at: llvm/include/llvm/MC/MCFragment.h:95
¶unsigned int getSubsectionNumber() const
unsigned int getSubsectionNumber() const
Declared at: llvm/include/llvm/MC/MCFragment.h:111
¶bool hasInstructions() const
bool hasInstructions() const
Description
Does this fragment have instructions emitted into it? By default this is false, but specific fragment types may set it to true.
Declared at: llvm/include/llvm/MC/MCFragment.h:106
¶void setAtom(const llvm::MCSymbol* Value)
void setAtom(const llvm::MCSymbol* Value)
Declared at: llvm/include/llvm/MC/MCFragment.h:99
Parameters
- const llvm::MCSymbol* Value
¶void setLayoutOrder(unsigned int Value)
void setLayoutOrder(unsigned int Value)
Declared at: llvm/include/llvm/MC/MCFragment.h:102
Parameters
- unsigned int Value
¶void setParent(llvm::MCSection* Value)
void setParent(llvm::MCSection* Value)
Declared at: llvm/include/llvm/MC/MCFragment.h:96
Parameters
- llvm::MCSection* Value
¶void setSubsectionNumber(unsigned int Value)
void setSubsectionNumber(unsigned int Value)
Declared at: llvm/include/llvm/MC/MCFragment.h:110
Parameters
- unsigned int Value