1178476Sjb/* Or1k ELF support for BFD.
2178476Sjb   Copyright (C) 2001-2022 Free Software Foundation, Inc.
3178476Sjb
4178534Sjb   This file is part of BFD, the Binary File Descriptor library.
5178476Sjb
6178476Sjb   This program is free software; you can redistribute it and/or modify
7178476Sjb   it under the terms of the GNU General Public License as published by
8178476Sjb   the Free Software Foundation; either version 3 of the License, or
9178476Sjb   (at your option) any later version.
10178476Sjb
11178476Sjb   This program is distributed in the hope that it will be useful,
12178534Sjb   but WITHOUT ANY WARRANTY; without even the implied warranty of
13178476Sjb   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14178476Sjb   GNU General Public License for more details.
15178476Sjb
16178476Sjb   You should have received a copy of the GNU General Public License
17178476Sjb   along with this program; if not, see <http://www.gnu.org/licenses/> */
18178476Sjb
19178476Sjb#ifndef _ELF_OR1K_H
20178534Sjb#define _ELF_OR1K_H
21178476Sjb
22178476Sjb#include "elf/reloc-macros.h"
23178476Sjb
24178476Sjb/* Relocations.  */
25178476SjbSTART_RELOC_NUMBERS (elf_or1k_reloc_type)
26178476Sjb  RELOC_NUMBER (R_OR1K_NONE,           0)
27178476Sjb  RELOC_NUMBER (R_OR1K_32,             1)
28178534Sjb  RELOC_NUMBER (R_OR1K_16,             2)
29178476Sjb  RELOC_NUMBER (R_OR1K_8,              3)
30178476Sjb  RELOC_NUMBER (R_OR1K_LO_16_IN_INSN,  4)
31178476Sjb  RELOC_NUMBER (R_OR1K_HI_16_IN_INSN,  5)
32178476Sjb  RELOC_NUMBER (R_OR1K_INSN_REL_26,    6)
33178476Sjb  RELOC_NUMBER (R_OR1K_GNU_VTENTRY,    7)
34178476Sjb  RELOC_NUMBER (R_OR1K_GNU_VTINHERIT,  8)
35178476Sjb  RELOC_NUMBER (R_OR1K_32_PCREL,       9)
36178534Sjb  RELOC_NUMBER (R_OR1K_16_PCREL,      10)
37178476Sjb  RELOC_NUMBER (R_OR1K_8_PCREL,       11)
38178476Sjb  RELOC_NUMBER (R_OR1K_GOTPC_HI16,    12)
39178476Sjb  RELOC_NUMBER (R_OR1K_GOTPC_LO16,    13)
40178476Sjb  RELOC_NUMBER (R_OR1K_GOT16,         14)
41178476Sjb  RELOC_NUMBER (R_OR1K_PLT26,         15)
42178476Sjb  RELOC_NUMBER (R_OR1K_GOTOFF_HI16,   16)
43178476Sjb  RELOC_NUMBER (R_OR1K_GOTOFF_LO16,   17)
44178534Sjb  RELOC_NUMBER (R_OR1K_COPY,          18)
45178476Sjb  RELOC_NUMBER (R_OR1K_GLOB_DAT,      19)
46178476Sjb  RELOC_NUMBER (R_OR1K_JMP_SLOT,      20)
47178476Sjb  RELOC_NUMBER (R_OR1K_RELATIVE,      21)
48178476Sjb  RELOC_NUMBER (R_OR1K_TLS_GD_HI16,   22)
49178476Sjb  RELOC_NUMBER (R_OR1K_TLS_GD_LO16,   23)
50178476Sjb  RELOC_NUMBER (R_OR1K_TLS_LDM_HI16,  24)
51178476Sjb  RELOC_NUMBER (R_OR1K_TLS_LDM_LO16,  25)
52178534Sjb  RELOC_NUMBER (R_OR1K_TLS_LDO_HI16,  26)
53178476Sjb  RELOC_NUMBER (R_OR1K_TLS_LDO_LO16,  27)
54178476Sjb  RELOC_NUMBER (R_OR1K_TLS_IE_HI16,   28)
55178476Sjb  RELOC_NUMBER (R_OR1K_TLS_IE_LO16,   29)
56178476Sjb  RELOC_NUMBER (R_OR1K_TLS_LE_HI16,   30)
57178476Sjb  RELOC_NUMBER (R_OR1K_TLS_LE_LO16,   31)
58178476Sjb  RELOC_NUMBER (R_OR1K_TLS_TPOFF,     32)
59178476Sjb  RELOC_NUMBER (R_OR1K_TLS_DTPOFF,    33)
60178534Sjb  RELOC_NUMBER (R_OR1K_TLS_DTPMOD,    34)
61178476Sjb  RELOC_NUMBER (R_OR1K_AHI16,         35)
62178476Sjb  RELOC_NUMBER (R_OR1K_GOTOFF_AHI16,  36)
63178476Sjb  RELOC_NUMBER (R_OR1K_TLS_IE_AHI16,  37)
64178476Sjb  RELOC_NUMBER (R_OR1K_TLS_LE_AHI16,  38)
65178476Sjb  RELOC_NUMBER (R_OR1K_SLO16,         39)
66178476Sjb  RELOC_NUMBER (R_OR1K_GOTOFF_SLO16,  40)
67178476Sjb  RELOC_NUMBER (R_OR1K_TLS_LE_SLO16,  41)
68178534Sjb  RELOC_NUMBER (R_OR1K_PCREL_PG21,    42)
69178476Sjb  RELOC_NUMBER (R_OR1K_GOT_PG21,      43)
70178476Sjb  RELOC_NUMBER (R_OR1K_TLS_GD_PG21,   44)
71178476Sjb  RELOC_NUMBER (R_OR1K_TLS_LDM_PG21,  45)
72178476Sjb  RELOC_NUMBER (R_OR1K_TLS_IE_PG21,   46)
73178476Sjb  RELOC_NUMBER (R_OR1K_LO13,          47)
74178476Sjb  RELOC_NUMBER (R_OR1K_GOT_LO13,      48)
75178476Sjb  RELOC_NUMBER (R_OR1K_TLS_GD_LO13,   49)
76178534Sjb  RELOC_NUMBER (R_OR1K_TLS_LDM_LO13,  50)
77178476Sjb  RELOC_NUMBER (R_OR1K_TLS_IE_LO13,   51)
78178476Sjb  RELOC_NUMBER (R_OR1K_SLO13,         52)
79178476Sjb  RELOC_NUMBER (R_OR1K_PLTA26,        53)
80178476Sjb  RELOC_NUMBER (R_OR1K_GOT_AHI16,     54)
81178476SjbEND_RELOC_NUMBERS (R_OR1K_max)
82178476Sjb
83178476Sjb#define EF_OR1K_NODELAY (1UL << 0)
84178534Sjb
85178476Sjb#endif /* _ELF_OR1K_H */
86178476Sjb