RFR: 8321509: False positive in get_trampoline fast path causes crash [v2]
Vladimir Kozlov
kvn at openjdk.org
Tue Jun 25 16:21:18 UTC 2024
On Tue, 25 Jun 2024 06:52:24 GMT, Dean Long <dlong at openjdk.org> wrote:
>> 8321509: False positive in get_trampoline fast path causes crash
>
> Dean Long has updated the pull request incrementally with one additional commit since the last revision:
>
> rename to USE_TRAMPOLINE_STUB_FIX_OWNER
src/hotspot/cpu/aarch64/nativeInst_aarch64.cpp line 58:
> 56: if (destination == addr) {
> 57: return destination;
> 58: }
This needs comment.
src/hotspot/cpu/aarch64/nativeInst_aarch64.cpp line 110:
> 108: CodeBlob *code = CodeCache::find_blob(call_addr);
> 109: assert(code != nullptr, "Could not find the containing code blob");
> 110: if (!code->is_nmethod()) return nullptr;
Is it because trampolines are not used by not nmethods? Should we have an assert here about that?
src/hotspot/cpu/aarch64/nativeInst_aarch64.cpp line 113:
> 111: nmethod* nm = code->as_nmethod();
> 112:
> 113: address bl_destination = instruction_address() + displacement();
Can you use `call_addr + displacement()` here?
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/19796#discussion_r1653082743
PR Review Comment: https://git.openjdk.org/jdk/pull/19796#discussion_r1653134361
PR Review Comment: https://git.openjdk.org/jdk/pull/19796#discussion_r1653086663
More information about the hotspot-compiler-dev
mailing list