From 3dfd23eb4bdc7707048b115548e2238dacef064e Mon Sep 17 00:00:00 2001 From: Andreas Schwab Date: Thu, 22 Mar 2018 12:15:45 +0100 Subject: RISC-V: add remaining relocations --- ChangeLog | 17 ++++++++++++++++ elf/elf.h | 68 ++++++++++++++++++++++++++++++++++++++++++++++++++++----------- 2 files changed, 73 insertions(+), 12 deletions(-) diff --git a/ChangeLog b/ChangeLog index 5c9568035b..b571e4ef02 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,20 @@ +2018-03-26 Andreas Schwab + + * elf/elf.h (R_RISCV_BRANCH, R_RISCV_JAL, R_RISCV_CALL) + (R_RISCV_CALL_PLT, R_RISCV_GOT_HI20, R_RISCV_TLS_GOT_HI20) + (R_RISCV_TLS_GD_HI20, R_RISCV_PCREL_HI20, R_RISCV_PCREL_LO12_I) + (R_RISCV_PCREL_LO12_S, R_RISCV_HI20, R_RISCV_LO12_I) + (R_RISCV_LO12_S, R_RISCV_TPREL_HI20, R_RISCV_TPREL_LO12_I) + (R_RISCV_TPREL_LO12_S, R_RISCV_TPREL_ADD, R_RISCV_ADD8) + (R_RISCV_ADD16, R_RISCV_ADD32, R_RISCV_ADD64, R_RISCV_SUB8) + (R_RISCV_SUB16, R_RISCV_SUB32, R_RISCV_SUB64) + (R_RISCV_GNU_VTINHERIT, R_RISCV_GNU_VTENTRY, R_RISCV_ALIGN) + (R_RISCV_RVC_BRANCH, R_RISCV_RVC_JUMP, R_RISCV_RVC_LUI) + (R_RISCV_GPREL_I, R_RISCV_GPREL_S, R_RISCV_TPREL_I) + (R_RISCV_TPREL_S, R_RISCV_RELAX, R_RISCV_SUB6, R_RISCV_SET6) + (R_RISCV_SET8, R_RISCV_SET16, R_RISCV_SET32, R_RISCV_32_PCREL) + (R_RISCV_NUM): Define. + 2018-03-25 Samuel Thibault * include/errno.h [IS_IN(rtld) && !RTLD_PRIVATE_ERRNO]: Do not use the diff --git a/elf/elf.h b/elf/elf.h index 677fccb555..f7748983c8 100644 --- a/elf/elf.h +++ b/elf/elf.h @@ -3788,18 +3788,62 @@ enum #define EF_RISCV_FLOAT_ABI_QUAD 0x0006 /* RISC-V relocations. */ -#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 +#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 +#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_RISCV_RVC_LUI 46 +#define R_RISCV_GPREL_I 47 +#define R_RISCV_GPREL_S 48 +#define R_RISCV_TPREL_I 49 +#define R_RISCV_TPREL_S 50 +#define R_RISCV_RELAX 51 +#define R_RISCV_SUB6 52 +#define R_RISCV_SET6 53 +#define R_RISCV_SET8 54 +#define R_RISCV_SET16 55 +#define R_RISCV_SET32 56 +#define R_RISCV_32_PCREL 57 + +#define R_RISCV_NUM 58 /* BPF specific declarations. */ -- cgit 1.4.1