enum TOF

Description

Target Operand Flag enum.

Declared at: llvm/lib/Target/X86/MCTargetDesc/X86BaseInfo.h:406

Enumerators

NameValueComment
MO_NO_FLAG0
MO_GOT_ABSOLUTE_ADDRESS1MO_GOT_ABSOLUTE_ADDRESS - On a symbol operand, this represents a relocation of: SYMBOL_LABEL + [. - PICBASELABEL]
MO_PIC_BASE_OFFSET2MO_PIC_BASE_OFFSET - On a symbol operand this indicates that the immediate should get the value of the symbol minus the PIC base label: SYMBOL_LABEL - PICBASELABEL
MO_GOT3MO_GOT - On a symbol operand this indicates that the immediate is the offset to the GOT entry for the symbol name from the base of the GOT.See the X86-64 ELF ABI supplement for more details. SYMBOL_LABEL @GOT
MO_GOTOFF4MO_GOTOFF - On a symbol operand this indicates that the immediate is the offset to the location of the symbol name from the base of the GOT.See the X86-64 ELF ABI supplement for more details. SYMBOL_LABEL @GOTOFF
MO_GOTPCREL5MO_GOTPCREL - On a symbol operand this indicates that the immediate is offset to the GOT entry for the symbol name from the current code location.See the X86-64 ELF ABI supplement for more details. SYMBOL_LABEL @GOTPCREL
MO_GOTPCREL_NORELAX6MO_GOTPCREL_NORELAX - Same as MO_GOTPCREL except that R_X86_64_GOTPCREL relocations are guaranteed to be emitted by the integrated assembler instead of the relaxable R_X86_64[_REX]_GOTPCRELX relocations.
MO_PLT7MO_PLT - On a symbol operand this indicates that the immediate is offset to the PLT entry of symbol name from the current code location.See the X86-64 ELF ABI supplement for more details. SYMBOL_LABEL @PLT
MO_TLSGD8MO_TLSGD - On a symbol operand this indicates that the immediate is the offset of the GOT entry with the TLS index structure that contains the module number and variable offset for the symbol. Used in the general dynamic TLS access model.See 'ELF Handling for Thread-Local Storage' for more details. SYMBOL_LABEL @TLSGD
MO_TLSLD9MO_TLSLD - On a symbol operand this indicates that the immediate is the offset of the GOT entry with the TLS index for the module that contains the symbol. When this index is passed to a call to __tls_get_addr, the function will return the base address of the TLS block for the symbol. Used in the x86-64 local dynamic TLS access model.See 'ELF Handling for Thread-Local Storage' for more details. SYMBOL_LABEL @TLSLD
MO_TLSLDM10MO_TLSLDM - On a symbol operand this indicates that the immediate is the offset of the GOT entry with the TLS index for the module that contains the symbol. When this index is passed to a call to ___tls_get_addr, the function will return the base address of the TLS block for the symbol. Used in the IA32 local dynamic TLS access model.See 'ELF Handling for Thread-Local Storage' for more details. SYMBOL_LABEL @TLSLDM
MO_GOTTPOFF11MO_GOTTPOFF - On a symbol operand this indicates that the immediate is the offset of the GOT entry with the thread-pointer offset for the symbol. Used in the x86-64 initial exec TLS access model.See 'ELF Handling for Thread-Local Storage' for more details. SYMBOL_LABEL @GOTTPOFF
MO_INDNTPOFF12MO_INDNTPOFF - On a symbol operand this indicates that the immediate is the absolute address of the GOT entry with the negative thread-pointer offset for the symbol. Used in the non-PIC IA32 initial exec TLS access model.See 'ELF Handling for Thread-Local Storage' for more details. SYMBOL_LABEL @INDNTPOFF
MO_TPOFF13MO_TPOFF - On a symbol operand this indicates that the immediate is the thread-pointer offset for the symbol. Used in the x86-64 local exec TLS access model.See 'ELF Handling for Thread-Local Storage' for more details. SYMBOL_LABEL @TPOFF
MO_DTPOFF14MO_DTPOFF - On a symbol operand this indicates that the immediate is the offset of the GOT entry with the TLS offset of the symbol. Used in the local dynamic TLS access model.See 'ELF Handling for Thread-Local Storage' for more details. SYMBOL_LABEL @DTPOFF
MO_NTPOFF15MO_NTPOFF - On a symbol operand this indicates that the immediate is the negative thread-pointer offset for the symbol. Used in the IA32 local exec TLS access model.See 'ELF Handling for Thread-Local Storage' for more details. SYMBOL_LABEL @NTPOFF
MO_GOTNTPOFF16MO_GOTNTPOFF - On a symbol operand this indicates that the immediate is the offset of the GOT entry with the negative thread-pointer offset for the symbol. Used in the PIC IA32 initial exec TLS access model.See 'ELF Handling for Thread-Local Storage' for more details. SYMBOL_LABEL @GOTNTPOFF
MO_DLLIMPORT17MO_DLLIMPORT - On a symbol operand "FOO", this indicates that the reference is actually to the "__imp_FOO" symbol. This is used for dllimport linkage on windows.
MO_DARWIN_NONLAZY18MO_DARWIN_NONLAZY - On a symbol operand "FOO", this indicates that the reference is actually to the "FOO$non_lazy_ptr" symbol, which is a non-PIC-base-relative reference to a non-hidden dyld lazy pointer stub.
MO_DARWIN_NONLAZY_PIC_BASE19MO_DARWIN_NONLAZY_PIC_BASE - On a symbol operand "FOO", this indicates that the reference is actually to "FOO$non_lazy_ptr - PICBASE", which is a PIC-base-relative reference to a non-hidden dyld lazy pointer stub.
MO_TLVP20MO_TLVP - On a symbol operand this indicates that the immediate is some TLS offset.This is the TLS offset for the Darwin TLS mechanism.
MO_TLVP_PIC_BASE21MO_TLVP_PIC_BASE - On a symbol operand this indicates that the immediate is some TLS offset from the picbase.This is the 32-bit TLS offset for Darwin TLS in PIC mode.
MO_SECREL22MO_SECREL - On a symbol operand this indicates that the immediate is the offset from beginning of section.This is the TLS offset for the COFF/Windows TLS mechanism.
MO_ABS823MO_ABS8 - On a symbol operand this indicates that the symbol is known to be an absolute symbol in range [0,128), so we can use the @ABS8symbol modifier.
MO_COFFSTUB24MO_COFFSTUB - On a symbol operand "FOO", this indicates that the reference is actually to the ".refptr.FOO" symbol. This is used for stub symbols on windows.