class MCEncodedFragment
Declaration
class MCEncodedFragment : public MCFragment { /* full declaration omitted */ };Description
Interface implemented by fragments that contain encoded instructions and/or data.
Declared at: llvm/include/llvm/MC/MCFragment.h:124
Inherits from: MCFragment
Member Variables
- private bool AlignToBundleEnd = false
- Should this fragment be aligned to the end of a bundle?
- private uint8_t BundlePadding = 0
- protected const llvm::MCSubtargetInfo* STI = nullptr
- The MCSubtargetInfo in effect when the instruction was encoded. It must be non-null for instructions.
Inherited from MCFragment:
Method Overview
- protected MCEncodedFragment(MCFragment::FragmentType FType, bool HasInstructions, llvm::MCSection * Sec)
- public bool alignToBundleEnd() const
- public static bool classof(const llvm::MCFragment * F)
- public uint8_t getBundlePadding() const
- public const llvm::MCSubtargetInfo * getSubtargetInfo() const
- public void setAlignToBundleEnd(bool V)
- public void setBundlePadding(uint8_t N)
- public void setHasInstructions(const llvm::MCSubtargetInfo & STI)
Inherited from MCFragment:
- public destroy
- public dump
- public getAtom
- public getKind
- public getLayoutOrder
- public getParent
- public getSubsectionNumber
- public hasInstructions
- public setAtom
- public setLayoutOrder
- public setParent
- public setSubsectionNumber
Methods
¶MCEncodedFragment(MCFragment::FragmentType FType,
bool HasInstructions,
llvm::MCSection* Sec)
MCEncodedFragment(MCFragment::FragmentType FType,
bool HasInstructions,
llvm::MCSection* Sec)Declared at: llvm/include/llvm/MC/MCFragment.h:131
Parameters
- MCFragment::FragmentType FType
- bool HasInstructions
- llvm::MCSection* Sec
¶bool alignToBundleEnd() const
bool alignToBundleEnd() constDescription
Should this fragment be placed at the end of an aligned bundle?
Declared at: llvm/include/llvm/MC/MCFragment.h:156
¶static bool classof(const llvm::MCFragment* F)
static bool classof(const llvm::MCFragment* F)Declared at: llvm/include/llvm/MC/MCFragment.h:140
Parameters
- const llvm::MCFragment* F
¶uint8_t getBundlePadding() const
uint8_t getBundlePadding() constDescription
Get the padding size that must be inserted before this fragment. Used for bundling. By default, no padding is inserted. Note that padding size is restricted to 8 bits. This is an optimization to reduce the amount of space used for each fragment. In practice, larger padding should never be required.
Declared at: llvm/include/llvm/MC/MCFragment.h:164
¶const llvm::MCSubtargetInfo* getSubtargetInfo()
const
const llvm::MCSubtargetInfo* getSubtargetInfo()
constDescription
Retrieve the MCSubTargetInfo in effect when the instruction was encoded. Guaranteed to be non-null if hasInstructions() == true
Declared at: llvm/include/llvm/MC/MCFragment.h:172
¶void setAlignToBundleEnd(bool V)
void setAlignToBundleEnd(bool V)Declared at: llvm/include/llvm/MC/MCFragment.h:157
Parameters
- bool V
¶void setBundlePadding(uint8_t N)
void setBundlePadding(uint8_t N)Description
Set the padding size for this fragment. By default it's a no-op, and only some fragments have a meaningful implementation.
Declared at: llvm/include/llvm/MC/MCFragment.h:168
Parameters
- uint8_t N
¶void setHasInstructions(
const llvm::MCSubtargetInfo& STI)
void setHasInstructions(
const llvm::MCSubtargetInfo& STI)Description
Record that the fragment contains instructions with the MCSubtargetInfo in effect when the instruction was encoded.
Declared at: llvm/include/llvm/MC/MCFragment.h:176
Parameters
- const llvm::MCSubtargetInfo& STI