[11] RFR jck test fails with C2: vm/jvmti/FollowReferences/fref001/fref00113/fref00113.html

Paul Sandoz paul.sandoz at oracle.com
Mon Jul 2 17:39:10 UTC 2018


Hi,

Please review this fix for 11:

  http://cr.openjdk.java.net/~psandoz/jdk/JDK-8202769-ci-stream-cp-tag/webrev/

This is a regression introduced by constant dynamic that causes a JCK test to fail when using "-Xcomp -XX:-TieredCompilation”.

The problem is due to a lossy mapping between a constant tag and basic type.

A constant tag of say JVM_CONSTANT_Class is mapped to a basic type of T_OBJECT. T_OBJECT is mapped to a constant tag of JVM_CONSTANT_String. So the round trip is lossy, and this for some reasons results in the JVMTI test failure under certain conditions. This also includes mapping JVM_CONSTANT_UnresolvedClass to T_OBJECT, which might be the source of the problem. 

I verified all the JCK JVMTI tests pass with "-Xcomp -XX:-TieredCompilation”.

I am not familiar with the interactions between JVMTI,  -Xcomp, and C2. So i don’t fully understand why the failure occurred under certain conditions and not others.

Thanks,
Paul.


More information about the hotspot-dev mailing list