[jdk17u-dev] RFR: 8305959: x86: Improve itable_stub
Volker Simonis
simonis at openjdk.org
Fri Jul 5 13:48:19 UTC 2024
On Wed, 3 Jul 2024 09:56:24 GMT, Dmitry Chuyko <dchuyko at openjdk.org> wrote:
> This is a performance backport from 21. Original patch was applied mostly cleanly. Few bits required slight tuning.
>
> Straightforward replacements were made in in macroAssembler_x86.cpp because of missing JDK-8308396 refactoring (21):
> in_bytes(itableMethodEntry::method_offset()) to itableMethodEntry::method_offset_in_bytes(),
> in_bytes(itableOffsetEntry::interface_offset()) to itableOffsetEntry::interface_offset_in_bytes(),
> in_bytes(itableOffsetEntry::offset_offset()) to itableOffsetEntry::offset_offset_in_bytes().
>
> One java import hunk was manually redone in the benchmark class.
>
> Testing: linux x86 tier1,2; the benchmark shows improvements similar to original results.
Thanks for doing this downport. Looks good to me.
src/hotspot/cpu/x86/vtableStubs_x86_64.cpp line 176:
> 174:
> 175: // Most registers are in use; we'll use rax, rbx, r10, r11
> 176: // (various calling sequences use r[cd]x, r[sd]i, r[89]; stay away from them)
We forgot to add `r14` to the comment about used registers. But that was already the case in the original change, so I think it's fine too leave it as is.
-------------
Marked as reviewed by simonis (Reviewer).
PR Review: https://git.openjdk.org/jdk17u-dev/pull/2654#pullrequestreview-2160756161
PR Review Comment: https://git.openjdk.org/jdk17u-dev/pull/2654#discussion_r1666826825
More information about the jdk-updates-dev
mailing list