RFR(7u) 8046233: VerifyError on backward branch

harold seigel harold.seigel at oracle.com
Fri Aug 29 15:56:04 UTC 2014


Hi Coleen,

Thanks for the review.  I changed the name to 
"has_nonmatching_new_object", and posted a new webrev containing the 
name change: http://cr.openjdk.java.net/~hseigel/bug_8046233_7.2/

Thanks, Harold

On 8/29/2014 11:23 AM, Coleen Phillimore wrote:
>
> Harold,  This looks good.  I agree with Karen's request for a name 
> change; either of her suggestions makes sense to me.
>
> Thanks,
> Coleen
>
> On 8/27/14, 11:42 AM, harold seigel wrote:
>> Hi Karen,
>>
>> I haven't checked this in.  You're the first reviewer.
>>
>> I like  "has_nonmatching_new_object".  I'll change it to that.
>>
>> Thanks!
>> Harold
>>
>> On 8/27/2014 11:30 AM, Karen Kinnear wrote:
>>> 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
>>
>



More information about the hotspot-runtime-dev mailing list