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