https://gcc.gnu.org/g:b40c8c90da105a4628907dccecf571db059d86f3
commit b40c8c90da105a4628907dccecf571db059d86f3 Author: Alexandre Oliva <ol...@adacore.com> Date: Sun Apr 21 17:24:28 2024 -0300 ppc: testsuite: pr79004 needs -mlong-double-128 Some of the asm opcodes expected by pr79004 depend on -mlong-double-128 to be output. E.g., without this flag, the conditions of patterns @extenddf<mode>2 and extendsf<mode>2 do not hold, and so GCC resorts to libcalls instead of even trying rs6000_expand_float128_convert. Perhaps the conditions are too strict, and they could enable the use of conversion insns involving __ieee128/_Float128 even with 64-bit long doubles. Alas, for now, we need this flag for the test to pass on target variants that use 64-bit long doubles. for gcc/testsuite/ChangeLog PR target/105359 * gcc.target/powerpr/pr79004.c: Add -mlong-double-128 as a temporary workaround. Diff: --- gcc/testsuite/gcc.target/powerpc/pr79004.c | 1 + 1 file changed, 1 insertion(+) diff --git a/gcc/testsuite/gcc.target/powerpc/pr79004.c b/gcc/testsuite/gcc.target/powerpc/pr79004.c index caf1f6c1eef..83f20ca2243 100644 --- a/gcc/testsuite/gcc.target/powerpc/pr79004.c +++ b/gcc/testsuite/gcc.target/powerpc/pr79004.c @@ -1,6 +1,7 @@ /* { dg-do compile { target { powerpc*-*-* && lp64 } } } */ /* { dg-require-effective-target powerpc_vsx_ok } */ /* { dg-options "-mdejagnu-cpu=power9 -mvsx -O2 -mfloat128" } */ +/* { dg-additional-options "-mlong-double-128" } */ #include <math.h>