-
- Downloads
RISC-V: Support RVV zvfh{min} vfloat16*_t mov and spill
This patch would like to allow the mov and spill operation for the RVV
vfloat16*_t types. The involved machine mode includes VNx1HF, VNx2HF,
VNx4HF, VNx8HF, VNx16HF, VNx32HF and VNx64HF.
Signed-off-by:
Pan Li <pan2.li@intel.com>
Co-Authored by: Juzhe-Zhong <juzhe.zhong@rivai.ai>
gcc/ChangeLog:
* config/riscv/riscv-vector-builtins-types.def
(vfloat16mf4_t): Add the float16 type to DEF_RVV_F_OPS.
(vfloat16mf2_t): Likewise.
(vfloat16m1_t): Likewise.
(vfloat16m2_t): Likewise.
(vfloat16m4_t): Likewise.
(vfloat16m8_t): Likewise.
* config/riscv/riscv.md: Add vfloat16*_t to attr mode.
* config/riscv/vector-iterators.md: Add vfloat16*_t machine mode
to V, V_WHOLE, V_FRACT, VINDEX, VM, VEL and sew.
* config/riscv/vector.md: Add vfloat16*_t machine mode to sew,
vlmul and ratio.
gcc/testsuite/ChangeLog:
* gcc.target/riscv/rvv/base/mov-14.c: New test.
* gcc.target/riscv/rvv/base/spill-13.c: New test.
Showing
- gcc/config/riscv/riscv-vector-builtins-types.def 7 additions, 0 deletionsgcc/config/riscv/riscv-vector-builtins-types.def
- gcc/config/riscv/riscv.md 1 addition, 0 deletionsgcc/config/riscv/riscv.md
- gcc/config/riscv/vector-iterators.md 25 additions, 0 deletionsgcc/config/riscv/vector-iterators.md
- gcc/config/riscv/vector.md 35 additions, 0 deletionsgcc/config/riscv/vector.md
- gcc/testsuite/gcc.target/riscv/rvv/base/mov-14.c 81 additions, 0 deletionsgcc/testsuite/gcc.target/riscv/rvv/base/mov-14.c
- gcc/testsuite/gcc.target/riscv/rvv/base/spill-13.c 108 additions, 0 deletionsgcc/testsuite/gcc.target/riscv/rvv/base/spill-13.c
Loading
Please register or sign in to comment