RFR: 8367719: Refactor JNI code that uses class_to_verify_considering_redefinition() [v2]

Serguei Spitsyn sspitsyn at openjdk.org
Sat Sep 20 05:58:19 UTC 2025


On Fri, 19 Sep 2025 03:06:42 GMT, Ioi Lam <iklam at openjdk.org> wrote:

>> Simplify the boilerplate code in jvm.cpp that calls `JvmtiThreadState::class_to_verify_considering_redefinition()`, and reduce the number of `InstanceKlass::cast()` calls.
>> 
>> I also changed a few fields/arguments from `Klass*` to `InstanceKlass*` as these are used exclusively with `InstanceKlass*`.
>
> Ioi Lam has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains three additional commits since the last revision:
> 
>  - @coleenp and @dholmes-ora comments -- simplify implementation; fixed code formatting
>  - Merge branch 'master' into 8367719-refactor-jni-code-that-uses-class_to_verify_considering_redefinition
>  - 8367719: Refactor JNI code that uses class_to_verify_considering_redefinition()

Nice refactoring! Looks good.

src/hotspot/share/prims/jvm.cpp line 2259:

> 2257: //   get_klass_considering_redefinition(), or
> 2258: //   get_instance_klass_considering_redefinition()
> 2259: // These function return JvmtiThreadState::_scratch_class if the verifier

Nit: Replaces: `These function` => `These functions`

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

Marked as reviewed by sspitsyn (Reviewer).

PR Review: https://git.openjdk.org/jdk/pull/27303#pullrequestreview-3248533772
PR Review Comment: https://git.openjdk.org/jdk/pull/27303#discussion_r2365340212


More information about the serviceability-dev mailing list