LLVM 20.0.0git
|
PPCII - This namespace holds all of the PowerPC target-specific per-instruction flags. More...
PPCII - This namespace holds all of the PowerPC target-specific per-instruction flags.
These must match the corresponding definitions in PPC.td and PPCInstrFormats.td.
anonymous enum |
Definition at line 128 of file PPCMCTargetDesc.h.
anonymous enum |
Definition at line 163 of file PPCMCTargetDesc.h.
Enumerator | |
---|---|
PPC970_Pseudo | These are the various PPC970 execution unit pipelines. Each instruction is one of these. |
PPC970_FXU | |
PPC970_LSU | |
PPC970_FPU | |
PPC970_CRU | |
PPC970_VALU | |
PPC970_VPERM | |
PPC970_BRU |
Definition at line 150 of file PPCMCTargetDesc.h.
enum llvm::PPCII::TOF |
Target Operand Flag enum.
Enumerator | |
---|---|
MO_NO_FLAG | |
MO_PLT | On PPC, the 12 bits are not enough for all target operand flags. Treat all PPC target flags as direct flags. To define new flag that is combination of other flags, add new enum entry instead of combining existing flags. See example MO_GOT_TPREL_PCREL_FLAG. On a symbol operand "FOO", this indicates that the reference is actually to "FOO@plt". This is used for calls and jumps to external functions and for PIC calls on 32-bit ELF systems. |
MO_PIC_FLAG | MO_PIC_FLAG - If this bit is set, the symbol reference is relative to the function's picbase, e.g. lo16(symbol-picbase). |
MO_PCREL_FLAG | MO_PCREL_FLAG - If this bit is set, the symbol reference is relative to the current instruction address(pc), e.g., var@pcrel. Fixup is VK_PCREL. |
MO_GOT_FLAG | MO_GOT_FLAG - If this bit is set the symbol reference is to be computed via the GOT. For example when combined with the MO_PCREL_FLAG it should produce the relocation @got@pcrel. Fixup is VK_PPC_GOT_PCREL. |
MO_PCREL_OPT_FLAG | MO_PCREL_OPT_FLAG - If this bit is set the operand is part of a PC Relative linker optimization. |
MO_TLSGD_FLAG | MO_TLSGD_FLAG - If this bit is set the symbol reference is relative to TLS General Dynamic model for Linux and the variable offset of TLS General Dynamic model for AIX. |
MO_TPREL_FLAG | MO_TPREL_FLAG - If this bit is set, the symbol reference is relative to the thread pointer and the symbol can be used for the TLS Initial Exec and Local Exec models. |
MO_TLSLDM_FLAG | MO_TLSLDM_FLAG - on AIX the ML relocation type is only valid for a reference to a TOC symbol from the symbol itself, and right now its only user is the symbol "_$TLSML". The symbol name is used to decide that the R_TLSML relocation is expected. |
MO_TLSLD_FLAG | MO_TLSLD_FLAG - If this bit is set the symbol reference is relative to TLS Local Dynamic model. |
MO_TLSGDM_FLAG | MO_TLSGDM_FLAG - If this bit is set the symbol reference is relative to the region handle of TLS General Dynamic model for AIX. |
MO_GOT_TLSGD_PCREL_FLAG | MO_GOT_TLSGD_PCREL_FLAG - A combintaion of flags, if these bits are set they should produce the relocation @got@tlsgd@pcrel. Fix up is VK_PPC_GOT_TLSGD_PCREL MO_GOT_TLSGD_PCREL_FLAG = MO_PCREL_FLAG | MO_GOT_FLAG | MO_TLSGD_FLAG, |
MO_GOT_TLSLD_PCREL_FLAG | MO_GOT_TLSLD_PCREL_FLAG - A combintaion of flags, if these bits are set they should produce the relocation @got@tlsld@pcrel. Fix up is VK_PPC_GOT_TLSLD_PCREL MO_GOT_TLSLD_PCREL_FLAG = MO_PCREL_FLAG | MO_GOT_FLAG | MO_TLSLD_FLAG, |
MO_GOT_TPREL_PCREL_FLAG | MO_GOT_TPREL_PCREL_FLAG - A combintaion of flags, if these bits are set they should produce the relocation @got@tprel@pcrel. Fix up is VK_PPC_GOT_TPREL_PCREL MO_GOT_TPREL_PCREL_FLAG = MO_GOT_FLAG | MO_TPREL_FLAG | MO_PCREL_FLAG, |
MO_LO | MO_LO, MO_HA - lo16(symbol) and ha16(symbol) |
MO_HA | |
MO_TPREL_LO | |
MO_TPREL_HA | |
MO_DTPREL_LO | These values identify relocations on immediates folded into memory operations. |
MO_TLSLD_LO | |
MO_TOC_LO | |
MO_TLS | Symbol for VK_PPC_TLS fixup attached to an ADD instruction. |
MO_PIC_HA_FLAG | MO_PIC_HA_FLAG = MO_PIC_FLAG | MO_HA. |
MO_PIC_LO_FLAG | MO_PIC_LO_FLAG = MO_PIC_FLAG | MO_LO. |
MO_TPREL_PCREL_FLAG | MO_TPREL_PCREL_FLAG = MO_PCREL_FLAG | MO_TPREL_FLAG. |
MO_TLS_PCREL_FLAG | MO_TPREL_PCREL_FLAG = MO_PCREL_FLAG | MO_TLS. |
MO_GOT_PCREL_FLAG | MO_GOT_PCREL_FLAG = MO_PCREL_FLAG | MO_GOT_FLAG. |