RFR(7u) 8046233: VerifyError on backward branch
Coleen Phillimore
coleen.phillimore at oracle.com
Fri Aug 29 15:23:42 UTC 2014
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