RFR(L) 8223320: [AOT] jck test api/javax_script/ScriptEngine/PutGet.html fails when test classes are AOTed
igor.veresov at oracle.com
Thu May 30 19:33:13 UTC 2019
Graal models boxing (a call to valueOf()) as a BoxNode. If scalarized, it is encoded in the debug info as an allocation of a box object. However, for certain ranges of values the box object has to come from caches. The reason is that for these values JLS guarantees the identity of the boxes.
The fix essentially propagates the information on whether the Box is a result of Box.valueOf() or new Box() to the deoptimization machinery that checks if the object is in the range that should be in a cache and gets it from there instead of allocating it.
Mach5: tier1-6, tier2-6 with Graal
Webrev: http://cr.openjdk.java.net/~iveresov/8223320/webrev.00/ <http://cr.openjdk.java.net/~iveresov/8223320/webrev.00/>
I’d like to push all this into JDK13 first and then follow up with a change to the upstream Graal.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the hotspot-compiler-dev