pspsdk-1.0+beta2
elftypes.h File Reference
#include "types.h"
Include dependency graph for elftypes.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  ElfSection
struct  ElfProgram
struct  ElfHeader
struct  ElfReloc
struct  __attribute__
struct  __attribute__
struct  Elf32_Phdr
struct  Elf32_Rel
struct  __attribute__

Macros

#define ELF_MACHINE_MIPS   0x0008
#define ELF_SH_STRTAB   ".shstrtab"
#define ELF_SECT_MAX_NAME   128
#define ELF_MAGIC   0x464C457F
#define ELF_EXEC_TYPE   0x0002
#define ELF_PRX_TYPE   0xFFA0
#define SHT_NULL   0
#define SHT_PROGBITS   1
#define SHT_SYMTAB   2
#define SHT_STRTAB   3
#define SHT_RELA   4
#define SHT_HASH   5
#define SHT_DYNAMIC   6
#define SHT_NOTE   7
#define SHT_NOBITS   8
#define SHT_REL   9
#define SHT_SHLIB   10
#define SHT_DYNSYM   11
#define SHT_LOPROC   0x70000000
#define SHT_HIPROC   0x7fffffff
#define SHT_LOUSER   0x80000000
#define SHT_HIUSER   0xffffffff
#define SHT_PRXRELOC   (SHT_LOPROC | 0xA0)
#define R_MIPS_NONE   0
#define R_MIPS_16   1
#define R_MIPS_32   2
#define R_MIPS_REL32   3
#define R_MIPS_26   4
#define R_MIPS_HI16   5
#define R_MIPS_LO16   6
#define R_MIPS_GPREL16   7
#define R_MIPS_LITERAL   8
#define R_MIPS_GOT16   9
#define R_MIPS_PC16   10
#define R_MIPS_CALL16   11
#define R_MIPS_GPREL32   12
#define SHF_WRITE   1
#define SHF_ALLOC   2
#define SHF_EXECINSTR   4
#define PT_NULL   0
#define PT_LOAD   1
#define PT_DYNAMIC   2
#define PT_INTERP   3
#define PT_NOTE   4
#define PT_SHLIB   5
#define PT_PHDR   6
#define PT_LOPROC   0x70000000
#define PT_HIPROC   0x7fffffff
#define ELF32_R_SYM(i)   ((i)>>8)
#define ELF32_R_TYPE(i)   ((u8)(i&0xFF))
#define STB_LOCAL   0
#define STB_GLOBAL   1
#define STB_WEAK   2
#define STB_LOPROC   13
#define STB_HIPROC   15
#define ELF32_ST_BIND(i)   ((i)>>4)
#define ELF32_ST_TYPE(i)   ((i)&0xf)
#define ELF32_ST_INFO(b, t)   (((b)<<4)+((t)&0xf))

Typedefs

typedef u32 Elf32_Addr
typedef u16 Elf32_Half
typedef u32 Elf32_Off
typedef s32 Elf32_Sword
typedef u32 Elf32_Word

Macro Definition Documentation

#define ELF32_R_SYM (   i)    ((i)>>8)

Referenced by remove_weak_relocs().

#define ELF32_R_TYPE (   i)    ((u8)(i&0xFF))
#define ELF32_ST_BIND (   i)    ((i)>>4)
#define ELF32_ST_INFO (   b,
 
)    (((b)<<4)+((t)&0xf))
#define ELF32_ST_TYPE (   i)    ((i)&0xf)
#define ELF_EXEC_TYPE   0x0002

Referenced by validate_header().

#define ELF_MACHINE_MIPS   0x0008

Referenced by validate_header().

#define ELF_MAGIC   0x464C457F

Referenced by validate_header().

#define ELF_PRX_TYPE   0xFFA0

Referenced by output_header(), and validate_header().

#define ELF_SECT_MAX_NAME   128
#define ELF_SH_STRTAB   ".shstrtab"
#define PT_DYNAMIC   2
#define PT_HIPROC   0x7fffffff
#define PT_INTERP   3
#define PT_LOAD   1
#define PT_LOPROC   0x70000000
#define PT_NOTE   4
#define PT_NULL   0
#define PT_PHDR   6
#define PT_SHLIB   5
#define R_MIPS_16   1
#define R_MIPS_26   4
#define R_MIPS_32   2
#define R_MIPS_CALL16   11
#define R_MIPS_GOT16   9
#define R_MIPS_GPREL16   7
#define R_MIPS_GPREL32   12
#define R_MIPS_HI16   5
#define R_MIPS_LITERAL   8
#define R_MIPS_LO16   6
#define R_MIPS_NONE   0
#define R_MIPS_PC16   10
#define R_MIPS_REL32   3
#define SHF_ALLOC   2

Referenced by calculate_outsize(), and load_sections().

#define SHF_EXECINSTR   4
#define SHF_WRITE   1
#define SHT_DYNAMIC   6
#define SHT_DYNSYM   11
#define SHT_HASH   5
#define SHT_HIPROC   0x7fffffff
#define SHT_HIUSER   0xffffffff
#define SHT_LOPROC   0x70000000
#define SHT_LOUSER   0x80000000
#define SHT_NOBITS   8
#define SHT_NOTE   7
#define SHT_NULL   0
#define SHT_PROGBITS   1
#define SHT_PRXRELOC   (SHT_LOPROC | 0xA0)
#define SHT_REL   9
#define SHT_RELA   4
#define SHT_SHLIB   10
#define SHT_STRTAB   3

Referenced by output_sh(), and process_relocs().

#define SHT_SYMTAB   2

Referenced by process_relocs().

#define STB_GLOBAL   1
#define STB_HIPROC   15
#define STB_LOCAL   0
#define STB_LOPROC   13
#define STB_WEAK   2

Typedef Documentation

typedef u32 Elf32_Addr
typedef u16 Elf32_Half
typedef u32 Elf32_Off
typedef s32 Elf32_Sword
typedef u32 Elf32_Word