review for 7043301: assert(locals < caller->fp() || locals > (caller->fp() + 16)) failed: locals in save area

Tom Rodriguez tom.rodriguez at oracle.com
Mon May 9 19:03:33 PDT 2011


Thanks!

tom

On May 9, 2011, at 6:52 PM, Vladimir Kozlov wrote:

> Thank you, Tom
> 
> Vladimir
> 
> Tom Rodriguez wrote:
>> They all run fine too.
>> tom
>> On May 9, 2011, at 4:55 PM, Vladimir Kozlov wrote:
>>> Tom,
>>> 
>>> It looks good. Could you test the fix with failed tests from last Nightly (-XX:+DeoptimizeALot)?
>>> 
>>> Thanks,
>>> Vladimir
>>> 
>>> Tom Rodriguez wrote:
>>>> http://cr.openjdk.java.net/~never/7043301
>>>> 7043301: assert(locals < caller->fp() || locals > (caller->fp() + 16)) failed: locals in save area
>>>> Reviewed-by:
>>>> During the fix for 7009361 I mistakenly simplified the
>>>> computed_sp_adjustment by replacing it with rounded_cls but one is for
>>>> the caller and the other is for the callee.  This could result in some
>>>> rare cases where the frame shrunk to be smaller than it should have
>>>> been.  The fix is to restore the original computation of this value.
>>>> Tested with failing test case.  I also corrected the frame validation
>>>> code which should have complained about this.



More information about the hotspot-compiler-dev mailing list