Mac OS X i486 ABI -- 16-byte stack alignment
steve goldman
Steve.Goldman at Sun.COM
Fri Nov 9 08:03:15 PST 2007
Paul Hohensee wrote:
> You're right about x64. My bad.
>
> Another possibility is to adopt the sparc paradigm whereby the max size
> java expression stack is allocated in the top interpreter frame and cut
> back
> on calls. You can maintain 16-byte stack alignment at all times in the
> interpreter
> that way, which would allow you to properly align the stack at call
> sites before
> you push arguments onto the stack, rather than in the call_VM wrappers.
>
Ack. This would be exceedingly painful on 32bit because sp takes on the
role of SP and Lesp from sparc. It's not like 32bit has any spare
registers laying around to become the equivalent of Lesp. Now if you
were using the c++ based interpreter that would be another story. :-)
(BTW sparc doesn't cut back the stack on interpreter calls except when
using the c++ interpreter. sparc is an interpreter stack space hog.)
--
Steve
More information about the hotspot-dev
mailing list