RFR: 8248238: Implementation of JEP: Windows AArch64 Support [v10]

Bernhard Urban-Forster burban at openjdk.java.net
Mon Sep 28 19:12:24 UTC 2020


On Mon, 28 Sep 2020 17:37:32 GMT, Vladimir Kempik <vkempik at openjdk.org> wrote:

>> Monica Beckwith has updated the pull request with a new target base due to a merge or a rebase. The pull request now
>> contains 24 commits:
>>  - Merge remote-tracking branch 'upstream/master' into jdk-windows
>>  - SA: update copyright
>>  - Fix graal codestyle
>>  - Reduce includes
>>  - Merge remote-tracking branch 'upstream/master' into jdk-windows
>>  - os_windows: remove duplicated UMA handling
>>  - test_safefetch{32,N} works fine on win+aarch64
>>  - cleanup for 8253539: Remove unused JavaThread functions for set_last_Java_fp/pc
>>  - cleanup for 8253457: Remove unimplemented register stack functions
>>  - Merge remote-tracking branch 'upstream/master' into jdk-windows
>>  - ... and 14 more: https://git.openjdk.java.net/jdk/compare/ec9bee68...a7cdaad6
>
> src/hotspot/cpu/aarch64/register_aarch64.cpp line 44:
> 
>> 42:     "rscratch1", "rscratch2",
>> 43:     "r10", "r11", "r12", "r13", "r14", "r15", "r16",
>> 44:     "r17", NOT_R18_RESERVED("r18") WIN64_ONLY("rtls"), "r19",
> 
> For me this line doesn't look good in case of expanding this functionality to macos-aarch64
> as it's just the name of register and it's r18 on every platform except WIN64 and has nothing to do with reserving r18.

The idea is that the naming should suggest that `r18` shouldn't be used on that particular platform. Same is true for
macOS, but the ABI docs suggest a different usage, hence we have something like that in our internal branch for macOS:
Suggestion:

    "r17", NOT_R18_RESERVED("r18") WIN64_ONLY("rtls") MACOS_ONLY("rplatform"), "r19",
Are you suggesting it should rather be something like this eventually?
Suggestion:

    "r17", LINUX_ONLY("r18") WIN64_ONLY("rtls") MACOS_ONLY("rplatform"), "r19",

-------------

PR: https://git.openjdk.java.net/jdk/pull/212


More information about the core-libs-dev mailing list