LLVM API Documentation

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

#include <MCAssembler.h>

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

Public Member Functions

 MCSymbolData ()
 
 MCSymbolData (const MCSymbol &_Symbol, MCFragment *_Fragment, uint64_t _Offset, MCAssembler *A=0)
 
void dump ()
 
Accessors
const MCSymbolgetSymbol () const
 
MCFragmentgetFragment () const
 
void setFragment (MCFragment *Value)
 
uint64_t getOffset () const
 
void setOffset (uint64_t Value)
 
Symbol Attributes
bool isExternal () const
 
void setExternal (bool Value)
 
bool isPrivateExtern () const
 
void setPrivateExtern (bool Value)
 
bool isCommon () const
 isCommon - Is this a 'common' symbol. More...
 
void setCommon (uint64_t Size, unsigned Align)
 
uint64_t getCommonSize () const
 getCommonSize - Return the size of a 'common' symbol. More...
 
void setSize (const MCExpr *SS)
 
const MCExprgetSize () const
 
unsigned getCommonAlignment () const
 getCommonAlignment - Return the alignment of a 'common' symbol. More...
 
uint32_t getFlags () const
 getFlags - Get the (implementation defined) symbol flags. More...
 
void setFlags (uint32_t Value)
 setFlags - Set the (implementation defined) symbol flags. More...
 
void modifyFlags (uint32_t Value, uint32_t Mask)
 modifyFlags - Modify the flags via a mask More...
 
uint64_t getIndex () const
 getIndex - Get the (implementation defined) index. More...
 
void setIndex (uint64_t Value)
 setIndex - Set the (implementation defined) index. More...
 
- Public Member Functions inherited from llvm::ilist_node< MCSymbolData >
MCSymbolDatagetPrevNode ()
 Get the previous node, or 0 for the list head. More...
 
const MCSymbolDatagetPrevNode () const
 Get the previous node, or 0 for the list head. More...
 
MCSymbolDatagetNextNode ()
 Get the next node, or 0 for the list tail. More...
 
const MCSymbolDatagetNextNode () const
 Get the next node, or 0 for the list tail. More...
 

Public Attributes

const MCSymbolSymbol
 
MCFragmentFragment
 Fragment - The fragment this symbol's value is relative to, if any. More...
 
uint64_t Offset
 
unsigned IsExternal: 1
 
unsigned IsPrivateExtern: 1
 IsPrivateExtern - True if this symbol is private extern. More...
 
uint64_t CommonSize
 CommonSize - The size of the symbol, if it is 'common', or 0. More...
 
const MCExprSymbolSize
 
unsigned CommonAlign
 CommonAlign - The alignment of the symbol, if it is 'common'. More...
 
uint32_t Flags
 
uint64_t Index
 Index - Index field, for use by the object file implementation. More...
 

Additional Inherited Members

- Protected Member Functions inherited from llvm::ilist_node< MCSymbolData >
 ilist_node ()
 

Detailed Description

Definition at line 669 of file MCAssembler.h.

Constructor & Destructor Documentation

MCSymbolData::MCSymbolData ( )

Definition at line 278 of file MCAssembler.cpp.

MCSymbolData::MCSymbolData ( const MCSymbol _Symbol,
MCFragment _Fragment,
uint64_t  _Offset,
MCAssembler A = 0 
)

Member Function Documentation

void MCSymbolData::dump ( )
unsigned llvm::MCSymbolData::getCommonAlignment ( ) const
inline

getCommonAlignment - Return the alignment of a 'common' symbol.

Definition at line 764 of file MCAssembler.h.

References CommonAlign, and isCommon().

Referenced by dump(), and llvm::MachObjectWriter::WriteNlist().

uint64_t llvm::MCSymbolData::getCommonSize ( ) const
inline

getCommonSize - Return the size of a 'common' symbol.

Definition at line 749 of file MCAssembler.h.

References CommonSize, and isCommon().

Referenced by dump(), and llvm::MachObjectWriter::WriteNlist().

uint32_t llvm::MCSymbolData::getFlags ( ) const
inline
MCFragment* llvm::MCSymbolData::getFragment ( ) const
inline
uint64_t llvm::MCSymbolData::getIndex ( ) const
inline

getIndex - Get the (implementation defined) index.

Definition at line 781 of file MCAssembler.h.

References Index.

Referenced by dump(), and llvm::MachObjectWriter::WriteObject().

uint64_t llvm::MCSymbolData::getOffset ( ) const
inline

Definition at line 723 of file MCAssembler.h.

References Offset.

Referenced by dump(), and llvm::MCAsmLayout::getSymbolOffset().

const MCExpr* llvm::MCSymbolData::getSize ( ) const
inline

Definition at line 758 of file MCAssembler.h.

References SymbolSize.

const MCSymbol& llvm::MCSymbolData::getSymbol ( ) const
inline
bool llvm::MCSymbolData::isCommon ( ) const
inline

isCommon - Is this a 'common' symbol.

Definition at line 737 of file MCAssembler.h.

References CommonSize.

Referenced by dump(), getCommonAlignment(), getCommonSize(), and llvm::MachObjectWriter::WriteNlist().

bool llvm::MCSymbolData::isExternal ( ) const
inline
bool llvm::MCSymbolData::isPrivateExtern ( ) const
inline

Definition at line 733 of file MCAssembler.h.

References IsPrivateExtern.

Referenced by dump(), and llvm::MachObjectWriter::WriteNlist().

void llvm::MCSymbolData::modifyFlags ( uint32_t  Value,
uint32_t  Mask 
)
inline

modifyFlags - Modify the flags via a mask

Definition at line 776 of file MCAssembler.h.

References Flags.

void llvm::MCSymbolData::setCommon ( uint64_t  Size,
unsigned  Align 
)
inline

setCommon - Mark this symbol as being 'common'.

Parameters
Size- The size of the symbol.
Align- The alignment of the symbol.

Definition at line 743 of file MCAssembler.h.

References Align(), CommonAlign, and CommonSize.

Referenced by llvm::MCELFStreamer::EmitCommonSymbol().

void llvm::MCSymbolData::setExternal ( bool  Value)
inline
void llvm::MCSymbolData::setFlags ( uint32_t  Value)
inline
void llvm::MCSymbolData::setFragment ( MCFragment Value)
inline

Definition at line 721 of file MCAssembler.h.

References Fragment.

Referenced by llvm::MCObjectStreamer::EmitLabel(), and llvm::MCELFStreamer::Flush().

void llvm::MCSymbolData::setIndex ( uint64_t  Value)
inline

setIndex - Set the (implementation defined) index.

Definition at line 784 of file MCAssembler.h.

References Index.

void llvm::MCSymbolData::setOffset ( uint64_t  Value)
inline

Definition at line 724 of file MCAssembler.h.

References Offset.

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

void llvm::MCSymbolData::setPrivateExtern ( bool  Value)
inline

Definition at line 734 of file MCAssembler.h.

References IsPrivateExtern.

void llvm::MCSymbolData::setSize ( const MCExpr SS)
inline

Definition at line 754 of file MCAssembler.h.

References SymbolSize.

Referenced by llvm::MCELFStreamer::EmitCommonSymbol(), and llvm::MCELFStreamer::EmitELFSize().

Member Data Documentation

unsigned llvm::MCSymbolData::CommonAlign

CommonAlign - The alignment of the symbol, if it is 'common'.

Definition at line 700 of file MCAssembler.h.

Referenced by getCommonAlignment(), and setCommon().

uint64_t llvm::MCSymbolData::CommonSize

CommonSize - The size of the symbol, if it is 'common', or 0.

Definition at line 691 of file MCAssembler.h.

Referenced by getCommonSize(), isCommon(), and setCommon().

uint32_t llvm::MCSymbolData::Flags

Flags - The Flags field is used by object file implementations to store additional per symbol information which is not easily classified.

Definition at line 704 of file MCAssembler.h.

Referenced by getFlags(), modifyFlags(), and setFlags().

MCFragment* llvm::MCSymbolData::Fragment

Fragment - The fragment this symbol's value is relative to, if any.

Definition at line 674 of file MCAssembler.h.

Referenced by getFragment(), and setFragment().

uint64_t llvm::MCSymbolData::Index

Index - Index field, for use by the object file implementation.

Definition at line 707 of file MCAssembler.h.

Referenced by getIndex(), and setIndex().

unsigned llvm::MCSymbolData::IsExternal

IsExternal - True if this symbol is visible outside this translation unit.

Definition at line 682 of file MCAssembler.h.

Referenced by isExternal(), and setExternal().

unsigned llvm::MCSymbolData::IsPrivateExtern

IsPrivateExtern - True if this symbol is private extern.

Definition at line 685 of file MCAssembler.h.

Referenced by isPrivateExtern(), and setPrivateExtern().

uint64_t llvm::MCSymbolData::Offset

Offset - The offset to apply to the fragment address to form this symbol's value.

Definition at line 678 of file MCAssembler.h.

Referenced by getOffset(), and setOffset().

const MCSymbol* llvm::MCSymbolData::Symbol
const MCExpr* llvm::MCSymbolData::SymbolSize

SymbolSize - An expression describing how to calculate the size of a symbol. If a symbol has no size this field will be NULL.

Definition at line 695 of file MCAssembler.h.

Referenced by getSize(), and setSize().


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