Re: [PATCH] testsuite: Fix vect_long_mult on Power [PR109705]
on 2024/1/27 06:42, Andrew Pinski wrote: > On Mon, Jan 15, 2024 at 6:43 PM Kewen.Lin wrote: >> >> Hi, >> >> As pointed out by the discussion in PR109705, the current >> vect_long_mult effective target check on Power is broken. >> This patch is to fix it accordingly. >> >> With additional change by adding a guard vect_long_mult >> in gcc.dg/vect/pr25413a.c , it's tested well on Power{8,9} >> LE & BE (also on Power10 LE as before). > > I see this is still broken for 32bit PowerPC where vect_long_mult > should return true still since long there is 32bit and there is a > 32bit vector multiply. > Can someone test (and apply if approved) the attached patch to see if > it fixes pr25413a.c for powerpc*-*-* for 32bit? Thanks for fixing, it works perfectly as tested. I just pushed it as r14-8485 (also updating with a tab and commit log). BR, Kewen > > Thanks, > Andrew Pinski > >> >> I'm going to push this soon. >> >> BR, >> Kewen >> - >> PR testsuite/109705 >> >> gcc/testsuite/ChangeLog: >> >> * lib/target-supports.exp (check_effective_target_vect_long_mult): >> Fix powerpc*-*-* checks. >> --- >> gcc/testsuite/lib/target-supports.exp | 6 +++--- >> 1 file changed, 3 insertions(+), 3 deletions(-) >> >> diff --git a/gcc/testsuite/lib/target-supports.exp >> b/gcc/testsuite/lib/target-supports.exp >> index 81ae92a0266..fac32fb3d0e 100644 >> --- a/gcc/testsuite/lib/target-supports.exp >> +++ b/gcc/testsuite/lib/target-supports.exp >> @@ -9073,9 +9073,9 @@ proc check_effective_target_vect_int_mult { } { >> >> proc check_effective_target_vect_long_mult { } { >> if { [istarget i?86-*-*] || [istarget x86_64-*-*] >> -|| (([istarget powerpc*-*-*] >> - && ![istarget powerpc-*-linux*paired*]) >> - && [check_effective_target_ilp32]) >> +|| ([istarget powerpc*-*-*] >> + && [check_effective_target_powerpc_vsx_ok] >> + && [check_effective_target_has_arch_pwr10]) >> || [is-effective-target arm_neon] >> || ([istarget sparc*-*-*] && [check_effective_target_ilp32]) >> || [istarget aarch64*-*-*] >> -- >> 2.39.1
Re: [PATCH] testsuite: Fix vect_long_mult on Power [PR109705]
On Mon, Jan 15, 2024 at 6:43 PM Kewen.Lin wrote: > > Hi, > > As pointed out by the discussion in PR109705, the current > vect_long_mult effective target check on Power is broken. > This patch is to fix it accordingly. > > With additional change by adding a guard vect_long_mult > in gcc.dg/vect/pr25413a.c , it's tested well on Power{8,9} > LE & BE (also on Power10 LE as before). I see this is still broken for 32bit PowerPC where vect_long_mult should return true still since long there is 32bit and there is a 32bit vector multiply. Can someone test (and apply if approved) the attached patch to see if it fixes pr25413a.c for powerpc*-*-* for 32bit? Thanks, Andrew Pinski > > I'm going to push this soon. > > BR, > Kewen > - > PR testsuite/109705 > > gcc/testsuite/ChangeLog: > > * lib/target-supports.exp (check_effective_target_vect_long_mult): > Fix powerpc*-*-* checks. > --- > gcc/testsuite/lib/target-supports.exp | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/gcc/testsuite/lib/target-supports.exp > b/gcc/testsuite/lib/target-supports.exp > index 81ae92a0266..fac32fb3d0e 100644 > --- a/gcc/testsuite/lib/target-supports.exp > +++ b/gcc/testsuite/lib/target-supports.exp > @@ -9073,9 +9073,9 @@ proc check_effective_target_vect_int_mult { } { > > proc check_effective_target_vect_long_mult { } { > if { [istarget i?86-*-*] || [istarget x86_64-*-*] > -|| (([istarget powerpc*-*-*] > - && ![istarget powerpc-*-linux*paired*]) > - && [check_effective_target_ilp32]) > +|| ([istarget powerpc*-*-*] > + && [check_effective_target_powerpc_vsx_ok] > + && [check_effective_target_has_arch_pwr10]) > || [is-effective-target arm_neon] > || ([istarget sparc*-*-*] && [check_effective_target_ilp32]) > || [istarget aarch64*-*-*] > -- > 2.39.1 diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp index 9fc5aae166d..52a2aec9982 100644 --- a/gcc/testsuite/lib/target-supports.exp +++ b/gcc/testsuite/lib/target-supports.exp @@ -9086,8 +9086,9 @@ proc check_effective_target_vect_int_mult { } { proc check_effective_target_vect_long_mult { } { if { [istarget i?86-*-*] || [istarget x86_64-*-*] || ([istarget powerpc*-*-*] - && [check_effective_target_powerpc_vsx_ok] - && [check_effective_target_has_arch_pwr10]) + && ([check_effective_target_ilp32] + || ([check_effective_target_powerpc_vsx_ok] + && [check_effective_target_has_arch_pwr10]))) || [is-effective-target arm_neon] || ([istarget sparc*-*-*] && [check_effective_target_ilp32]) || ([istarget aarch64*-*-*]