Review Request: JDK-8185148: [MVT] Class.java's isValueClass causes all non-MVT enabled JVM executions to have an InstanceKlass created for __Value reference
mandy.chung at oracle.com
Fri Jul 28 04:56:45 UTC 2017
A class referencing java.lang.__Value would fail verification when value type is not enabled. Class::isValueType and MinimalValueTypes_1_0::getValueType both references java.lang.__Value but they may be loaded when value type is not enabled. VerifyError that Tobias has ran into  is related to this issue.
A simple fix is to refactor the reference to java.lang.__Value in a separate class that will only be loaded when -XX:+EnableMVT and —XX:+EnableValhalla is set. We may look into a cleaner fix in the future.
More information about the valhalla-dev