From: Pan Li <[email protected]>
The default test running in rvv.exp takes the -fno-vect-cost-model
for most of these options. It is not that suitable as the vx_vf
test depends on the cost-model. Thus, separate the vx_vf test
cases without -fno-vect-cost-model in another options.
The below test suites are passed for this patch.
* The rv64gcv fully regression test.
gcc/testsuite/ChangeLog:
* gcc.target/riscv/rvv/rvv.exp: Separate test running of
rvv vx_vf.
Signed-off-by: Pan Li <[email protected]>
---
gcc/testsuite/gcc.target/riscv/rvv/rvv.exp | 15 +++++++++++++++
1 file changed, 15 insertions(+)
diff --git a/gcc/testsuite/gcc.target/riscv/rvv/rvv.exp
b/gcc/testsuite/gcc.target/riscv/rvv/rvv.exp
index 4283d12ccb5..d76a2d7fe74 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/rvv.exp
+++ b/gcc/testsuite/gcc.target/riscv/rvv/rvv.exp
@@ -130,6 +130,21 @@ foreach op $AUTOVEC_TEST_OPTS {
"$op" ""
dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/autovec/sat/*.\[cS\]]] \
"$op" ""
+}
+
+# vx_vf tests
+set AUTOVEC_TEST_OPTS [list \
+ {-ftree-vectorize -O3 -mrvv-vector-bits=zvl -mrvv-max-lmul=m1 -ffast-math} \
+ {-ftree-vectorize -O3 -mrvv-vector-bits=zvl -mrvv-max-lmul=m2 -ffast-math} \
+ {-ftree-vectorize -O3 -mrvv-vector-bits=zvl -mrvv-max-lmul=m4 -ffast-math} \
+ {-ftree-vectorize -O3 -mrvv-vector-bits=zvl -mrvv-max-lmul=m8 -ffast-math} \
+ {-ftree-vectorize -O3 -mrvv-vector-bits=zvl -mrvv-max-lmul=dynamic
-ffast-math} \
+ {-ftree-vectorize -O3 -mrvv-vector-bits=scalable -mrvv-max-lmul=m1
-ffast-math} \
+ {-ftree-vectorize -O3 -mrvv-vector-bits=scalable -mrvv-max-lmul=m2
-ffast-math} \
+ {-ftree-vectorize -O3 -mrvv-vector-bits=scalable -mrvv-max-lmul=m4
-ffast-math} \
+ {-ftree-vectorize -O3 -mrvv-vector-bits=scalable -mrvv-max-lmul=m8
-ffast-math} \
+ {-ftree-vectorize -O3 -mrvv-vector-bits=scalable -mrvv-max-lmul=dynamic
-ffast-math} ]
+foreach op $AUTOVEC_TEST_OPTS {
dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/autovec/vx_vf/*.\[cS\]]]
\
"$op" ""
}
--
2.43.0