[Bug target/99708] New: __SIZEOF_FLOAT128__ not defined on powerpc64le-linux

jakub at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Mon Mar 22 09:56:19 GMT 2021


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99708

            Bug ID: 99708
           Summary: __SIZEOF_FLOAT128__ not defined on powerpc64le-linux
           Product: gcc
           Version: 11.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: jakub at gcc dot gnu.org
  Target Milestone: ---

For consistency with other targets, I think the rs6000 backend should predefine
__SIZEOF_FLOAT128__ 16
__SIZEOF_IBM128__ 16
__SIZEOF_IEEE128__ 16
macros (each of them whenever __float128, __ibm128 or __ieee128 can be used
given the current ABI and ISA options etc.).
E.g. i386 backend has in i386-c.c

  cpp_define_formatted (parse_in, "__SIZEOF_FLOAT80__=%d",
                        GET_MODE_SIZE (XFmode));

  cpp_define (parse_in, "__SIZEOF_FLOAT128__=16");

Seems rs6000 predefines __FLOAT128__ macro instead when __float128 can be used
and  __FLOAT128_TYPE__ when __ibm128 and __ieee128 can be used.


More information about the Gcc-bugs mailing list