On Fri, 22 Nov 2024, Jakub Jelinek wrote: > On Thu, Nov 21, 2024 at 01:30:39PM +0100, Christoph Müllner wrote: > > > > * gcc.dg/tree-ssa/satd-hadamard.c: New test. > > > > * gcc.dg/tree-ssa/vector-10.c: New test. > > > > * gcc.dg/tree-ssa/vector-8.c: New test. > > > > * gcc.dg/tree-ssa/vector-9.c: New test. > > I see FAILs on i686-linux or on x86_64-linux (in the latter > with -m32 testing). > > One problem is that vector-10.c doesn't use -Wno-psabi option > and uses a function which returns a vector and takes vector > as first parameter, the other problems are that 3 other > tests don't arrange for at least basic vector ISA support, > plus non-standardly test only on x86_64-*-*, while normally > one would allow both i?86-*-* x86_64-*-* and if it is e.g. > specific to 64-bit, also check for lp64 or int128 or whatever > else is needed. E.g. Solaris I think has i?86-*-* triplet even > for 64-bit code, etc. > > The following patch fixes these. > Tested on x86_64-linux with > make check-gcc > RUNTESTFLAGS="--target_board=unix\{-m32,-m32/-mno-mmx/-mno-sse,-m64\} > tree-ssa.exp='vector-*.c satd-hadamard.c'" > ok for trunk?
OK. > 2024-11-22 Jakub Jelinek <ja...@redhat.com> > > * gcc.dg/tree-ssa/satd-hadamard.c: Add -msse2 as dg-additional-options > on x86. Also scan-tree-dump on i?86-*-*. > * gcc.dg/tree-ssa/vector-8.c: Likewise. > * gcc.dg/tree-ssa/vector-9.c: Likewise. > * gcc.dg/tree-ssa/vector-10.c: Add -Wno-psabi to dg-additional-options. > > --- gcc/testsuite/gcc.dg/tree-ssa/satd-hadamard.c.jj 2024-11-22 > 00:06:56.341057153 +0100 > +++ gcc/testsuite/gcc.dg/tree-ssa/satd-hadamard.c 2024-11-22 > 00:17:38.539656767 +0100 > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-additional-options "-O3 -fdump-tree-forwprop4-details" } */ > +/* { dg-additional-options "-msse2" { target i?86-*-* x86_64-*-* } } */ > > #include <stdint.h> > > @@ -40,4 +41,4 @@ x264_pixel_satd_8x4_simplified (uint8_t > return (((uint16_t)sum) + ((uint32_t)sum>>16)) >> 1; > } > > -/* { dg-final { scan-tree-dump "VEC_PERM_EXPR.*{ 2, 3, 6, 7 }" "forwprop4" { > target { aarch64*-*-* x86_64-*-* } } } } */ > +/* { dg-final { scan-tree-dump "VEC_PERM_EXPR.*{ 2, 3, 6, 7 }" "forwprop4" { > target { aarch64*-*-* i?86-*-* x86_64-*-* } } } } */ > --- gcc/testsuite/gcc.dg/tree-ssa/vector-8.c.jj 2024-11-22 > 00:06:56.341057153 +0100 > +++ gcc/testsuite/gcc.dg/tree-ssa/vector-8.c 2024-11-22 00:16:51.047298247 > +0100 > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-additional-options "-O3 -fdump-tree-forwprop1-details" } */ > +/* { dg-additional-options "-msse2" { target i?86-*-* x86_64-*-* } } */ > > typedef int vec __attribute__((vector_size (4 * sizeof (int)))); > > @@ -30,5 +31,5 @@ void f (vec *p_v_in_1, vec *p_v_in_2, ve > *p_v_out_2 = v_out_2; > } > > -/* { dg-final { scan-tree-dump "Vec perm simplify sequences have been > blended" "forwprop1" { target { aarch64*-*-* x86_64-*-* } } } } */ > -/* { dg-final { scan-tree-dump "VEC_PERM_EXPR.*{ 2, 3, 6, 7 }" "forwprop1" { > target { aarch64*-*-* x86_64-*-* } } } } */ > +/* { dg-final { scan-tree-dump "Vec perm simplify sequences have been > blended" "forwprop1" { target { aarch64*-*-* i?86-*-* x86_64-*-* } } } } */ > +/* { dg-final { scan-tree-dump "VEC_PERM_EXPR.*{ 2, 3, 6, 7 }" "forwprop1" { > target { aarch64*-*-* i?86-*-* x86_64-*-* } } } } */ > --- gcc/testsuite/gcc.dg/tree-ssa/vector-9.c.jj 2024-11-22 > 00:06:56.341057153 +0100 > +++ gcc/testsuite/gcc.dg/tree-ssa/vector-9.c 2024-11-22 00:17:16.050960523 > +0100 > @@ -1,5 +1,6 @@ > /* { dg-do compile } */ > /* { dg-additional-options "-O3 -fdump-tree-forwprop1-details" } */ > +/* { dg-additional-options "-msse2" { target i?86-*-* x86_64-*-* } } */ > > typedef int vec __attribute__((vector_size (4 * sizeof (int)))); > > @@ -30,5 +31,5 @@ void f (vec *p_v_in_1, vec *p_v_in_2, ve > *p_v_out_2 = v_out_2; > } > > -/* { dg-final { scan-tree-dump "Vec perm simplify sequences have been > blended" "forwprop1" { target { aarch64*-*-* x86_64-*-* } } } } */ > -/* { dg-final { scan-tree-dump "VEC_PERM_EXPR.*{ 2, 3, 6, 7 }" "forwprop1" { > target { aarch64*-*-* x86_64-*-* } } } } */ > +/* { dg-final { scan-tree-dump "Vec perm simplify sequences have been > blended" "forwprop1" { target { aarch64*-*-* i?86-*-* x86_64-*-* } } } } */ > +/* { dg-final { scan-tree-dump "VEC_PERM_EXPR.*{ 2, 3, 6, 7 }" "forwprop1" { > target { aarch64*-*-* i?86-*-* x86_64-*-* } } } } */ > --- gcc/testsuite/gcc.dg/tree-ssa/vector-10.c.jj 2024-11-22 > 00:06:56.341057153 +0100 > +++ gcc/testsuite/gcc.dg/tree-ssa/vector-10.c 2024-11-22 00:15:28.875406026 > +0100 > @@ -1,5 +1,5 @@ > /* { dg-do compile } */ > -/* { dg-additional-options "-O3 -fdump-tree-forwprop1-details" } */ > +/* { dg-additional-options "-O3 -fdump-tree-forwprop1-details -Wno-psabi" } > */ > > typedef int vec __attribute__((vector_size (4 * sizeof (int)))); > > > Jakub > > -- Richard Biener <rguent...@suse.de> SUSE Software Solutions Germany GmbH, Frankenstrasse 146, 90461 Nuernberg, Germany; GF: Ivo Totev, Andrew McDonald, Werner Knoblich; (HRB 36809, AG Nuernberg)