Re: want to clarify powerpc assembly conventions in head.S and entry.S

From: Chris Friesen
Date: Sun Apr 11 2004 - 00:44:36 EST



Benjamin Herrenschmidt wrote:
On Sat, 2004-04-10 at 17:41, Chris Friesen wrote:

According to the docs I read, r0 and r3-12 are caller-saves. They seem
to be saved in EXCEPTION_PROLOG_2 (head.S) and restored in
ret_from_except() (entry.S). Thus, if I add code in entry.S I should be
able to use any of those registers, without having to worry about
restoring them myself--correct?

Yes. For interrupts or faults that's right. Syscalls are a bit special
though.

You knew this was coming... What's special about syscalls? There's the
r3 thing, but other than that...

Thanks for your help with this stuff. As I've been slowly wrapping my
head around it I've been continuously wishing for some kind of design
rules document describing the various paths through the assembly code,
along with register conventions and such. I eventually did find the
conventions linked off the penguinppc website, but it was not obvious
from just reading the code or the ppc stuff in the Documentation directory.

Chris

** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/