On 5/5/23 21:43, juzhe.zh...@rivai.ai wrote:
From: Juzhe-Zhong <juzhe.zh...@rivai.ai>

gcc/ChangeLog:

         * config/riscv/riscv-protos.h (preferred_simd_mode): New function.
         * config/riscv/riscv-v.cc (autovec_use_vlmax_p): Ditto.
         (preferred_simd_mode): Ditto.
         * config/riscv/riscv.cc (riscv_get_arg_info): Handle RVV type in 
function arg.
         (riscv_convert_vector_bits): Adjust for RVV auto-vectorization.
         (riscv_preferred_simd_mode): New function.
         (TARGET_VECTORIZE_PREFERRED_SIMD_MODE): New target hook support.
         * config/riscv/vector.md: Add autovec.md.
         * config/riscv/autovec.md: New file.

gcc/testsuite/ChangeLog:

         * gcc.target/riscv/rvv/rvv.exp: Add testcases for RVV 
auto-vectorization.
         * gcc.target/riscv/rvv/autovec/fixed-vlmax-1.c: New test.
         * gcc.target/riscv/rvv/autovec/partial/single_rgroup-1.c: New test.
         * gcc.target/riscv/rvv/autovec/partial/single_rgroup-1.h: New test.
         * gcc.target/riscv/rvv/autovec/partial/single_rgroup_run-1.c: New test.
         * gcc.target/riscv/rvv/autovec/scalable-1.c: New test.
         * gcc.target/riscv/rvv/autovec/template-1.h: New test.
         * gcc.target/riscv/rvv/autovec/v-1.c: New test.
         * gcc.target/riscv/rvv/autovec/v-2.c: New test.
         * gcc.target/riscv/rvv/autovec/zve32f-1.c: New test.
         * gcc.target/riscv/rvv/autovec/zve32f-2.c: New test.
         * gcc.target/riscv/rvv/autovec/zve32f-3.c: New test.
         * gcc.target/riscv/rvv/autovec/zve32f_zvl128b-1.c: New test.
         * gcc.target/riscv/rvv/autovec/zve32f_zvl128b-2.c: New test.
         * gcc.target/riscv/rvv/autovec/zve32x-1.c: New test.
         * gcc.target/riscv/rvv/autovec/zve32x-2.c: New test.
         * gcc.target/riscv/rvv/autovec/zve32x-3.c: New test.
         * gcc.target/riscv/rvv/autovec/zve32x_zvl128b-1.c: New test.
         * gcc.target/riscv/rvv/autovec/zve32x_zvl128b-2.c: New test.
         * gcc.target/riscv/rvv/autovec/zve64d-1.c: New test.
         * gcc.target/riscv/rvv/autovec/zve64d-2.c: New test.
         * gcc.target/riscv/rvv/autovec/zve64d-3.c: New test.
         * gcc.target/riscv/rvv/autovec/zve64d_zvl128b-1.c: New test.
         * gcc.target/riscv/rvv/autovec/zve64d_zvl128b-2.c: New test.
         * gcc.target/riscv/rvv/autovec/zve64f-1.c: New test.
         * gcc.target/riscv/rvv/autovec/zve64f-2.c: New test.
         * gcc.target/riscv/rvv/autovec/zve64f-3.c: New test.
         * gcc.target/riscv/rvv/autovec/zve64f_zvl128b-1.c: New test.
         * gcc.target/riscv/rvv/autovec/zve64f_zvl128b-2.c: New test.
         * gcc.target/riscv/rvv/autovec/zve64x-1.c: New test.
         * gcc.target/riscv/rvv/autovec/zve64x-2.c: New test.
         * gcc.target/riscv/rvv/autovec/zve64x-3.c: New test.
         * gcc.target/riscv/rvv/autovec/zve64x_zvl128b-1.c: New test.
         * gcc.target/riscv/rvv/autovec/zve64x_zvl128b-2.c: New test.
I went ahead and committed this. Hopefully we can get things unblocked for everyone this weekend :-)

jeff

Reply via email to