RFR: 8287071: Loom: Cleanup x86_64 gen_continuation_enter [v5]

Vladimir Kozlov kvn at openjdk.java.net
Mon Jun 6 20:55:37 UTC 2022


On Mon, 6 Jun 2022 14:30:42 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:

>> During x86_32 porting, I ended up rewriting the copy of x86_64 gen_continuation_enter significantly to make it more streamlined. The original x86_64 gen_continuation_enter should enjoy the similar streamlining, since it would likely to be the template for many other architectures.
>> 
>> There might be more things to do, I would not know until x86_32 fully works. I am pretty sure current thing is self-sufficient.
>> 
>> Brief tour of changes:
>>  - Check the incoming registers explicitly
>>  - Pass explicit argument registers to `fill_continuation_entry`
>>  - Use the usual `NativeCall` alignment code to produce a patchable call
>>  - Check that static stub is emitted, fail hard otherwise
>>  - Handle register shuffling for `exception_handler_for_return_address` the similar way we do it in `StubGenerator`
>> 
>> Additional testing:
>>  - [x] Linux x86_64 fastdebug, prospective `jdk_loom hotspot_loom`
>
> Aleksey Shipilev has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Review feedback

I will look on it today.

Looks good. Do you plan similar change for Aarch64 code?

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

PR: https://git.openjdk.java.net/jdk/pull/8802Marked as reviewed by kvn (Reviewer).


More information about the hotspot-dev mailing list