RFR: 8322630: Remove ICStubs and related safepoints [v4]
Erik Österlund
eosterlund at openjdk.org
Tue Jan 30 08:35:59 UTC 2024
On Mon, 29 Jan 2024 13:48:00 GMT, Doug Simon <dnsimon at openjdk.org> wrote:
>> Erik Österlund has updated the pull request incrementally with eight additional commits since the last revision:
>>
>> - Batch allocate and free CompiledICData
>> - JVMCI support
>> - Cleanup from FYang
>> - Axel suggestions
>> - Suggestion from Axel
>> - Use relevant global register aliases for clarity
>> - Rename register aliases: holder -> data
>> - Platform Comment Cleanup
>
> src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp line 1004:
>
>> 1002:
>> 1003: int MacroAssembler::ic_check_size() {
>> 1004: return NativeInstruction::instruction_size * 7;
>
> This can be 5 or 7 depending on `MacroAssembler::far_jump` right? If it's 5, then who inserts the extra alignment at the end of the IC check?
Good point. I sort of assumed we will always get a far jump, but maybe I'm wrong. Either way, I added a check if the target is far or not, so we can select 5 or 7 accordingly.
> src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp line 1140:
>
>> 1138: }
>> 1139:
>> 1140: void MacroAssembler::align(int modulus, int target) {
>
> It would be nice to document what this extra `align` function does.
Good idea. I wrote a comment.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/17495#discussion_r1470768117
PR Review Comment: https://git.openjdk.org/jdk/pull/17495#discussion_r1470766460
More information about the shenandoah-dev
mailing list