RFR: JDK-8294947: Use 64bit atomics in patch_verified_entry on x86_64
Vladimir Ivanov
vlivanov at openjdk.org
Sat Nov 12 00:42:40 UTC 2022
On Wed, 9 Nov 2022 12:41:59 GMT, Dmitry Samersoff <dsamersoff at openjdk.org> wrote:
> In the void NativeJump::patch_verified_entry() we atomically patch first 4 bytes, then atomically patch 5th byte, then atomically patch first 4 bytes again. But from CMC (cross-modified code) point of view it's better to patch atomically 8 bytes at once.
>
> The patch was tested with hotspot jtreg tests in bare-metal and virtualized environments.
src/hotspot/cpu/x86/nativeInst_x86.cpp line 513:
> 511: void NativeJump::patch_verified_entry(address entry, address verified_entry, address dest) {
> 512: // complete jump instruction (to be inserted) is in code_buffer;
> 513: #ifdef AMD64
Just a minor suggestion: `_LP64` is more appropriate here since it's x86-specific file.
-------------
PR: https://git.openjdk.org/jdk/pull/11059
More information about the hotspot-compiler-dev
mailing list