diff options
author | br <br@FreeBSD.org> | 2016-01-18 16:54:26 +0000 |
---|---|---|
committer | br <br@FreeBSD.org> | 2016-01-18 16:54:26 +0000 |
commit | 87558a38ae8607a42764a8e706e9128e4bba6b99 (patch) | |
tree | 0860190041d00efc7f169b906208afb2bb7b28a9 | |
parent | 5690eff8c2794c586c949fe87a23b73dfa5c19cf (diff) | |
download | FreeBSD-src-87558a38ae8607a42764a8e706e9128e4bba6b99.zip FreeBSD-src-87558a38ae8607a42764a8e706e9128e4bba6b99.tar.gz |
Add RISC-V relocation types.
Reviewed by: emaste
-rw-r--r-- | sys/sys/elf_common.h | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/sys/sys/elf_common.h b/sys/sys/elf_common.h index 30c6c44..6e16819 100644 --- a/sys/sys/elf_common.h +++ b/sys/sys/elf_common.h @@ -1145,6 +1145,56 @@ typedef struct { #define R_PPC_EMB_BIT_FLD 115 #define R_PPC_EMB_RELSDA 116 +/* + * RISC-V relocation types. + */ + +/* Relocation types used by the dynamic linker. */ +#define R_RISCV_NONE 0 +#define R_RISCV_32 1 +#define R_RISCV_64 2 +#define R_RISCV_RELATIVE 3 +#define R_RISCV_COPY 4 +#define R_RISCV_JUMP_SLOT 5 +#define R_RISCV_TLS_DTPMOD32 6 +#define R_RISCV_TLS_DTPMOD64 7 +#define R_RISCV_TLS_DTPREL32 8 +#define R_RISCV_TLS_DTPREL64 9 +#define R_RISCV_TLS_TPREL32 10 +#define R_RISCV_TLS_TPREL64 11 + +/* Relocation types not used by the dynamic linker. */ +#define R_RISCV_BRANCH 16 +#define R_RISCV_JAL 17 +#define R_RISCV_CALL 18 +#define R_RISCV_CALL_PLT 19 +#define R_RISCV_GOT_HI20 20 +#define R_RISCV_TLS_GOT_HI20 21 +#define R_RISCV_TLS_GD_HI20 22 +#define R_RISCV_PCREL_HI20 23 +#define R_RISCV_PCREL_LO12_I 24 +#define R_RISCV_PCREL_LO12_S 25 +#define R_RISCV_HI20 26 +#define R_RISCV_LO12_I 27 +#define R_RISCV_LO12_S 28 +#define R_RISCV_TPREL_HI20 29 +#define R_RISCV_TPREL_LO12_I 30 +#define R_RISCV_TPREL_LO12_S 31 +#define R_RISCV_TPREL_ADD 32 +#define R_RISCV_ADD8 33 +#define R_RISCV_ADD16 34 +#define R_RISCV_ADD32 35 +#define R_RISCV_ADD64 36 +#define R_RISCV_SUB8 37 +#define R_RISCV_SUB16 38 +#define R_RISCV_SUB32 39 +#define R_RISCV_SUB64 40 +#define R_RISCV_GNU_VTINHERIT 41 +#define R_RISCV_GNU_VTENTRY 42 +#define R_RISCV_ALIGN 43 +#define R_RISCV_RVC_BRANCH 44 +#define R_RISCV_RVC_JUMP 45 + #define R_SPARC_NONE 0 #define R_SPARC_8 1 #define R_SPARC_16 2 |