1 /* $NetBSD: elf_machdep.h,v 1.4 2017/11/06 03:47:46 christos Exp $ */ 2 3 #define ELF32_MACHDEP_ENDIANNESS ELFDATA2MSB 4 #define ELF32_MACHDEP_ID_CASES \ 5 case EM_PARISC: \ 6 break; 7 8 #define ELF64_MACHDEP_ENDIANNESS XXX /* break compilation */ 9 #define ELF64_MACHDEP_ID_CASES \ 10 /* no 64-bit ELF machine types supported */ 11 12 #define ELF32_MACHDEP_ID EM_PARISC 13 14 #define KERN_ELFSIZE 32 15 #define ARCH_ELFSIZE 32 /* MD native binary size */ 16 17 /* hppa relocation types */ 18 #define R_PARISC_NONE 0 /* No reloc */ 19 #define R_PARISC_DIR32 1 20 #define R_PARISC_DIR21L 2 21 #define R_PARISC_DIR17R 3 22 #define R_PARISC_DIR17F 4 23 #define R_PARISC_DIR14R 6 24 #define R_PARISC_DIR14F 7 25 #define R_PARISC_PCREL12F 8 26 #define R_PARISC_PCREL32 9 27 #define R_PARISC_PCREL21L 10 28 #define R_PARISC_PCREL17R 11 29 #define R_PARISC_PCREL17F 12 30 #define R_PARISC_PCREL17C 13 31 #define R_PARISC_PCREL14R 14 32 #define R_PARISC_PCREL14F 15 33 #define R_PARISC_DPREL21L 18 34 #define R_PARISC_DPREL14WR 19 35 #define R_PARISC_DPREL14DR 20 36 #define R_PARISC_DPREL14R 22 37 #define R_PARISC_DPREL14F 23 38 #define R_PARISC_DLTREL21L 26 39 #define R_PARISC_DLTREL14R 30 40 #define R_PARISC_DLTREL14F 31 41 #define R_PARISC_DLTIND21L 34 42 #define R_PARISC_DLTIND14R 38 43 #define R_PARISC_DLTIND14F 39 44 #define R_PARISC_SETBASE 40 45 #define R_PARISC_SECREL32 41 46 #define R_PARISC_BASEREL21L 42 47 #define R_PARISC_BASEREL17R 43 48 #define R_PARISC_BASEREL17F 44 49 #define R_PARISC_BASEREL14R 46 50 #define R_PARISC_BASEREL14F 47 51 #define R_PARISC_SEGBASE 48 52 #define R_PARISC_SEGREL32 49 53 #define R_PARISC_PLTOFF21L 50 54 #define R_PARISC_PLTOFF14R 54 55 #define R_PARISC_PLTOFF14F 55 56 #define R_PARISC_LTOFF_FPTR32 57 57 #define R_PARISC_LTOFF_FPTR21L 58 58 #define R_PARISC_LTOFF_FPTR14R 62 59 #define R_PARISC_FPTR64 64 60 #define R_PARISC_PLABEL32 65 61 #define R_PARISC_PLABEL21L 66 62 #define R_PARISC_PLABEL14R 70 63 #define R_PARISC_PCREL64 72 64 #define R_PARISC_PCREL22C 73 65 #define R_PARISC_PCREL22F 74 66 #define R_PARISC_PCREL14WR 75 67 #define R_PARISC_PCREL14DR 76 68 #define R_PARISC_PCREL16F 77 69 #define R_PARISC_PCREL16WF 78 70 #define R_PARISC_PCREL16DF 79 71 #define R_PARISC_DIR64 80 72 #define R_PARISC_DIR64WR 81 73 #define R_PARISC_DIR64DR 82 74 #define R_PARISC_DIR14WR 83 75 #define R_PARISC_DIR14DR 84 76 #define R_PARISC_DIR16F 85 77 #define R_PARISC_DIR16WF 86 78 #define R_PARISC_DIR16DF 87 79 #define R_PARISC_GPREL64 88 80 #define R_PARISC_DLTREL14WR 91 81 #define R_PARISC_DLTREL14DR 92 82 #define R_PARISC_GPREL16F 93 83 #define R_PARISC_GPREL16WF 94 84 #define R_PARISC_GPREL16DF 95 85 #define R_PARISC_LTOFF64 96 86 #define R_PARISC_DLTIND14WR 99 87 #define R_PARISC_DLTIND14DR 100 88 #define R_PARISC_LTOFF16F 101 89 #define R_PARISC_LTOFF16WF 102 90 #define R_PARISC_LTOFF16DF 103 91 #define R_PARISC_SECREL64 104 92 #define R_PARISC_BASEREL14WR 107 93 #define R_PARISC_BASEREL14DR 108 94 #define R_PARISC_SEGREL64 112 95 #define R_PARISC_PLTOFF14WR 115 96 #define R_PARISC_PLTOFF14DR 116 97 #define R_PARISC_PLTOFF16F 117 98 #define R_PARISC_PLTOFF16WF 118 99 #define R_PARISC_PLTOFF16DF 119 100 #define R_PARISC_LTOFF_FPTR64 120 101 #define R_PARISC_LTOFF_FPTR14WR 123 102 #define R_PARISC_LTOFF_FPTR14DR 124 103 #define R_PARISC_LTOFF_FPTR16F 125 104 #define R_PARISC_LTOFF_FPTR16WF 126 105 #define R_PARISC_LTOFF_FPTR16DF 127 106 #define R_PARISC_COPY 128 107 #define R_PARISC_IPLT 129 108 #define R_PARISC_EPLT 130 109 #define R_PARISC_TPREL32 153 110 #define R_PARISC_TPREL21L 154 111 #define R_PARISC_TPREL14R 158 112 #define R_PARISC_LTOFF_TP21L 162 113 #define R_PARISC_LTOFF_TP14R 166 114 #define R_PARISC_LTOFF_TP14F 167 115 #define R_PARISC_TPREL64 216 116 #define R_PARISC_TPREL14WR 219 117 #define R_PARISC_TPREL14DR 220 118 #define R_PARISC_TPREL16F 221 119 #define R_PARISC_TPREL16WF 222 120 #define R_PARISC_TPREL16DF 223 121 #define R_PARISC_LTOFF_TP64 224 122 #define R_PARISC_LTOFF_TP14WR 227 123 #define R_PARISC_LTOFF_TP14DR 228 124 #define R_PARISC_LTOFF_TP16F 229 125 #define R_PARISC_LTOFF_TP16WF 230 126 #define R_PARISC_LTOFF_TP16DF 231 127 #define R_PARISC_GNU_VTENTRY 232 128 #define R_PARISC_GNU_VTINHERIT 233 129 130 /* TLS relocations */ 131 #define R_PARISC_TLS_GD21L 234 132 #define R_PARISC_TLS_GD14R 235 133 #define R_PARISC_TLS_GDCALL 236 134 #define R_PARISC_TLS_LDM21L 237 135 #define R_PARISC_TLS_LDM14R 238 136 #define R_PARISC_TLS_LDMCALL 239 137 #define R_PARISC_TLS_LDO21L 240 138 #define R_PARISC_TLS_LDO14R 241 139 #define R_PARISC_TLS_DTPMOD32 242 140 #define R_PARISC_TLS_DTPMOD64 243 141 #define R_PARISC_TLS_DTPOFF32 244 142 #define R_PARISC_TLS_DTPOFF64 245 143 144 #define R_PARISC_TLS_LE21L R_PARISC_TPREL21L 145 #define R_PARISC_TLS_LE14R R_PARISC_TPREL14R 146 #define R_PARISC_TLS_IE21L R_PARISC_LTOFF_TP21L 147 #define R_PARISC_TLS_IE14R R_PARISC_LTOFF_TP14R 148 #define R_PARISC_TLS_TPREL32 R_PARISC_TPREL32 149 #define R_PARISC_TLS_TPREL64 R_PARISC_TPREL64 150 151 #define R_TYPE(name) __CONCAT(R_PARISC_,name) 152