From: Tsukasa OI Date: Sat, 26 Nov 2022 02:52:48 +0000 (+0000) Subject: RISC-V: Allow merging 'H' extension X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=c341f4676af4f9922ca61e1b093d103ed808ae6e;p=binutils-gdb.git RISC-V: Allow merging 'H' extension Because riscv_merge_std_ext function did not merge the 'H' extension, linked executables lacked 'H' extension when multiple objects are merged. This issue is found while building OpenSBI with 'H' extension (resulting ELF files did not contain "h1p0" in "Tag_RISCV_arch" even if *all* linked object files contained it). This commit adds 'h' to standard_exts variable to merge 'H' extension. bfd/ChangeLog: * elfnn-riscv.c (riscv_merge_std_ext): Add 'H' extension merging. --- diff --git a/bfd/elfnn-riscv.c b/bfd/elfnn-riscv.c index a2d85dbe939..a83c8ad2695 100644 --- a/bfd/elfnn-riscv.c +++ b/bfd/elfnn-riscv.c @@ -3427,7 +3427,7 @@ riscv_merge_std_ext (bfd *ibfd, struct riscv_subset_t **pin, struct riscv_subset_t **pout) { - const char *standard_exts = "mafdqlcbjtpvn"; + const char *standard_exts = "mafdqlcbjtpvnh"; const char *p; struct riscv_subset_t *in = *pin; struct riscv_subset_t *out = *pout;