Harold,

Code fix looks good. 

If you haven't already checked this in - would you mind renaming 
"has_unique_new_object" to
something like "has_nonmatching_uninit_object" or "has_nonmatching_new_object"? 
If that makes sense
to you.

thanks,
Karen

On Aug 22, 2014, at 10:47 AM, harold seigel wrote:

> Hi,
> 
> Please review this small fix for bug 8046233 for JDK-7u.
> 
> 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/
> 
> 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

Reply via email to