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