On Apr 14, 2022, Segher Boessenkool <seg...@kernel.crashing.org> wrote:
> Lol, the dates line up very well, I didn't realise it was from 2021 :-) Heh, indeed. Same testsuite results cleanup season, too ;-) >> The relevant fact, described in yesterday's message, is that -mfloat128 >> is not enabled by default, even with -mcpu=power9, except on target >> variants that define TARGET_FLOAT128_ENABLE_TYPE to nonzero. As you >> stated, its overall default is zero (though GNU/Linux overrides it to >> nonzero), so the existing tests do not conform with the machine's >> defaults in assuming -mfloat128 is enabled by -mcpu=power9. > First off, vxworks.h should not disable it again. Erhm... I'm not sure what the 'it' is. For abundance of clarity, we do *not* disable vsx when -mcpu=power9 is given. vsx is enabled for these tests. But neither -mcpu=power9 nor having vsx enabled are enough for the _Float128/_ieee128 type to be defined. The target-specific option that controls whether _Float128/_ieee128 is defined when VSX is enabled is TARGET_FLOAT128_ENABLE_TYPE. The only file that defines it as nonzero is rs6000/linux64.h, which backs up the comment in rs6000.cc before the statement that carries out this choice: /* Enable the default support for IEEE 128-bit floating point on [GNU/]Linux VSX sytems. [...] */ TARGET_FLOAT128_TYPE = TARGET_FLOAT128_ENABLE_TYPE && TARGET_VSX; So, if the 'it' refers to VSX, I reaffirm it's enabled as it should. But if 'it' refers to TARGET_FLOAT128_ENABLE_TYPE, then it would seem that you're saying that this is no longer a choice available to targets, and that _Float128/_ieee128 are now mandatory when VSX is available. That would be quite a departure from the current state. Now, we are looking into the possibility of enabling _Float128/_ieee128 on ppc64-vx7r2, but keep in mind it's a nonfree system, so if system libraries (or kernel) aren't up to it, that would be a blocker. So I'd prefer if both choices for TARGET_FLOAT128_ENABLE_TYPE remained available. > Then, this needs to be fixed, indeed. But that would be a code fix, not > a testsuite workaround. If you use -mcpu=power9 it should support QP > float. I guess there's room for improvement indeed, especially in light of the second patch for pr79004.c sent out ealier today, but I don't think I'd risk such changes at this stage of development of gcc-12, let alone when maintainer and implementation seem to me to disagree as to what the expected behavior is :-( -- Alexandre Oliva, happy hacker https://FSFLA.org/blogs/lxo/ Free Software Activist GNU Toolchain Engineer Disinformation flourishes because many people care deeply about injustice but very few check the facts. Ask me about <https://stallmansupport.org>