[PATCH] PPC enable Altivec for setjmp/longjmp part 1 of 5

Steve Munroe sjmunroe@us.ibm.com
Mon Jan 19 21:20:00 GMT 2004


These patches provide the setjmp/longjmp support to save/restore the 
non-volitile vector registers per the ABI. This is a bit more 
complicated then the *context functions because there are 3 layers, 2 of 
which involve arch independent libc/nplt/linuxthreads code.

Linuxthreads/nplt override longjmp/siglongjmp which call 
__libc_longjmp/__libc_siglongjmp. __libc_longjmp is strong alias for 
__libc_siglongjmp which saves the sigprocmask into sigjmp_buf before 
calling the arch dependent __longjmp. The problem is that the 
__saved_mask follows the jmp_buf within the sigjmp_buf. As the size of 
jmp_buf is changing we need to support two verions (old/new) if the 
sigjmp_buf which implies we need to version all three layers of the 
longjmp/setjmp function stack.

The following patch provides the PPC specific version code for 
longjmp.c, setjmp.c, sigjmp.c, plus novmx versions of the setjmp.h and 
longjmp.c, setjmp.c, sigjmp.c.
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: ppcvmx-setjmp-20040116.txt
URL: <http://sourceware.org/pipermail/libc-alpha/attachments/20040119/b71a531a/attachment.txt>


More information about the Libc-alpha mailing list