Skip to content

Commit

Permalink
RISC-V: Introduce gcc option mrvv-vector-bits for RVV
Browse files Browse the repository at this point in the history
This patch would like to introduce one new gcc option for RVV. To
appoint the bits size of one RVV vector register. Valid arguments to
'-mrvv-vector-bits=' are:

* scalable
* zvl

The scalable will pick up the zvl*b in the march as the minimal vlen.
For example, the minimal vlen will be 512 when march=rv64gcv_zvl512b
and mrvv-vector-bits=scalable.

The zvl will pick up the zvl*b in the march as exactly vlen.
For example, the vlen will be 1024 exactly when march=rv64gcv_zvl1024b
and mrvv-vector-bits=zvl.

The internal option --param=riscv-autovec-preference will be replaced
by option -mrvv-vector-bits. Aka:

* -mrvv-vector-bits=scalable indicates --param=riscv-autovec-preference=scalable
* -mrvv-vector-bits=zvl indicates --param=riscv-autovec-preference=fixed-vlmax

You can also take -fno-tree-vectorize for --param=riscv-autovec-preference=none.
The internal option --param=riscv-autovec-preference is unavailable after this
patch.

Given below sample for more details:

void test_rvv_vector_bits ()
{
  vint32m1_t x;
  asm volatile ("def %0": "=vr"(x));
  asm volatile (""::: "v0",   "v1",  "v2",  "v3",  "v4",  "v5",  "v6",  "v7",
                      "v8",   "v9", "v10", "v11", "v12", "v13", "v14", "v15",
                      "v16", "v17", "v18", "v19", "v20", "v21", "v22", "v23",
                      "v24", "v25", "v26", "v27", "v28", "v29", "v30", "v31");
  asm volatile ("use %0": : "vr"(x));
}

With -march=rv64gcv_zvl128b -mrvv-vector-bits=scalable we have (for min_vlen >= 128)
  csrr    t0,vlenb
  sub     sp,sp,t0
  def v1
  vs1r.v  v1,0(sp)
  vl1re32.v       v1,0(sp)
  use v1
  csrr    t0,vlenb
  add     sp,sp,t0
  jr      ra

With -march=rv64gcv_zvl128b -mrvv-vector-bits=zvl we have (for vlen = 128)
  addi    sp,sp,-16
  def v1
  vs1r.v  v1,0(sp)
  vl1re32.v       v1,0(sp)
  use v1
  addi    sp,sp,16
  jr      ra

The below test are passed for this patch.

* The riscv fully regression test.

	PR target/112817

gcc/ChangeLog:

	* config/riscv/riscv-avlprop.cc (pass_avlprop::execute): Replace
	RVV_FIXED_VLMAX to RVV_VECTOR_BITS_ZVL.
	* config/riscv/riscv-opts.h (enum riscv_autovec_preference_enum): Remove.
	(enum rvv_vector_bits_enum): New enum for different RVV vector bits.
	* config/riscv/riscv-selftests.cc (riscv_run_selftests): Update
	comments for option replacement.
	* config/riscv/riscv-v.cc (autovec_use_vlmax_p): Replace enum of
	riscv_autovec_preference to rvv_vector_bits.
	(vls_mode_valid_p): Ditto.
	(estimated_poly_value): Ditto.
	* config/riscv/riscv.cc (riscv_convert_vector_chunks): Rename to
	vector chunks and honor new option mrvv-vector-bits.
	(riscv_override_options_internal): Update comments and rename the
	vector chunks.
	* config/riscv/riscv.opt: Add option mrvv-vector-bits and remove
	internal option param=riscv-autovec-preference.

gcc/testsuite/ChangeLog:

	* g++.target/riscv/rvv/base/pr111296.C: Replace
	param=riscv-autovec-preference to mrvv-vector-bits.
	* gcc.dg/vect/costmodel/riscv/rvv/dynamic-lmul4-6.c: Ditto.
	* gcc.dg/vect/costmodel/riscv/rvv/dynamic-lmul4-8.c: Ditto.
	* gcc.dg/vect/costmodel/riscv/rvv/dynamic-lmul8-12.c: Ditto.
	* gcc.dg/vect/costmodel/riscv/rvv/pr113112-1.c: Ditto.
	* gcc.dg/vect/costmodel/riscv/rvv/pr113112-2.c: Ditto.
	* gcc.dg/vect/costmodel/riscv/rvv/pr113112-3.c: Ditto.
	* gcc.dg/vect/costmodel/riscv/rvv/pr113112-4.c: Ditto.
	* gcc.dg/vect/costmodel/riscv/rvv/pr113112-5.c: Ditto.
	* gcc.dg/vect/costmodel/riscv/rvv/pr113247-2.c: Ditto.
	* gcc.dg/vect/costmodel/riscv/rvv/pr113247-4.c: Ditto.
	* gcc.dg/vect/costmodel/riscv/rvv/pr113281-2.c: Ditto.
	* gcc.dg/vect/costmodel/riscv/rvv/pr113281-4.c: Ditto.
	* gcc.target/riscv/rvv/autovec/align-1.c: Ditto.
	* gcc.target/riscv/rvv/autovec/align-2.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/copysign-run.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/copysign-rv32gcv.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/copysign-rv64gcv.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/copysign-zvfh-run.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/fmax-1.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/fmax_run-1.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/fmax_zvfh-1.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/fmax_zvfh_run-1.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/fmin-1.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/fmin_run-1.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/fmin_zvfh-1.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/fmin_zvfh_run-1.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/mulh-1.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/mulh-2.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/mulh_run-1.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/mulh_run-2.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/narrow-1.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/narrow-2.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/narrow-3.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/narrow_run-1.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/narrow_run-2.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/narrow_run-3.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/shift-immediate.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/shift-run.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/shift-rv32gcv.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/shift-rv64gcv.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/shift-scalar-run.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/shift-scalar-rv32gcv.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/shift-scalar-rv64gcv.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/shift-scalar-template.h: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vadd-run-nofm.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vadd-run.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vadd-rv32gcv-nofm.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vadd-rv32gcv.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vadd-rv64gcv-nofm.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vadd-rv64gcv.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vadd-zvfh-run.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vand-run.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vand-rv32gcv.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vand-rv64gcv.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vcompress-avlprop-1.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vdiv-run-nofm.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vdiv-run.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vdiv-rv32gcv-nofm.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vdiv-rv32gcv.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vdiv-rv64gcv-nofm.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vdiv-rv64gcv.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vdiv-zvfh-run.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vmax-run.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vmax-rv32gcv.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vmax-rv64gcv.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vmax-zvfh-run.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vmin-run.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vmin-rv32gcv.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vmin-rv64gcv.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vmin-zvfh-run.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vmul-run-nofm.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vmul-run.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vmul-rv32gcv-nofm.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vmul-rv32gcv.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vmul-rv64gcv-nofm.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vmul-rv64gcv.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vmul-zvfh-run.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vor-run.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vor-rv32gcv.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vor-rv64gcv.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vrem-run.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vrem-rv32gcv.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vrem-rv64gcv.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vsub-run-nofm.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vsub-run.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vsub-rv32gcv-nofm.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vsub-rv32gcv.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vsub-rv64gcv-nofm.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vsub-rv64gcv.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vsub-zvfh-run.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vxor-run.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vxor-rv32gcv.c: Ditto.
	* gcc.target/riscv/rvv/autovec/binop/vxor-rv64gcv.c: Ditto.
	* gcc.target/riscv/rvv/autovec/bug-1.c: Ditto.
	* gcc.target/riscv/rvv/autovec/bug-2.c: Ditto.
	* gcc.target/riscv/rvv/autovec/bug-3.c: Ditto.
	* gcc.target/riscv/rvv/autovec/bug-4.c: Ditto.
	* gcc.target/riscv/rvv/autovec/bug-5.c: Ditto.
	* gcc.target/riscv/rvv/autovec/bug-6.c: Ditto.
	* gcc.target/riscv/rvv/autovec/bug-8.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cmp/vcond-1.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cmp/vcond-2.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cmp/vcond-3.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cmp/vcond-4.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cmp/vcond_run-1.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cmp/vcond_run-2.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cmp/vcond_run-3.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cmp/vcond_run-4.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_arith-1.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_arith-10.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_arith-11.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_arith-2.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_arith-3.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_arith-4.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_arith-5.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_arith-6.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_arith-7.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_arith-8.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_arith-9.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_arith_run-1.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_arith_run-10.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_arith_run-11.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_arith_run-2.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_arith_run-3.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_arith_run-4.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_arith_run-5.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_arith_run-6.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_arith_run-7.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_arith_run-8.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_arith_run-9.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_convert_float2float-rv32-1.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_convert_float2float-rv32-2.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_convert_float2float-rv64-1.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_convert_float2float-rv64-2.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_convert_float2float_run-1.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_convert_float2float_run-2.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_convert_float2int-rv32-1.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_convert_float2int-rv32-2.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_convert_float2int-rv64-1.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_convert_float2int-rv64-2.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_convert_float2int_run-1.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_convert_float2int_run-2.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_convert_float2int_zvfh-rv32-1.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_convert_float2int_zvfh-rv32-2.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_convert_float2int_zvfh-rv64-1.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_convert_float2int_zvfh-rv64-2.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_convert_float2int_zvfh_run-1.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_convert_float2int_zvfh_run-2.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_convert_int2float-rv32-1.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_convert_int2float-rv32-2.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_convert_int2float-rv64-1.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_convert_int2float-rv64-2.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_convert_int2float_run-1.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_convert_int2float_run-2.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_convert_int2int-rv32-1.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_convert_int2int-rv32-2.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_convert_int2int-rv64-1.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_convert_int2int-rv64-2.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_convert_int2int_run-1.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_convert_int2int_run-2.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_copysign-run.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_copysign-rv32gcv.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_copysign-rv64gcv.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_copysign-zvfh-run.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_fadd-1.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_fadd-2.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_fadd-3.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_fadd-4.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_fadd_run-1.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_fadd_run-2.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_fadd_run-3.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_fadd_run-4.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_fma_fnma-1.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_fma_fnma-2.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_fma_fnma-3.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_fma_fnma-4.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_fma_fnma-5.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_fma_fnma-6.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_fma_fnma-7.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_fma_fnma-8.c:
	* gcc.target/riscv/rvv/autovec/cond/cond_fma_fnma_run-1.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_fma_fnma_run-2.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_fma_fnma_run-3.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_fma_fnma_run-4.c: Ditto.
	* gcc.target/riscv/rvv/autovec/cond/cond_fma_fnma_run-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fma_fnma_run-6.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fma_fnma_run-7.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fma_fnma_run-8.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fmax-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fmax-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fmax-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fmax-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fmax_run-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fmax_run-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fmax_run-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fmax_run-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fmax_zvfh-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fmax_zvfh-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fmax_zvfh-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fmax_zvfh-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fmax_zvfh_run-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fmax_zvfh_run-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fmax_zvfh_run-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fmax_zvfh_run-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fmin-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fmin-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fmin-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fmin-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fmin_run-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fmin_run-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fmin_run-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fmin_run-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fmin_zvfh-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fmin_zvfh-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fmin_zvfh-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fmin_zvfh-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fmin_zvfh_run-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fmin_zvfh_run-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fmin_zvfh_run-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fmin_zvfh_run-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fms_fnms-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fms_fnms-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fms_fnms-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fms_fnms-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fms_fnms-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fms_fnms-6.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fms_fnms_run-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fms_fnms_run-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fms_fnms_run-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fms_fnms_run-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fms_fnms_run-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fms_fnms_run-6.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fmul-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fmul-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fmul-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fmul-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fmul-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fmul_run-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fmul_run-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fmul_run-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fmul_run-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_fmul_run-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_logical_min_max-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_logical_min_max-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_logical_min_max-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_logical_min_max-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_logical_min_max-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_logical_min_max_run-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_logical_min_max_run-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_logical_min_max_run-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_logical_min_max_run-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_logical_min_max_run-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_mulh-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_mulh-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_mulh_run-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_mulh_run-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_narrow_shift-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_narrow_shift-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_narrow_shift-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_narrow_shift_run-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_narrow_shift_run-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_narrow_shift_run-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_shift-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_shift-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_shift-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_shift-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_shift-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_shift-6.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_shift-7.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_shift-8.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_shift-9.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_shift_run-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_shift_run-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_shift_run-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_shift_run-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_shift_run-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_shift_run-6.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_shift_run-7.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_shift_run-8.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_shift_run-9.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_sqrt-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_sqrt-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_sqrt-zvfh-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_sqrt-zvfh-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_sqrt_run-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_sqrt_run-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_sqrt_run-zvfh-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_sqrt_run-zvfh-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_unary-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_unary-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_unary-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_unary-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_unary-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_unary-6.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_unary-7.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_unary-8.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_unary_run-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_unary_run-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_unary_run-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_unary_run-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_unary_run-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_unary_run-6.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_unary_run-7.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_unary_run-8.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-6.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-7.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-8.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_widen_complicate-9.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_widen_reduc-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_widen_reduc-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_widen_reduc_run-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/cond_widen_reduc_run-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/cond/pr111401.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vec-narrow-int64-float16.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vec-widen-float16-int64.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vfcvt-itof-run.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vfcvt-itof-rv32gcv.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vfcvt-itof-rv64gcv.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vfcvt-itof-zvfh-run.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vfcvt_rtz-run.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vfcvt_rtz-rv32gcv.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vfcvt_rtz-rv64gcv.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vfcvt_rtz-zvfh-run.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vfncvt-ftoi-run.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vfncvt-ftoi-rv32gcv.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vfncvt-ftoi-rv64gcv.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vfncvt-ftoi-zvfh-run.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vfncvt-itof-run.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vfncvt-itof-rv32gcv.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vfncvt-itof-rv64gcv.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vfncvt-itof-zvfh-run.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vfncvt-run.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vfncvt-rv32gcv.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vfncvt-rv64gcv.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vfncvt-zvfh-run.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vfwcvt-ftoi-run.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vfwcvt-ftoi-rv32gcv.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vfwcvt-ftoi-rv64gcv.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vfwcvt-ftoi-zvfh-run.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vfwcvt-itof-run.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vfwcvt-itof-rv32gcv.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vfwcvt-itof-rv64gcv.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vfwcvt-itof-zvfh-run.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vfwcvt-run.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vfwcvt-rv32gcv.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vfwcvt-rv64gcv.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vfwcvt-zvfh-run.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vncvt-run.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vncvt-rv32gcv.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vncvt-rv64gcv.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vsext-run.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vsext-rv32gcv.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vsext-rv64gcv.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vzext-run.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vzext-rv32gcv.c: Diito.
	* gcc.target/riscv/rvv/autovec/conversions/vzext-rv64gcv.c: Diito.
	* gcc.target/riscv/rvv/autovec/fixed-vlmax-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/fold-min-poly.c: Diito.
	* gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/madd-split2-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/gimple_fold-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/live-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/live-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/live_run-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/live_run-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/multiple_rgroup-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/multiple_rgroup-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/multiple_rgroup-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/multiple_rgroup-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/multiple_rgroup_run-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/multiple_rgroup_run-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/multiple_rgroup_run-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/multiple_rgroup_run-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/multiple_rgroup_zbb.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/select_vl-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/select_vl-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/single_rgroup-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/single_rgroup-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/single_rgroup-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/single_rgroup_run-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/single_rgroup_run-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/single_rgroup_run-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/slp-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/slp-10.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/slp-11.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/slp-12.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/slp-13.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/slp-14.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/slp-15.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/slp-16.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/slp-17.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/slp-18.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/slp-19.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/slp-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/slp-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/slp-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/slp-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/slp-6.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/slp-7.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/slp-8.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/slp-9.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/slp_run-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/slp_run-10.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/slp_run-11.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/slp_run-12.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/slp_run-13.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/slp_run-14.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/slp_run-15.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/slp_run-16.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/slp_run-17.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/slp_run-18.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/slp_run-19.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/slp_run-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/slp_run-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/slp_run-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/slp_run-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/slp_run-6.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/slp_run-7.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/slp_run-8.c: Diito.
	* gcc.target/riscv/rvv/autovec/partial/slp_run-9.c: Diito.
	* gcc.target/riscv/rvv/autovec/post-ra-avl.c: Diito.
	* gcc.target/riscv/rvv/autovec/pr110950.c: Diito.
	* gcc.target/riscv/rvv/autovec/pr110964.c: Diito.
	* gcc.target/riscv/rvv/autovec/pr110989.c: Diito.
	* gcc.target/riscv/rvv/autovec/pr111232.c: Diito.
	* gcc.target/riscv/rvv/autovec/pr111295.c: Diito.
	* gcc.target/riscv/rvv/autovec/pr111313.c: Diito.
	* gcc.target/riscv/rvv/autovec/pr112326.c: Diito.
	* gcc.target/riscv/rvv/autovec/pr112552.c: Diito.
	* gcc.target/riscv/rvv/autovec/pr112554.c: Diito.
	* gcc.target/riscv/rvv/autovec/pr112561.c: Diito.
	* gcc.target/riscv/rvv/autovec/pr112597-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/pr112599-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/pr112599-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/pr112694-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/pr112854.c: Diito.
	* gcc.target/riscv/rvv/autovec/pr112872.c: Diito.
	* gcc.target/riscv/rvv/autovec/pr112999.c: Diito.
	* gcc.target/riscv/rvv/autovec/pr113393-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/pr113393-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/pr113393-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/extract_last-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/extract_last-10.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/extract_last-11.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/extract_last-12.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/extract_last-13.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/extract_last-14.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/extract_last-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/extract_last-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/extract_last-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/extract_last-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/extract_last-6.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/extract_last-7.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/extract_last-8.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/extract_last-9.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/extract_last_run-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/extract_last_run-10.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/extract_last_run-11.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/extract_last_run-12.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/extract_last_run-13.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/extract_last_run-14.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/extract_last_run-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/extract_last_run-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/extract_last_run-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/extract_last_run-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/extract_last_run-6.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/extract_last_run-7.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/extract_last_run-8.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/extract_last_run-9.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/reduc-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/reduc-10.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/reduc-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/reduc-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/reduc-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/reduc-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/reduc-6.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/reduc-7.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/reduc-8.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/reduc-9.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/reduc_call-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/reduc_call-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/reduc_call-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/reduc_call-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/reduc_call-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/reduc_run-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/reduc_run-10.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/reduc_run-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/reduc_run-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/reduc_run-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/reduc_run-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/reduc_run-6.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/reduc_run-7.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/reduc_run-8.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/reduc_strict-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/reduc_strict-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/reduc_strict-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/reduc_strict-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/reduc_strict-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/reduc_strict-6.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/reduc_strict-7.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/reduc_strict_run-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/reduc_strict_run-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/reduc_zvfh-10.c: Diito.
	* gcc.target/riscv/rvv/autovec/reduc/reduc_zvfh_run-10.c: Diito.
	* gcc.target/riscv/rvv/autovec/scalable-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/series-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/series_run-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/slp-mask-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/slp-mask-run-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/mask_struct_load-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/mask_struct_load-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/mask_struct_load-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/mask_struct_load-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/mask_struct_load-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/mask_struct_load-6.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/mask_struct_load-7.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/mask_struct_load_run-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/mask_struct_load_run-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/mask_struct_load_run-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/mask_struct_load_run-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/mask_struct_load_run-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/mask_struct_load_run-6.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/mask_struct_load_run-7.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/mask_struct_store-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/mask_struct_store-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/mask_struct_store-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/mask_struct_store-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/mask_struct_store-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/mask_struct_store-6.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/mask_struct_store-7.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/mask_struct_store_run-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/mask_struct_store_run-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/mask_struct_store_run-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/mask_struct_store_run-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/mask_struct_store_run-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/mask_struct_store_run-6.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/mask_struct_store_run-7.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/struct_vect-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/struct_vect-10.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/struct_vect-11.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/struct_vect-12.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/struct_vect-13.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/struct_vect-14.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/struct_vect-15.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/struct_vect-16.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/struct_vect-17.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/struct_vect-18.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/struct_vect-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/struct_vect-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/struct_vect-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/struct_vect-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/struct_vect-6.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/struct_vect-7.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/struct_vect-8.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/struct_vect-9.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/struct_vect_run-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/struct_vect_run-10.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/struct_vect_run-11.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/struct_vect_run-12.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/struct_vect_run-13.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/struct_vect_run-14.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/struct_vect_run-15.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/struct_vect_run-16.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/struct_vect_run-17.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/struct_vect_run-18.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/struct_vect_run-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/struct_vect_run-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/struct_vect_run-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/struct_vect_run-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/struct_vect_run-6.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/struct_vect_run-7.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/struct_vect_run-8.c: Diito.
	* gcc.target/riscv/rvv/autovec/struct/struct_vect_run-9.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop-10.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop-11.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop-12.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop-6.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop-7.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop-8.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop-9.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_nofm-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_nofm-10.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_nofm-11.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_nofm-12.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_nofm-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_nofm-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_nofm-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_nofm-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_nofm-6.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_nofm-7.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_nofm-8.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_nofm-9.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_nofm_run-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_nofm_run-10.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_nofm_run-11.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_nofm_run-12.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_nofm_run-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_nofm_run-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_nofm_run-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_nofm_run-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_nofm_run-6.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_nofm_run-7.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_nofm_run-8.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_nofm_run-9.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_run-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_run-10.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_run-11.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_run-12.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_run-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_run-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_run-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_run-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_run-6.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_run-7.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_run-8.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_run-9.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_run_zvfh-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_run_zvfh-10.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_run_zvfh-11.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_run_zvfh-12.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_run_zvfh-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_run_zvfh-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_run_zvfh-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_run_zvfh-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_run_zvfh-6.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_run_zvfh-7.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_run_zvfh-8.c: Diito.
	* gcc.target/riscv/rvv/autovec/ternop/ternop_run_zvfh-9.c: Diito.
	* gcc.target/riscv/rvv/autovec/unop/abs-run.c: Diito.
	* gcc.target/riscv/rvv/autovec/unop/abs-rv32gcv.c: Diito.
	* gcc.target/riscv/rvv/autovec/unop/abs-rv64gcv.c: Diito.
	* gcc.target/riscv/rvv/autovec/unop/abs-zvfh-run.c: Diito.
	* gcc.target/riscv/rvv/autovec/unop/popcount-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/unop/popcount-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/unop/vfsqrt-run.c: Diito.
	* gcc.target/riscv/rvv/autovec/unop/vfsqrt-rv32gcv.c: Diito.
	* gcc.target/riscv/rvv/autovec/unop/vfsqrt-rv64gcv.c: Diito.
	* gcc.target/riscv/rvv/autovec/unop/vfsqrt-zvfh-run.c: Diito.
	* gcc.target/riscv/rvv/autovec/unop/vneg-run.c: Diito.
	* gcc.target/riscv/rvv/autovec/unop/vneg-rv32gcv.c: Diito.
	* gcc.target/riscv/rvv/autovec/unop/vneg-rv64gcv.c: Diito.
	* gcc.target/riscv/rvv/autovec/unop/vneg-zvfh-run.c: Diito.
	* gcc.target/riscv/rvv/autovec/unop/vnot-run.c: Diito.
	* gcc.target/riscv/rvv/autovec/unop/vnot-rv32gcv.c: Diito.
	* gcc.target/riscv/rvv/autovec/unop/vnot-rv64gcv.c: Diito.
	* gcc.target/riscv/rvv/autovec/v-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/v-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/bitmask-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/bitmask-10.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/bitmask-11.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/bitmask-12.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/bitmask-13.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/bitmask-14.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/bitmask-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/bitmask-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/bitmask-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/bitmask-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/bitmask-6.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/bitmask-7.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/bitmask-8.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/bitmask-9.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/combine-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/combine-merge_run-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/combine-merge_run-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/compress-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/compress-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/compress-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/compress-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/compress-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/compress-6.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/compress_run-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/compress_run-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/compress_run-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/compress_run-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/compress_run-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/compress_run-6.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/consecutive-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/consecutive-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/consecutive_run-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/consecutive_run-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/full-vec-move1.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/init-repeat-sequence-run-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/init-repeat-sequence-run-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/init-repeat-sequence-run-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/insert_run-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/insert_run-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/merge-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/merge-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/merge-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/merge-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/merge-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/merge-6.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/merge-7.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/merge_run-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/merge_run-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/merge_run-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/merge_run-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/merge_run-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/merge_run-6.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/merge_run-7.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/perm_run-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/perm_run-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/perm_run-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/perm_run-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/perm_run-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/perm_run-6.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/perm_run-7.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/pr110985.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/repeat_run-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/repeat_run-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/repeat_run-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/repeat_run-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/repeat_run-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/repeat_run-6.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/trailing-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/trailing-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/trailing_run-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls-vlmax/trailing_run-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls/calling-convention-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls/calling-convention-10.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls/calling-convention-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls/calling-convention-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls/calling-convention-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls/calling-convention-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls/calling-convention-6.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls/calling-convention-7.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls/calling-convention-8.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls/calling-convention-9.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls/calling-convention-run-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls/calling-convention-run-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls/calling-convention-run-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls/calling-convention-run-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls/calling-convention-run-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls/calling-convention-run-6.c: Diito.
	* gcc.target/riscv/rvv/autovec/vls/pr110994.c: Diito.
	* gcc.target/riscv/rvv/autovec/vmv-imm-fixed-rv32.c: Diito.
	* gcc.target/riscv/rvv/autovec/vmv-imm-fixed-rv64.c: Diito.
	* gcc.target/riscv/rvv/autovec/vmv-imm-run.c: Diito.
	* gcc.target/riscv/rvv/autovec/vmv-imm-rv32.c: Diito.
	* gcc.target/riscv/rvv/autovec/vmv-imm-rv64.c: Diito.
	* gcc.target/riscv/rvv/autovec/vreinterpet-fixed.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/vec-avg-run.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/vec-avg-rv32gcv.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/vec-avg-rv64gcv.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen-10.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen-11.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen-12.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen-6.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen-7.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen-8.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen-9.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen-complicate-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen-complicate-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen-complicate-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen-complicate-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen-complicate-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen-complicate-6.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen-complicate-7.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen-complicate-8.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen-complicate-9.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen_reduc-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen_reduc_order-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen_reduc_order-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen_reduc_order_run-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen_reduc_order_run-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen_reduc_run-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen_run-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen_run-10.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen_run-11.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen_run-12.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen_run-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen_run-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen_run-4.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen_run-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen_run-6.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen_run-7.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen_run-8.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen_run-9.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen_run_zvfh-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen_run_zvfh-10.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen_run_zvfh-11.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen_run_zvfh-12.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen_run_zvfh-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen_run_zvfh-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen_run_zvfh-5.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen_run_zvfh-6.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen_run_zvfh-7.c: Diito.
	* gcc.target/riscv/rvv/autovec/widen/widen_run_zvfh-8.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve32f-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve32f-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve32f-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve32f_zvl1024b-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve32f_zvl128b-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve32f_zvl128b-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve32f_zvl2048b-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve32f_zvl256b-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve32f_zvl4096b-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve32f_zvl512b-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve32x-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve32x-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve32x-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve32x_zvl1024b-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve32x_zvl128b-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve32x_zvl128b-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve32x_zvl2048b-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve32x_zvl256b-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve32x_zvl4096b-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve32x_zvl512b-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve64d-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve64d-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve64d-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve64d_zvl1024b-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve64d_zvl128b-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve64d_zvl128b-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve64d_zvl2048b-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve64d_zvl256b-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve64d_zvl4096b-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve64d_zvl512b-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve64f-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve64f-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve64f-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve64f_zvl1024b-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve64f_zvl128b-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve64f_zvl128b-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve64f_zvl2048b-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve64f_zvl256b-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve64f_zvl4096b-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve64f_zvl512b-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve64x-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve64x-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve64x-3.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve64x_zvl1024b-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve64x_zvl128b-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve64x_zvl128b-2.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve64x_zvl2048b-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve64x_zvl256b-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve64x_zvl4096b-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/zve64x_zvl512b-1.c: Diito.
	* gcc.target/riscv/rvv/autovec/zvfhmin-1.c: Diito.
	* gcc.target/riscv/rvv/base/abi-callee-saved-1-fixed-1.c: Diito.
	* gcc.target/riscv/rvv/base/abi-callee-saved-1-fixed-2.c: Diito.
	* gcc.target/riscv/rvv/base/cpymem-1.c: Diito.
	* gcc.target/riscv/rvv/base/cpymem-2.c: Diito.
	* gcc.target/riscv/rvv/base/cpymem-strategy-3.c: Diito.
	* gcc.target/riscv/rvv/base/cpymem-strategy-4.c: Diito.
	* gcc.target/riscv/rvv/base/float-point-dynamic-frm-77.c: Diito.
	* gcc.target/riscv/rvv/base/float-point-frm-autovec-1.c: Diito.
	* gcc.target/riscv/rvv/base/float-point-frm-autovec-2.c: Diito.
	* gcc.target/riscv/rvv/base/float-point-frm-autovec-3.c: Diito.
	* gcc.target/riscv/rvv/base/float-point-frm-autovec-4.c: Diito.
	* gcc.target/riscv/rvv/base/poly-selftest-1.c: Diito.
	* gcc.target/riscv/rvv/base/pr110119-1.c: Diito.
	* gcc.target/riscv/rvv/base/pr110119-2.c: Diito.
	* gcc.target/riscv/rvv/base/pr111720-0.c: Diito.
	* gcc.target/riscv/rvv/base/pr111720-1.c: Diito.
	* gcc.target/riscv/rvv/base/pr111720-10.c: Diito.
	* gcc.target/riscv/rvv/base/pr111720-2.c: Diito.
	* gcc.target/riscv/rvv/base/pr111720-3.c: Diito.
	* gcc.target/riscv/rvv/base/pr111720-4.c: Diito.
	* gcc.target/riscv/rvv/base/pr111720-5.c: Diito.
	* gcc.target/riscv/rvv/base/pr111720-6.c: Diito.
	* gcc.target/riscv/rvv/base/pr111720-7.c: Diito.
	* gcc.target/riscv/rvv/base/pr111720-8.c: Diito.
	* gcc.target/riscv/rvv/base/pr111720-9.c: Diito.
	* gcc.target/riscv/rvv/base/vf_avl-1.c: Diito.
	* gcc.target/riscv/rvv/base/vf_avl-2.c: Diito.
	* gcc.target/riscv/rvv/base/vf_avl-3.c: Diito.
	* gcc.target/riscv/rvv/base/vf_avl-4.c: Diito.
	* gcc.target/riscv/rvv/base/zvl-unimplemented-1.c: Diito.
	* gcc.target/riscv/rvv/base/zvl-unimplemented-2.c: Diito.
	* gcc.target/riscv/rvv/rvv.exp: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_multiple-1.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_multiple-10.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_multiple-11.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_multiple-12.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_multiple-13.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_multiple-14.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_multiple-15.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_multiple-16.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_multiple-2.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_multiple-3.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_multiple-4.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_multiple-5.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_multiple-6.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_multiple-7.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_multiple-8.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_multiple-9.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_prop-1.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_prop-2.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-1.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-10.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-100.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-101.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-102.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-103.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-104.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-105.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-106.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-107.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-108.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-109.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-11.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-12.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-13.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-14.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-15.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-16.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-17.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-18.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-19.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-2.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-20.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-21.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-22.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-23.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-24.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-25.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-26.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-27.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-28.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-29.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-3.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-30.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-31.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-32.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-33.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-34.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-35.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-36.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-37.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-38.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-39.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-4.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-40.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-41.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-42.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-43.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-44.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-45.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-46.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-47.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-48.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-49.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-5.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-50.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-51.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-52.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-53.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-54.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-55.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-56.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-57.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-58.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-59.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-6.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-60.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-61.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-62.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-63.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-64.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-65.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-66.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-67.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-68.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-69.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-7.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-70.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-71.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-72.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-73.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-74.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-75.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-76.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-77.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-78.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-79.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-8.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-80.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-81.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-82.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-83.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-84.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-85.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-86.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-87.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-88.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-89.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-9.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-90.c: Diito.
	* gcc.target/riscv/rvv/vsetvl/avl_single-91.c: Diito.
	* g…
  • Loading branch information
Incarnation-p-lee authored and Liaoshihua committed Mar 11, 2024
1 parent ecd008c commit 84b44ce
Show file tree
Hide file tree
Showing 1,351 changed files with 1,482 additions and 1,413 deletions.
2 changes: 1 addition & 1 deletion gcc/config/riscv/riscv-avlprop.cc
Original file line number Diff line number Diff line change
Expand Up @@ -506,7 +506,7 @@ pass_avlprop::execute (function *fn)
simplify_replace_vlmax_avl (rinsn, prop.second);
}

if (riscv_autovec_preference == RVV_FIXED_VLMAX)
if (rvv_vector_bits == RVV_VECTOR_BITS_ZVL)
{
/* Simplify VLMAX AVL into immediate AVL.
E.g. Simplify this following case:
Expand Down
15 changes: 8 additions & 7 deletions gcc/config/riscv/riscv-opts.h
Original file line number Diff line number Diff line change
Expand Up @@ -72,13 +72,6 @@ enum stack_protector_guard {
SSP_GLOBAL /* global canary */
};

/* RISC-V auto-vectorization preference. */
enum riscv_autovec_preference_enum {
NO_AUTOVEC,
RVV_SCALABLE,
RVV_FIXED_VLMAX
};

/* RISC-V auto-vectorization RVV LMUL. */
enum riscv_autovec_lmul_enum {
RVV_M1 = 1,
Expand Down Expand Up @@ -129,6 +122,14 @@ enum vsetvl_strategy_enum {
VSETVL_OPT_NO_FUSION,
};

/* RVV vector bits for option -mrvv-vector-bits, default is scalable. */
enum rvv_vector_bits_enum {
/* scalable indicates taking the value of zvl*b as the minimal vlen. */
RVV_VECTOR_BITS_SCALABLE,
/* zvl indicates taking the value of zvl*b as the exactly vlen. */
RVV_VECTOR_BITS_ZVL,
};

#define TARGET_ZICOND_LIKE (TARGET_ZICOND || (TARGET_XVENTANACONDOPS && TARGET_64BIT))

/* Bit of riscv_zvl_flags will set contintuly, N-1 bit will set if N-bit is
Expand Down
2 changes: 1 addition & 1 deletion gcc/config/riscv/riscv-selftests.cc
Original file line number Diff line number Diff line change
Expand Up @@ -378,7 +378,7 @@ riscv_run_selftests (void)
compile-time unknown POLY value.
Since we never need to compute a compile-time unknown POLY value
when --param=riscv-autovec-preference=fixed-vlmax, disable poly
when -mrvv-vector-bits=zvl, disable poly
selftests in such situation. */
run_poly_int_selftests ();
run_const_vector_selftests ();
Expand Down
16 changes: 8 additions & 8 deletions gcc/config/riscv/riscv-v.cc
Original file line number Diff line number Diff line change
Expand Up @@ -912,14 +912,14 @@ calculate_ratio (unsigned int sew, enum vlmul_type vlmul)
}

/* SCALABLE means that the vector-length is agnostic (run-time invariant and
compile-time unknown). FIXED meands that the vector-length is specific
(compile-time known). Both RVV_SCALABLE and RVV_FIXED_VLMAX are doing
compile-time unknown). ZVL meands that the vector-length is specific
(compile-time known by march like zvl*b). Both SCALABLE and ZVL are doing
auto-vectorization using VLMAX vsetvl configuration. */
static bool
autovec_use_vlmax_p (void)
{
return (riscv_autovec_preference == RVV_SCALABLE
|| riscv_autovec_preference == RVV_FIXED_VLMAX);
return rvv_vector_bits == RVV_VECTOR_BITS_SCALABLE
|| rvv_vector_bits == RVV_VECTOR_BITS_ZVL;
}

/* This function emits VLMAX vrgather instruction. Emit vrgather.vx/vi when sel
Expand Down Expand Up @@ -4431,7 +4431,7 @@ vls_mode_valid_p (machine_mode vls_mode)
if (!TARGET_VECTOR || TARGET_XTHEADVECTOR)
return false;

if (riscv_autovec_preference == RVV_SCALABLE)
if (rvv_vector_bits == RVV_VECTOR_BITS_SCALABLE)
{
if (GET_MODE_CLASS (vls_mode) != MODE_VECTOR_BOOL
&& !ordered_p (TARGET_MAX_LMUL * BITS_PER_RISCV_VECTOR,
Expand All @@ -4448,7 +4448,7 @@ vls_mode_valid_p (machine_mode vls_mode)
return true;
}

if (riscv_autovec_preference == RVV_FIXED_VLMAX)
if (rvv_vector_bits == RVV_VECTOR_BITS_ZVL)
{
machine_mode inner_mode = GET_MODE_INNER (vls_mode);
int precision = GET_MODE_PRECISION (inner_mode).to_constant ();
Expand Down Expand Up @@ -5123,13 +5123,13 @@ estimated_poly_value (poly_int64 val, unsigned int kind)
unsigned int width_source
= BITS_PER_RISCV_VECTOR.is_constant ()
? (unsigned int) BITS_PER_RISCV_VECTOR.to_constant ()
: (unsigned int) RVV_SCALABLE;
: (unsigned int) RVV_VECTOR_BITS_SCALABLE;

/* If there is no core-specific information then the minimum and likely
values are based on TARGET_MIN_VLEN vectors and the maximum is based on
the architectural maximum of 65536 bits. */
unsigned int min_vlen_bytes = TARGET_MIN_VLEN / 8 - 1;
if (width_source == RVV_SCALABLE)
if (width_source == RVV_VECTOR_BITS_SCALABLE)
switch (kind)
{
case POLY_VALUE_MIN:
Expand Down
21 changes: 13 additions & 8 deletions gcc/config/riscv/riscv.cc
Original file line number Diff line number Diff line change
Expand Up @@ -8801,10 +8801,10 @@ riscv_init_machine_status (void)
return ggc_cleared_alloc<machine_function> ();
}

/* Return the VLEN value associated with -march.
/* Return the VLEN value associated with -march and -mwrvv-vector-bits.
TODO: So far we only support length-agnostic value. */
static poly_uint16
riscv_convert_vector_bits (struct gcc_options *opts)
riscv_convert_vector_chunks (struct gcc_options *opts)
{
int chunk_num;
int min_vlen = TARGET_MIN_VLEN_OPTS (opts);
Expand Down Expand Up @@ -8847,10 +8847,15 @@ riscv_convert_vector_bits (struct gcc_options *opts)
compile-time constant if TARGET_VECTOR is disabled. */
if (TARGET_VECTOR_OPTS_P (opts))
{
if (opts->x_riscv_autovec_preference == RVV_FIXED_VLMAX)
return (int) min_vlen / (riscv_bytes_per_vector_chunk * 8);
else
return poly_uint16 (chunk_num, chunk_num);
switch (opts->x_rvv_vector_bits)
{
case RVV_VECTOR_BITS_SCALABLE:
return poly_uint16 (chunk_num, chunk_num);
case RVV_VECTOR_BITS_ZVL:
return (int) min_vlen / (riscv_bytes_per_vector_chunk * 8);
default:
gcc_unreachable ();
}
}
else
return 1;
Expand Down Expand Up @@ -8920,8 +8925,8 @@ riscv_override_options_internal (struct gcc_options *opts)
if (TARGET_VECTOR && TARGET_BIG_ENDIAN)
sorry ("Current RISC-V GCC does not support RVV in big-endian mode");

/* Convert -march to a chunks count. */
riscv_vector_chunks = riscv_convert_vector_bits (opts);
/* Convert -march and -mrvv-vector-bits to a chunks count. */
riscv_vector_chunks = riscv_convert_vector_chunks (opts);
}

/* Implement TARGET_OPTION_OVERRIDE. */
Expand Down
31 changes: 14 additions & 17 deletions gcc/config/riscv/riscv.opt
Original file line number Diff line number Diff line change
Expand Up @@ -528,23 +528,6 @@ Inline strlen calls if possible.
Target RejectNegative Joined UInteger Var(riscv_strcmp_inline_limit) Init(64)
Max number of bytes to compare as part of inlined strcmp/strncmp routines (default: 64).

Enum
Name(riscv_autovec_preference) Type(enum riscv_autovec_preference_enum)
Valid arguments to -param=riscv-autovec-preference=:

EnumValue
Enum(riscv_autovec_preference) String(none) Value(NO_AUTOVEC)

EnumValue
Enum(riscv_autovec_preference) String(scalable) Value(RVV_SCALABLE)

EnumValue
Enum(riscv_autovec_preference) String(fixed-vlmax) Value(RVV_FIXED_VLMAX)

-param=riscv-autovec-preference=
Target RejectNegative Joined Enum(riscv_autovec_preference) Var(riscv_autovec_preference) Init(RVV_SCALABLE)
-param=riscv-autovec-preference=<string> Set the preference of auto-vectorization in the RISC-V port.

Enum
Name(riscv_autovec_lmul) Type(enum riscv_autovec_lmul_enum)
The RVV possible LMUL (-param=riscv-autovec-lmul=):
Expand Down Expand Up @@ -607,3 +590,17 @@ Enum(stringop_strategy) String(vector) Value(STRATEGY_VECTOR)
mstringop-strategy=
Target RejectNegative Joined Enum(stringop_strategy) Var(stringop_strategy) Init(STRATEGY_AUTO)
Specify stringop expansion strategy.

Enum
Name(rvv_vector_bits) Type(enum rvv_vector_bits_enum)
The possible RVV vector register lengths:

EnumValue
Enum(rvv_vector_bits) String(scalable) Value(RVV_VECTOR_BITS_SCALABLE)

EnumValue
Enum(rvv_vector_bits) String(zvl) Value(RVV_VECTOR_BITS_ZVL)

mrvv-vector-bits=
Target RejectNegative Joined Enum(rvv_vector_bits) Var(rvv_vector_bits) Init(RVV_VECTOR_BITS_SCALABLE)
-mrvv-vector-bits=<string> Set the kind of bits for an RVV vector register.
2 changes: 1 addition & 1 deletion gcc/testsuite/g++.target/riscv/rvv/base/pr111296.C
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-options "-std=c++03 -march=rv64gcv -mabi=lp64d -Ofast -ftree-vectorize --param=riscv-autovec-preference=scalable" } */
/* { dg-options "-std=c++03 -march=rv64gcv -mabi=lp64d -Ofast -ftree-vectorize -mrvv-vector-bits=scalable" } */

struct a
{
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-options "-march=rv32gcv -mabi=ilp32 -O3 -ftree-vectorize --param riscv-autovec-lmul=dynamic --param riscv-autovec-preference=scalable -fselective-scheduling -fdump-tree-vect-details" } */
/* { dg-options "-march=rv32gcv -mabi=ilp32 -O3 -ftree-vectorize --param riscv-autovec-lmul=dynamic -mrvv-vector-bits=scalable -fselective-scheduling -fdump-tree-vect-details" } */

#include <stdint-gcc.h>

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-options "-march=rv32gcv -mabi=ilp32 -O3 -ftree-vectorize --param riscv-autovec-lmul=dynamic --param riscv-autovec-preference=scalable -fselective-scheduling -fdump-tree-vect-details" } */
/* { dg-options "-march=rv32gcv -mabi=ilp32 -O3 -ftree-vectorize --param riscv-autovec-lmul=dynamic -mrvv-vector-bits=scalable -fselective-scheduling -fdump-tree-vect-details" } */

#include <stdint-gcc.h>

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-options "-march=rv32gcv -mabi=ilp32 -O3 -ftree-vectorize --param riscv-autovec-lmul=dynamic --param riscv-autovec-preference=scalable -fselective-scheduling -fdump-tree-vect-details" } */
/* { dg-options "-march=rv32gcv -mabi=ilp32 -O3 -ftree-vectorize --param riscv-autovec-lmul=dynamic -mrvv-vector-bits=scalable -fselective-scheduling -fdump-tree-vect-details" } */

void
foo (int *restrict a, int *restrict b, int n)
Expand Down
2 changes: 1 addition & 1 deletion gcc/testsuite/gcc.dg/vect/costmodel/riscv/rvv/pr113112-1.c
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-options "-march=rv64gcv -mabi=lp64d -O3 -ftree-vectorize --param riscv-autovec-lmul=dynamic --param riscv-autovec-preference=fixed-vlmax -fdump-tree-vect-details" } */
/* { dg-options "-march=rv64gcv -mabi=lp64d -O3 -ftree-vectorize --param riscv-autovec-lmul=dynamic -mrvv-vector-bits=zvl -fdump-tree-vect-details" } */

#define N 40

Expand Down
2 changes: 1 addition & 1 deletion gcc/testsuite/gcc.dg/vect/costmodel/riscv/rvv/pr113112-2.c
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-options "-march=rv64gcv -mabi=lp64d -O3 -ftree-vectorize --param riscv-autovec-lmul=dynamic --param riscv-autovec-preference=fixed-vlmax -fdump-tree-vect-details" } */
/* { dg-options "-march=rv64gcv -mabi=lp64d -O3 -ftree-vectorize --param riscv-autovec-lmul=dynamic -mrvv-vector-bits=zvl -fdump-tree-vect-details" } */

#define TYPE double
#define N 200
Expand Down
2 changes: 1 addition & 1 deletion gcc/testsuite/gcc.dg/vect/costmodel/riscv/rvv/pr113112-3.c
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-options "-march=rv64gcv -mabi=lp64d -O3 -ftree-vectorize --param riscv-autovec-lmul=dynamic --param riscv-autovec-preference=fixed-vlmax" } */
/* { dg-options "-march=rv64gcv -mabi=lp64d -O3 -ftree-vectorize --param riscv-autovec-lmul=dynamic -mrvv-vector-bits=zvl" } */

int f[12][100];

Expand Down
2 changes: 1 addition & 1 deletion gcc/testsuite/gcc.dg/vect/costmodel/riscv/rvv/pr113112-4.c
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-options "-march=rv64gcv -mabi=lp64d -Ofast -ftree-vectorize --param riscv-autovec-lmul=dynamic --param riscv-autovec-preference=fixed-vlmax -fno-schedule-insns -fno-schedule-insns2" } */
/* { dg-options "-march=rv64gcv -mabi=lp64d -Ofast -ftree-vectorize --param riscv-autovec-lmul=dynamic -mrvv-vector-bits=zvl -fno-schedule-insns -fno-schedule-insns2" } */

typedef struct rtx_def *rtx;
struct replacement {
Expand Down
2 changes: 1 addition & 1 deletion gcc/testsuite/gcc.dg/vect/costmodel/riscv/rvv/pr113112-5.c
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-options "-march=rv64gcv -mabi=lp64d -O3 -ftree-vectorize --param riscv-autovec-lmul=dynamic --param riscv-autovec-preference=fixed-vlmax -fno-schedule-insns -fno-schedule-insns2" } */
/* { dg-options "-march=rv64gcv -mabi=lp64d -O3 -ftree-vectorize --param riscv-autovec-lmul=dynamic -mrvv-vector-bits=zvl -fno-schedule-insns -fno-schedule-insns2" } */

typedef struct {
int iatom[3];
Expand Down
2 changes: 1 addition & 1 deletion gcc/testsuite/gcc.dg/vect/costmodel/riscv/rvv/pr113247-2.c
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-options "-march=rv64gcv -mabi=lp64d -O3 -ftree-vectorize --param=riscv-autovec-lmul=dynamic --param=riscv-autovec-preference=fixed-vlmax" } */
/* { dg-options "-march=rv64gcv -mabi=lp64d -O3 -ftree-vectorize --param=riscv-autovec-lmul=dynamic -mrvv-vector-bits=zvl" } */

#include "pr113247-1.c"

Expand Down
2 changes: 1 addition & 1 deletion gcc/testsuite/gcc.dg/vect/costmodel/riscv/rvv/pr113247-4.c
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-options "-march=rv64gcv -mabi=lp64d -O3 -ftree-vectorize --param=riscv-autovec-preference=fixed-vlmax" } */
/* { dg-options "-march=rv64gcv -mabi=lp64d -O3 -ftree-vectorize -mrvv-vector-bits=zvl" } */

#include "pr113247-1.c"

Expand Down
2 changes: 1 addition & 1 deletion gcc/testsuite/gcc.dg/vect/costmodel/riscv/rvv/pr113281-2.c
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-options "-march=rv64gcv_zvl256b -mabi=lp64d -O3 -ftree-vectorize --param=riscv-autovec-preference=fixed-vlmax" } */
/* { dg-options "-march=rv64gcv_zvl256b -mabi=lp64d -O3 -ftree-vectorize -mrvv-vector-bits=zvl" } */

unsigned char a;

Expand Down
2 changes: 1 addition & 1 deletion gcc/testsuite/gcc.dg/vect/costmodel/riscv/rvv/pr113281-4.c
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-options "-march=rv64gcv_zvl4096b -mabi=lp64d -O3 -ftree-vectorize --param=riscv-autovec-lmul=m8 --param=riscv-autovec-preference=fixed-vlmax" } */
/* { dg-options "-march=rv64gcv_zvl4096b -mabi=lp64d -O3 -ftree-vectorize --param=riscv-autovec-lmul=m8 -mrvv-vector-bits=zvl" } */

unsigned char a;

Expand Down
2 changes: 1 addition & 1 deletion gcc/testsuite/gcc.target/riscv/rvv/autovec/align-1.c
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-options "-march=rv32gcv -mabi=ilp32d -O3 --param riscv-autovec-preference=scalable" } */
/* { dg-options "-march=rv32gcv -mabi=ilp32d -O3 -mrvv-vector-bits=scalable" } */

void __attribute__((noinline, noclone))
f (int * __restrict dst, int * __restrict op1, int * __restrict op2, int count)
Expand Down
2 changes: 1 addition & 1 deletion gcc/testsuite/gcc.target/riscv/rvv/autovec/align-2.c
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-options "-march=rv32gcv -mabi=ilp32d -O3 --param riscv-autovec-preference=fixed-vlmax" } */
/* { dg-options "-march=rv32gcv -mabi=ilp32d -O3 -mrvv-vector-bits=zvl" } */

void __attribute__((noinline, noclone))
f (int * __restrict dst, int * __restrict op1, int * __restrict op2, int count)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* { dg-do run { target { riscv_v } } } */
/* { dg-additional-options "-std=c99 -fno-vect-cost-model --param=riscv-autovec-preference=fixed-vlmax -ffast-math" } */
/* { dg-additional-options "-std=c99 -fno-vect-cost-model -mrvv-vector-bits=zvl -ffast-math" } */

#include "copysign-template.h"

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-additional-options "-std=c99 -O3 -fno-vect-cost-model -march=rv32gcv_zvfh -mabi=ilp32d --param=riscv-autovec-preference=fixed-vlmax -ffast-math" } */
/* { dg-additional-options "-std=c99 -O3 -fno-vect-cost-model -march=rv32gcv_zvfh -mabi=ilp32d -mrvv-vector-bits=zvl -ffast-math" } */

#include "copysign-template.h"

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-additional-options "-std=c99 -O3 -fno-vect-cost-model -march=rv64gcv_zvfh -mabi=lp64d --param=riscv-autovec-preference=fixed-vlmax -ffast-math" } */
/* { dg-additional-options "-std=c99 -O3 -fno-vect-cost-model -march=rv64gcv_zvfh -mabi=lp64d -mrvv-vector-bits=zvl -ffast-math" } */

#include "copysign-template.h"

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* { dg-do run { target { riscv_v && riscv_zvfh } } } */
/* { dg-additional-options "-std=c99 -fno-vect-cost-model --param=riscv-autovec-preference=fixed-vlmax -ffast-math" } */
/* { dg-additional-options "-std=c99 -fno-vect-cost-model -mrvv-vector-bits=zvl -ffast-math" } */

#include "copysign-template.h"

Expand Down
2 changes: 1 addition & 1 deletion gcc/testsuite/gcc.target/riscv/rvv/autovec/binop/fmax-1.c
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-additional-options "-march=rv32gcv -mabi=ilp32d --param=riscv-autovec-preference=scalable --param vect-epilogues-nomask=0 -fno-signaling-nans" } */
/* { dg-additional-options "-march=rv32gcv -mabi=ilp32d -mrvv-vector-bits=scalable --param vect-epilogues-nomask=0 -fno-signaling-nans" } */

#include <stdint-gcc.h>

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* { dg-do run { target { riscv_v } } } */
/* { dg-additional-options "--param=riscv-autovec-preference=scalable -fno-signaling-nans" } */
/* { dg-additional-options "-mrvv-vector-bits=scalable -fno-signaling-nans" } */

#include <math.h>
#include "fmax-1.c"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-additional-options "-march=rv32gcv_zvfh -mabi=ilp32d --param=riscv-autovec-preference=scalable --param vect-epilogues-nomask=0 -fno-signaling-nans" } */
/* { dg-additional-options "-march=rv32gcv_zvfh -mabi=ilp32d -mrvv-vector-bits=scalable --param vect-epilogues-nomask=0 -fno-signaling-nans" } */

#include <stdint-gcc.h>

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* { dg-do run { target { riscv_zvfh && riscv_zfh } } } */
/* { dg-additional-options "--param=riscv-autovec-preference=scalable -fno-signaling-nans" } */
/* { dg-additional-options "-mrvv-vector-bits=scalable -fno-signaling-nans" } */

#include <math.h>
#include "fmax_zvfh-1.c"
Expand Down
2 changes: 1 addition & 1 deletion gcc/testsuite/gcc.target/riscv/rvv/autovec/binop/fmin-1.c
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-additional-options "-march=rv32gcv -mabi=ilp32d --param=riscv-autovec-preference=scalable --param vect-epilogues-nomask=0 -fno-signaling-nans" } */
/* { dg-additional-options "-march=rv32gcv -mabi=ilp32d -mrvv-vector-bits=scalable --param vect-epilogues-nomask=0 -fno-signaling-nans" } */

#include <stdint-gcc.h>

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* { dg-do run { target { riscv_v } } } */
/* { dg-additional-options "--param=riscv-autovec-preference=scalable -fno-vect-cost-model -fno-signaling-nans" } */
/* { dg-additional-options "-mrvv-vector-bits=scalable -fno-vect-cost-model -fno-signaling-nans" } */

#define FN(X) __builtin_fmin##X
#include "fmax_run-1.c"
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-additional-options "-march=rv32gcv_zvfh -mabi=ilp32d --param=riscv-autovec-preference=scalable --param vect-epilogues-nomask=0 -fno-signaling-nans" } */
/* { dg-additional-options "-march=rv32gcv_zvfh -mabi=ilp32d -mrvv-vector-bits=scalable --param vect-epilogues-nomask=0 -fno-signaling-nans" } */

#include <stdint-gcc.h>

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* { dg-do run { target { riscv_zvfh && riscv_zfh } } } */
/* { dg-additional-options "--param=riscv-autovec-preference=scalable -fno-signaling-nans" } */
/* { dg-additional-options "-mrvv-vector-bits=scalable -fno-signaling-nans" } */

#define FN(X) __builtin_fmin##X
#include "fmax_zvfh_run-1.c"
2 changes: 1 addition & 1 deletion gcc/testsuite/gcc.target/riscv/rvv/autovec/binop/mulh-1.c
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-additional-options "-march=rv32gcv -mabi=ilp32d --param=riscv-autovec-preference=scalable -fno-vect-cost-model" } */
/* { dg-additional-options "-march=rv32gcv -mabi=ilp32d -mrvv-vector-bits=scalable -fno-vect-cost-model" } */

#include <stdint-gcc.h>

Expand Down
2 changes: 1 addition & 1 deletion gcc/testsuite/gcc.target/riscv/rvv/autovec/binop/mulh-2.c
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-additional-options "-march=rv32gcv -mabi=ilp32d --param=riscv-autovec-preference=scalable -fno-vect-cost-model" } */
/* { dg-additional-options "-march=rv32gcv -mabi=ilp32d -mrvv-vector-bits=scalable -fno-vect-cost-model" } */

#include <stdint-gcc.h>

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* { dg-do run { target { riscv_v } } } */
/* { dg-additional-options "--param=riscv-autovec-preference=scalable" } */
/* { dg-additional-options "-mrvv-vector-bits=scalable" } */

#include "mulh-1.c"

Expand Down
Loading

0 comments on commit 84b44ce

Please sign in to comment.