This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
Re: Why Just even registers get saved during registerwindows under/over flow in Sparc? Thanks.
- From: Gary Thomas <gthomas at ecoscentric dot com>
- To: Qiang Huang <jameshq at liverpool dot ac dot uk>
- Cc: "Ecos-Discuss (E-mail)" <ecos-discuss at sources dot redhat dot com>
- Date: 13 Aug 2002 07:14:51 -0600
- Subject: Re: [ECOS] Why Just even registers get saved during registerwindows under/over flow in Sparc? Thanks.
- References: <000a01c242c4$7012d1e0$1072fd8a@robots.eeng.liv.ac.uk>
On Tue, 2002-08-13 at 06:24, Qiang Huang wrote:
> Hi all:
> In the overflow/underflow handler in Sparc why just a single register
> window(Isn't that all the register windows get saved to stack?) get saved
> and why just even register get saved? Thanks a lot.
A Nick indicated yesterday, the entire window set is saved
when a thread switch occurs. Other than that, it makes sense
to only bother with a single window when an under/overflow
happens.
As for "even registers only"; look more closely. The registers
are being saved as even/odd register pairs. For example, the
instruction (std %l0,[%sp+0]) saves registers %l0 and %l1 in
a single instruction. Much faster.
--
------------------------------------------------------------
Gary Thomas |
eCosCentric, Ltd. |
+1 (970) 229-1963 | eCos & RedBoot experts
gthomas@ecoscentric.com |
http://www.ecoscentric.com/ |
------------------------------------------------------------
--
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss