arm64.h revision 1.1.1.6 1 1.1 christos /* Mach-O arm declarations for BFD.
2 1.1.1.6 christos Copyright (C) 2015-2024 Free Software Foundation, Inc.
3 1.1 christos
4 1.1 christos This file is part of BFD, the Binary File Descriptor library.
5 1.1 christos
6 1.1 christos This program is free software; you can redistribute it and/or modify
7 1.1 christos it under the terms of the GNU General Public License as published by
8 1.1 christos the Free Software Foundation; either version 3 of the License, or
9 1.1 christos (at your option) any later version.
10 1.1 christos
11 1.1 christos This program is distributed in the hope that it will be useful,
12 1.1 christos but WITHOUT ANY WARRANTY; without even the implied warranty of
13 1.1 christos MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 1.1 christos GNU General Public License for more details.
15 1.1 christos
16 1.1 christos You should have received a copy of the GNU General Public License
17 1.1 christos along with this program; if not, write to the Free Software
18 1.1 christos Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
19 1.1 christos MA 02110-1301, USA. */
20 1.1 christos
21 1.1 christos #ifndef _MACH_O_ARM64_H
22 1.1 christos #define _MACH_O_ARM64_H
23 1.1 christos
24 1.1 christos /* ARM64 relocations. */
25 1.1 christos
26 1.1 christos /* Relocations for addresses in data. */
27 1.1 christos #define BFD_MACH_O_ARM64_RELOC_UNSIGNED 0
28 1.1 christos #define BFD_MACH_O_ARM64_RELOC_SUBTRACTOR 1
29 1.1 christos
30 1.1 christos /* Relocation for a call. */
31 1.1 christos #define BFD_MACH_O_ARM64_RELOC_BRANCH26 2
32 1.1 christos
33 1.1 christos /* Relocations for local data. */
34 1.1 christos #define BFD_MACH_O_ARM64_RELOC_PAGE21 3
35 1.1 christos #define BFD_MACH_O_ARM64_RELOC_PAGEOFF12 4
36 1.1 christos
37 1.1 christos /* Relocations for global data. */
38 1.1 christos #define BFD_MACH_O_ARM64_RELOC_GOT_LOAD_PAGE21 5
39 1.1 christos #define BFD_MACH_O_ARM64_RELOC_GOT_LOAD_PAGEOFF12 6
40 1.1 christos
41 1.1 christos /* Relocation for personality routine. */
42 1.1 christos #define BFD_MACH_O_ARM64_RELOC_POINTER_TO_GOT 7
43 1.1 christos
44 1.1 christos /* Relocations for thread local data. */
45 1.1 christos #define BFD_MACH_O_ARM64_RELOC_TLVP_LOAD_PAGE21 8
46 1.1 christos #define BFD_MACH_O_ARM64_RELOC_TLVP_LOAD_PAGEOFF12 9
47 1.1 christos
48 1.1 christos #define BFD_MACH_O_ARM64_RELOC_ADDEND 10
49 1.1 christos
50 1.1 christos #endif /* _MACH_O_ARM64_H */
51