[7u-dev] Request for approval 8046233: VerifyError on backward branch

Seán Coffey sean.coffey at oracle.com
Thu Sep 4 13:19:36 UTC 2014


Thanks for following up Harold. Good to have the detail also.

Approved.

regards,
Sean.

On 04/09/2014 14:14, harold seigel wrote:
> Hi,
>
> Please approve this small fix for bug 8046233 for JDK7u-dev.
>
> Section 4.10.2.4 
> <http://docs.oracle.com/javase/specs/jvms/se7/html/jvms-4.html#jvms-4.10.2.4> 
> of the JVM-7 Spec says:
>
>    A valid instruction sequence must not have an uninitialized object
>    on the operand stack or in a local variable at the target of a
>    backwards branch if the special type of the uninitialized object is
>    merged with a special type other than itself ...
>
> Currently, the split verifier does not allow any backward branches 
> into a block containing an uninitialized object.  This fix allows such 
> backward branches if the originating block contains an uninitialized 
> object of the same special type.
>
> Bug: https://bugs.openjdk.java.net/browse/JDK-8046233
> Open webrev: http://cr.openjdk.java.net/~hseigel/bug_8046233_7/
> Review thread: 
> https://www.mail-archive.com/jdk7u-dev@openjdk.java.net/msg09346.html
>
> The fix was tested with the JCK lang, vm, and api/java_lang tests, the 
> JTREG hotspot tests, and tests that reproduced the problem. With this 
> fix, the tests that reproduce the problem get the same result with 
> both the old and the split verifier.
>
> This bug has already been fixed in JDK-8u and JDK-9.  But, a straight 
> back-port to JDK-7u could not be done because the JVM-8 Spec differs 
> from the JVM-7 Spec for this case.
>
> Thanks, Harold



More information about the jdk7u-dev mailing list