https://gcc.gnu.org/g:106f3cf414881d14a285a18919bfec14d2d1ca23

commit 106f3cf414881d14a285a18919bfec14d2d1ca23
Author: Alexandre Oliva <ol...@adacore.com>
Date:   Sun Apr 21 17:24:18 2024 -0300

    adjust vectorization expectations for ppc costmodel 76b
    
    This test expects vectorization at power8+ because strict alignment is
    not required for vectors.  For power7, vectorization is not to take
    place because it's not deemed profitable: 12 iterations would be
    required to make it so.
    
    But for power6 and below, the test's 10 iterations are enough to make
    vectorization profitable, but the test doesn't expect this.  Assuming
    the decision is indeed appropriate, I'm adjusting the expectations.
    
    
    for  gcc/testsuite/ChangeLog
    
            * gcc.dg/vect/costmodel/ppc/costmodel-vect-76b.c: Adjust
            expectations for cpus below power7.

Diff:
---
 gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-76b.c | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-76b.c 
b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-76b.c
index cbbfbb24658..0dab2c08acd 100644
--- a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-76b.c
+++ b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-vect-76b.c
@@ -46,9 +46,10 @@ int main (void)
   return 0;
 }
 
-/* Peeling to align the store is used. Overhead of peeling is too high.  */
-/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 0 "vect" { target { 
vector_alignment_reachable && {! vect_no_align} } } } } */
-/* { dg-final { scan-tree-dump-times "vectorization not profitable" 1 "vect" { 
target { vector_alignment_reachable && {! vect_hw_misalign} } } } } */
+/* Peeling to align the store is used. Overhead of peeling is too high
+   for power7, but acceptable for earlier architectures.  */
+/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 0 "vect" { target { 
has_arch_pwr7 && { vector_alignment_reachable && {! vect_no_align} } } } } } */
+/* { dg-final { scan-tree-dump-times "vectorization not profitable" 1 "vect" { 
target { has_arch_pwr7 && { vector_alignment_reachable && {! vect_hw_misalign} 
} } } } } */
 
 /* Versioning to align the store is used. Overhead of versioning is not too 
high.  */
-/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { target { 
vect_no_align || {! vector_alignment_reachable} } } } } */
+/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { target { 
vect_no_align || { {! vector_alignment_reachable} || {! has_arch_pwr7 } } } } } 
} */

Reply via email to