From 3ccbc6d4d014fb1ea92c47d270efd5f7ec05b0c3 Mon Sep 17 00:00:00 2001 From: Yudi Zheng Date: Wed, 17 Apr 2024 09:08:50 +0000 Subject: [PATCH] 8330280: SharedRuntime::get_resolved_entry should not return c2i entry if the callee is special native intrinsic Reviewed-by: pchilanomate, dlong --- src/hotspot/share/runtime/sharedRuntime.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/hotspot/share/runtime/sharedRuntime.cpp b/src/hotspot/share/runtime/sharedRuntime.cpp index 3eb4c45ed1b..299f1900906 100644 --- a/src/hotspot/share/runtime/sharedRuntime.cpp +++ b/src/hotspot/share/runtime/sharedRuntime.cpp @@ -1489,7 +1489,7 @@ JRT_END // return verified_code_entry if interp_only_mode is not set for the current thread; // otherwise return c2i entry. address SharedRuntime::get_resolved_entry(JavaThread* current, methodHandle callee_method) { - if (current->is_interp_only_mode()) { + if (current->is_interp_only_mode() && !callee_method->is_special_native_intrinsic()) { // In interp_only_mode we need to go to the interpreted entry // The c2i won't patch in this mode -- see fixup_callers_callsite return callee_method->get_c2i_entry();