RFR: 8264940: java/lang/invoke/6998541/Test6998541.java failed "guarantee(ik->is_initialized()) failed: java/lang/Byte$ByteCache must be initialized" [v3]

Vladimir Kozlov kvn at openjdk.java.net
Mon Apr 12 17:59:08 UTC 2021


On Mon, 12 Apr 2021 12:10:06 GMT, Wang Huang <whuang at openjdk.org> wrote:

>> *  The main reason is that in this situation the `BoxCache` is not initialized before `uncommon_trap`.
>> *  `java.lang.Byte$ByteCache` is loaded without initializing here 
>> * I think that all `*Cache` classes should be loaded in this situation.
>
> Wang Huang has updated the pull request incrementally with one additional commit since the last revision:
> 
>   add missing header

src/hotspot/share/opto/callGenerator.cpp line 595:

> 593:   return false;
> 594: }
> 595: 

The code is correct but, please, move this new code into ciInstanceKlass (near other `box` queries). The VM queries should be done in CI.

static bool is_box_cache_valid(CallNode* call) {
  ciInstanceKlass* klass = call->as_CallStaticJava()->method()->holder();
  return klass->is_box_cache_valid();
}

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

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


More information about the hotspot-dev mailing list