https://gcc.gnu.org/bugzilla/show_bug.cgi?id=127793
Bug ID: 127793
Summary: Relax _Float128 requirements from VSX to altivec on
PowerPC
Product: gcc
Version: 17.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c
Assignee: unassigned at gcc dot gnu.org
Reporter: tg at trevorgross dot com
Target Milestone: ---
Use of _Float128 is currently rejected without -mvsx. However, the registers
needed to pass and return it are present with -maltivec, so this can be
relaxed. Previously discussed at [1] but I don't believe it was tracked
anywhere.
Demo showing 128-bit vector use but rejecting _Float128
https://gcc.godbolt.org/z/hxTPrEe39.
It doesn't look like there was any specific reason for requiring VSX mentioned
when _Float128 was added ([2]), perhaps this was just because VSX is needed for
the hardware instructions.
[1]:
https://inbox.sourceware.org/fortran/alpine.deb.2.22.394.2110061658410.3641...@digraph.polyomino.org.uk/
[2]:
https://inbox.sourceware.org/gcc-patches/[email protected]/T/#u