1 /* $OpenBSD: reloc.h,v 1.2 2020/07/18 16:41:43 kettenis Exp $ */ 2 3 /* 4 * Copyright (c) 2020 Mark Kettenis <kettenis@openbsd.org> 5 * 6 * Permission to use, copy, modify, and distribute this software for any 7 * purpose with or without fee is hereby granted, provided that the above 8 * copyright notice and this permission notice appear in all copies. 9 * 10 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 11 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 12 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 13 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 14 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 15 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 16 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 17 */ 18 19 #ifndef _MACHINE_RELOC_H_ 20 #define _MACHINE_RELOC_H_ 21 22 #define R_PPC64_NONE 0 23 #define R_PPC64_ADDR32 1 24 #define R_PPC64_ADDR24 2 25 #define R_PPC64_ADDR16 3 26 #define R_PPC64_ADDR16_LO 4 27 #define R_PPC64_ADDR16_HI 5 28 #define R_PPC64_ADDR16_HA 6 29 #define R_PPC64_ADDR14 7 30 31 #define R_PPC64_REL24 10 32 #define R_PPC64_REL14 11 33 34 #define R_PPC64_GOT16 14 35 #define R_PPC64_GOT16_LO 15 36 #define R_PPC64_GOT16_HI 16 37 #define R_PPC64_GOT16_HA 17 38 39 #define R_PPC64_COPY 19 40 #define R_PPC64_GLOB_DAT 20 41 #define R_PPC64_JMP_SLOT 21 42 #define R_PPC64_RELATIVE 22 43 44 #define R_PPC64_UADDR32 24 45 #define R_PPC64_UADDR16 25 46 #define R_PPC64_REL32 26 47 #define R_PPC64_PLT32 27 48 #define R_PPC64_PLTREL32 28 49 #define R_PPC64_PLT16_LO 29 50 #define R_PPC64_PLT16_HI 30 51 #define R_PPC64_PLT16_HA 31 52 53 #define R_PPC64_SECTOFF 33 54 #define R_PPC64_SECTOFF_LO 34 55 #define R_PPC64_SECTOFF_HI 35 56 #define R_PPC64_SECTOFF_HA 36 57 #define R_PPC64_REL30 37 58 #define R_PPC64_ADDR64 38 59 #define R_PPC64_ADDR16_HIGHER 39 60 #define R_PPC64_ADDR16_HIGHERA 40 61 #define R_PPC64_ADDR16_HIGHEST 41 62 #define R_PPC64_ADDR16_HIGHESTA 42 63 #define R_PPC64_UADDR64 43 64 #define R_PPC64_REL64 44 65 #define R_PPC64_PLT64 45 66 #define R_PPC64_PLTREL64 46 67 #define R_PPC64_TOC16 47 68 #define R_PPC64_TOC16_LO 48 69 #define R_PPC64_TOC16_HI 49 70 #define R_PPC64_TOC16_HA 50 71 #define R_PPC64_TOC 51 72 #define R_PPC64_PLTGOT16 52 73 #define R_PPC64_PLTGOT16_LO 53 74 #define R_PPC64_PLTGOT16_HI 54 75 #define R_PPC64_PLTGOT16_HA 55 76 #define R_PPC64_ADDR16_DS 56 77 #define R_PPC64_ADDR16_LO_DS 57 78 #define R_PPC64_GOT16_DS 58 79 #define R_PPC64_GOT16_LO_DS 59 80 #define R_PPC64_PLT16_LO_DS 60 81 #define R_PPC64_SECTOFF_DS 61 82 #define R_PPC64_SECTOFF_LO_DS 62 83 #define R_PPC64_TOC16_DS 63 84 #define R_PPC64_TOC16_LO_DS 64 85 #define R_PPC64_PLTGOT16_DS 65 86 #define R_PPC64_PLTGOT16_LO_DS 66 87 #define R_PPC64_TLS 67 88 #define R_PPC64_DTPMOD64 68 89 #define R_PPC64_TPREL16 69 90 #define R_PPC64_TPREL16_LO 70 91 #define R_PPC64_TPREL16_HI 71 92 #define R_PPC64_TPREL16_HA 72 93 #define R_PPC64_TPREL64 73 94 #define R_PPC64_DTPREL16 74 95 #define R_PPC64_DTPREL16_LO 75 96 #define R_PPC64_DTPREL16_HI 76 97 #define R_PPC64_DTPREL16_HA 77 98 #define R_PPC64_DTPREL64 78 99 #define R_PPC64_GOT_TLSGD16 79 100 #define R_PPC64_GOT_TLSGD16_LO 80 101 #define R_PPC64_GOT_TLSGD16_HI 81 102 #define R_PPC64_GOT_TLSGD16_HA 82 103 #define R_PPC64_GOT_TLSD16 83 104 #define R_PPC64_GOT_TLSD16_LO 84 105 #define R_PPC64_GOT_TLSD16_HI 85 106 #define R_PPC64_GOT_TLSD16_HA 86 107 #define R_PPC64_GOT_TPREL16_DS 87 108 #define R_PPC64_GOT_TPREL16_LO_DS 88 109 #define R_PPC64_GOT_TPREL16_HI 89 110 #define R_PPC64_GOT_TPREL16_HA 90 111 #define R_PPC64_GOT_DTPREL16_DS 91 112 #define R_PPC64_GOT_DTPREL16_LO_DS 92 113 #define R_PPC64_GOT_DTPREL16_HI 93 114 #define R_PPC64_GOT_DTPREL16_HA 94 115 #define R_PPC64_TPREL16_DS 95 116 #define R_PPC64_TPREL16_LO_DS 96 117 #define R_PPC64_TPREL16_HIGHER 97 118 #define R_PPC64_TPREL16_HIGHERA 98 119 #define R_PPC64_TPREL16_HIGHEST 99 120 #define R_PPC64_TPREL16_HIGHESTA 100 121 #define R_PPC64_DTPREL16_DS 101 122 #define R_PPC64_DTPREL16_LO_DS 102 123 #define R_PPC64_DTPREL16_HIGHER 103 124 #define R_PPC64_DTPREL16_HIGHERA 104 125 #define R_PPC64_DTPREL16_HIGHEST 105 126 #define R_PPC64_DTPREL16_HIGHESTA 106 127 #define R_PPC64_TLSGD 107 128 #define R_PPC64_TLSLD 108 129 #define R_PPC64_TOCSAVE 109 130 #define R_PPC64_ADDR16_HIGH 110 131 #define R_PPC64_ADDR16_HIGHA 111 132 #define R_PPC64_TPREL16_HIGH 112 133 #define R_PPC64_TPREL16_HIGHA 113 134 #define R_PPC64_DTPREL16_HIGH 114 135 #define R_PPC64_DTPREL16_HIGHA 115 136 #define R_PPC64_REL24_NOTOC 116 137 #define R_PPC64_ADDR64_LOCAL 117 138 #define R_PPC64_ENTRY 118 139 140 #define R_PPC64_IRELATIVE 248 141 #define R_PPC64_REL16 249 142 #define R_PPC64_REL16_LO 250 143 #define R_PPC64_REL16_HI 251 144 #define R_PPC64_REL16_HA 252 145 #define R_PPC64_GNU_VTINHERIT 253 146 #define R_PPC64_GNU_VTENTRY 254 147 148 #endif /* _MACHINE_RELOC_H_ */ 149