Integrated: 8348203: [JVMCI] Make eager JVMCI initialization observable in the debugger
Volker Simonis
simonis at openjdk.org
Fri Jan 24 15:40:51 UTC 2025
On Tue, 21 Jan 2025 16:59:05 GMT, Volker Simonis <simonis at openjdk.org> wrote:
> I realized that I can't debug (i.e. with a Java debugger) the Graal compiler initialization if it happens eagerly (e.g. with `EagerJVMCI`, `JVMCIPrintProperties`, `JVMCILibDumpJNIConfig`). Not that this is something I need every day, but I think it can easily be fixed by moving the early initializing a little further down, right after `JvmtiExport::post_vm_initialized()`:
>
>
> diff --git a/src/hotspot/share/runtime/threads.cpp b/src/hotspot/share/runtime/threads.cpp
> index 1cab9bc5d53..191409c22e3 100644
> --- a/src/hotspot/share/runtime/threads.cpp
> +++ b/src/hotspot/share/runtime/threads.cpp
> @@ -806,12 +806,6 @@ jint Threads::create_vm(JavaVMInitArgs* args, bool* canTryAgain) {
> }
> #endif
>
> -#if INCLUDE_JVMCI
> - if (force_JVMCI_initialization) {
> - JVMCI::initialize_compiler(CHECK_JNI_ERR);
> - }
> -#endif
> -
> if (NativeHeapTrimmer::enabled()) {
> NativeHeapTrimmer::initialize();
> }
> @@ -826,6 +820,12 @@ jint Threads::create_vm(JavaVMInitArgs* args, bool* canTryAgain) {
> // Notify JVMTI agents that VM initialization is complete - nop if no agents.
> JvmtiExport::post_vm_initialized();
>
> +#if INCLUDE_JVMCI
> + if (force_JVMCI_initialization) {
> + JVMCI::initialize_compiler(CHECK_JNI_ERR);
> + }
> +#endif
> +
> JFR_ONLY(Jfr::on_create_vm_3();)
>
> #if INCLUDE_MANAGEMENT
This pull request has now been integrated.
Changeset: 76f792b5
Author: Volker Simonis <simonis at openjdk.org>
URL: https://git.openjdk.org/jdk/commit/76f792b55263faf883e54cb879d8609f87164e51
Stats: 12 lines in 1 file changed: 6 ins; 6 del; 0 mod
8348203: [JVMCI] Make eager JVMCI initialization observable in the debugger
Reviewed-by: dnsimon
-------------
PR: https://git.openjdk.org/jdk/pull/23219
More information about the compiler-dev
mailing list