Hi, As the PR comments show, the case gcc.dg/gomp/pr82374.c fails on Power7 since gcc8. But it passes from gcc10. By looking into the difference, it's due to that gcc10 sets -fno-common as default, which makes vectorizer force the alignment and be able to use aligned vector load/store on those targets which doesn't support unaligned vector load/store (here it's Power7).
As Jakub suggested in the PR, this patch is to append -fno-common into dg-options. Verified with gcc8 release on ppc64-redhat-linux (Power7). Is it ok for gcc8 and gcc9 release? I guess for gcc10 and trunk, we can just let it alone? BR, Kewen ----- gcc/testsuite/ChangeLog: PR testsuite/94077 * gcc.dg/gomp/pr82374.c: Add option -fno-common. diff --git a/gcc/testsuite/gcc.dg/gomp/pr82374.c b/gcc/testsuite/gcc.dg/gomp/pr82374.c index 453266e..e63a2f5 100644 --- a/gcc/testsuite/gcc.dg/gomp/pr82374.c +++ b/gcc/testsuite/gcc.dg/gomp/pr82374.c @@ -1,6 +1,9 @@ /* PR tree-optimization/82374 */ /* { dg-do compile } */ -/* { dg-options "-O2 -fno-tree-vectorize -fdump-tree-vect-details" } */ +/* Option -fno-common makes vectorizer able to force alignment and ensures + vectorization can succeed even on targets lacking of unaligned vector + load/store. */ +/* { dg-options "-O2 -fno-tree-vectorize -fdump-tree-vect-details -fno-common" } */ /* { dg-additional-options "-mavx -mno-avx2" { target i?86-*-* x86_64-*-* } } */ /* { dg-additional-options "-mvsx" { target powerpc_vsx_ok } } */