LLVM API Documentation

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Static Public Member Functions | List of all members
llvm::MCDataFragment Class Reference

#include <MCAssembler.h>

Inheritance diagram for llvm::MCDataFragment:
Inheritance graph
[legend]
Collaboration diagram for llvm::MCDataFragment:
Collaboration graph
[legend]

Public Member Functions

 MCDataFragment (MCSectionData *SD=0)
 
virtual SmallVectorImpl< char > & getContents ()
 
virtual const SmallVectorImpl
< char > & 
getContents () const
 
SmallVectorImpl< MCFixup > & getFixups ()
 
const SmallVectorImpl< MCFixup > & getFixups () const
 
virtual 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. More...
 
virtual void setHasInstructions (bool V)
 
virtual bool alignToBundleEnd () const
 Should this fragment be placed at the end of an aligned bundle? More...
 
virtual void setAlignToBundleEnd (bool V)
 
fixup_iterator fixup_begin ()
 
const_fixup_iterator fixup_begin () const
 
fixup_iterator fixup_end ()
 
const_fixup_iterator fixup_end () const
 
- Public Member Functions inherited from llvm::MCEncodedFragmentWithFixups
 MCEncodedFragmentWithFixups (MCFragment::FragmentType FType, MCSectionData *SD=0)
 
virtual ~MCEncodedFragmentWithFixups ()
 
- Public Member Functions inherited from llvm::MCEncodedFragment
 MCEncodedFragment (MCFragment::FragmentType FType, MCSectionData *SD=0)
 
virtual ~MCEncodedFragment ()
 
virtual uint8_t getBundlePadding () const
 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. More...
 
virtual void setBundlePadding (uint8_t N)
 Set the padding size for this fragment. By default it's a no-op, and only some fragments have a meaningful implementation. More...
 
- Public Member Functions inherited from llvm::MCFragment
 MCFragment ()
 
virtual ~MCFragment ()
 
FragmentType getKind () const
 
MCSectionDatagetParent () const
 
void setParent (MCSectionData *Value)
 
MCSymbolDatagetAtom () const
 
void setAtom (MCSymbolData *Value)
 
unsigned getLayoutOrder () const
 
void setLayoutOrder (unsigned Value)
 
void dump ()
 
- Public Member Functions inherited from llvm::ilist_node< MCFragment >
MCFragmentgetPrevNode ()
 Get the previous node, or 0 for the list head. More...
 
const MCFragmentgetPrevNode () const
 Get the previous node, or 0 for the list head. More...
 
MCFragmentgetNextNode ()
 Get the next node, or 0 for the list tail. More...
 
const MCFragmentgetNextNode () const
 Get the next node, or 0 for the list tail. More...
 

Static Public Member Functions

static bool classof (const MCFragment *F)
 
- Static Public Member Functions inherited from llvm::MCEncodedFragmentWithFixups
static bool classof (const MCFragment *F)
 
- Static Public Member Functions inherited from llvm::MCEncodedFragment
static bool classof (const MCFragment *F)
 

Additional Inherited Members

- Public Types inherited from llvm::MCEncodedFragmentWithFixups
typedef SmallVectorImpl
< MCFixup >::const_iterator 
const_fixup_iterator
 
typedef SmallVectorImpl
< MCFixup >::iterator 
fixup_iterator
 
- Public Types inherited from llvm::MCFragment
enum  FragmentType {
  FT_Align, FT_Data, FT_CompactEncodedInst, FT_Fill,
  FT_Relaxable, FT_Org, FT_Dwarf, FT_DwarfFrame,
  FT_LEB
}
 
- Protected Member Functions inherited from llvm::MCFragment
 MCFragment (FragmentType _Kind, MCSectionData *_Parent=0)
 
- Protected Member Functions inherited from llvm::ilist_node< MCFragment >
 ilist_node ()
 

Detailed Description

Fragment for data and encoded instructions.

Definition at line 201 of file MCAssembler.h.

Constructor & Destructor Documentation

llvm::MCDataFragment::MCDataFragment ( MCSectionData SD = 0)
inline

Definition at line 215 of file MCAssembler.h.

Member Function Documentation

virtual bool llvm::MCDataFragment::alignToBundleEnd ( ) const
inlinevirtual

Should this fragment be placed at the end of an aligned bundle?

Reimplemented from llvm::MCFragment.

Definition at line 235 of file MCAssembler.h.

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

Definition at line 244 of file MCAssembler.h.

References llvm::MCFragment::FT_Data, and llvm::MCFragment::getKind().

fixup_iterator llvm::MCDataFragment::fixup_begin ( )
inlinevirtual
const_fixup_iterator llvm::MCDataFragment::fixup_begin ( ) const
inlinevirtual

Implements llvm::MCEncodedFragmentWithFixups.

Definition at line 239 of file MCAssembler.h.

fixup_iterator llvm::MCDataFragment::fixup_end ( )
inlinevirtual
const_fixup_iterator llvm::MCDataFragment::fixup_end ( ) const
inlinevirtual

Implements llvm::MCEncodedFragmentWithFixups.

Definition at line 242 of file MCAssembler.h.

virtual SmallVectorImpl<char>& llvm::MCDataFragment::getContents ( )
inlinevirtual
virtual const SmallVectorImpl<char>& llvm::MCDataFragment::getContents ( ) const
inlinevirtual

Implements llvm::MCEncodedFragment.

Definition at line 222 of file MCAssembler.h.

SmallVectorImpl<MCFixup>& llvm::MCDataFragment::getFixups ( )
inlinevirtual
const SmallVectorImpl<MCFixup>& llvm::MCDataFragment::getFixups ( ) const
inlinevirtual

Implements llvm::MCEncodedFragmentWithFixups.

Definition at line 228 of file MCAssembler.h.

virtual bool llvm::MCDataFragment::hasInstructions ( ) const
inlinevirtual

Does this fragment have instructions emitted into it? By default this is false, but specific fragment types may set it to true.

Reimplemented from llvm::MCFragment.

Definition at line 232 of file MCAssembler.h.

Referenced by llvm::MCObjectStreamer::getOrCreateDataFragment().

virtual void llvm::MCDataFragment::setAlignToBundleEnd ( bool  V)
inlinevirtual

Reimplemented from llvm::MCFragment.

Definition at line 236 of file MCAssembler.h.

virtual void llvm::MCDataFragment::setHasInstructions ( bool  V)
inlinevirtual

Definition at line 233 of file MCAssembler.h.


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