]> git.proxmox.com Git - mirror_ubuntu-focal-kernel.git/blob - arch/nios2/include/uapi/asm/elf.h
Merge remote-tracking branches 'asoc/topic/ac97', 'asoc/topic/ac97-mfd', 'asoc/topic...
[mirror_ubuntu-focal-kernel.git] / arch / nios2 / include / uapi / asm / elf.h
1 /* SPDX-License-Identifier: GPL-2.0+ WITH Linux-syscall-note */
2 /*
3 * Copyright (C) 2011 Tobias Klauser <tklauser@distanz.ch>
4 *
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation; either version 2 of the License, or
8 * (at your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License
16 * along with this program. If not, see <http://www.gnu.org/licenses/>.
17 *
18 */
19
20
21 #ifndef _UAPI_ASM_NIOS2_ELF_H
22 #define _UAPI_ASM_NIOS2_ELF_H
23
24 #include <linux/ptrace.h>
25
26 /* Relocation types */
27 #define R_NIOS2_NONE 0
28 #define R_NIOS2_S16 1
29 #define R_NIOS2_U16 2
30 #define R_NIOS2_PCREL16 3
31 #define R_NIOS2_CALL26 4
32 #define R_NIOS2_IMM5 5
33 #define R_NIOS2_CACHE_OPX 6
34 #define R_NIOS2_IMM6 7
35 #define R_NIOS2_IMM8 8
36 #define R_NIOS2_HI16 9
37 #define R_NIOS2_LO16 10
38 #define R_NIOS2_HIADJ16 11
39 #define R_NIOS2_BFD_RELOC_32 12
40 #define R_NIOS2_BFD_RELOC_16 13
41 #define R_NIOS2_BFD_RELOC_8 14
42 #define R_NIOS2_GPREL 15
43 #define R_NIOS2_GNU_VTINHERIT 16
44 #define R_NIOS2_GNU_VTENTRY 17
45 #define R_NIOS2_UJMP 18
46 #define R_NIOS2_CJMP 19
47 #define R_NIOS2_CALLR 20
48 #define R_NIOS2_ALIGN 21
49 /* Keep this the last entry. */
50 #define R_NIOS2_NUM 22
51
52 typedef unsigned long elf_greg_t;
53
54 #define ELF_NGREG 49
55 typedef elf_greg_t elf_gregset_t[ELF_NGREG];
56
57 typedef unsigned long elf_fpregset_t;
58
59 /*
60 * These are used to set parameters in the core dumps.
61 */
62 #define ELF_CLASS ELFCLASS32
63 #define ELF_DATA ELFDATA2LSB
64 #define ELF_ARCH EM_ALTERA_NIOS2
65
66 #endif /* _UAPI_ASM_NIOS2_ELF_H */