Request for reviews (XL): 6829193: JSR 292 needs to support SPARC
Christian.Thalinger at Sun.COM
Wed Apr 21 11:46:02 PDT 2010
On Wed, 2010-04-21 at 00:51 -0700, John Rose wrote:
> Finishing up with methodHandles_sparc:
> case _raise_exception: I don't think you should change Lesp for this.
> There's no way the GC can do anything with the new words pointed at by
> Lesp, so it's risky. Is there some layer of software that wants Lesp
> and Gargs to change in concert?
Not that I know of. I remove the Lesp adjustment.
> case _bound_ref_mh: "FIXME Is this required on SPARC"
> Yes, longs and doubles have to be split across two stack slots in
> ILP32. On sparc it's tricky because the stack slot pair is not
> aligned enough for a plain STX/LDX. In LP64, the second stack slot is
> pure garbage. So on ILP32, you have to shift the high 32 bits of
> O1_scratch down, then store them where they belong (which is the
> lower-addresses stack slot, IIRC). I suppose the st_long macro will
> help with that.
I think using st_long/st_ptr should do the trick.
> The "ld" operations should be explicitly marked as "ldsw" or "lduw",
> especially for _adapter_opt_i2l.
Here is the new webrev:
More information about the hotspot-compiler-dev