RFR: 8231269: CompileTask::is_unloaded is slow due to JNIHandles type checks [v22]

Aleksey Shipilev shade at openjdk.org
Thu Jul 10 13:02:09 UTC 2025


On Wed, 9 Jul 2025 19:26:41 GMT, Kim Barrett <kbarrett at openjdk.org> wrote:

>> Aleksey Shipilev has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 37 commits:
>> 
>>  - Merge branch 'master' into JDK-8231269-compile-task-weaks
>>  - Merge branch 'master' into JDK-8231269-compile-task-weaks
>>  - Switch to mutable
>>  - Merge branch 'master' into JDK-8231269-compile-task-weaks
>>  - More touchups
>>  - Spin lock induces false sharing
>>  - Merge branch 'master' into JDK-8231269-compile-task-weaks
>>  - Merge branch 'master' into JDK-8231269-compile-task-weaks
>>  - Rename CompilerTask::is_unloaded back to avoid losing comment context
>>  - Simplify select_for_compilation
>>  - ... and 27 more: https://git.openjdk.org/jdk/compare/a41d3507...d5a8a27d
>
> src/hotspot/share/oops/unloadableMethodHandle.hpp line 81:
> 
>> 79:   friend class VMStructs;
>> 80: private:
>> 81:   enum State {
> 
> Not really a review, just a drive-by comment.
> I think the only argument against using an enum class here is the lack of C++20's "using enums"
> feature: https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2019/p1099r5.html
> Personally I'd prefer to just make it an enum class and scope the references. YMMV.
> 
> Also, someday we should try to come to some consensus about the naming of constants.

I don't mind converting this to enum class, done in new commit.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/24018#discussion_r2197669086


More information about the hotspot-compiler-dev mailing list