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