https://gcc.gnu.org/g:4e1fcf44bdc582e71408175d75e025f5be8b0e55

commit r14-9428-g4e1fcf44bdc582e71408175d75e025f5be8b0e55
Author: Rainer Orth <r...@cebitec.uni-bielefeld.de>
Date:   Mon Mar 11 15:46:30 2024 +0100

    testsuite: vect: Require vect_hw_misalign in 
gcc.dg/vect/vect-cost-model-1.c etc. [PR98238]
    
    Several gcc.dg/vect/vect-cost-model-?.c tests FAIL on 32 and 64-bit
    Solaris/SPARC:
    
    FAIL: gcc.dg/vect/vect-cost-model-1.c -flto -ffat-lto-objects
    scan-tree-dump vect "LOOP VECTORIZED"
    FAIL: gcc.dg/vect/vect-cost-model-1.c scan-tree-dump vect "LOOP VECTORIZED"
    FAIL: gcc.dg/vect/vect-cost-model-3.c -flto -ffat-lto-objects
    scan-tree-dump vect "LOOP VECTORIZED"
    FAIL: gcc.dg/vect/vect-cost-model-3.c scan-tree-dump vect "LOOP VECTORIZED"
    FAIL: gcc.dg/vect/vect-cost-model-5.c -flto -ffat-lto-objects
    scan-tree-dump vect "LOOP VECTORIZED"
    FAIL: gcc.dg/vect/vect-cost-model-5.c scan-tree-dump vect "LOOP VECTORIZED"
    
    The dumps show
    
    
/vol/gcc/src/hg/master/local/gcc/testsuite/gcc.dg/vect/vect-cost-model-1.c:7:30:
    note: ==> examining statement: _3 = *_2;
    
/vol/gcc/src/hg/master/local/gcc/testsuite/gcc.dg/vect/vect-cost-model-1.c:7:30:
    missed: unsupported unaligned access
    
/vol/gcc/src/hg/master/local/gcc/testsuite/gcc.dg/vect/vect-cost-model-1.c:8:6:
    missed: not vectorized: relevant stmt not supported: _3 = *_2;
    
    so I think the tests need to require vect_hw_misalign.  This is what
    this patch does.
    
    Tested on sparc-sun-solaris2.11 and i386-pc-solaris2.11.
    
    2024-02-22  Rainer Orth  <r...@cebitec.uni-bielefeld.de>
    
            gcc/testsuite:
            PR tree-optimization/98238
            * gcc.dg/vect/vect-cost-model-1.c (scan-tree-dump): Also require
            vect_hw_misalign.
            * gcc.dg/vect/vect-cost-model-3.c: Likewise.
            * gcc.dg/vect/vect-cost-model-5.c: Likewise.

Diff:
---
 gcc/testsuite/gcc.dg/vect/vect-cost-model-1.c | 2 +-
 gcc/testsuite/gcc.dg/vect/vect-cost-model-3.c | 2 +-
 gcc/testsuite/gcc.dg/vect/vect-cost-model-5.c | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/gcc/testsuite/gcc.dg/vect/vect-cost-model-1.c 
b/gcc/testsuite/gcc.dg/vect/vect-cost-model-1.c
index 0737da5d671..1457e8f3625 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-cost-model-1.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-cost-model-1.c
@@ -8,4 +8,4 @@ f (int *x, int *y)
     x[i] += y[i];
 }
 
-/* { dg-final { scan-tree-dump {LOOP VECTORIZED} vect { target vect_int } } } 
*/
+/* { dg-final { scan-tree-dump {LOOP VECTORIZED} vect { target { vect_int && 
vect_hw_misalign } } } } */
diff --git a/gcc/testsuite/gcc.dg/vect/vect-cost-model-3.c 
b/gcc/testsuite/gcc.dg/vect/vect-cost-model-3.c
index d7c6cfd2049..fba18aae0cf 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-cost-model-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-cost-model-3.c
@@ -8,4 +8,4 @@ f (int *restrict x, int *restrict y)
     x[i] += y[i];
 }
 
-/* { dg-final { scan-tree-dump {LOOP VECTORIZED} vect { target vect_int } } } 
*/
+/* { dg-final { scan-tree-dump {LOOP VECTORIZED} vect { target { vect_int && 
vect_hw_misalign } } } } */
diff --git a/gcc/testsuite/gcc.dg/vect/vect-cost-model-5.c 
b/gcc/testsuite/gcc.dg/vect/vect-cost-model-5.c
index 536ec0a3cda..b9d0ca47af2 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-cost-model-5.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-cost-model-5.c
@@ -8,4 +8,4 @@ f (int *restrict x, int *restrict y)
     x[i] += y[i];
 }
 
-/* { dg-final { scan-tree-dump {LOOP VECTORIZED} vect { target vect_int } } } 
*/
+/* { dg-final { scan-tree-dump {LOOP VECTORIZED} vect { target { vect_int && 
vect_hw_misalign } } } } */

Reply via email to