https://gcc.gnu.org/g:ee34ccae9b8a6e949864093fb952eb241a7464ea
commit ee34ccae9b8a6e949864093fb952eb241a7464ea Author: Alexandre Oliva <ol...@adacore.com> Date: Thu Apr 10 16:47:28 2025 -0300 [testsuite] [ppc] require float128 available for copysign The rs6000.md copysign<mode>3 expander requires the mode to satisfy FLOAT128_IEEE_P, so requiring float128 on ppc for ifn_copysign effective target is hopefully a close-enough approximation. gcc.dg/fold-copysign-1.c and gcc.dg/pr55152-2.c fail on ppc-elf without this. for gcc/testsuite/ChangeLog * lib/target-supports.exp (check_effective_target_ifn_copysign): Require float128 on ppc. Diff: --- gcc/testsuite/lib/target-supports.exp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp index ee4138aa6971..1c64472bbc24 100644 --- a/gcc/testsuite/lib/target-supports.exp +++ b/gcc/testsuite/lib/target-supports.exp @@ -8379,7 +8379,8 @@ proc check_effective_target_ifn_copysign { } { && [is-effective-target sse]) || ([istarget loongarch*-*-*] && [check_effective_target_hard_float]) - || [istarget powerpc*-*-*] + || ([istarget powerpc*-*-*] + && [check_ppc_float128_sw_available]) || [istarget alpha*-*-*] || [istarget aarch64*-*-*] || [is-effective-target arm_neon]