Integrated: 8275586: Zero: Simplify interpreter initialization

Aleksey Shipilev shade at openjdk.java.net
Thu Nov 4 10:26:18 UTC 2021


On Wed, 20 Oct 2021 07:44:36 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:

> The prolog in `BytecodeInterpreter` is hairy due to early initialization of interpreter statics. Previous rewrites make it mostly redundant, and we can now simplify it.
> 
> This also implicitly fixes a initialization bug. If `JvmtiExport::can_post_interpreter_events()` changes at runtime, we will call into the uninitialized version:
> 
> 
>     // Call the interpreter
>     if (JvmtiExport::can_post_interpreter_events()) {
>       BytecodeInterpreter::run<true>(istate);
>     } else {
>       BytecodeInterpreter::run<false>(istate);
>     } 
> 
> 
> Additional testing:
>  - [x] Linux x86_64 fastdebug `make bootcycle-images`

This pull request has now been integrated.

Changeset: 3613ce7c
Author:    Aleksey Shipilev <shade at openjdk.org>
URL:       https://git.openjdk.java.net/jdk/commit/3613ce7c7d5bc8b7d603e1cf6a123588339aed3f
Stats:     70 lines in 3 files changed: 7 ins; 48 del; 15 mod

8275586: Zero: Simplify interpreter initialization

Reviewed-by: aph, adinn

-------------

PR: https://git.openjdk.java.net/jdk/pull/6029


More information about the hotspot-dev mailing list