RFR (S) : JDK-8007736 - VerifyError for use of static method in interface
S. Bharadwaj Yadavalli
bharadwaj.yadavalli at oracle.com
Tue Feb 12 19:44:23 PST 2013
On 2/12/2013 2:17 PM, Karen Kinnear wrote:
> Code looks good. I like this length of test too :-)
Thanks for the review, Karen.
> Please check -XX:-UseSplitVerifier to see if we also need to fix the old verifier for new
> classfiles.
I checked with -XX:-UseSplitVerifier and found that I needed to fix the
old verifier.
I updated the webrev with my changes which now need to be made to jdk
tree as well as hotspot tree.
The changes to hotspot tree remain the same as reviewed previously by
David Holmes, Krystal Mo and
Remi Forax.
Please review the jdk tree changes (to the old verifier).
Updated webrevs
hotspot-rt tree :
http://cr.openjdk.java.net/~bharadwaj/8007736/hotspot-rt/webrev
jdk8/tl/jdl tree :
http://cr.openjdk.java.net/~bharadwaj/8007736/jdk8-tl-jdk/webrev/
Bug fixed : https://jbs.oracle.com/bugs/browse/JDK-8007736
Summary of changes :
Java 8 allows public static interface methods. To accommodate
for this, the proposed change modifies bytecode verification of Java
8 classfiles to allow invokestatic to refer to static interface
methods in CONSTANT_InterfaceMethodref as well as static class
methods in CONSTANT_Methodref.
New test added :
A new jtreg test in hotspot/test/runtime is added.
Thanks,
Bharadwaj
More information about the hotspot-runtime-dev
mailing list