xref: /haiku/headers/private/system/arch/riscv64/arch_elf.h (revision 52f7c9389475e19fc21487b38064b4390eeb6fea)
1 /*
2  * Copyright 2009-2019, Haiku, Inc. All rights reserved.
3  * Distributed under the terms of the MIT License.
4  */
5 #ifndef _SYSTEM_ARCH_RISCV64_ELF_H
6 #define _SYSTEM_ARCH_RISCV64_ELF_H
7 
8 
9 #define R_RISCV_NONE				0
10 #define R_RISCV_32					1
11 #define R_RISCV_64					2
12 #define R_RISCV_RELATIVE			3
13 #define R_RISCV_COPY				4
14 #define R_RISCV_JUMP_SLOT			5
15 #define R_RISCV_TLS_DTPMOD32		6
16 #define R_RISCV_TLS_DTPMOD64		7
17 #define R_RISCV_TLS_DTPREL32		8
18 #define R_RISCV_TLS_DTPREL64		9
19 #define R_RISCV_TLS_TPREL32			10
20 #define R_RISCV_TLS_TPREL64			11
21 #define R_RISCV_BRANCH				16
22 #define R_RISCV_JAL					17
23 #define R_RISCV_CALL				18
24 #define R_RISCV_CALL_PLT			19
25 #define R_RISCV_GOT_HI20			20
26 #define R_RISCV_TLS_GOT_HI20		21
27 #define R_RISCV_TLS_GD_HI20			22
28 #define R_RISCV_PCREL_HI20			23
29 #define R_RISCV_PCREL_LO12_I		24
30 #define R_RISCV_PCREL_LO12_S		25
31 #define R_RISCV_HI20				26
32 #define R_RISCV_LO12_I				27
33 #define R_RISCV_LO12_S				28
34 #define R_RISCV_TPREL_HI20			29
35 #define R_RISCV_TPREL_LO12_I		30
36 #define R_RISCV_TPREL_LO12_S		31
37 #define R_RISCV_TPREL_ADD			32
38 #define R_RISCV_ADD8				33
39 #define R_RISCV_ADD16				34
40 #define R_RISCV_ADD32				35
41 #define R_RISCV_ADD64				36
42 #define R_RISCV_SUB8				37
43 #define R_RISCV_SUB16				38
44 #define R_RISCV_SUB32				39
45 #define R_RISCV_SUB64				40
46 #define R_RISCV_GNU_VTINHERIT		41
47 #define R_RISCV_GNU_VTENTRY			42
48 #define R_RISCV_ALIGN				43
49 #define R_RISCV_RVC_BRANCH			44
50 #define R_RISCV_RVC_JUMP			45
51 #define R_RISCV_LUI					46
52 #define R_RISCV_GPREL_I				47
53 #define R_RISCV_GPREL_S				48
54 #define R_RISCV_TPREL_I				49
55 #define R_RISCV_TPREL_S				50
56 #define R_RISCV_RELAX				51
57 #define R_RISCV_SUB6				52
58 #define R_RISCV_SET6				53
59 #define R_RISCV_SET8				54
60 #define R_RISCV_SET16				55
61 #define R_RISCV_SET32				56
62 #define R_RISCV_32_PCREL			57
63 #define R_RISCV_IRELATIVE			58
64 
65 #define TLS_DTV_OFFSET 0x800
66 
67 
68 #endif	/* _SYSTEM_ARCH_RISCV64_ELF_H */
69