RFR, XS, 7120448, Fix FP values for compiled frames in frame::describe

Tom Rodriguez tom.rodriguez at oracle.com
Tue Jan 17 10:30:56 PST 2012


Looks good.

tom

On Jan 16, 2012, at 8:06 AM, Bertrand Delsart wrote:

> Here is simple review for the first of a series of fixes and
> extensions for frame::describe.
> 
> http://cr.openjdk.java.net/~bdelsart/7120448/webrev.01/webrev/
> 
> This is the first of a series of fixes and extensions for
> frame::describe.
> 
> frame::describe() was calling the platform dependent frame::fp() to
> get the frame pointer. Unfortunately, the semantic of frame::fp() is
> not clearly defined. On compiled x86 frames, the value could be
> arbitrary.  That could cause frame::describe to dump misleading
> information and useless memory slots.
> 
> Defined a new frame::real_fp() with a more precise semantic for
> portable shared code.
> 
> This is the value expected by the platform ABI when it defines a frame
> pointer register. It may differ from the effective value of the FP
> register when that register is used in the JVM for other purposes
> (like compiled frames on some platforms).  On other platforms, it is
> defined so that the stack area used by this frame goes from real_fp()
> to sp().
> 
> By default, the new definition is equivalent to the old frame::fp()
> definition. x86 is the only OpenJDK supported platform which required
> a different definition.
> 
> Bertrand.
> 
> -- 
> Bertrand Delsart,               bertrand.delsart at oracle.com,
> Sun-Oracle France, 180 av. de l'Europe, ZIRST de Montbonnot,
> 38334 Saint Ismier,                                  FRANCE



More information about the hotspot-compiler-dev mailing list