Variadic Function Support for the Windows ARM64 ABI

Maurizio Cimadamore maurizio.cimadamore at oracle.com
Wed Oct 5 10:05:10 UTC 2022


Hi,
Windows on ARM is not currently supported, although it shouldn't be too 
hard to add another variant of ARM CallArranger in the API which does 
the "right" thing for Windows. (I believe the core support is the same 
across Linux, MacOs and Windows, but there are differences how variadic 
calls are handled).

If you have a PR which adds support for that platform, we'd be happy to 
take a look.

Thanks
Maurizio

On 05/10/2022 03:30, Saint Wesonga wrote:
>
> Hello,
>
> In our testing of the Foreign Function and Memory API (Preview) on 
> Windows on ARM64, we discovered that it does not correctly support 
> variadic functions as required by the Windows ABI. More specifically, 
> floating point values to variadic functions need to be passed in 
> general purpose registers on Windows for ARM64 as per 
> https://learn.microsoft.com/en-us/cpp/build/arm64-windows-abi-conventions?view=msvc-170#addendum-variadic-functions. 
> I would like to contribute a patch addressing this gap in the API. 
> Would a PR into https://github.com/openjdk/panama-foreign be the 
> appropriate way to do so?
>
> Thanks,
>
> -Saint Wesonga
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.org/pipermail/panama-dev/attachments/20221005/b3dabeba/attachment.htm>


More information about the panama-dev mailing list