[0/2] RISC-V: Add ratified 'E' base ISA support with draft ABIs

Message ID cover.1690251857.git.research_trasio@irq.a4lg.com
Headers
Series RISC-V: Add ratified 'E' base ISA support with draft ABIs |

Message

Tsukasa OI July 25, 2023, 2:26 a.m. UTC
  Hi,

This patch set reflects the most of ratified 'E' base ISAs and
draft/pre-draft RVE ABIs, ILP32E and LP64E.

RV32E / RV64E (ratified): The latest RISC-V ISA Manual
<https://github.com/riscv/riscv-isa-manual/releases/tag/riscv-isa-release-1239329-2023-05-23>
ILP32E (draft): RISCV ABIs Specification version 1.0
<https://github.com/riscv-non-isa/riscv-elf-psabi-doc/releases/tag/v1.0>
LP64E (pre-draft): Submission to add RVE API corresponding RV64E
<https://github.com/riscv-non-isa/riscv-elf-psabi-doc/pull/299>

Adding pre-draft LP64E would be a problem on GCC but I bet not on Binutils
(ELF flags [to handle on Binutils/GAS] are not very detailed).

Note that this patch set does not reflect the version number of the 'E' base
ISA (ratified version 2.0) because the latest ratified specification,
"20191213", comes with the draft version 1.9 and adding the version 2.0 with
ISA_SPEC_CLASS_DRAFT does not work (due to the default value of
`DEFAULT_RISCV_ISA_SPEC'; note that it cannot be set to "draft").

I think the next unprivileged ISA specification release is the best timing
to add 'E' version 2.0 (along with new ISA_SPEC_CLASS_20??????).

Thanks,
Tsukasa




Tsukasa OI (2):
  RISC-V: Remove RV64E conflict
  RISC-V: Add "lp64e" ABI support

 bfd/elfxx-riscv.c                               | 7 -------
 gas/config/tc-riscv.c                           | 4 +++-
 gas/doc/c-riscv.texi                            | 5 ++---
 gas/testsuite/gas/riscv/mabi-fail-rv32e-lp64d.l | 2 +-
 gas/testsuite/gas/riscv/mabi-fail-rv32e-lp64f.l | 2 +-
 gas/testsuite/gas/riscv/mabi-fail-rv32e-lp64q.l | 2 +-
 gas/testsuite/gas/riscv/march-fail-base-02.d    | 3 ---
 gas/testsuite/gas/riscv/march-fail-base-02.l    | 2 --
 8 files changed, 8 insertions(+), 19 deletions(-)
 delete mode 100644 gas/testsuite/gas/riscv/march-fail-base-02.d
 delete mode 100644 gas/testsuite/gas/riscv/march-fail-base-02.l


base-commit: 3dfee72010248aca5932a27b4c34d3b79ab9f057