https://gcc.gnu.org/g:a22dfe208d94105a6e587a3b25e8fe8d62444d8a

commit r15-5696-ga22dfe208d94105a6e587a3b25e8fe8d62444d8a
Author: Pan Li <pan2...@intel.com>
Date:   Mon Nov 25 11:45:30 2024 +0800

    RISC-V: Refactor the testcases for RVV gather/scatter
    
    This patch would like to refactor the testcases of gather/scatter
    after sorts of optimization option passing to testcase.  Includes:
    
    * Remove unnecessary optimization options.
    * Adjust dg-final by any-opts and/or no-opts if the rtl dump changes
      on different optimization options (like O2, O3).
    
    The below test suites are passed for this patch.
    * The rv64gcv fully regression test.
    
    It is test only patch and obvious up to a point, will commit it
    directly if no comments in next 48H.
    
    gcc/testsuite/ChangeLog:
    
            * 
gcc.target/riscv/rvv/autovec/gather-scatter/gather_load_64-12-zvbb.c:
            Adjust the dump check times.
            * gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-1.c:
            Remove unnecessary option and add target no-opts/any-tops.
            * gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-2.c: 
Ditto.
            * gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-1.c: 
Ditto.
            * gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-2.c: 
Ditto.
    
    Signed-off-by: Pan Li <pan2...@intel.com>

Diff:
---
 .../rvv/autovec/gather-scatter/gather_load_64-12-zvbb.c  |  2 +-
 .../riscv/rvv/autovec/gather-scatter/strided_load-1.c    |  9 +++++++--
 .../riscv/rvv/autovec/gather-scatter/strided_load-2.c    | 16 ++++++++++++++--
 .../riscv/rvv/autovec/gather-scatter/strided_store-1.c   |  9 +++++++--
 .../riscv/rvv/autovec/gather-scatter/strided_store-2.c   |  2 +-
 5 files changed, 30 insertions(+), 8 deletions(-)

diff --git 
a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load_64-12-zvbb.c
 
b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load_64-12-zvbb.c
index 11a4031f47bb..1fd3644886ac 100644
--- 
a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load_64-12-zvbb.c
+++ 
b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/gather_load_64-12-zvbb.c
@@ -106,7 +106,7 @@ TEST_LOOP (_Float16, uint64_t)
 TEST_LOOP (float, uint64_t)
 TEST_LOOP (double, uint64_t)
 
-/* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 88 
"vect" } } */
+/* { dg-final { scan-tree-dump-times "vectorized 1 loops in function" 80 
"vect" } } */
 /* { dg-final { scan-tree-dump " \.MASK_LEN_GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "vect" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "vect" } } */
diff --git 
a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-1.c 
b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-1.c
index 79b39f102bf2..b8c9669fa541 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-1.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-1.c
@@ -1,5 +1,5 @@
 /* { dg-do compile } */
-/* { dg-options "-march=rv64gcv_zvfh -mabi=lp64d -O3 
-mrvv-vector-bits=scalable -fno-vect-cost-model -ffast-math 
-fdump-tree-optimized-details" } */
+/* { dg-options "-march=rv64gcv_zvfh -mabi=lp64d -mrvv-vector-bits=scalable 
-fno-vect-cost-model -ffast-math -fdump-tree-optimized-details" } */
 
 #include <stdint-gcc.h>
 
@@ -40,6 +40,11 @@
 
 TEST_ALL (TEST_LOOP)
 
-/* { dg-final { scan-tree-dump-times " \.MASK_LEN_STRIDED_LOAD " 66 
"optimized" } } */
+/* { dg-final { scan-tree-dump-times " \.MASK_LEN_STRIDED_LOAD " 66 
"optimized" { target { any-opts
+     "-O3"
+   } } } } */
+/* { dg-final { scan-tree-dump-times " \.MASK_LEN_STRIDED_LOAD " 44 
"optimized" { target { any-opts
+     "-O2"
+   } } } } */
 /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "optimized" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "optimized" } } */
diff --git 
a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-2.c 
b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-2.c
index 8a452e547a39..dab9658b12b8 100644
--- a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-2.c
+++ b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-2.c
@@ -1,5 +1,5 @@
 /* { dg-do compile } */
-/* { dg-options "-march=rv64gcv_zvfh -mabi=lp64d -O3 
-mrvv-vector-bits=scalable -fno-vect-cost-model -ffast-math 
-fdump-tree-optimized-details" } */
+/* { dg-options "-march=rv64gcv_zvfh -mabi=lp64d -mrvv-vector-bits=scalable 
-fno-vect-cost-model -ffast-math -fdump-tree-optimized-details" } */
 
 #include <stdint-gcc.h>
 
@@ -40,6 +40,18 @@
 
 TEST_ALL (TEST_LOOP)
 
-/* { dg-final { scan-tree-dump-times " \.MASK_LEN_STRIDED_LOAD " 33 
"optimized" } } */
+/* { dg-final { scan-tree-dump-times " \.MASK_LEN_STRIDED_LOAD " 64 
"optimized" { target { any-opts {
+     "-mrvv-max-lmul=m8"
+     "-mrvv-max-lmul=dynamic"
+   } } } } */
+/* { dg-final { scan-tree-dump-times " \.MASK_LEN_STRIDED_LOAD " 56 
"optimized" { target { any-opts {
+     "-mrvv-max-lmul=m4"
+   } } } } */
+/* { dg-final { scan-tree-dump-times " \.MASK_LEN_STRIDED_LOAD " 50 
"optimized" { target { any-opts {
+     "-mrvv-max-lmul=m2"
+   } } } } */
+/* { dg-final { scan-tree-dump-times " \.MASK_LEN_STRIDED_LOAD " 33 
"optimized" { target { any-opts {
+     "-mrvv-max-lmul=m1"
+   } } } } */
 /* { dg-final { scan-tree-dump-not " \.GATHER_LOAD" "optimized" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_GATHER_LOAD" "optimized" } } */
diff --git 
a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-1.c 
b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-1.c
index ec8c3a5c63a4..905fe2038e72 100644
--- 
a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-1.c
+++ 
b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-1.c
@@ -1,5 +1,5 @@
 /* { dg-do compile } */
-/* { dg-options "-march=rv64gcv_zvfh -mabi=lp64d -O3 
-mrvv-vector-bits=scalable -fno-vect-cost-model -ffast-math 
-fdump-tree-optimized-details" } */
+/* { dg-options "-march=rv64gcv_zvfh -mabi=lp64d -mrvv-vector-bits=scalable 
-fno-vect-cost-model -ffast-math -fdump-tree-optimized-details" } */
 
 #include <stdint-gcc.h>
 
@@ -40,6 +40,11 @@
 
 TEST_ALL (TEST_LOOP)
 
-/* { dg-final { scan-tree-dump-times " \.MASK_LEN_STRIDED_STORE" 66 
"optimized" } } */
+/* { dg-final { scan-tree-dump-times " \.MASK_LEN_STRIDED_STORE" 66 
"optimized" { target { any-opts {
+     "-O3"
+   } } } } } */
+/* { dg-final { scan-tree-dump-times " \.MASK_LEN_STRIDED_STORE" 44 
"optimized" { target { any-opts {
+     "-O2"
+   } } } } } */
 /* { dg-final { scan-tree-dump-not " \.SCATTER_STORE" "optimized" } } */
 /* { dg-final { scan-tree-dump-not " \.MASK_SCATTER_STORE" "optimized" } } */
diff --git 
a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-2.c 
b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-2.c
index b433b5b52104..4acac8f7efd8 100644
--- 
a/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-2.c
+++ 
b/gcc/testsuite/gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-2.c
@@ -1,5 +1,5 @@
 /* { dg-do compile } */
-/* { dg-options "-march=rv64gcv_zvfh -mabi=lp64d -O3 
-mrvv-vector-bits=scalable -fno-vect-cost-model -ffast-math 
-fdump-tree-optimized-details" } */
+/* { dg-options "-march=rv64gcv_zvfh -mabi=lp64d -mrvv-vector-bits=scalable 
-fno-vect-cost-model -ffast-math -fdump-tree-optimized-details" } */
 
 #include <stdint-gcc.h>

Reply via email to