Zephyr API Documentation
3.6.99
A Scalable Open Source RTOS
|
#include <stdint.h>
Go to the source code of this file.
Data Structures | |
struct | elf32_ehdr |
ELF Header(32-bit) More... | |
struct | elf64_ehdr |
ELF Header(64-bit) More... | |
struct | elf32_shdr |
Section Header(32-bit) More... | |
struct | elf64_shdr |
Section Header(64-bit) More... | |
struct | elf32_sym |
Symbol table entry(32-bit) More... | |
struct | elf64_sym |
Symbol table entry(64-bit) More... | |
struct | elf32_rel |
Relocation entry for 32-bit ELFs. More... | |
struct | elf32_rela |
struct | elf64_rel |
Relocation entry for 64-bit ELFs. More... | |
struct | elf64_rela |
struct | elf32_phdr |
Program header(32-bit) More... | |
struct | elf64_phdr |
Program header(64-bit) More... | |
struct | elf32_dyn |
Dynamic section entry(32-bit) More... | |
struct | elf64_dyn |
Dynamic section entry(64-bit) More... | |
Macros | |
#define | EI_NIDENT 16 |
ELF identifier block. | |
#define | ET_REL 1 |
Relocatable (unlinked) ELF. | |
#define | ET_EXEC 2 |
Executable (without PIC/PIE) ELF. | |
#define | ET_DYN 3 |
Dynamic (executable with PIC/PIE or shared lib) ELF. | |
#define | ET_CORE 4 |
Core Dump. | |
#define | SHT_PROGBITS 0x1 |
#define | SHT_SYMTAB 0x2 |
#define | SHT_STRTAB 0x3 |
#define | SHT_RELA 0x4 |
#define | SHT_NOBITS 0x8 |
#define | SHT_REL 0x9 |
#define | SHT_DYNSYM 0xB |
#define | SHF_WRITE 0x1 |
#define | SHF_ALLOC 0x2 |
#define | SHF_EXECINSTR 0x4 |
#define | SHN_UNDEF 0 |
#define | SHN_ABS 0xfff1 |
#define | SHN_COMMON 0xfff2 |
#define | STT_NOTYPE 0 |
#define | STT_OBJECT 1 |
#define | STT_FUNC 2 |
#define | STT_SECTION 3 |
#define | STT_FILE 4 |
#define | STT_COMMON 5 |
#define | STT_LOOS 10 |
#define | STT_HIOS 12 |
#define | STT_LOPROC 13 |
#define | STT_HIPROC 15 |
#define | STB_LOCAL 0 |
#define | STB_GLOBAL 1 |
#define | STB_WEAK 2 |
#define | STB_LOOS 10 |
#define | STB_HIOS 12 |
#define | STB_LOPROC 13 |
#define | STB_HIPROC 15 |
#define | ELF32_ST_BIND(i) ((i) >> 4) |
Symbol binding from 32bit st_info. | |
#define | ELF32_ST_TYPE(i) ((i) & 0xf) |
Symbol type from 32bit st_info. | |
#define | ELF64_ST_BIND(i) ((i) >> 4) |
Symbol binding from 32bit st_info. | |
#define | ELF64_ST_TYPE(i) ((i) & 0xf) |
Symbol type from 32bit st_info. | |
#define | ELF32_R_SYM(i) ((i) >> 8) |
Relocation symbol index from r_info. | |
#define | ELF32_R_TYPE(i) ((i) & 0xff) |
Relocation type from r_info. | |
#define | ELF64_R_SYM(i) ((i) >> 32) |
Relocation symbol from r_info. | |
#define | ELF64_R_TYPE(i) ((i) & 0xffffffff) |
Relocation type from r_info. | |
#define | R_386_NONE 0 |
#define | R_386_32 1 |
#define | R_386_PC32 2 |
#define | R_386_GOT32 3 |
#define | R_386_PLT32 4 |
#define | R_386_COPY 5 |
#define | R_386_GLOB_DAT 6 |
#define | R_386_JMP_SLOT 7 |
#define | R_386_RELATIVE 8 |
#define | R_386_GOTOFF 9 |
#define | R_ARM_NONE 0 |
#define | R_ARM_PC24 1 |
#define | R_ARM_ABS32 2 |
#define | R_ARM_REL32 3 |
#define | R_ARM_COPY 20 |
#define | R_ARM_GLOB_DAT 21 |
#define | R_ARM_JUMP_SLOT 22 |
#define | R_ARM_RELATIVE 23 |
#define | R_ARM_CALL 28 |
#define | R_ARM_JUMP24 29 |
#define | R_ARM_TARGET1 38 |
#define | R_ARM_V4BX 40 |
#define | R_ARM_PREL31 42 |
#define | R_ARM_MOVW_ABS_NC 43 |
#define | R_ARM_MOVT_ABS 44 |
#define | R_ARM_MOVW_PREL_NC 45 |
#define | R_ARM_MOVT_PREL 46 |
#define | R_ARM_ALU_PC_G0_NC 57 |
#define | R_ARM_ALU_PC_G1_NC 59 |
#define | R_ARM_LDR_PC_G2 63 |
#define | R_ARM_THM_CALL 10 |
#define | R_ARM_THM_JUMP24 30 |
#define | R_ARM_THM_MOVW_ABS_NC 47 |
#define | R_ARM_THM_MOVT_ABS 48 |
#define | R_ARM_THM_MOVW_PREL_NC 49 |
#define | R_ARM_THM_MOVT_PREL 50 |
#define | R_XTENSA_NONE 0 |
#define | R_XTENSA_32 1 |
#define | R_XTENSA_SLOT0_OP 20 |
#define | PT_LOAD 1 |
Program segment type. | |
#define | ELF_R_SYM ELF64_R_SYM |
Machine sized macro alias for obtaining a relocation symbol. | |
#define | ELF_R_TYPE ELF64_R_TYPE |
Machine sized macro alias for obtaining a relocation type. | |
#define | ELF_ST_BIND ELF64_ST_BIND |
Machine sized macro alias for obtaining a symbol bind. | |
#define | ELF_ST_TYPE ELF64_ST_TYPE |
Machine sized macro alias for obtaining a symbol type. | |
Typedefs | |
typedef uint32_t | elf32_addr |
Unsigned program address. | |
typedef uint16_t | elf32_half |
Unsigned medium integer. | |
typedef uint32_t | elf32_off |
Unsigned file offset. | |
typedef int32_t | elf32_sword |
Signed integer. | |
typedef uint32_t | elf32_word |
Unsigned integer. | |
typedef uint64_t | elf64_addr |
Unsigned program address. | |
typedef uint16_t | elf64_half |
Unsigned medium integer. | |
typedef uint64_t | elf64_off |
Unsigned file offset. | |
typedef int32_t | elf64_sword |
Signed integer. | |
typedef uint32_t | elf64_word |
Unsigned integer. | |
typedef int64_t | elf64_sxword |
Signed long integer. | |
typedef uint64_t | elf64_xword |
Unsigned long integer. | |
typedef struct elf64_ehdr | elf_ehdr_t |
Machine sized elf header structure. | |
typedef struct elf64_shdr | elf_shdr_t |
Machine sized section header structure. | |
typedef struct elf64_phdr | elf_phdr_t |
Machine sized program header structure. | |
typedef elf64_addr | elf_addr |
Machine sized program address. | |
typedef elf64_half | elf_half |
Machine sized small integer. | |
typedef elf64_xword | elf_word |
Machine sized integer. | |
typedef struct elf64_rel | elf_rel_t |
Machine sized relocation struct. | |
typedef struct elf64_rela | elf_rela_t |
typedef struct elf64_sym | elf_sym_t |
Machine sized symbol struct. | |