1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 #ifndef _OBJTOOL_ARCH_ELF_H
3 #define _OBJTOOL_ARCH_ELF_H
4 
5 /*
6  * See the following link for more info about ELF Relocation types:
7  * https://loongson.github.io/LoongArch-Documentation/LoongArch-ELF-ABI-EN.html#_relocations
8  */
9 #ifndef R_LARCH_NONE
10 #define R_LARCH_NONE		0
11 #endif
12 #ifndef R_LARCH_32
13 #define R_LARCH_32		1
14 #endif
15 #ifndef R_LARCH_64
16 #define R_LARCH_64		2
17 #endif
18 #ifndef R_LARCH_32_PCREL
19 #define R_LARCH_32_PCREL	99
20 #endif
21 #ifndef R_LARCH_64_PCREL
22 #define R_LARCH_64_PCREL	109
23 #endif
24 
25 #ifndef EM_LOONGARCH
26 #define EM_LOONGARCH		258
27 #endif
28 
29 #define R_NONE			R_LARCH_NONE
30 #define R_ABS32			R_LARCH_32
31 #define R_ABS64			R_LARCH_64
32 #define R_DATA32		R_LARCH_32_PCREL
33 #define R_DATA64		R_LARCH_32_PCREL
34 #define R_TEXT32		R_LARCH_32_PCREL
35 #define R_TEXT64		R_LARCH_32_PCREL
36 
37 #endif /* _OBJTOOL_ARCH_ELF_H */
38