在 2025-9-14 08:50, Trevor Gross 写道:
For MinGW on x86-64, GCC currently passes and returns `_Float16` in
GPRs. Microsoft does not specify an ABI for the type so this is purely
an extension; however, there are a few reasons the current ABI is not
ideal:

1. `float` and `double` are both passed and returned in xmm registers
    under the MSVC ABI, there isn't any reason for `_Float16` to deviate.
2. `_Float16` is returned in xmm0 on Windows x86-32 by both GCC and
    Clang.
2. There is a platform-natural ABI with AVX512-FP16, which requires
    half-precision operands to be in vector registers.
3. System V uses vector registers for `_Float16`.


these numbers should read 1, 2, 3, 4 instead of  1, 2, 2, 3.



--
Best regards,
LIU Hao

Attachment: OpenPGP_signature.asc
Description: OpenPGP digital signature

Reply via email to