From: Jiufu Guo Date: Tue, 18 Apr 2023 07:56:53 +0000 (+0800) Subject: PR testsuite/106879 FAIL: gcc.dg/vect/bb-slp-layout-19.c on powerpc64 X-Git-Tag: basepoints/gcc-15~10034 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=57e7229a29ca0e9929b61051e4f5857f0b41b6c7;p=thirdparty%2Fgcc.git PR testsuite/106879 FAIL: gcc.dg/vect/bb-slp-layout-19.c on powerpc64 On P7, option -mno-allow-movmisalign is added during testing, which prevents slp happen on the case. Like PR65484 and PR87306, this patch use vect_hw_misalign to guard the case on powerpc targets. gcc/testsuite/ChangeLog: PR testsuite/106879 * gcc.dg/vect/bb-slp-layout-19.c: Modify to guard the check with vect_hw_misalign on POWERs. --- diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-layout-19.c b/gcc/testsuite/gcc.dg/vect/bb-slp-layout-19.c index f075a83a25ba..847a07bd5bea 100644 --- a/gcc/testsuite/gcc.dg/vect/bb-slp-layout-19.c +++ b/gcc/testsuite/gcc.dg/vect/bb-slp-layout-19.c @@ -31,4 +31,9 @@ void f() e[3] = b3; } -/* { dg-final { scan-tree-dump-times "add new stmt: \[^\\n\\r\]* = VEC_PERM_EXPR" 3 "slp1" { target { vect_int_mult && vect_perm } } } } */ +/* On older powerpc hardware (POWER7 and earlier), the default flag + -mno-allow-movmisalign prevents vectorization. On POWER8 and later, + when vect_hw_misalign is true, vectorization occurs. For other + targets, ! vect_no_align is a sufficient test. */ + +/* { dg-final { scan-tree-dump-times "add new stmt: \[^\\n\\r\]* = VEC_PERM_EXPR" 3 "slp1" { target { { vect_int_mult && vect_perm } && { { ! powerpc*-*-* } || { vect_hw_misalign } } } } } } */