LLVM API Documentation

llvm::ELF Namespace Reference


Classes

struct  Elf32_Ehdr
struct  Elf64_Ehdr
struct  Elf32_Shdr
struct  Elf64_Shdr
struct  Elf32_Sym
struct  Elf32_Rel
struct  Elf32_Rela
struct  Elf32_Phdr

Typedefs

typedef uint32_t Elf32_Addr
typedef uint16_t Elf32_Half
typedef uint32_t Elf32_Off
typedef int32_t Elf32_Sword
typedef uint32_t Elf32_Word
typedef uint64_t Elf64_Addr
typedef uint64_t Elf64_Off
typedef int32_t Elf64_Shalf
typedef int32_t Elf64_Sword
typedef uint32_t Elf64_Word
typedef int64_t Elf64_Sxword
typedef uint64_t Elf64_Xword
typedef uint32_t Elf64_Half
typedef uint16_t Elf64_Quarter

Enumerations

enum  {
  ET_NONE = 0, ET_REL = 1, ET_EXEC = 2, ET_DYN = 3,
  ET_CORE = 4, ET_LOPROC = 0xff00, ET_HIPROC = 0xffff
}
enum  {
  EM_NONE = 0, EM_M32 = 1, EM_SPARC = 2, EM_386 = 3,
  EM_68K = 4, EM_88K = 5, EM_486 = 6, EM_860 = 7,
  EM_MIPS = 8, EM_PPC = 20, EM_ARM = 40, EM_ALPHA = 41,
  EM_SPARCV9 = 43
}
enum  { ELFCLASS32 = 1, ELFCLASS64 = 2 }
enum  { ELFDATA2LSB = 1, ELFDATA2MSB = 2 }
enum  {
  SHN_UNDEF = 0, SHN_LORESERVE = 0xff00, SHN_LOPROC = 0xff00, SHN_HIPROC = 0xff1f,
  SHN_ABS = 0xfff1, SHN_COMMON = 0xfff2, SHN_HIRESERVE = 0xffff
}
enum  {
  SHT_NULL = 0, SHT_PROGBITS = 1, SHT_SYMTAB = 2, SHT_STRTAB = 3,
  SHT_RELA = 4, SHT_HASH = 5, SHT_DYNAMIC = 6, SHT_NOTE = 7,
  SHT_NOBITS = 8, SHT_REL = 9, SHT_SHLIB = 10, SHT_DYNSYM = 11,
  SHT_LOPROC = 0x70000000, SHT_HIPROC = 0x7fffffff, SHT_LOUSER = 0x80000000, SHT_HIUSER = 0xffffffff
}
enum  { SHF_WRITE = 0x1, SHF_ALLOC = 0x2, SHF_EXECINSTR = 0x4, SHF_MASKPROC = 0xf0000000 }
enum  {
  STB_LOCAL = 0, STB_GLOBAL = 1, STB_WEAK = 2, STB_LOPROC = 13,
  STB_HIPROC = 15
}
enum  {
  STT_NOTYPE = 0, STT_OBJECT = 1, STT_FUNC = 2, STT_SECTION = 3,
  STT_FILE = 4, STT_LOPROC = 13, STT_HIPROC = 15
}
enum  {
  PT_NULL = 0, PT_LOAD = 1, PT_DYNAMIC = 2, PT_INTERP = 3,
  PT_NOTE = 4, PT_SHLIB = 5, PT_PHDR = 6, PT_LOPROC = 0x70000000,
  PT_HIPROC = 0x7fffffff
}

Variables

static const char ElfMagic [] = { 0x7f, 'E', 'L', 'F', '\0' }


Typedef Documentation

typedef uint32_t llvm::ELF::Elf32_Addr

Definition at line 32 of file ELF.h.

typedef uint16_t llvm::ELF::Elf32_Half

Definition at line 33 of file ELF.h.

typedef uint32_t llvm::ELF::Elf32_Off

Definition at line 34 of file ELF.h.

typedef int32_t llvm::ELF::Elf32_Sword

Definition at line 35 of file ELF.h.

typedef uint32_t llvm::ELF::Elf32_Word

Definition at line 36 of file ELF.h.

typedef uint64_t llvm::ELF::Elf64_Addr

Definition at line 38 of file ELF.h.

typedef uint64_t llvm::ELF::Elf64_Off

Definition at line 39 of file ELF.h.

typedef int32_t llvm::ELF::Elf64_Shalf

Definition at line 40 of file ELF.h.

typedef int32_t llvm::ELF::Elf64_Sword

Definition at line 41 of file ELF.h.

typedef uint32_t llvm::ELF::Elf64_Word

Definition at line 42 of file ELF.h.

typedef int64_t llvm::ELF::Elf64_Sxword

Definition at line 43 of file ELF.h.

typedef uint64_t llvm::ELF::Elf64_Xword

Definition at line 44 of file ELF.h.

typedef uint32_t llvm::ELF::Elf64_Half

Definition at line 45 of file ELF.h.

typedef uint16_t llvm::ELF::Elf64_Quarter

Definition at line 46 of file ELF.h.


Enumeration Type Documentation

anonymous enum

Enumerator:
ET_NONE 
ET_REL 
ET_EXEC 
ET_DYN 
ET_CORE 
ET_LOPROC 
ET_HIPROC 

Definition at line 93 of file ELF.h.

anonymous enum

Enumerator:
EM_NONE 
EM_M32 
EM_SPARC 
EM_386 
EM_68K 
EM_88K 
EM_486 
EM_860 
EM_MIPS 
EM_PPC 
EM_ARM 
EM_ALPHA 
EM_SPARCV9 

Definition at line 104 of file ELF.h.

anonymous enum

Enumerator:
ELFCLASS32 
ELFCLASS64 

Definition at line 121 of file ELF.h.

anonymous enum

Enumerator:
ELFDATA2LSB 
ELFDATA2MSB 

Definition at line 127 of file ELF.h.

anonymous enum

Enumerator:
SHN_UNDEF 
SHN_LORESERVE 
SHN_LOPROC 
SHN_HIPROC 
SHN_ABS 
SHN_COMMON 
SHN_HIRESERVE 

Definition at line 161 of file ELF.h.

anonymous enum

Enumerator:
SHT_NULL 
SHT_PROGBITS 
SHT_SYMTAB 
SHT_STRTAB 
SHT_RELA 
SHT_HASH 
SHT_DYNAMIC 
SHT_NOTE 
SHT_NOBITS 
SHT_REL 
SHT_SHLIB 
SHT_DYNSYM 
SHT_LOPROC 
SHT_HIPROC 
SHT_LOUSER 
SHT_HIUSER 

Definition at line 172 of file ELF.h.

anonymous enum

Enumerator:
SHF_WRITE 
SHF_ALLOC 
SHF_EXECINSTR 
SHF_MASKPROC 

Definition at line 192 of file ELF.h.

anonymous enum

Enumerator:
STB_LOCAL 
STB_GLOBAL 
STB_WEAK 
STB_LOPROC 
STB_HIPROC 

Definition at line 220 of file ELF.h.

anonymous enum

Enumerator:
STT_NOTYPE 
STT_OBJECT 
STT_FUNC 
STT_SECTION 
STT_FILE 
STT_LOPROC 
STT_HIPROC 

Definition at line 229 of file ELF.h.

anonymous enum

Enumerator:
PT_NULL 
PT_LOAD 
PT_DYNAMIC 
PT_INTERP 
PT_NOTE 
PT_SHLIB 
PT_PHDR 
PT_LOPROC 
PT_HIPROC 

Definition at line 284 of file ELF.h.


Variable Documentation

const char llvm::ELF::ElfMagic[] = { 0x7f, 'E', 'L', 'F', '\0' } [static]

Definition at line 49 of file ELF.h.

Referenced by llvm::ELF::Elf32_Ehdr::checkMagic().