RFR 8214689 [lworld][c1] aaload cannot handle unloaded class

Tobias Hartmann tobias.hartmann at oracle.com
Tue Dec 11 10:17:33 UTC 2018

Hi Ioi,

On 11.12.18 06:34, Ioi Lam wrote:
> http://cr.openjdk.java.net/~iklam/valhalla/8214898-c1-aaload-on-unloaded-class.v01/

Looks good to me!

I would set a default false value for the "is_value_type" argument of get_unloaded_klass() so you
don't have to explicitly pass "false" at all these places.

> My next step is to fix https://bugs.openjdk.java.net/browse/JDK-8215201, so we can actually
> recompile on deoptimization.

I think we can just go with Action_make_not_entrant for now. It will invalidate the code and
recompile if the method is still hot. Long term, we need a better solution anyway (probably a
runtime call) because C1 code is likely to see unloaded classes and frequent deopts are just too
expensive. Also, most likely array covariance will come back and we then need a way to handle the
Object array access case (flattened value type arrays may "hide" as Object arrays).

Best regards,

More information about the valhalla-dev mailing list