Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 11 Mar 2002 09:15:40 -0500 (EST)
From:      Andrew Gallatin <gallatin@cs.duke.edu>
To:        Daniel Eischen <eischen@vigrid.com>
Cc:        alpha@FreeBSD.ORG
Subject:   Re: Tester needed
Message-ID:  <15500.48140.478588.518164@grasshopper.cs.duke.edu>
In-Reply-To: <20020311115217.GI4295@cicely8.cicely.de>
References:  <3C631A1B.68E59BFE@vigrid.com> <20020311115217.GI4295@cicely8.cicely.de>

next in thread | previous in thread | raw e-mail | index | archive | help


 > >   +#if 1
 > >   +	mcp->mc_regs[FRAME_SP] = alpha_pal_rdusp();
 > >   +#else
 > >   +	mcp->mc_regs[FRAME_SP] = td->td_pcb->pcb_hw.apcb_usp;
 > >   +#endif
 > >   [...]
 > > 
 > > And what if 'td' is not 'curthread'?  Has it been saved in the
 > > PCB then?  Should the above be:
 > > 
 > >   +	if (td == curthread)
 > >   +		mcp->mc_regs[FRAME_SP] = alpha_pal_rdusp();
 > >   +	else
 > >   +		mcp->mc_regs[FRAME_SP] = td->td_pcb->pcb_hw.apcb_usp;
 > 

I'm pretty sure that the rdusp() will read the user stack pointer for
the current execution context from the PALcode.  So if
td->td_pcb->pcb_hw.apcb_usp is valid for the context in question, then
the above sounds reasonable.

Drew

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-alpha" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?15500.48140.478588.518164>