abi-aa icon indicating copy to clipboard operation
abi-aa copied to clipboard

32b support for _Float128

Open nickdesaulniers opened this issue 1 year ago • 1 comments

Currently, neither GCC or Clang support _Float128 for 32b ARM. Are there plans to support this new-for-c23 type?

cc @kbeyls

nickdesaulniers avatar Sep 27 '24 17:09 nickdesaulniers

At the moment we have no plans to support _Float128 in AArch32. I believe that suppport for this is optional in the C23 standard.

This could change if there is a good use case for it on 32-bit platforms and there is someone willing to do an implementation in the compiler and libraries.

Our expectations of the work required in the 32-bit ABI:

  • Define the representation and alignment of _Float128.
  • Define _Float128 calling convention.
  • State that support for the type in an ABI conforming toolchain is optional.
  • Define the runtime __aeabi_ functions for manipulating _Float128.
  • Handling any corner cases with Homogenous Floating Point aggregates.

Our expectation is that _Float128 usage would be more common on AArch64.

smithp35 avatar Sep 30 '24 10:09 smithp35