Message ID | or1q6xoi2w.fsf@lxoliva.fsfla.org |
---|---|
State | New |
Headers | show |
Series | ppc: testsuite: vec-mul requires vsx runtime | expand |
on 2024/4/22 17:35, Alexandre Oliva wrote: > Ping? > https://gcc.gnu.org/pipermail/gcc-patches/2022-May/593947.html > > > vec-mul is an execution test, but it only requires a powerpc_vsx_ok > effective target, which is enough only for compile tests. In order to > To check for runtime and execution environment support, we need to > require vsx_hw. Make that a condition for execution, but still > perform a compile test if the condition is not satisfied. > > Regstrapped on x86_64-linux-gnu and ppc64el-linux-gnu. Also tested with > gcc-13 on ppc64-vx7r2 and ppc-vx7r2. Ok to install? > > > for gcc/testsuite/ChangeLog > > * gcc.target/powerpc/vec-mul.c: Run on target vsx_hw, just > compile otherwise. > --- > gcc/testsuite/gcc.target/powerpc/vec-mul.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/gcc/testsuite/gcc.target/powerpc/vec-mul.c b/gcc/testsuite/gcc.target/powerpc/vec-mul.c > index bfcaf80719d1d..11da86159723f 100644 > --- a/gcc/testsuite/gcc.target/powerpc/vec-mul.c > +++ b/gcc/testsuite/gcc.target/powerpc/vec-mul.c > @@ -1,4 +1,5 @@ > -/* { dg-do run } */ > +/* { dg-do compile { target { ! vsx_hw } } } */ > +/* { dg-do run { target vsx_hw } } */ > /* { dg-require-effective-target powerpc_vsx_ok } */ Nit: It's useless to check powerpc_vsx_ok for vsx_hw, so powerpc_vsx_ok check can be moved to be with ! vsx_hw. OK with this nit tweaked, thanks! BR, Kewen > /* { dg-options "-mvsx -O3" } */ > > >
On Apr 23, 2024, "Kewen.Lin" <linkw@linux.ibm.com> wrote: >> -/* { dg-do run } */ >> +/* { dg-do compile { target { ! vsx_hw } } } */ >> +/* { dg-do run { target vsx_hw } } */ >> /* { dg-require-effective-target powerpc_vsx_ok } */ > Nit: It's useless to check powerpc_vsx_ok for vsx_hw, so powerpc_vsx_ok check > can be moved to be with ! vsx_hw. > OK with this nit tweaked, thanks! Thanks, here's what I'm pushing momentarily... ppc: testsuite: vec-mul requires vsx runtime vec-mul is an execution test, but it only requires a powerpc_vsx_ok effective target, which is enough only for compile tests. In order to check for runtime and execution environment support, we need to require vsx_hw. Make that a condition for execution, but still perform a compile test if the condition is not satisfied. for gcc/testsuite/ChangeLog * gcc.target/powerpc/vec-mul.c: Run on target vsx_hw, just compile otherwise. --- gcc/testsuite/gcc.target/powerpc/vec-mul.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gcc/testsuite/gcc.target/powerpc/vec-mul.c b/gcc/testsuite/gcc.target/powerpc/vec-mul.c index bfcaf80719d1d..aa0ef7aa45acc 100644 --- a/gcc/testsuite/gcc.target/powerpc/vec-mul.c +++ b/gcc/testsuite/gcc.target/powerpc/vec-mul.c @@ -1,5 +1,5 @@ -/* { dg-do run } */ -/* { dg-require-effective-target powerpc_vsx_ok } */ +/* { dg-do compile { target { { ! vsx_hw } && powerpc_vsx_ok } } } */ +/* { dg-do run { target vsx_hw } } */ /* { dg-options "-mvsx -O3" } */ /* Test that the vec_mul builtin works as expected. */
diff --git a/gcc/testsuite/gcc.target/powerpc/vec-mul.c b/gcc/testsuite/gcc.target/powerpc/vec-mul.c index bfcaf80719d1d..11da86159723f 100644 --- a/gcc/testsuite/gcc.target/powerpc/vec-mul.c +++ b/gcc/testsuite/gcc.target/powerpc/vec-mul.c @@ -1,4 +1,5 @@ -/* { dg-do run } */ +/* { dg-do compile { target { ! vsx_hw } } } */ +/* { dg-do run { target vsx_hw } } */ /* { dg-require-effective-target powerpc_vsx_ok } */ /* { dg-options "-mvsx -O3" } */