Commit | Line | Data |
---|---|---|
dbc35cc7 BS |
1 | #ifndef __UM_ELF_PPC_H |
2 | #define __UM_ELF_PPC_H | |
3 | ||
4 | #include "linux/config.h" | |
5 | ||
6 | extern long elf_aux_hwcap; | |
7 | #define ELF_HWCAP (elf_aux_hwcap) | |
8 | ||
9 | #define SET_PERSONALITY(ex, ibcs2) do ; while(0) | |
10 | ||
11 | #define ELF_EXEC_PAGESIZE 4096 | |
12 | ||
13 | #define elf_check_arch(x) (1) | |
14 | ||
15 | #ifdef CONFIG_64_BIT | |
16 | #define ELF_CLASS ELFCLASS64 | |
17 | #else | |
18 | #define ELF_CLASS ELFCLASS32 | |
19 | #endif | |
20 | ||
21 | #define USE_ELF_CORE_DUMP | |
22 | ||
23 | #define R_386_NONE 0 | |
24 | #define R_386_32 1 | |
25 | #define R_386_PC32 2 | |
26 | #define R_386_GOT32 3 | |
27 | #define R_386_PLT32 4 | |
28 | #define R_386_COPY 5 | |
29 | #define R_386_GLOB_DAT 6 | |
30 | #define R_386_JMP_SLOT 7 | |
31 | #define R_386_RELATIVE 8 | |
32 | #define R_386_GOTOFF 9 | |
33 | #define R_386_GOTPC 10 | |
34 | #define R_386_NUM 11 | |
35 | ||
36 | #define ELF_PLATFORM (0) | |
37 | ||
38 | #define ELF_ET_DYN_BASE (0x08000000) | |
39 | ||
40 | /* the following stolen from asm-ppc/elf.h */ | |
41 | #define ELF_NGREG 48 /* includes nip, msr, lr, etc. */ | |
42 | #define ELF_NFPREG 33 /* includes fpscr */ | |
43 | /* General registers */ | |
44 | typedef unsigned long elf_greg_t; | |
45 | typedef elf_greg_t elf_gregset_t[ELF_NGREG]; | |
46 | ||
47 | /* Floating point registers */ | |
48 | typedef double elf_fpreg_t; | |
49 | typedef elf_fpreg_t elf_fpregset_t[ELF_NFPREG]; | |
50 | ||
51 | #define ELF_DATA ELFDATA2MSB | |
52 | #define ELF_ARCH EM_PPC | |
53 | ||
54 | #endif |