|
| MCSymbolWasm (const MCSymbolTableEntry *Name, bool isTemporary) |
|
const MCExpr * | getSize () const |
|
void | setSize (const MCExpr *SS) |
|
bool | isFunction () const |
|
bool | isData () const |
|
bool | isGlobal () const |
|
bool | isTable () const |
|
bool | isSection () const |
|
bool | isTag () const |
|
std::optional< wasm::WasmSymbolType > | getType () const |
|
void | setType (wasm::WasmSymbolType type) |
|
bool | isExported () const |
|
void | setExported () const |
|
bool | isNoStrip () const |
|
void | setNoStrip () const |
|
bool | isTLS () const |
|
void | setTLS () const |
|
bool | isWeak () const |
|
void | setWeak (bool isWeak) |
|
bool | isHidden () const |
|
void | setHidden (bool isHidden) |
|
bool | isComdat () const |
|
void | setComdat (bool isComdat) |
|
bool | omitFromLinkingSection () const |
|
void | setOmitFromLinkingSection () |
|
bool | hasImportModule () const |
|
StringRef | getImportModule () const |
|
void | setImportModule (StringRef Name) |
|
bool | hasImportName () const |
|
StringRef | getImportName () const |
|
void | setImportName (StringRef Name) |
|
bool | hasExportName () const |
|
StringRef | getExportName () const |
|
void | setExportName (StringRef Name) |
|
bool | isFunctionTable () const |
|
void | setFunctionTable (bool is64) |
|
void | setUsedInGOT () const |
|
bool | isUsedInGOT () const |
|
void | setUsedInInitArray () const |
|
bool | isUsedInInitArray () const |
|
const wasm::WasmSignature * | getSignature () const |
|
void | setSignature (wasm::WasmSignature *Sig) |
|
const wasm::WasmGlobalType & | getGlobalType () const |
|
void | setGlobalType (wasm::WasmGlobalType GT) |
|
bool | hasTableType () const |
|
const wasm::WasmTableType & | getTableType () const |
|
void | setTableType (wasm::WasmTableType TT) |
|
void | setTableType (wasm::ValType VT, uint8_t flags=wasm::WASM_LIMITS_FLAG_NONE) |
|
| MCSymbol (const MCSymbol &)=delete |
|
MCSymbol & | operator= (const MCSymbol &)=delete |
|
StringRef | getName () const |
| getName - Get the symbol name.
|
|
bool | isRegistered () const |
|
void | setIsRegistered (bool Value) const |
|
void | setUsedInReloc () const |
|
bool | isUsedInReloc () const |
|
uint32_t | getIndex () const |
| Get the (implementation defined) index.
|
|
void | setIndex (uint32_t Value) const |
| Set the (implementation defined) index.
|
|
bool | isUnset () const |
|
uint64_t | getOffset () const |
|
void | setOffset (uint64_t Value) |
|
uint64_t | getCommonSize () const |
| Return the size of a 'common' symbol.
|
|
void | setCommon (uint64_t Size, Align Alignment, bool Target=false) |
| Mark this symbol as being 'common'.
|
|
MaybeAlign | getCommonAlignment () const |
| Return the alignment of a 'common' symbol.
|
|
bool | declareCommon (uint64_t Size, Align Alignment, bool Target=false) |
| Declare this symbol as being 'common'.
|
|
bool | isCommon () const |
| Is this a 'common' symbol.
|
|
bool | isTargetCommon () const |
| Is this a target-specific common-like symbol.
|
|
MCFragment * | getFragment (bool SetUsed=true) const |
|
bool | isExternal () const |
|
void | setExternal (bool Value) const |
|
bool | isWeakExternal () const |
|
void | print (raw_ostream &OS, const MCAsmInfo *MAI) const |
| print - Print the value to the stream OS .
|
|
void | dump () const |
| dump - Print the value to stderr.
|
|
bool | isTemporary () const |
| isTemporary - Check if this is an assembler temporary symbol.
|
|
bool | isUsed () const |
| isUsed - Check if this is used.
|
|
bool | isRedefinable () const |
| Check if this symbol is redefinable.
|
|
void | setRedefinable (bool Value) |
| Mark this symbol as redefinable.
|
|
void | redefineIfPossible () |
| Prepare this symbol to be redefined.
|
|
bool | isDefined () const |
| isDefined - Check if this symbol is defined (i.e., it has an address).
|
|
bool | isInSection () const |
| isInSection - Check if this symbol is defined in some section (i.e., it is defined but not absolute).
|
|
bool | isUndefined (bool SetUsed=true) const |
| isUndefined - Check if this symbol undefined (i.e., implicitly defined).
|
|
bool | isAbsolute () const |
| isAbsolute - Check if this is an absolute symbol.
|
|
MCSection & | getSection () const |
| Get the section associated with a defined, non-absolute symbol.
|
|
void | setFragment (MCFragment *F) const |
| Mark the symbol as defined in the fragment F .
|
|
void | setUndefined () |
| Mark the symbol as undefined.
|
|
bool | isELF () const |
|
bool | isCOFF () const |
|
bool | isGOFF () const |
|
bool | isMachO () const |
|
bool | isWasm () const |
|
bool | isXCOFF () const |
|
bool | isVariable () const |
| isVariable - Check if this is a variable symbol.
|
|
const MCExpr * | getVariableValue (bool SetUsed=true) const |
| getVariableValue - Get the value for variable symbols.
|
|
void | setVariableValue (const MCExpr *Value) |
|
|
enum | SymbolKind {
SymbolKindUnset
, SymbolKindCOFF
, SymbolKindELF
, SymbolKindGOFF
,
SymbolKindMachO
, SymbolKindWasm
, SymbolKindXCOFF
} |
| The kind of the symbol. More...
|
|
enum | Contents : uint8_t {
SymContentsUnset
, SymContentsOffset
, SymContentsVariable
, SymContentsCommon
,
SymContentsTargetCommon
} |
| A symbol can contain an Offset, or Value, or be Common, but never more than one of these. More...
|
|
enum | : unsigned { NumCommonAlignmentBits = 5
} |
| The alignment of the symbol if it is 'common'. More...
|
|
enum | : unsigned { NumFlagsBits = 16
} |
| The Flags field is used by object file implementations to store additional per symbol information which is not easily classified. More...
|
|
using | NameEntryStorageTy = union { const MCSymbolTableEntry *NameEntry |
| The name for a symbol.
|
|
| MCSymbol (SymbolKind Kind, const MCSymbolTableEntry *Name, bool isTemporary) |
|
void * | operator new (size_t s, const MCSymbolTableEntry *Name, MCContext &Ctx) |
|
uint32_t | getFlags () const |
| Get the (implementation defined) symbol flags.
|
|
void | setFlags (uint32_t Value) const |
| Set the (implementation defined) symbol flags.
|
|
void | modifyFlags (uint32_t Value, uint32_t Mask) const |
| Modify the flags via a mask.
|
|
MCFragment * | Fragment = nullptr |
| If a symbol has a Fragment, the section is implied, so we only need one pointer.
|
|
unsigned | HasName: 1 |
| True if this symbol is named.
|
|
unsigned | IsTemporary: 1 |
| IsTemporary - True if this is an assembler temporary label, which typically does not survive in the .o file's symbol table.
|
|
unsigned | IsRedefinable: 1 |
| True if this symbol can be redefined.
|
|
unsigned | IsUsed: 1 |
| IsUsed - True if this symbol has been used.
|
|
unsigned | IsRegistered: 1 |
|
unsigned | IsExternal: 1 |
| True if this symbol is visible outside this translation unit.
|
|
unsigned | IsPrivateExtern: 1 |
| Mach-O specific: This symbol is private extern.
|
|
unsigned | IsWeakExternal: 1 |
| This symbol is weak external.
|
|
unsigned | Kind: 3 |
| LLVM RTTI discriminator.
|
|
unsigned | IsUsedInReloc: 1 |
| True if we have created a relocation that uses this symbol.
|
|
unsigned | SymbolContents: 3 |
| This is actually a Contents enumerator, but is unsigned to avoid sign extension and achieve better bitpacking with MSVC.
|
|
unsigned | CommonAlignLog2: NumCommonAlignmentBits |
|
uint32_t | Flags: NumFlagsBits |
|
uint32_t | Index = 0 |
| Index field, for use by the object file implementation.
|
|
union { |
uint64_t Offset |
| The offset to apply to the fragment address to form this symbol's value. More...
|
|
uint64_t CommonSize |
| The size of the symbol, if it is 'common'. More...
|
|
const MCExpr * Value |
| If non-null, the value for a variable symbol. More...
|
|
}; | |
|
uint64_t | AlignmentPadding |
|
static MCFragment * | AbsolutePseudoFragment = &SentinelFragment |
|
Definition at line 17 of file MCSymbolWasm.h.