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 18:24:39 PDT 2011


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