The tests keyed vectorization expectations on vect_hw_misalign alone,
but we can and do vectorize the misaligned loop with realigned loads,
so adjust the conditions to also take vect_no_align into account.
Regstrapped on x86_64-linux-gnu, regstrapping on powerpc64le-linux-gnu,
also tested with gcc-15 targeting powerpc-elf. Ok to install?
for gcc/testsuite/ChangeLog
* gcc.dg/vect/vect-strided-a-u8-i2-gap.c: Also take
vect_no_align into account.
---
.../gcc.dg/vect/vect-strided-a-u8-i2-gap.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i2-gap.c
b/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i2-gap.c
index dc9ad168c7161..ec9e18a942e0e 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i2-gap.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-strided-a-u8-i2-gap.c
@@ -70,6 +70,5 @@ int main (void)
return 0;
}
-/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { target {
vect_strided2 && { ! vect_hw_misalign } } } } } */
-/* { dg-final { scan-tree-dump-times "vectorized 2 loops" 1 "vect" { target {
vect_strided2 && vect_hw_misalign } } } } */
-
+/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { target {
vect_strided2 && { vect_no_align && { ! vect_hw_misalign } } } } } } */
+/* { dg-final { scan-tree-dump-times "vectorized 2 loops" 1 "vect" { target {
vect_strided2 && { ! { vect_no_align && { ! vect_hw_misalign } } } } } } } */
--
Alexandre Oliva, happy hacker https://blog.lx.oliva.nom.br/
Free Software Activist FSFLA co-founder GNU Toolchain Engineer
More tolerance and less prejudice are key for inclusion and diversity.
Excluding neuro-others for not behaving ""normal"" is *not* inclusive!