This is the mail archive of the
libc-alpha@sources.redhat.com
mailing list for the glibc project.
Re: PPC32 and state of the project
- From: "Steve Munroe" <sjmunroe at us dot ibm dot com>
- To: Ulrich Drepper <drepper at redhat dot com>, "Kevin.Hendricks" <kevin dot hendricks at sympatico dot ca>
- Cc: Franz Sirl <Franz dot Sirl-kernel at lauterbach dot com>, GNU libc devel <libc-alpha at sources dot redhat dot com>
- Date: Mon, 6 Jan 2003 13:04:07 -0600
- Subject: Re: PPC32 and state of the project
Ulrich Drepper writes:
> Kevin.Hendricks wrote:
>
> > Why not save the thread id register when doing a setjmp/longjmp pair?
> > It should never change across a setjmp, longjmp pair should it?
>
> Correct. A thread is a thread. If you use longjmp or swapcontext
> mustn't change this. Whatever is used as the thread register, it must
> always be preserved.
Just to clarify. __longjmp and setcontext/swapcontext should not change the
thread register. (i.e. preserved as in not touched)?
At least this matches the implementation of sysdeps/i386/__longjmp.S and
sysdeps/powerpc/powerpc64/__longjmp.S. However
sysdeps/powerpc/powerpc32/__longjmp.S does restore r2 so that needs to
change.