[clang] [llvm] [PowerPC] Enable _Float16 (PR #208542)
Tony Varghese via cfe-commits
cfe-commits at lists.llvm.org
Tue Jul 21 07:21:45 PDT 2026
tonykuttai wrote:
#196559 implements `_Float16` for PowerPC with FPR-based argument passing on Power8 and later.
Enabling `_Float16` through the soft-promotion path also silently defines its calling convention, half is passed as `i16` in GPRs. The ELFv2 psABI currently has no definition for `_Float16` at all, and no released compiler supports the type on Linux on Power, so whichever change merges first effectively creates the de-facto ABI.
On the IBM side, we are working with the GCC team to define the `_Float16` and `bfloat16` ABI for PowerPC. GCC's in-flight implementation ([Michael Meissner's gcc-patches series, Nov 2025](https://www.mail-archive.com/gcc-patches@gcc.gnu.org/msg388214.html)) passes scalar `_Float16` in FPRs in the native 16-bit format and explicitly marks the convention experimental (-Wpsabi) pending that definition. #196559 implements the same FPR convention and we plan to revisit and finalize it once the ABI definition is in place.
This applies to your other patch #208598 as well.
https://github.com/llvm/llvm-project/pull/208542
More information about the cfe-commits
mailing list