]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commit
RISC-V: Wider conflicts with the XTheadVector extension
authorTsukasa OI <research_trasio@irq.a4lg.com>
Sun, 18 May 2025 04:35:16 +0000 (04:35 +0000)
committerTsukasa OI <research_trasio@irq.a4lg.com>
Mon, 19 May 2025 10:55:31 +0000 (10:55 +0000)
commitb63fda3c7262dfedf18200d0a2ee23804d11607b
treef88a6dedadec3b00020a111ec85996db73f2a8d4
parentc5c2cb6d7d92d4269c0e24bdfb7783fdddc94cfe
RISC-V: Wider conflicts with the XTheadVector extension

T-Head/XuanTie's "XTheadVector" is based on a draft version of the now
standard vector extensions and it conflicts with not just the "V"
extension but all of its subsets.

This commit makes "XTheadVector" conflict with the "Zve32x" extension,
which is the smallest subset of the standard vector extensions.  Still,
a reference to "V" is preserved in the error message
as the documentation suggests:

> Therefore, the XTheadVector extension and the V extension are
> in conflict.

cf. <https://github.com/XUANTIE-RV/thead-extension-spec/blob/2.3.0/xtheadvector.adoc>

Note that, instructions in the "XTHeadZvamo" extension currently has
no conflicts with other extensions, even after addition of the "Zabha"
extension.

bfd/ChangeLog:

* elfxx-riscv.c (riscv_parse_check_conflicts):
Make "XTheadVector" conflict with not just "V" but its subsets.

gas/ChangeLog:

* testsuite/gas/riscv/x-thead-vector-fail.d: Test a vector
subset "Zve32x" to test failures.
* testsuite/gas/riscv/x-thead-vector-fail.l: Reflect change
in the error message.
bfd/elfxx-riscv.c
gas/testsuite/gas/riscv/x-thead-vector-fail.d
gas/testsuite/gas/riscv/x-thead-vector-fail.l