RISC-V: Introduce XTheadVector as a subset of V1.0.0
commitd05b5265110709996fa19af1267c6669b7992879
authorJun Sha (Joshua) <cooper.joshua@linux.alibaba.com>
Fri, 12 Jan 2024 03:20:29 +0000 (12 11:20 +0800)
committerChristoph Müllner <christoph.muellner@vrull.eu>
Thu, 18 Jan 2024 14:32:49 +0000 (18 15:32 +0100)
treee0a6ccaed1e0bf44071359cdd6ec945802c963ca
parent60f58d0630805e8dce79f5489658fd83e42fa8f1
RISC-V: Introduce XTheadVector as a subset of V1.0.0

This patch is to introduce basic XTheadVector support
(march string parsing and a test for __riscv_xtheadvector)
according to https://github.com/T-head-Semi/thead-extension-spec/

gcc/ChangeLog:

* common/config/riscv/riscv-common.cc
(riscv_subset_list::parse): Add new vendor extension.
* config/riscv/riscv-c.cc (riscv_cpu_cpp_builtins):
Add test marco.
* config/riscv/riscv.opt:  Add new mask.

gcc/testsuite/ChangeLog:

* gcc.target/riscv/predef-__riscv_th_v_intrinsic.c: New test.
* gcc.target/riscv/rvv/xtheadvector.c: New test.

Co-authored-by: Jin Ma <jinma@linux.alibaba.com>
Co-authored-by: Xianmiao Qu <cooper.qu@linux.alibaba.com>
Co-authored-by: Christoph Müllner <christoph.muellner@vrull.eu>
gcc/common/config/riscv/riscv-common.cc
gcc/config/riscv/riscv-c.cc
gcc/config/riscv/riscv.opt
gcc/testsuite/gcc.target/riscv/predef-__riscv_th_v_intrinsic.c [new file with mode: 0644]
gcc/testsuite/gcc.target/riscv/rvv/xtheadvector.c [new file with mode: 0644]