Copyright | (c) Aleksey Makarov 2021 |
---|---|
License | BSD 3-Clause License |
Maintainer | aleksey.makarov@gmail.com |
Stability | experimental |
Portability | portable |
Safe Haskell | None |
Language | Haskell2010 |
Definitions of constants used in ELF files
Synopsis
- newtype ElfOSABI = ElfOSABI Word8
- pattern ELFOSABI_SYSV :: ElfOSABI
- pattern ELFOSABI_HPUX :: ElfOSABI
- pattern ELFOSABI_NETBSD :: ElfOSABI
- pattern ELFOSABI_LINUX :: ElfOSABI
- pattern ELFOSABI_SOLARIS :: ElfOSABI
- pattern ELFOSABI_AIX :: ElfOSABI
- pattern ELFOSABI_IRIX :: ElfOSABI
- pattern ELFOSABI_FREEBSD :: ElfOSABI
- pattern ELFOSABI_TRU64 :: ElfOSABI
- pattern ELFOSABI_MODESTO :: ElfOSABI
- pattern ELFOSABI_OPENBSD :: ElfOSABI
- pattern ELFOSABI_OPENVMS :: ElfOSABI
- pattern ELFOSABI_NSK :: ElfOSABI
- pattern ELFOSABI_AROS :: ElfOSABI
- pattern ELFOSABI_ARM :: ElfOSABI
- pattern ELFOSABI_STANDALONE :: ElfOSABI
- newtype ElfType = ElfType Word16
- pattern ET_NONE :: ElfType
- pattern ET_REL :: ElfType
- pattern ET_EXEC :: ElfType
- pattern ET_DYN :: ElfType
- pattern ET_CORE :: ElfType
- newtype ElfMachine = ElfMachine Word16
- pattern EM_NONE :: ElfMachine
- pattern EM_M32 :: ElfMachine
- pattern EM_SPARC :: ElfMachine
- pattern EM_386 :: ElfMachine
- pattern EM_68K :: ElfMachine
- pattern EM_88K :: ElfMachine
- pattern EM_486 :: ElfMachine
- pattern EM_860 :: ElfMachine
- pattern EM_MIPS :: ElfMachine
- pattern EM_S370 :: ElfMachine
- pattern EM_MIPS_RS3_LE :: ElfMachine
- pattern EM_SPARC64 :: ElfMachine
- pattern EM_PARISC :: ElfMachine
- pattern EM_VPP500 :: ElfMachine
- pattern EM_SPARC32PLUS :: ElfMachine
- pattern EM_960 :: ElfMachine
- pattern EM_PPC :: ElfMachine
- pattern EM_PPC64 :: ElfMachine
- pattern EM_S390 :: ElfMachine
- pattern EM_SPU :: ElfMachine
- pattern EM_V800 :: ElfMachine
- pattern EM_FR20 :: ElfMachine
- pattern EM_RH32 :: ElfMachine
- pattern EM_RCE :: ElfMachine
- pattern EM_ARM :: ElfMachine
- pattern EM_ALPHA :: ElfMachine
- pattern EM_SH :: ElfMachine
- pattern EM_SPARCV9 :: ElfMachine
- pattern EM_TRICORE :: ElfMachine
- pattern EM_ARC :: ElfMachine
- pattern EM_H8_300 :: ElfMachine
- pattern EM_H8_300H :: ElfMachine
- pattern EM_H8S :: ElfMachine
- pattern EM_H8_500 :: ElfMachine
- pattern EM_IA_64 :: ElfMachine
- pattern EM_MIPS_X :: ElfMachine
- pattern EM_COLDFIRE :: ElfMachine
- pattern EM_68HC12 :: ElfMachine
- pattern EM_MMA :: ElfMachine
- pattern EM_PCP :: ElfMachine
- pattern EM_NCPU :: ElfMachine
- pattern EM_NDR1 :: ElfMachine
- pattern EM_STARCORE :: ElfMachine
- pattern EM_ME16 :: ElfMachine
- pattern EM_ST100 :: ElfMachine
- pattern EM_TINYJ :: ElfMachine
- pattern EM_X86_64 :: ElfMachine
- pattern EM_PDSP :: ElfMachine
- pattern EM_FX66 :: ElfMachine
- pattern EM_ST9PLUS :: ElfMachine
- pattern EM_ST7 :: ElfMachine
- pattern EM_68HC16 :: ElfMachine
- pattern EM_68HC11 :: ElfMachine
- pattern EM_68HC08 :: ElfMachine
- pattern EM_68HC05 :: ElfMachine
- pattern EM_SVX :: ElfMachine
- pattern EM_ST19 :: ElfMachine
- pattern EM_VAX :: ElfMachine
- pattern EM_CRIS :: ElfMachine
- pattern EM_JAVELIN :: ElfMachine
- pattern EM_FIREPATH :: ElfMachine
- pattern EM_ZSP :: ElfMachine
- pattern EM_MMIX :: ElfMachine
- pattern EM_HUANY :: ElfMachine
- pattern EM_PRISM :: ElfMachine
- pattern EM_AVR :: ElfMachine
- pattern EM_FR30 :: ElfMachine
- pattern EM_D10V :: ElfMachine
- pattern EM_D30V :: ElfMachine
- pattern EM_V850 :: ElfMachine
- pattern EM_M32R :: ElfMachine
- pattern EM_MN10300 :: ElfMachine
- pattern EM_MN10200 :: ElfMachine
- pattern EM_PJ :: ElfMachine
- pattern EM_OPENRISC :: ElfMachine
- pattern EM_ARC_A5 :: ElfMachine
- pattern EM_XTENSA :: ElfMachine
- pattern EM_VIDEOCORE :: ElfMachine
- pattern EM_TMM_GPP :: ElfMachine
- pattern EM_NS32K :: ElfMachine
- pattern EM_TPC :: ElfMachine
- pattern EM_SNP1K :: ElfMachine
- pattern EM_ST200 :: ElfMachine
- pattern EM_IP2K :: ElfMachine
- pattern EM_MAX :: ElfMachine
- pattern EM_CR :: ElfMachine
- pattern EM_F2MC16 :: ElfMachine
- pattern EM_MSP430 :: ElfMachine
- pattern EM_BLACKFIN :: ElfMachine
- pattern EM_SE_C33 :: ElfMachine
- pattern EM_SEP :: ElfMachine
- pattern EM_ARCA :: ElfMachine
- pattern EM_UNICORE :: ElfMachine
- pattern EM_AARCH64 :: ElfMachine
- newtype ElfSectionType = ElfSectionType Word32
- pattern SHT_NULL :: ElfSectionType
- pattern SHT_PROGBITS :: ElfSectionType
- pattern SHT_SYMTAB :: ElfSectionType
- pattern SHT_STRTAB :: ElfSectionType
- pattern SHT_RELA :: ElfSectionType
- pattern SHT_HASH :: ElfSectionType
- pattern SHT_DYNAMIC :: ElfSectionType
- pattern SHT_NOTE :: ElfSectionType
- pattern SHT_NOBITS :: ElfSectionType
- pattern SHT_REL :: ElfSectionType
- pattern SHT_SHLIB :: ElfSectionType
- pattern SHT_DYNSYM :: ElfSectionType
- newtype ElfSegmentType = ElfSegmentType Word32
- pattern PT_NULL :: ElfSegmentType
- pattern PT_LOAD :: ElfSegmentType
- pattern PT_DYNAMIC :: ElfSegmentType
- pattern PT_INTERP :: ElfSegmentType
- pattern PT_NOTE :: ElfSegmentType
- pattern PT_SHLIB :: ElfSegmentType
- pattern PT_PHDR :: ElfSegmentType
- newtype ElfSectionFlag = ElfSectionFlag Word64
- pattern SHF_WRITE :: ElfSectionFlag
- pattern SHF_ALLOC :: ElfSectionFlag
- pattern SHF_EXECINSTR :: ElfSectionFlag
- newtype ElfSegmentFlag = ElfSegmentFlag Word32
- pattern PF_X :: ElfSegmentFlag
- pattern PF_W :: ElfSegmentFlag
- pattern PF_R :: ElfSegmentFlag
- newtype ElfSymbolType = ElfSymbolType Word8
- pattern STT_NoType :: ElfSymbolType
- pattern STT_Object :: ElfSymbolType
- pattern STT_Func :: ElfSymbolType
- pattern STT_Section :: ElfSymbolType
- pattern STT_File :: ElfSymbolType
- pattern STT_Common :: ElfSymbolType
- pattern STT_TLS :: ElfSymbolType
- pattern STT_LoOS :: ElfSymbolType
- pattern STT_HiOS :: ElfSymbolType
- pattern STT_LoProc :: ElfSymbolType
- pattern STT_HiProc :: ElfSymbolType
- newtype ElfSymbolBinding = ElfSymbolBinding Word8
- pattern STB_Local :: ElfSymbolBinding
- pattern STB_Global :: ElfSymbolBinding
- pattern STB_Weak :: ElfSymbolBinding
- pattern STB_LoOS :: ElfSymbolBinding
- pattern STB_HiOS :: ElfSymbolBinding
- pattern STB_LoProc :: ElfSymbolBinding
- pattern STB_HiProc :: ElfSymbolBinding
- newtype ElfSectionIndex = ElfSectionIndex Word16
- pattern SHN_Undef :: ElfSectionIndex
- pattern SHN_LoProc :: ElfSectionIndex
- pattern SHN_HiProc :: ElfSectionIndex
- pattern SHN_LoOS :: ElfSectionIndex
- pattern SHN_HiOS :: ElfSectionIndex
- pattern SHN_Abs :: ElfSectionIndex
- pattern SHN_Common :: ElfSectionIndex
- newtype ElfRelocationType_AARCH64 = ElfRelocationType_AARCH64 Word32
- pattern R_AARCH64_NONE :: ElfRelocationType_AARCH64
- pattern R_AARCH64_NONE_ :: ElfRelocationType_AARCH64
- pattern R_AARCH64_ABS64 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_ABS32 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_ABS16 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_PREL64 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_PREL32 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_PREL16 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_PLT32 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_MOVW_UABS_G0 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_MOVW_UABS_G0_NC :: ElfRelocationType_AARCH64
- pattern R_AARCH64_MOVW_UABS_G1 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_MOVW_UABS_G1_NC :: ElfRelocationType_AARCH64
- pattern R_AARCH64_MOVW_UABS_G2 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_MOVW_UABS_G2_NC :: ElfRelocationType_AARCH64
- pattern R_AARCH64_MOVW_UABS_G3 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_MOVW_SABS_G0 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_MOVW_SABS_G1 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_MOVW_SABS_G2 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_LD_PREL_LO19 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_ADR_PREL_LO21 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_ADR_PREL_PG_HI21 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_ADR_PREL_PG_HI21_NC :: ElfRelocationType_AARCH64
- pattern R_AARCH64_ADD_ABS_LO12_NC :: ElfRelocationType_AARCH64
- pattern R_AARCH64_LDST8_ABS_LO12_NC :: ElfRelocationType_AARCH64
- pattern R_AARCH64_LDST16_ABS_LO12_NC :: ElfRelocationType_AARCH64
- pattern R_AARCH64_LDST32_ABS_LO12_NC :: ElfRelocationType_AARCH64
- pattern R_AARCH64_LDST64_ABS_LO12_NC :: ElfRelocationType_AARCH64
- pattern R_AARCH64_LDST128_ABS_LO12_NC :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TSTBR14 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_CONDBR19 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_JUMP26 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_CALL26 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_MOVW_PREL_G0 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_MOVW_PREL_G0_NC :: ElfRelocationType_AARCH64
- pattern R_AARCH64_MOVW_PREL_G1 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_MOVW_PREL_G1_NC :: ElfRelocationType_AARCH64
- pattern R_AARCH64_MOVW_PREL_G2 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_MOVW_PREL_G2_NC :: ElfRelocationType_AARCH64
- pattern R_AARCH64_MOVW_PREL_G3 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_MOVW_GOTOFF_G0 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_MOVW_GOTOFF_G0_NC :: ElfRelocationType_AARCH64
- pattern R_AARCH64_MOVW_GOTOFF_G1 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_MOVW_GOTOFF_G1_NC :: ElfRelocationType_AARCH64
- pattern R_AARCH64_MOVW_GOTOFF_G2 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_MOVW_GOTOFF_G2_NC :: ElfRelocationType_AARCH64
- pattern R_AARCH64_MOVW_GOTOFF_G3 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_GOTREL64 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_GOTREL32 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_GOT_LD_PREL19 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_LD64_GOTOFF_LO15 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_ADR_GOT_PAGE :: ElfRelocationType_AARCH64
- pattern R_AARCH64_LD64_GOT_LO12_NC :: ElfRelocationType_AARCH64
- pattern R_AARCH64_LD64_GOTPAGE_LO15 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSLD_ADR_PREL21 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSLD_ADR_PAGE21 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSLD_ADD_LO12_NC :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSLD_MOVW_G1 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSLD_MOVW_G0_NC :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSLD_LD_PREL19 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSLD_MOVW_DTPREL_G2 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSLD_MOVW_DTPREL_G1 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSLD_MOVW_DTPREL_G1_NC :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSLD_MOVW_DTPREL_G0 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSLD_MOVW_DTPREL_G0_NC :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSLD_ADD_DTPREL_HI12 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSLD_ADD_DTPREL_LO12 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSLD_ADD_DTPREL_LO12_NC :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSLD_LDST8_DTPREL_LO12 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSLD_LDST8_DTPREL_LO12_NC :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSLD_LDST16_DTPREL_LO12 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSLD_LDST16_DTPREL_LO12_NC :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSLD_LDST32_DTPREL_LO12 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSLD_LDST32_DTPREL_LO12_NC :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSLD_LDST64_DTPREL_LO12 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSLD_LDST64_DTPREL_LO12_NC :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSLD_LDST128_DTPREL_LO12 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSLD_LDST128_DTPREL_LO12_NC :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSIE_MOVW_GOTTPREL_G1 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSIE_MOVW_GOTTPREL_G0_NC :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSIE_ADR_GOTTPREL_PAGE21 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSIE_LD64_GOTTPREL_LO12_NC :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSIE_LD_GOTTPREL_PREL19 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSLE_MOVW_TPREL_G2 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSLE_MOVW_TPREL_G1 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSLE_MOVW_TPREL_G1_NC :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSLE_MOVW_TPREL_G0 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSLE_MOVW_TPREL_G0_NC :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSLE_ADD_TPREL_HI12 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSLE_ADD_TPREL_LO12 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSLE_ADD_TPREL_LO12_NC :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSLE_LDST8_TPREL_LO12 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSLE_LDST8_TPREL_LO12_NC :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSLE_LDST16_TPREL_LO12 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSLE_LDST16_TPREL_LO12_NC :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSLE_LDST32_TPREL_LO12 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSLE_LDST32_TPREL_LO12_NC :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSLE_LDST64_TPREL_LO12 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSLE_LDST64_TPREL_LO12_NC :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSLE_LDST128_TPREL_LO12 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSLE_LDST128_TPREL_LO12_NC :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSDESC_LD_PREL19 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSDESC_ADR_PREL21 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSDESC_ADR_PAGE21 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSDESC_LD64_LO12 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSDESC_ADD_LO12 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSDESC_OFF_G1 :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSDESC_OFF_G0_NC :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSDESC_LDR :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSDESC_ADD :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSDESC_CALL :: ElfRelocationType_AARCH64
- pattern R_AARCH64_COPY :: ElfRelocationType_AARCH64
- pattern R_AARCH64_GLOB_DAT :: ElfRelocationType_AARCH64
- pattern R_AARCH64_JUMP_SLOT :: ElfRelocationType_AARCH64
- pattern R_AARCH64_RELATIVE :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLS_DTPMOD :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLS_DTPREL :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLS_TPREL :: ElfRelocationType_AARCH64
- pattern R_AARCH64_TLSDESC :: ElfRelocationType_AARCH64
- pattern R_AARCH64_IRELATIVE :: ElfRelocationType_AARCH64
Documentation
Constants defined here are declared using Template Haskell,
so the full documentation is supported only starting from template-haskell
version 2.18.
For the older versions see the sources or the documents describing ELF file format.
Data types, patterns and instances are generated by mkDeclarations
TH macros.
Below is an example of how it works. The code
$(mkDeclarations BaseWord16 "TypeName" "ValuePrefix" [ ("_A", 0, "Doc strig for ValuePrefix_A") , ("_B", 1, "Doc strig for ValuePrefix_B") ])
produces this:
newtype TypeName = TypeName Word16 deriving (Eq, Ord, Enum, Num, Real, Integral, Bits, FiniteBits) instance Show TypeName where show (TypeName 0) = ("ValuePrefix" ++ "_A") show (TypeName 1) = ("ValuePrefix" ++ "_B") show (TypeName n_a5QI) = ("TypeName" ++ (" " ++ show n_a5QI)) pattern ValuePrefix_A :: TypeName pattern ValuePrefix_A = TypeName 0 pattern ValuePrefix_B :: TypeName pattern ValuePrefix_B = TypeName 1 instance Binary (Le TypeName) where get = (Le <$> (TypeName <$> getWord16le)) put (Le (TypeName n_a5QK)) = putWord16le n_a5QK instance Binary (Be TypeName) where get = (Be <$> (TypeName <$> getWord16be)) put (Be (TypeName n_a5QL)) = putWord16be n_a5QL
Operating system and ABI for which the object is prepared
Instances
pattern ELFOSABI_SYSV :: ElfOSABI Source #
No extensions or unspecified
pattern ELFOSABI_HPUX :: ElfOSABI Source #
Hewlett-Packard HP-UX
pattern ELFOSABI_NETBSD :: ElfOSABI Source #
NetBSD
pattern ELFOSABI_LINUX :: ElfOSABI Source #
Linux
pattern ELFOSABI_SOLARIS :: ElfOSABI Source #
Sun Solaris
pattern ELFOSABI_AIX :: ElfOSABI Source #
AIX
pattern ELFOSABI_IRIX :: ElfOSABI Source #
IRIX
pattern ELFOSABI_FREEBSD :: ElfOSABI Source #
FreeBSD
pattern ELFOSABI_TRU64 :: ElfOSABI Source #
Compaq TRU64 UNIX
pattern ELFOSABI_MODESTO :: ElfOSABI Source #
Novell Modesto
pattern ELFOSABI_OPENBSD :: ElfOSABI Source #
Open BSD
pattern ELFOSABI_OPENVMS :: ElfOSABI Source #
Open VMS
pattern ELFOSABI_NSK :: ElfOSABI Source #
Hewlett-Packard Non-Stop Kernel
pattern ELFOSABI_AROS :: ElfOSABI Source #
Amiga Research OS
pattern ELFOSABI_ARM :: ElfOSABI Source #
ARM
pattern ELFOSABI_STANDALONE :: ElfOSABI Source #
Standalone (embedded) application
Object file type
Instances
newtype ElfMachine Source #
Target architecture
Instances
pattern EM_NONE :: ElfMachine Source #
No machine
pattern EM_M32 :: ElfMachine Source #
AT&T WE 32100
pattern EM_SPARC :: ElfMachine Source #
SPARC
pattern EM_386 :: ElfMachine Source #
Intel 80386
pattern EM_68K :: ElfMachine Source #
Motorola 68000
pattern EM_88K :: ElfMachine Source #
Motorola 88000
pattern EM_486 :: ElfMachine Source #
Intel i486 (DO NOT USE THIS ONE)
pattern EM_860 :: ElfMachine Source #
Intel 80860
pattern EM_MIPS :: ElfMachine Source #
MIPS I Architecture
pattern EM_S370 :: ElfMachine Source #
IBM System/370 Processor
pattern EM_MIPS_RS3_LE :: ElfMachine Source #
MIPS RS3000 Little-endian
pattern EM_SPARC64 :: ElfMachine Source #
SPARC 64-bit
pattern EM_PARISC :: ElfMachine Source #
Hewlett-Packard PA-RISC
pattern EM_VPP500 :: ElfMachine Source #
Fujitsu VPP500
pattern EM_SPARC32PLUS :: ElfMachine Source #
Enhanced instruction set SPARC
pattern EM_960 :: ElfMachine Source #
Intel 80960
pattern EM_PPC :: ElfMachine Source #
PowerPC
pattern EM_PPC64 :: ElfMachine Source #
64-bit PowerPC
pattern EM_S390 :: ElfMachine Source #
IBM System/390 Processor
pattern EM_SPU :: ElfMachine Source #
Cell SPU
pattern EM_V800 :: ElfMachine Source #
NEC V800
pattern EM_FR20 :: ElfMachine Source #
Fujitsu FR20
pattern EM_RH32 :: ElfMachine Source #
TRW RH-32
pattern EM_RCE :: ElfMachine Source #
Motorola RCE
pattern EM_ARM :: ElfMachine Source #
Advanced RISC Machines ARM
pattern EM_ALPHA :: ElfMachine Source #
Digital Alpha
pattern EM_SH :: ElfMachine Source #
Hitachi SH
pattern EM_SPARCV9 :: ElfMachine Source #
SPARC Version 9
pattern EM_TRICORE :: ElfMachine Source #
Siemens TriCore embedded processor
pattern EM_ARC :: ElfMachine Source #
Argonaut RISC Core, Argonaut Technologies Inc.
pattern EM_H8_300 :: ElfMachine Source #
Hitachi H8/300
pattern EM_H8_300H :: ElfMachine Source #
Hitachi H8/300H
pattern EM_H8S :: ElfMachine Source #
Hitachi H8S
pattern EM_H8_500 :: ElfMachine Source #
Hitachi H8/500
pattern EM_IA_64 :: ElfMachine Source #
Intel IA-64 processor architecture
pattern EM_MIPS_X :: ElfMachine Source #
Stanford MIPS-X
pattern EM_COLDFIRE :: ElfMachine Source #
Motorola ColdFire
pattern EM_68HC12 :: ElfMachine Source #
Motorola M68HC12
pattern EM_MMA :: ElfMachine Source #
Fujitsu MMA Multimedia Accelerator
pattern EM_PCP :: ElfMachine Source #
Siemens PCP
pattern EM_NCPU :: ElfMachine Source #
Sony nCPU embedded RISC processor
pattern EM_NDR1 :: ElfMachine Source #
Denso NDR1 microprocessor
pattern EM_STARCORE :: ElfMachine Source #
Motorola Star*Core processor
pattern EM_ME16 :: ElfMachine Source #
Toyota ME16 processor
pattern EM_ST100 :: ElfMachine Source #
STMicroelectronics ST100 processor
pattern EM_TINYJ :: ElfMachine Source #
Advanced Logic Corp. TinyJ embedded processor family
pattern EM_X86_64 :: ElfMachine Source #
AMD x86-64 architecture
pattern EM_PDSP :: ElfMachine Source #
Sony DSP Processor
pattern EM_FX66 :: ElfMachine Source #
Siemens FX66 microcontroller
pattern EM_ST9PLUS :: ElfMachine Source #
STMicroelectronics ST9+ 8/16 bit microcontroller
pattern EM_ST7 :: ElfMachine Source #
STMicroelectronics ST7 8-bit microcontroller
pattern EM_68HC16 :: ElfMachine Source #
Motorola MC68HC16 Microcontroller
pattern EM_68HC11 :: ElfMachine Source #
Motorola MC68HC11 Microcontroller
pattern EM_68HC08 :: ElfMachine Source #
Motorola MC68HC08 Microcontroller
pattern EM_68HC05 :: ElfMachine Source #
Motorola MC68HC05 Microcontroller
pattern EM_SVX :: ElfMachine Source #
Silicon Graphics SVx
pattern EM_ST19 :: ElfMachine Source #
STMicroelectronics ST19 8-bit microcontroller
pattern EM_VAX :: ElfMachine Source #
Digital VAX
pattern EM_CRIS :: ElfMachine Source #
Axis Communications 32-bit embedded processor
pattern EM_JAVELIN :: ElfMachine Source #
Infineon Technologies 32-bit embedded processor
pattern EM_FIREPATH :: ElfMachine Source #
Element 14 64-bit DSP Processor
pattern EM_ZSP :: ElfMachine Source #
LSI Logic 16-bit DSP Processor
pattern EM_MMIX :: ElfMachine Source #
Donald Knuth's educational 64-bit processor
pattern EM_HUANY :: ElfMachine Source #
Harvard University machine-independent object files
pattern EM_PRISM :: ElfMachine Source #
SiTera Prism
pattern EM_AVR :: ElfMachine Source #
Atmel AVR 8-bit microcontroller
pattern EM_FR30 :: ElfMachine Source #
Fujitsu FR30
pattern EM_D10V :: ElfMachine Source #
Mitsubishi D10V
pattern EM_D30V :: ElfMachine Source #
Mitsubishi D30V
pattern EM_V850 :: ElfMachine Source #
NEC v850
pattern EM_M32R :: ElfMachine Source #
Mitsubishi M32R
pattern EM_MN10300 :: ElfMachine Source #
Matsushita MN10300
pattern EM_MN10200 :: ElfMachine Source #
Matsushita MN10200
pattern EM_PJ :: ElfMachine Source #
picoJava
pattern EM_OPENRISC :: ElfMachine Source #
OpenRISC 32-bit embedded processor
pattern EM_ARC_A5 :: ElfMachine Source #
ARC Cores Tangent-A5
pattern EM_XTENSA :: ElfMachine Source #
Tensilica Xtensa Architecture
pattern EM_VIDEOCORE :: ElfMachine Source #
Alphamosaic VideoCore processor
pattern EM_TMM_GPP :: ElfMachine Source #
Thompson Multimedia General Purpose Processor
pattern EM_NS32K :: ElfMachine Source #
National Semiconductor 32000 series
pattern EM_TPC :: ElfMachine Source #
Tenor Network TPC processor
pattern EM_SNP1K :: ElfMachine Source #
Trebia SNP 1000 processor
pattern EM_ST200 :: ElfMachine Source #
STMicroelectronics (www.st.com) ST200 microcontroller
pattern EM_IP2K :: ElfMachine Source #
Ubicom IP2xxx microcontroller family
pattern EM_MAX :: ElfMachine Source #
MAX Processor
pattern EM_CR :: ElfMachine Source #
National Semiconductor CompactRISC microprocessor
pattern EM_F2MC16 :: ElfMachine Source #
Fujitsu F2MC16
pattern EM_MSP430 :: ElfMachine Source #
Texas Instruments embedded microcontroller msp430
pattern EM_BLACKFIN :: ElfMachine Source #
Analog Devices Blackfin (DSP) processor
pattern EM_SE_C33 :: ElfMachine Source #
S1C33 Family of Seiko Epson processors
pattern EM_SEP :: ElfMachine Source #
Sharp embedded microprocessor
pattern EM_ARCA :: ElfMachine Source #
Arca RISC Microprocessor
pattern EM_UNICORE :: ElfMachine Source #
Microprocessor series from PKU-Unity Ltd. and MPRC of Peking University
pattern EM_AARCH64 :: ElfMachine Source #
ELF for the Arm 64-bit Architecture (AArch64)
newtype ElfSectionType Source #
Section type
Instances
pattern SHT_NULL :: ElfSectionType Source #
Identifies an empty section header.
pattern SHT_PROGBITS :: ElfSectionType Source #
Contains information defined by the program
pattern SHT_SYMTAB :: ElfSectionType Source #
Contains a linker symbol table
pattern SHT_STRTAB :: ElfSectionType Source #
Contains a string table
pattern SHT_RELA :: ElfSectionType Source #
Contains Rela type relocation entries
pattern SHT_HASH :: ElfSectionType Source #
Contains a symbol hash table
pattern SHT_DYNAMIC :: ElfSectionType Source #
Contains dynamic linking tables
pattern SHT_NOTE :: ElfSectionType Source #
Contains note information
pattern SHT_NOBITS :: ElfSectionType Source #
Contains uninitialized space; does not occupy any space in the file
pattern SHT_REL :: ElfSectionType Source #
Contains Rel type relocation entries
pattern SHT_SHLIB :: ElfSectionType Source #
Reserved
pattern SHT_DYNSYM :: ElfSectionType Source #
Contains a dynamic loader symbol table
newtype ElfSegmentType Source #
Segment type
Instances
pattern PT_NULL :: ElfSegmentType Source #
Unused entry
pattern PT_LOAD :: ElfSegmentType Source #
Loadable segment
pattern PT_DYNAMIC :: ElfSegmentType Source #
Dynamic linking tables
pattern PT_INTERP :: ElfSegmentType Source #
Program interpreter path name
pattern PT_NOTE :: ElfSegmentType Source #
Note section
pattern PT_SHLIB :: ElfSegmentType Source #
Reserved
pattern PT_PHDR :: ElfSegmentType Source #
Program header table
newtype ElfSectionFlag Source #
Attributes of the section
Instances
pattern SHF_WRITE :: ElfSectionFlag Source #
Section contains writable data
pattern SHF_ALLOC :: ElfSectionFlag Source #
Section is allocated in memory image of program
pattern SHF_EXECINSTR :: ElfSectionFlag Source #
Section contains executable instructions
newtype ElfSegmentFlag Source #
Attributes of the segment
Instances
pattern PF_X :: ElfSegmentFlag Source #
Execute permission
pattern PF_W :: ElfSegmentFlag Source #
Write permission
pattern PF_R :: ElfSegmentFlag Source #
Read permission
newtype ElfSymbolType Source #
Symbol type
Instances
pattern STT_NoType :: ElfSymbolType Source #
NoType
pattern STT_Object :: ElfSymbolType Source #
Object
pattern STT_Func :: ElfSymbolType Source #
Func
pattern STT_Section :: ElfSymbolType Source #
Section
pattern STT_File :: ElfSymbolType Source #
File
pattern STT_Common :: ElfSymbolType Source #
Common
pattern STT_TLS :: ElfSymbolType Source #
TLS
pattern STT_LoOS :: ElfSymbolType Source #
LoOS
pattern STT_HiOS :: ElfSymbolType Source #
HiOS
pattern STT_LoProc :: ElfSymbolType Source #
LoProc
pattern STT_HiProc :: ElfSymbolType Source #
HiProc
newtype ElfSymbolBinding Source #
Symbol binding
Instances
pattern STB_Local :: ElfSymbolBinding Source #
pattern STB_Global :: ElfSymbolBinding Source #
pattern STB_Weak :: ElfSymbolBinding Source #
pattern STB_LoOS :: ElfSymbolBinding Source #
pattern STB_HiOS :: ElfSymbolBinding Source #
pattern STB_LoProc :: ElfSymbolBinding Source #
pattern STB_HiProc :: ElfSymbolBinding Source #
newtype ElfSectionIndex Source #
Section index
Instances
pattern SHN_Undef :: ElfSectionIndex Source #
pattern SHN_LoProc :: ElfSectionIndex Source #
pattern SHN_HiProc :: ElfSectionIndex Source #
pattern SHN_LoOS :: ElfSectionIndex Source #
pattern SHN_HiOS :: ElfSectionIndex Source #
pattern SHN_Abs :: ElfSectionIndex Source #
pattern SHN_Common :: ElfSectionIndex Source #
newtype ElfRelocationType_AARCH64 Source #
AARCH64 relocation type
Instances
pattern R_AARCH64_NONE :: ElfRelocationType_AARCH64 Source #
None
pattern R_AARCH64_NONE_ :: ElfRelocationType_AARCH64 Source #
None
pattern R_AARCH64_ABS64 :: ElfRelocationType_AARCH64 Source #
S + A | No overflow check
pattern R_AARCH64_ABS32 :: ElfRelocationType_AARCH64 Source #
S + A | Check that -2^31 <= X < 2^32
pattern R_AARCH64_ABS16 :: ElfRelocationType_AARCH64 Source #
S + A | Check that -2^15 <= X < 2^16
pattern R_AARCH64_PREL64 :: ElfRelocationType_AARCH64 Source #
S + A - P | No overflow check
pattern R_AARCH64_PREL32 :: ElfRelocationType_AARCH64 Source #
S + A - P | Check that -2^31 <= X < 2^32
pattern R_AARCH64_PREL16 :: ElfRelocationType_AARCH64 Source #
S + A - P | Check that -2^15 <= X < 2^16
pattern R_AARCH64_PLT32 :: ElfRelocationType_AARCH64 Source #
S + A - P | Check that -2^31 <= X < 2^31 see call and jump relocations
pattern R_AARCH64_MOVW_UABS_G0 :: ElfRelocationType_AARCH64 Source #
S + A | Set a MOV[KZ] immediate field to bits [15: 0] of X; check that 0 <= X < 2^16
pattern R_AARCH64_MOVW_UABS_G0_NC :: ElfRelocationType_AARCH64 Source #
S + A | Set a MOV[KZ] immediate field to bits [15: 0] of X. No overflow check
pattern R_AARCH64_MOVW_UABS_G1 :: ElfRelocationType_AARCH64 Source #
S + A | Set a MOV[KZ] immediate field to bits [31:16] of X; check that 0 <= X < 2^32
pattern R_AARCH64_MOVW_UABS_G1_NC :: ElfRelocationType_AARCH64 Source #
S + A | Set a MOV[KZ] immediate field to bits [31:16] of X. No overflow check
pattern R_AARCH64_MOVW_UABS_G2 :: ElfRelocationType_AARCH64 Source #
S + A | Set a MOV[KZ] immediate field to bits [47:32] of X; check that 0 <= X < 2^48
pattern R_AARCH64_MOVW_UABS_G2_NC :: ElfRelocationType_AARCH64 Source #
S + A | Set a MOV[KZ] immediate field to bits [47:32] of X. No overflow check
pattern R_AARCH64_MOVW_UABS_G3 :: ElfRelocationType_AARCH64 Source #
S + A | Set a MOV[KZ] immediate field to bits [63:48] of X (no overflow check needed)
pattern R_AARCH64_MOVW_SABS_G0 :: ElfRelocationType_AARCH64 Source #
S + A | Set a MOV[NZ] immediate field using bits [15: 0] of X; check -2^16 <= X < 2^16
pattern R_AARCH64_MOVW_SABS_G1 :: ElfRelocationType_AARCH64 Source #
S + A | Set a MOV[NZ] immediate field using bits [31:16] of X; check -2^32 <= X < 2^32
pattern R_AARCH64_MOVW_SABS_G2 :: ElfRelocationType_AARCH64 Source #
S + A | Set a MOV[NZ] immediate field using bits [47:32] of X; check -2^48 <= X < 2^48
pattern R_AARCH64_LD_PREL_LO19 :: ElfRelocationType_AARCH64 Source #
S + A - P | Set a load-literal immediate value to bits [20:2] of X; check that -2^20 <= X < 2^20
pattern R_AARCH64_ADR_PREL_LO21 :: ElfRelocationType_AARCH64 Source #
S + A - P | Set an ADR immediate value to bits [20:0] of X; check that -2^20 <= X < 2^20
pattern R_AARCH64_ADR_PREL_PG_HI21 :: ElfRelocationType_AARCH64 Source #
Page(S + A) - Page(P) | Set an ADRP immediate value to bits [32:12] of the X; check that -2^32 <= X < 2^32
pattern R_AARCH64_ADR_PREL_PG_HI21_NC :: ElfRelocationType_AARCH64 Source #
Page(S + A) - Page(P) | Set an ADRP immediate value to bits [32:12] of the X. No overflow check
pattern R_AARCH64_ADD_ABS_LO12_NC :: ElfRelocationType_AARCH64 Source #
S + A | Set an ADD immediate value to bits [11:0] of X. No overflow check. Used with relocations ADR_PREL_PG_HI21 and ADR_PREL_PG_HI21_NC
pattern R_AARCH64_LDST8_ABS_LO12_NC :: ElfRelocationType_AARCH64 Source #
S + A | Set an LD/ST immediate value to bits [11:0] of X. No overflow check. Used with relocations ADR_PREL_PG_HI21 and ADR_PREL_PG_HI21_NC
pattern R_AARCH64_LDST16_ABS_LO12_NC :: ElfRelocationType_AARCH64 Source #
S + A | Set an LD/ST immediate value to bits [11:1] of X. No overflow check
pattern R_AARCH64_LDST32_ABS_LO12_NC :: ElfRelocationType_AARCH64 Source #
S + A | Set the LD/ST immediate value to bits [11:2] of X. No overflow check
pattern R_AARCH64_LDST64_ABS_LO12_NC :: ElfRelocationType_AARCH64 Source #
S + A | Set the LD/ST immediate value to bits [11:3] of X. No overflow check
pattern R_AARCH64_LDST128_ABS_LO12_NC :: ElfRelocationType_AARCH64 Source #
S + A | Set the LD/ST immediate value to bits [11:4] of X. No overflow check
pattern R_AARCH64_TSTBR14 :: ElfRelocationType_AARCH64 Source #
S + A - P | Set the immediate field of a TBZ/TBNZ instruction to bits [15:2] of X; check -2^15 <= X < 2^15
pattern R_AARCH64_CONDBR19 :: ElfRelocationType_AARCH64 Source #
S + A - P | Set the immediate field of a conditional branch instruction to bits [20:2] of X; check -2^20 <= X< 2^20
pattern R_AARCH64_JUMP26 :: ElfRelocationType_AARCH64 Source #
S + A - P | Set a B immediate field to bits [27:2] of X; check that -2^27 <= X < 2^27
pattern R_AARCH64_CALL26 :: ElfRelocationType_AARCH64 Source #
S + A - P | Set a CALL immediate field to bits [27:2] of X; check that -2^27 <= X < 2^27
pattern R_AARCH64_MOVW_PREL_G0 :: ElfRelocationType_AARCH64 Source #
S + A - P | Set a MOV[NZ]immediate field to bits [15:0] of X
pattern R_AARCH64_MOVW_PREL_G0_NC :: ElfRelocationType_AARCH64 Source #
S + A - P | Set a MOVK immediate field to bits [15:0] of X. No overflow check
pattern R_AARCH64_MOVW_PREL_G1 :: ElfRelocationType_AARCH64 Source #
S + A - P | Set a MOV[NZ]immediate field to bits [31:16] of X
pattern R_AARCH64_MOVW_PREL_G1_NC :: ElfRelocationType_AARCH64 Source #
S + A - P | Set a MOVK immediate field to bits [31:16] of X. No overflow check
pattern R_AARCH64_MOVW_PREL_G2 :: ElfRelocationType_AARCH64 Source #
S + A - P | Set a MOV[NZ]immediate value to bits [47:32] of X
pattern R_AARCH64_MOVW_PREL_G2_NC :: ElfRelocationType_AARCH64 Source #
S + A - P | Set a MOVK immediate field to bits [47:32] of X. No overflow check
pattern R_AARCH64_MOVW_PREL_G3 :: ElfRelocationType_AARCH64 Source #
S + A - P | Set a MOV[NZ]immediate value to bits [63:48] of X
pattern R_AARCH64_MOVW_GOTOFF_G0 :: ElfRelocationType_AARCH64 Source #
G(GDAT(S + A)) - GOT | Set a MOV[NZ] immediate field to bits [15:0] of X
pattern R_AARCH64_MOVW_GOTOFF_G0_NC :: ElfRelocationType_AARCH64 Source #
G(GDAT(S + A)) - GOT | Set a MOVK immediate field to bits [15:0] of X. No overflow check
pattern R_AARCH64_MOVW_GOTOFF_G1 :: ElfRelocationType_AARCH64 Source #
G(GDAT(S + A)) - GOT | Set a MOV[NZ] immediate value to bits [31:16] of X
pattern R_AARCH64_MOVW_GOTOFF_G1_NC :: ElfRelocationType_AARCH64 Source #
G(GDAT(S + A)) - GOT | Set a MOVK immediate value to bits [31:16] of X. No overflow check
pattern R_AARCH64_MOVW_GOTOFF_G2 :: ElfRelocationType_AARCH64 Source #
G(GDAT(S + A)) - GOT | Set a MOV[NZ] immediate value to bits [47:32] of X
pattern R_AARCH64_MOVW_GOTOFF_G2_NC :: ElfRelocationType_AARCH64 Source #
G(GDAT(S + A)) - GOT | Set a MOVK immediate value to bits [47:32] of X. No overflow check
pattern R_AARCH64_MOVW_GOTOFF_G3 :: ElfRelocationType_AARCH64 Source #
G(GDAT(S + A)) - GOT | Set a MOV[NZ] immediate value to bits [63:48] of X
pattern R_AARCH64_GOTREL64 :: ElfRelocationType_AARCH64 Source #
S + A - GOT | Set the data to a 64-bit offset relative to the GOT
pattern R_AARCH64_GOTREL32 :: ElfRelocationType_AARCH64 Source #
S + A - GOT | Set the data to a 32-bit offset relative to GOT, treated as signed; check that -2^31 <= X < 2^31
pattern R_AARCH64_GOT_LD_PREL19 :: ElfRelocationType_AARCH64 Source #
G(GDAT(S + A))- P | Set a load-literal immediate field to bits [20:2] of X; check –2^20 <= X < 2^20
pattern R_AARCH64_LD64_GOTOFF_LO15 :: ElfRelocationType_AARCH64 Source #
G(GDAT(S + A))- GOT | Set a LD/ST immediate field to bits [14:3] of X; check that 0 <= X < 2^15 , X&7 = 0
pattern R_AARCH64_ADR_GOT_PAGE :: ElfRelocationType_AARCH64 Source #
Page(G(GDAT(S + A)))- Page(P) | Set the immediate value of an ADRP to bits [32:12] of X; check that –2^32 <= X < 2^32
pattern R_AARCH64_LD64_GOT_LO12_NC :: ElfRelocationType_AARCH64 Source #
G(GDAT(S + A)) | Set the LD/ST immediate field to bits [11:3] of X. No overflow check; check that X&7 = 0
pattern R_AARCH64_LD64_GOTPAGE_LO15 :: ElfRelocationType_AARCH64 Source #
G(GDAT(S + A))- Page(GOT) | Set the LD/ST immediate field to bits [14:3] of X; check that 0 <= X < 2^15, X&7 = 0
pattern R_AARCH64_TLSLD_ADR_PREL21 :: ElfRelocationType_AARCH64 Source #
G(GLDM(S))) - P | Set an ADR immediate field to bits [20:0] of X; check –2^20 <= X < 2^20
pattern R_AARCH64_TLSLD_ADR_PAGE21 :: ElfRelocationType_AARCH64 Source #
Page(G(GLDM(S))) - Page(P) | Set an ADRP immediate field to bits [32:12] of X; check –2^32 <= X < 2^32
pattern R_AARCH64_TLSLD_ADD_LO12_NC :: ElfRelocationType_AARCH64 Source #
G(GLDM(S)) | Set an ADD immediate field to bits [11:0] of X. No overflow check
pattern R_AARCH64_TLSLD_MOVW_G1 :: ElfRelocationType_AARCH64 Source #
G(GLDM(S)) - GOT | Set a MOV[NZ] immediate field to bits [31:16] of X
pattern R_AARCH64_TLSLD_MOVW_G0_NC :: ElfRelocationType_AARCH64 Source #
G(GLDM(S)) - GOT | Set a MOVK immediate field to bits [15:0] of X. No overflow check
pattern R_AARCH64_TLSLD_LD_PREL19 :: ElfRelocationType_AARCH64 Source #
G(GLDM(S)) - P | Set a load-literal immediate field to bits [20:2] of X; check –2^20 <= X < 2^20
pattern R_AARCH64_TLSLD_MOVW_DTPREL_G2 :: ElfRelocationType_AARCH64 Source #
DTPREL(S+A) | Set a MOV[NZ] immediate field to bits [47:32] of X
pattern R_AARCH64_TLSLD_MOVW_DTPREL_G1 :: ElfRelocationType_AARCH64 Source #
DTPREL(S+A) | Set a MOV[NZ] immediate field to bits [31:16] of X
pattern R_AARCH64_TLSLD_MOVW_DTPREL_G1_NC :: ElfRelocationType_AARCH64 Source #
DTPREL(S+A) | Set a MOVK immediate field to bits [31:16] of X. No overflow check
pattern R_AARCH64_TLSLD_MOVW_DTPREL_G0 :: ElfRelocationType_AARCH64 Source #
DTPREL(S+A) | Set a MOV[NZ] immediate field to bits [15:0] of X
pattern R_AARCH64_TLSLD_MOVW_DTPREL_G0_NC :: ElfRelocationType_AARCH64 Source #
DTPREL(S+A) | Set a MOVK immediate field to bits [15:0] of X. No overflow check
pattern R_AARCH64_TLSLD_ADD_DTPREL_HI12 :: ElfRelocationType_AARCH64 Source #
DTPREL(S+A) | Set an ADD immediate field to bits [23:12] of X; check 0 <= X < 2^24
pattern R_AARCH64_TLSLD_ADD_DTPREL_LO12 :: ElfRelocationType_AARCH64 Source #
DTPREL(S+A) | Set an ADD immediate field to bits [11:0] of X; check 0 <= X < 2^12
pattern R_AARCH64_TLSLD_ADD_DTPREL_LO12_NC :: ElfRelocationType_AARCH64 Source #
DTPREL(S+A) | Set an ADD immediate field to bits [11:0] of X. No overflow check
pattern R_AARCH64_TLSLD_LDST8_DTPREL_LO12 :: ElfRelocationType_AARCH64 Source #
DTPREL(S+A) | Set a LD/ST offset field to bits [11:0] of X; check 0 <= X < 2^12
pattern R_AARCH64_TLSLD_LDST8_DTPREL_LO12_NC :: ElfRelocationType_AARCH64 Source #
DTPREL(S+A) | Set a LD/ST offset field to bits [11:0] of X. No overflow check
pattern R_AARCH64_TLSLD_LDST16_DTPREL_LO12 :: ElfRelocationType_AARCH64 Source #
DTPREL(S+A) | Set a LD/ST offset field to bits [11:1] of X; check 0 <= X < 2^12
pattern R_AARCH64_TLSLD_LDST16_DTPREL_LO12_NC :: ElfRelocationType_AARCH64 Source #
DTPREL(S+A) | Set a LD/ST offset field to bits [11:1] of X. No overflow check
pattern R_AARCH64_TLSLD_LDST32_DTPREL_LO12 :: ElfRelocationType_AARCH64 Source #
DTPREL(S+A) | Set a LD/ST offset field to bits [11:2] of X; check 0 <= X < 2^12
pattern R_AARCH64_TLSLD_LDST32_DTPREL_LO12_NC :: ElfRelocationType_AARCH64 Source #
DTPREL(S+A) | Set a LD/ST offset field to bits [11:2] of X. No overflow check
pattern R_AARCH64_TLSLD_LDST64_DTPREL_LO12 :: ElfRelocationType_AARCH64 Source #
DTPREL(S+A) | Set a LD/ST offset field to bits [11:3] of X; check 0 <= X < 2^12
pattern R_AARCH64_TLSLD_LDST64_DTPREL_LO12_NC :: ElfRelocationType_AARCH64 Source #
DTPREL(S+A) | Set a LD/ST offset field to bits [11:3] of X. No overflow check
pattern R_AARCH64_TLSLD_LDST128_DTPREL_LO12 :: ElfRelocationType_AARCH64 Source #
DTPREL(S+A) | Set a LD/ST offset field to bits [11:4] of X; check 0 <= X < 2^12
pattern R_AARCH64_TLSLD_LDST128_DTPREL_LO12_NC :: ElfRelocationType_AARCH64 Source #
DTPREL(S+A) | Set a LD/ST offset field to bits [11:4] of X. No overflow check
pattern R_AARCH64_TLSIE_MOVW_GOTTPREL_G1 :: ElfRelocationType_AARCH64 Source #
G(GTPREL(S+A)) - | GOT Set a MOV[NZ] immediate field to bits [31:16] of X
pattern R_AARCH64_TLSIE_MOVW_GOTTPREL_G0_NC :: ElfRelocationType_AARCH64 Source #
G(GTPREL(S+A)) - | GOT Set MOVK immediate to bits [15:0] of X. No overflow check
pattern R_AARCH64_TLSIE_ADR_GOTTPREL_PAGE21 :: ElfRelocationType_AARCH64 Source #
Page(G(GTPREL(S+A))) - Page(P) | Set an ADRP immediate field to bits [32:12] of X; check –2^32 <= X < 2^32
pattern R_AARCH64_TLSIE_LD64_GOTTPREL_LO12_NC :: ElfRelocationType_AARCH64 Source #
G(GTPREL(S+A)) | Set an LD offset field to bits [11:3] of X. No overflow check; check that X&7=0
pattern R_AARCH64_TLSIE_LD_GOTTPREL_PREL19 :: ElfRelocationType_AARCH64 Source #
G(GTPREL(S+A)) - P | Set a load-literal immediate to bits [20:2] of X; check –2^20 <= X < 2^20
pattern R_AARCH64_TLSLE_MOVW_TPREL_G2 :: ElfRelocationType_AARCH64 Source #
TPREL(S+A) | Set a MOV[NZ] immediate field to bits [47:32] of X
pattern R_AARCH64_TLSLE_MOVW_TPREL_G1 :: ElfRelocationType_AARCH64 Source #
TPREL(S+A) | Set a MOV[NZ] immediate field to bits [31:16] of X
pattern R_AARCH64_TLSLE_MOVW_TPREL_G1_NC :: ElfRelocationType_AARCH64 Source #
TPREL(S+A) | Set a MOVK immediate field to bits [31:16] of X. No overflow check
pattern R_AARCH64_TLSLE_MOVW_TPREL_G0 :: ElfRelocationType_AARCH64 Source #
TPREL(S+A) | Set a MOV[NZ] immediate field to bits [15:0] of X
pattern R_AARCH64_TLSLE_MOVW_TPREL_G0_NC :: ElfRelocationType_AARCH64 Source #
TPREL(S+A) | Set a MOVK immediate field to bits [15:0] of X. No overflow check
pattern R_AARCH64_TLSLE_ADD_TPREL_HI12 :: ElfRelocationType_AARCH64 Source #
TPREL(S+A) | Set an ADD immediate field to bits [23:12] of X; check 0 <= X < 2^24
pattern R_AARCH64_TLSLE_ADD_TPREL_LO12 :: ElfRelocationType_AARCH64 Source #
TPREL(S+A) | Set an ADD immediate field to bits [11:0] of X; check 0 <= X < 2^12
pattern R_AARCH64_TLSLE_ADD_TPREL_LO12_NC :: ElfRelocationType_AARCH64 Source #
TPREL(S+A) | Set an ADD immediate field to bits [11:0] of X. No overflow check
pattern R_AARCH64_TLSLE_LDST8_TPREL_LO12 :: ElfRelocationType_AARCH64 Source #
TPREL(S+A) | Set a LD/ST offset field to bits [11:0] of X; check 0 <= X < 2^12
pattern R_AARCH64_TLSLE_LDST8_TPREL_LO12_NC :: ElfRelocationType_AARCH64 Source #
TPREL(S+A) | Set a LD/ST offset field to bits [11:0] of X. No overflow check
pattern R_AARCH64_TLSLE_LDST16_TPREL_LO12 :: ElfRelocationType_AARCH64 Source #
TPREL(S+A) | Set a LD/ST offset field to bits [11:1] of X; check 0 <= X < 2^12
pattern R_AARCH64_TLSLE_LDST16_TPREL_LO12_NC :: ElfRelocationType_AARCH64 Source #
TPREL(S+A) | Set a LD/ST offset field to bits [11:1] of X. No overflow check
pattern R_AARCH64_TLSLE_LDST32_TPREL_LO12 :: ElfRelocationType_AARCH64 Source #
TPREL(S+A) | Set a LD/ST offset field to bits [11:2] of X; check 0 <= X < 2^12
pattern R_AARCH64_TLSLE_LDST32_TPREL_LO12_NC :: ElfRelocationType_AARCH64 Source #
TPREL(S+A) | Set a LD/ST offset field to bits [11:2] of X. No overflow check
pattern R_AARCH64_TLSLE_LDST64_TPREL_LO12 :: ElfRelocationType_AARCH64 Source #
TPREL(S+A) | Set a LD/ST offset field to bits [11:3] of X; check 0 <= X < 2^12
pattern R_AARCH64_TLSLE_LDST64_TPREL_LO12_NC :: ElfRelocationType_AARCH64 Source #
TPREL(S+A) | Set a LD/ST offset field to bits [11:3] of X. No overflow check
pattern R_AARCH64_TLSLE_LDST128_TPREL_LO12 :: ElfRelocationType_AARCH64 Source #
TPREL(S+A) | Set a LD/ST offset field to bits [11:4] of X; check 0 <= X < 2^12
pattern R_AARCH64_TLSLE_LDST128_TPREL_LO12_NC :: ElfRelocationType_AARCH64 Source #
TPREL(S+A) | Set a LD/ST offset field to bits [11:4] of X. No overflow check
pattern R_AARCH64_TLSDESC_LD_PREL19 :: ElfRelocationType_AARCH64 Source #
G(GTLSDESC(S+A)) - P | Set a load-literal immediate to bits [20:2]; check -2^20 <= X < 2^20 ; check X & 3 = 0
pattern R_AARCH64_TLSDESC_ADR_PREL21 :: ElfRelocationType_AARCH64 Source #
G(GTLSDESC(S+A)) - P | Set an ADR immediate field to bits [20:0]; check -2^20 <= X < 2^20
pattern R_AARCH64_TLSDESC_ADR_PAGE21 :: ElfRelocationType_AARCH64 Source #
Page(G(GTLSDESC(S+A))) - Page(P) | Set an ADRP immediate field to bits [32:12] of X; check -2^32 <= X < 2^32
pattern R_AARCH64_TLSDESC_LD64_LO12 :: ElfRelocationType_AARCH64 Source #
G(GTLSDESC(S+A)) | Set an LD offset field to bits [11:3] of X. No overflow check; check X & 7 = 0
pattern R_AARCH64_TLSDESC_ADD_LO12 :: ElfRelocationType_AARCH64 Source #
G(GTLSDESC(S+A)) | Set an ADD immediate field to bits [11:0] of X. No overflow check
pattern R_AARCH64_TLSDESC_OFF_G1 :: ElfRelocationType_AARCH64 Source #
G(GTLSDESC(S+A)) - GOT | Set a MOV[NZ] immediate field to bits [31:16] of X; check -2^32 <= X < 2^32
pattern R_AARCH64_TLSDESC_OFF_G0_NC :: ElfRelocationType_AARCH64 Source #
G(GTLSDESC(S+A)) - GOT | Set a MOVK immediate field to bits [15:0] of X. No overflow check
pattern R_AARCH64_TLSDESC_LDR :: ElfRelocationType_AARCH64 Source #
None | For relaxation only. Must be used to identify an LDR instruction which loads the TLS descriptor function pointer for S + A if it has no other relocation
pattern R_AARCH64_TLSDESC_ADD :: ElfRelocationType_AARCH64 Source #
None | For relaxation only. Must be used to identify an ADD instruction which computes the address of the TLS Descriptor for S + A if it has no other relocation
pattern R_AARCH64_TLSDESC_CALL :: ElfRelocationType_AARCH64 Source #
None | For relaxation only. Must be used to identify a BLR instruction which performs an indirect call to the TLS descriptor function for S + A
pattern R_AARCH64_COPY :: ElfRelocationType_AARCH64 Source #
pattern R_AARCH64_GLOB_DAT :: ElfRelocationType_AARCH64 Source #
S + A
pattern R_AARCH64_JUMP_SLOT :: ElfRelocationType_AARCH64 Source #
S + A
pattern R_AARCH64_RELATIVE :: ElfRelocationType_AARCH64 Source #
Delta(S + A)
pattern R_AARCH64_TLS_DTPMOD :: ElfRelocationType_AARCH64 Source #
DTPREL(S + A)
pattern R_AARCH64_TLS_DTPREL :: ElfRelocationType_AARCH64 Source #
LDM(S)
pattern R_AARCH64_TLS_TPREL :: ElfRelocationType_AARCH64 Source #
TPREL(S + A)
pattern R_AARCH64_TLSDESC :: ElfRelocationType_AARCH64 Source #
TLSDESC(S + A)
pattern R_AARCH64_IRELATIVE :: ElfRelocationType_AARCH64 Source #
Indirect(Delta(S) + A)