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

Vladimir Kozlov vladimir.kozlov at oracle.com
Mon May 9 18:52:35 PDT 2011


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