1 /* $NetBSD: elf_machdep.h,v 1.7.56.1 2009/06/20 07:20:07 yamt Exp $ */ 2 3 #define ELF32_MACHDEP_ENDIANNESS ELFDATA2MSB 4 #define ELF32_MACHDEP_ID_CASES \ 5 case EM_PPC: \ 6 break; 7 8 #define ELF64_MACHDEP_ENDIANNESS ELFDATA2MSB 9 #define ELF64_MACHDEP_ID_CASES \ 10 case EM_PPC64: \ 11 break; 12 13 #define ELF32_MACHDEP_ID EM_PPC 14 #define ELF64_MACHDEP_ID EM_PPC64 15 16 #ifdef _LP64 17 #define ARCH_ELFSIZE 64 /* MD native binary size */ 18 #else 19 #define ARCH_ELFSIZE 32 /* MD native binary size */ 20 #endif 21 22 #define R_PPC_NONE 0 23 #define R_PPC_32 1 24 #define R_PPC_24 2 25 #define R_PPC_16 3 26 #define R_PPC_16_LO 4 27 #define R_PPC_16_HI 5 /* R_PPC_ADDIS */ 28 #define R_PPC_16_HA 6 29 #define R_PPC_14 7 30 #define R_PPC_14_TAKEN 8 31 #define R_PPC_14_NTAKEN 9 32 #define R_PPC_REL24 10 /* R_PPC_BRANCH */ 33 #define R_PPC_REL14 11 34 #define R_PPC_REL14_TAKEN 12 35 #define R_PPC_REL14_NTAKEN 13 36 #define R_PPC_GOT16 14 37 #define R_PPC_GOT16_LO 15 38 #define R_PPC_GOT16_HI 16 39 #define R_PPC_GOT16_HA 17 40 #define R_PPC_PLT24 18 41 #define R_PPC_COPY 19 42 #define R_PPC_GLOB_DAT 20 43 #define R_PPC_JMP_SLOT 21 44 #define R_PPC_RELATIVE 22 45 #define R_PPC_LOCAL24PC 23 46 #define R_PPC_U32 24 47 #define R_PPC_U16 25 48 #define R_PPC_REL32 26 49 #define R_PPC_PLT32 27 50 #define R_PPC_PLTREL32 28 51 #define R_PPC_PLT16_LO 29 52 #define R_PPC_PLT16_HI 30 53 #define R_PPC_PLT16_HA 31 54 #define R_PPC_SDAREL 32 55 56 /* TLS relocations */ 57 #define R_PPC_TLS 67 58 59 #define R_PPC_DTPMOD32 68 60 #define R_PPC_TPREL16 69 61 #define R_PPC_TPREL16_LO 70 62 #define R_PPC_TPREL16_HI 71 63 #define R_PPC_TPREL16_HA 72 64 #define R_PPC_TPREL32 73 65 #define R_PPC_DTPREL16 74 66 #define R_PPC_DTPREL16_LO 75 67 #define R_PPC_DTPREL16_HI 76 68 #define R_PPC_DTPREL16_HA 77 69 #define R_PPC_DTPREL32 78 70 71 #define R_PPC_GOT_TLSGD16 79 72 #define R_PPC_GOT_TLSGD16_LO 80 73 #define R_PPC_GOT_TLSGD16_HI 81 74 #define R_PPC_GOT_TLSGD16_HA 82 75 #define R_PPC_GOT_TLSLD16 83 76 #define R_PPC_GOT_TLSLD16_LO 84 77 #define R_PPC_GOT_TLSLD16_HI 85 78 #define R_PPC_GOT_TLSLD16_HA 86 79 80 #define R_PPC_GOT_TPREL16 87 81 #define R_PPC_GOT_TPREL16_LO 88 82 #define R_PPC_GOT_TPREL16_HI 89 83 #define R_PPC_GOT_TPREL16_HA 90 84 #define R_PPC_GOT_DTPREL16 91 85 #define R_PPC_GOT_DTPREL16_LO 92 86 #define R_PPC_GOT_DTPREL16_HI 93 87 #define R_PPC_GOT_DTPREL16_HA 94 88 #define R_PPC_TLSGD 95 89 #define R_PPC_TLSLD 96 90 91 #define R_TYPE(name) __CONCAT(R_PPC_,name) 92