[aarch64-port-dev ] 8248238: Implementation of JEP: Windows AArch64 Support

Bernhard Urban-Forster beurba at microsoft.com
Wed Aug 26 11:52:49 UTC 2020

On 25/08/2020 11:44, Andrew Haley wrote:
> Looks OK. It would be nice if you could get rid of some of the #ifndef
> _WIN64 stuff in common code by moving queries like icache_line_size()
> into os-specific files, but you may do that later.

I agree, there are still a few opportunities to make it cleaner. I'll take care of it.

Most _WIN64 ifdefs are around the calling convention difference (r18 being used for TLS by the Windows). As it turns out the ABI on macOS reserves r18 for the OS as well [1]. So I suggested that we introduce `R18_RESERVED` which would replace the _WIN64 ifdefs. Does that sound good?


[1] https://developer.apple.com/library/archive/documentation/Xcode/Conceptual/iPhoneOSABIReference/Articles/ARM64FunctionCallingConventions.html
Yes it's the iOS ABI, but the Apple documentation points to it for macOS here: https://developer.apple.com/documentation/apple_silicon/addressing_architectural_differences_in_your_macos_code

More information about the aarch64-port-dev mailing list