Apparently, On Fri, May 31, 2002 at 01:45:50PM -0700,
Julian Elischer said words to the effect of;
> On Fri, 31 May 2002, Jake Burkholder wrote:
> [aweful stuff]
> (always did dislike sparc)
Whatever. It's the most fun architecture I've found to program for.
> can you show me the sequecne of operations performed on the stack
> in a syscall before and after the jump to kernel space?
The system call stubs in libc are leaf functions; basically just a
trap instruction followed by a return. They do not touch the stack
at all, or change the stack pointer. One of the first few instructions
on entry to the kernel is a save, which rotates the register window
and logically saves the call-safe registers onto the user stack
(the outs become the ins, and the kernel gets new ins and locals,
with the old ones being saved to the user stack once a flush is
performed or they get spilled out).
Here is a reference: http://www.sparc.com/standards/v9.ps.Z
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message