summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Heim <phreak@gentoo.org>2006-05-02 15:19:29 +0000
committerChristian Heim <phreak@gentoo.org>2006-05-02 15:19:29 +0000
commit3b79c71678f600a35b21ef23933cd2b168e81c00 (patch)
tree6f4ce5fd9812e0676462ef96fa268d660fc6251a /dietlibc
parentStarting -r1 patch series for the cvs snapshot, that should fix my diet.ld.co... (diff)
downloadmisc-3b79c71678f600a35b21ef23933cd2b168e81c00.tar.gz
misc-3b79c71678f600a35b21ef23933cd2b168e81c00.tar.bz2
misc-3b79c71678f600a35b21ef23933cd2b168e81c00.zip
Bah, too fast (think before you act ..)
svn path=/; revision=353
Diffstat (limited to 'dietlibc')
-rw-r--r--dietlibc/patches/0.30_pre20060501-r1/00_all_custom-cflags.patch23
-rw-r--r--dietlibc/patches/0.30_pre20060501-r1/01_all_nostrip.patch75
-rw-r--r--dietlibc/patches/0.30_pre20060501-r1/02_all_diet-ldconf.patch13
-rw-r--r--dietlibc/patches/0.30_pre20060501-r1/03_all_ppc-rename.patch2786
-rw-r--r--dietlibc/patches/0.30_pre20060501-r1/04_all_prefix.patch10
-rw-r--r--dietlibc/patches/0.30_pre20060501-r1/05_all_diet.ld.conf.patch13
-rw-r--r--dietlibc/patches/0.30_pre20060501-r1/20_all_dirent-prototype.patch15
-rw-r--r--dietlibc/patches/0.30_pre20060501-r1/21_all_nice.patch20
-rw-r--r--dietlibc/patches/0.30_pre20060501-r1/40_sparc64_Makefile.patch13
-rw-r--r--dietlibc/patches/0.30_pre20060501-r1/41_sparc_termios.patch15
-rw-r--r--dietlibc/patches/0.30_pre20060501-r1/42_arm_waitpid.patch13
-rw-r--r--dietlibc/patches/0.30_pre20060501-r1/43_ia64_no-fno-omit-frame-pointer.patch16
-rw-r--r--dietlibc/patches/0.30_pre20060501-r1/44_ia64_proc-endp.patch58
-rw-r--r--dietlibc/patches/0.30_pre20060501-r1/45_parisc_iitlbp.patch13
-rw-r--r--dietlibc/patches/0.30_pre20060501-r1/60_all_ssp.patch239
15 files changed, 0 insertions, 3322 deletions
diff --git a/dietlibc/patches/0.30_pre20060501-r1/00_all_custom-cflags.patch b/dietlibc/patches/0.30_pre20060501-r1/00_all_custom-cflags.patch
deleted file mode 100644
index f726790..0000000
--- a/dietlibc/patches/0.30_pre20060501-r1/00_all_custom-cflags.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-Index: dietlibc-0.30_pre20060501/Makefile
-===================================================================
---- dietlibc-0.30_pre20060501.orig/Makefile
-+++ dietlibc-0.30_pre20060501/Makefile
-@@ -100,7 +100,6 @@ all: $(WHAT)
-
- profiling: $(OBJDIR)/libgmon.a $(OBJDIR)/pstart.o
-
--CFLAGS=-pipe -nostdinc
- CROSS=
-
- CC=gcc
-@@ -132,10 +131,6 @@ include $(ARCH)/Makefile.add
-
- LIBMATHOBJ=$(patsubst %,$(OBJDIR)/%,$(LIBMATH))
-
--ifeq ($(CFLAGS),-pipe -nostdinc)
--CFLAGS+=-O -fomit-frame-pointer
--endif
--
- ifneq ($(DEBUG),)
- CFLAGS = -g
- COMMENT = :
diff --git a/dietlibc/patches/0.30_pre20060501-r1/01_all_nostrip.patch b/dietlibc/patches/0.30_pre20060501-r1/01_all_nostrip.patch
deleted file mode 100644
index 6d2bc2d..0000000
--- a/dietlibc/patches/0.30_pre20060501-r1/01_all_nostrip.patch
+++ /dev/null
@@ -1,75 +0,0 @@
-Index: dietlibc-0.30_pre20060501/libpthread/Makefile
-===================================================================
---- dietlibc-0.30_pre20060501.orig/libpthread/Makefile
-+++ dietlibc-0.30_pre20060501/libpthread/Makefile
-@@ -45,7 +45,6 @@ PWD=$(shell pwd)
-
- %.o: %.c
- $(CROSS)$(CC) -I. -Iinclude $(CFLAGS) -c $<
--# $(CROSS)strip -x -R .comment -R .note $@
-
- libpthread.a: $(PTHREAD_OBJS)
- $(CROSS)ar cr $@ $^
-Index: dietlibc-0.30_pre20060501/Makefile
-===================================================================
---- dietlibc-0.30_pre20060501.orig/Makefile
-+++ dietlibc-0.30_pre20060501/Makefile
-@@ -156,7 +156,6 @@ $(OBJDIR)/%.o: %.S $(ARCH)/syscalls.h
-
- $(OBJDIR)/%.o: %.c
- tcc -I. -Iinclude -c $< -o $@
-- $(COMMENT) -$(CROSS)strip -x -R .comment -R .note $@
- else
- $(OBJDIR)/pstart.o: start.S
- $(CROSS)$(CC) $(INC) $(CFLAGS) -DPROFILING -c $< -o $@
-@@ -166,11 +165,9 @@ $(OBJDIR)/%.o: %.S $(ARCH)/syscalls.h
-
- $(OBJDIR)/pthread_%.o: libpthread/pthread_%.c
- $(CROSS)$(CC) $(INC) $(CFLAGS) -c $< -o $@
-- $(COMMENT) -$(CROSS)strip -x -R .comment -R .note $@
-
- $(OBJDIR)/%.o: %.c
- $(CROSS)$(CC) $(INC) $(CFLAGS) -c $< -o $@
-- $(COMMENT) -$(CROSS)strip -x -R .comment -R .note $@
- endif
-
- ifeq ($(shell $(CC) -v 2>&1 | grep "gcc version"),gcc version 4.0.0)
-@@ -241,18 +238,15 @@ $(PICODIR)/%.o: %.S $(ARCH)/syscalls.h
-
- $(PICODIR)/pthread_%.o: libpthread/pthread_%.c
- $(CROSS)$(CC) $(INC) $(CFLAGS) -fPIC -D__DYN_LIB -c $< -o $@
-- $(COMMENT) $(CROSS)strip -x -R .comment -R .note $@
-
- $(PICODIR)/%.o: %.c
- $(CROSS)$(CC) $(INC) $(CFLAGS) -fPIC -D__DYN_LIB -c $< -o $@
-- $(COMMENT) $(CROSS)strip -x -R .comment -R .note $@
-
- $(PICODIR)/dstart.o: start.S
- $(CROSS)$(CC) $(INC) $(CFLAGS) -fPIC -D__DYN_LIB -c $< -o $@
-
- $(PICODIR)/dyn_so_start.o: dyn_start.c
- $(CROSS)$(CC) $(INC) $(CFLAGS) -fPIC -D__DYN_LIB -D__DYN_LIB_SHARED -c $< -o $@
-- $(COMMENT) $(CROSS)strip -x -R .comment -R .note $@
-
- DYN_LIBC_PIC = $(LIBOBJ) $(LIBSTDIOOBJ) $(LIBUGLYOBJ) \
- $(LIBCRUFTOBJ) $(LIBCRYPTOBJ) $(LIBSHELLOBJ) $(LIBREGEXOBJ)
-@@ -301,19 +295,15 @@ CURNAME=$(notdir $(shell pwd))
-
- $(OBJDIR)/diet: $(OBJDIR)/start.o $(OBJDIR)/dyn_start.o diet.c $(OBJDIR)/dietlibc.a $(OBJDIR)/dyn_stop.o
- $(CROSS)$(CC) -isystem include $(CFLAGS) -nostdlib -o $@ $^ -DDIETHOME=\"$(HOME)\" -DVERSION=\"$(VERSION)\" -lgcc
-- $(CROSS)strip -R .comment -R .note $@
-
- $(OBJDIR)/diet-i: $(OBJDIR)/start.o $(OBJDIR)/dyn_start.o diet.c $(OBJDIR)/dietlibc.a $(OBJDIR)/dyn_stop.o
- $(CROSS)$(CC) -isystem include $(CFLAGS) -nostdlib -o $@ $^ -DDIETHOME=\"$(prefix)\" -DVERSION=\"$(VERSION)\" -DINSTALLVERSION -lgcc
-- $(CROSS)strip -R .comment -R .note $@
-
- $(PICODIR)/diet-dyn: $(PICODIR)/start.o $(PICODIR)/dyn_start.o diet.c
- $(LD_UNSET) $(CROSS)$(CC) -isystem include $(CFLAGS) -fPIC -nostdlib -o $@ $^ -DDIETHOME=\"$(HOME)\" -D__DYN_LIB -DVERSION=\"$(VERSION)\" -L$(PICODIR) -lc -lgcc $(PICODIR)/dyn_stop.o -Wl,-dynamic-linker=$(HOME)/$(PICODIR)/libdl.so
-- $(CROSS)strip -R .command -R .note $@
-
- $(PICODIR)/diet-dyn-i: $(PICODIR)/start.o $(PICODIR)/dyn_start.o diet.c
- $(LD_UNSET) $(CROSS)$(CC) -isystem include $(CFLAGS) -fPIC -nostdlib -o $@ $^ -DDIETHOME=\"$(prefix)\" -D__DYN_LIB -DVERSION=\"$(VERSION)\" -L$(PICODIR) -lc -lgcc $(PICODIR)/dyn_stop.o -Wl,-dynamic-linker=$(ILIBDIR)/libdl.so -DINSTALLVERSION
-- $(CROSS)strip -R .command -R .note $@
-
- $(OBJDIR)/djb: $(OBJDIR)/compile $(OBJDIR)/load
-
diff --git a/dietlibc/patches/0.30_pre20060501-r1/02_all_diet-ldconf.patch b/dietlibc/patches/0.30_pre20060501-r1/02_all_diet-ldconf.patch
deleted file mode 100644
index c04a2c7..0000000
--- a/dietlibc/patches/0.30_pre20060501-r1/02_all_diet-ldconf.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: dietlibc-0.30_pre20060501/Makefile
-===================================================================
---- dietlibc-0.30_pre20060501.orig/Makefile
-+++ dietlibc-0.30_pre20060501/Makefile
-@@ -359,7 +359,7 @@ endif
- -$(INSTALL) $(PICODIR)/dyn_stop.o $(DESTDIR)$(ILIBDIR)/dyn_dstop.o
- -$(INSTALL) $(PICODIR)/dstart.o $(PICODIR)/dyn_so_start.o $(DESTDIR)$(ILIBDIR)
- $(INSTALL) -m 644 diet.1 $(DESTDIR)$(MAN1DIR)/diet.1
-- if test -f $(PICODIR)/libc.so -a ! -f $(DESTDIR)/etc/diet.ld.conf; then echo "$(ILIBDIR)" > $(DESTDIR)/etc/diet.ld.conf; fi
-+ if test -f $(PICODIR)/libc.so -a ! -f $(DESTDIR)/etc/diet.ld.conf; then mkdir $(DESTDIR)/etc; echo "$(ILIBDIR)" > $(DESTDIR)/etc/diet.ld.conf; fi
- for i in `find include -name \*.h`; do install -m 644 -D $$i $(DESTDIR)$(prefix)/$$i; done
-
- uninstall:
diff --git a/dietlibc/patches/0.30_pre20060501-r1/03_all_ppc-rename.patch b/dietlibc/patches/0.30_pre20060501-r1/03_all_ppc-rename.patch
deleted file mode 100644
index e03fcf2..0000000
--- a/dietlibc/patches/0.30_pre20060501-r1/03_all_ppc-rename.patch
+++ /dev/null
@@ -1,2786 +0,0 @@
-diff -NurpP dietlibc-0.30_pre20060501.orig/diet.c dietlibc-0.30_pre20060501-ppc-rename/diet.c
---- dietlibc-0.30_pre20060501.orig/diet.c 2006-04-04 05:47:21.000000000 +0200
-+++ dietlibc-0.30_pre20060501-ppc-rename/diet.c 2006-05-01 12:22:21.566468000 +0200
-@@ -35,8 +35,8 @@ static const char* Os[] = {
- "arm","-Os","-fomit-frame-pointer",0,
- "mips","-Os","-fomit-frame-pointer","-mno-abicalls","-fno-pic","-G","0",0,
- "mipsel","-Os","-fomit-frame-pointer","-mno-abicalls","-fno-pic","-G","0",0,
-- "ppc","-Os","-fomit-frame-pointer","-mpowerpc-gpopt","-mpowerpc-gfxopt",0,
-- "ppc64","-Os","-fomit-frame-pointer","-mpowerpc-gpopt","-mpowerpc-gfxopt",0,
-+ "powerpc","-Os","-fomit-frame-pointer","-mpowerpc-gpopt","-mpowerpc-gfxopt",0,
-+ "powerpc64","-Os","-fomit-frame-pointer","-mpowerpc-gpopt","-mpowerpc-gfxopt",0,
- "s390","-Os","-fomit-frame-pointer",0,
- "s390x","-Os","-fomit-frame-pointer",0,
- "sh","-Os","-fomit-frame-pointer",0,
-@@ -151,10 +151,10 @@ int main(int argc,char *argv[]) {
- #endif
- #endif
- #ifdef __powerpc__
-- shortplatform="ppc";
-+ shortplatform="powerpc";
- #endif
- #ifdef __powerpc64__
-- shortplatform="ppc64";
-+ shortplatform="powerpc64";
- #endif
- #ifdef __i386__
- shortplatform="i386";
-diff -NurpP dietlibc-0.30_pre20060501.orig/Makefile dietlibc-0.30_pre20060501-ppc-rename/Makefile
---- dietlibc-0.30_pre20060501.orig/Makefile 2006-04-04 07:35:14.000000000 +0200
-+++ dietlibc-0.30_pre20060501-ppc-rename/Makefile 2006-05-01 12:22:21.566468000 +0200
-@@ -24,10 +24,10 @@ ifeq ($(MYARCH),alpha)
- ARCH=alpha
- else
- ifeq ($(MYARCH),ppc)
--ARCH=ppc
-+ARCH=powerpc
- else
- ifeq ($(MYARCH),ppc64)
--ARCH=ppc64
-+ARCH=powerpc64
- else
- ifeq ($(MYARCH),arm)
- ARCH=arm
-@@ -385,10 +385,10 @@ uninstall:
- for i in `find include -name \*.h`; do rm -f $(DESTDIR)$(prefix)/$$i; done
- -rmdir $(DESTDIR)$(ILIBDIR) $(DESTDIR)$(MAN1DIR) $(DESTDIR)$(BINDIR)
-
--.PHONY: sparc ppc mips arm alpha i386 parisc mipsel powerpc s390 sparc64
--.PHONY: x86_64 ia64 ppc64 s390x
-+.PHONY: sparc powerpc mips arm alpha i386 parisc mipsel powerpc s390 sparc64
-+.PHONY: x86_64 ia64 powerpc64 s390x
-
--arm sparc ppc alpha mips parisc s390 sparc64 x86_64 ia64 ppc64 s390x:
-+arm sparc powerpc alpha mips parisc s390 sparc64 x86_64 ia64 powerpc64 s390x:
- $(MAKE) ARCH=$@ CROSS=$@-linux- all
-
- i386:
-@@ -405,15 +405,11 @@ mipsel:
- mips-gnu:
- $(MAKE) ARCH=$@ CROSS=$@-linux-gnu- all
-
--# Some people named their cross compiler toolchain powerpc-linux-gcc
--powerpc:
-- $(MAKE) ARCH=ppc CROSS=powerpc-linux- all
--
- hppa:
- ln -sf bin-parisc bin-hppa
- $(MAKE) ARCH=parisc CROSS=hppa-linux- all
-
--CROSS_ARCH=arm sparc ppc alpha i386 mips sparc64 x86_64 s390 parisc
-+CROSS_ARCH=arm sparc powerpc alpha i386 mips sparc64 x86_64 s390 parisc
- cross:
- $(MAKE) $(subst $(ARCH),,$(CROSS_ARCH))
-
-diff -NurpP dietlibc-0.30_pre20060501.orig/powerpc/clone.S dietlibc-0.30_pre20060501-ppc-rename/powerpc/clone.S
---- dietlibc-0.30_pre20060501.orig/powerpc/clone.S 1970-01-01 01:00:00.000000000 +0100
-+++ dietlibc-0.30_pre20060501-ppc-rename/powerpc/clone.S 2001-12-13 17:05:03.000000000 +0100
-@@ -0,0 +1,48 @@
-+#include <dietfeatures.h>
-+#include "syscalls.h"
-+#include <errno.h>
-+
-+.text
-+.weak clone
-+clone:
-+.global __clone
-+__clone:
-+ cmpwi 4,0 /* check have non null child_stack pointer */
-+ cmpwi cr1, 3,0 /* check have non null thread_funcion */
-+ cror eq,4*cr1+eq,eq /* now if eq is set one is or both are zero */
-+ beq .Lclone_error
-+
-+ stwu 1,-32(1) /* alloc some space on the stack */
-+ stmw 29, 16(1) /* save r29,r30,r31 on stack */
-+
-+ rlwinm 4,4,0,0,27 /* mask out lower 4 bits */
-+
-+ /* move parameter to positions clone wants them */
-+ mr 29,3 /* r29 = r3 fn */
-+ mr 30,4 /* r30 = r4 stack */
-+ mr 31,6 /* r31 = r6 arg */
-+ mr 3, 5 /* r3 = r5 flags */
-+
-+ li 0, __NR_clone /* load syscall nr. */
-+ sc
-+
-+ cmpwi cr1,3,0 /* compare return of syscall with 0 */
-+ crandc 4*cr1+eq,4*cr1+eq,so
-+ bne .Lclone_parent /* return was non zero -> .Lclone_parent */
-+
-+ /* we are the cloned process */
-+ mr 1, 30 /* set stack pointer */
-+ mtctr 29 /* set count register to fn ? */
-+ mr 3, 31 /* set argument */
-+ bctrl /* branch trough count register and link */
-+ b _exit /* exit thread */
-+
-+.Lclone_parent:
-+ lmw 29,16(1) /* restore saved registers */
-+ addi 1, 1,32 /* free stack */
-+ bnslr+ /* had cloned a thread so return to parent */
-+ b error_unified_syscall
-+
-+.Lclone_error:
-+ li 3, EINVAL
-+ b error_unified_syscall
-diff -NurpP dietlibc-0.30_pre20060501.orig/powerpc/__longjmp.S dietlibc-0.30_pre20060501-ppc-rename/powerpc/__longjmp.S
---- dietlibc-0.30_pre20060501.orig/powerpc/__longjmp.S 1970-01-01 01:00:00.000000000 +0100
-+++ dietlibc-0.30_pre20060501-ppc-rename/powerpc/__longjmp.S 2001-01-25 18:23:36.000000000 +0100
-@@ -0,0 +1,59 @@
-+#include <setjmp.h>
-+
-+
-+#ifdef PIC
-+#define JUMPTARGET(name) name##@plt
-+#else
-+#define JUMPTARGET(name) name
-+#endif
-+
-+.global __longjmp
-+.type __longjmp,@function
-+.align 2
-+__longjmp:
-+ lwz 1,(JB_GPR1*4)(3)
-+ lwz 2,(JB_GPR2*4)(3)
-+ lwz 0,(JB_LR*4)(3)
-+ lwz 14,((JB_GPRS+0)*4)(3)
-+ lfd 14,((JB_FPRS+0*2)*4)(3)
-+ lwz 15,((JB_GPRS+1)*4)(3)
-+ lfd 15,((JB_FPRS+1*2)*4)(3)
-+ lwz 16,((JB_GPRS+2)*4)(3)
-+ lfd 16,((JB_FPRS+2*2)*4)(3)
-+ lwz 17,((JB_GPRS+3)*4)(3)
-+ lfd 17,((JB_FPRS+3*2)*4)(3)
-+ lwz 18,((JB_GPRS+4)*4)(3)
-+ lfd 18,((JB_FPRS+4*2)*4)(3)
-+ lwz 19,((JB_GPRS+5)*4)(3)
-+ lfd 19,((JB_FPRS+5*2)*4)(3)
-+ lwz 20,((JB_GPRS+6)*4)(3)
-+ lfd 20,((JB_FPRS+6*2)*4)(3)
-+ mtlr 0
-+ lwz 21,((JB_GPRS+7)*4)(3)
-+ lfd 21,((JB_FPRS+7*2)*4)(3)
-+ lwz 22,((JB_GPRS+8)*4)(3)
-+ lfd 22,((JB_FPRS+8*2)*4)(3)
-+ lwz 0,(JB_CR*4)(3)
-+ lwz 23,((JB_GPRS+9)*4)(3)
-+ lfd 23,((JB_FPRS+9*2)*4)(3)
-+ lwz 24,((JB_GPRS+10)*4)(3)
-+ lfd 24,((JB_FPRS+10*2)*4)(3)
-+ lwz 25,((JB_GPRS+11)*4)(3)
-+ lfd 25,((JB_FPRS+11*2)*4)(3)
-+ mtcrf 0xFF,0
-+ lwz 26,((JB_GPRS+12)*4)(3)
-+ lfd 26,((JB_FPRS+12*2)*4)(3)
-+ lwz 27,((JB_GPRS+13)*4)(3)
-+ lfd 27,((JB_FPRS+13*2)*4)(3)
-+ lwz 28,((JB_GPRS+14)*4)(3)
-+ lfd 28,((JB_FPRS+14*2)*4)(3)
-+ lwz 29,((JB_GPRS+15)*4)(3)
-+ lfd 29,((JB_FPRS+15*2)*4)(3)
-+ lwz 30,((JB_GPRS+16)*4)(3)
-+ lfd 30,((JB_FPRS+16*2)*4)(3)
-+ lwz 31,((JB_GPRS+17)*4)(3)
-+ lfd 31,((JB_FPRS+17*2)*4)(3)
-+ mr 3,4
-+ blr
-+.size __longjmp,.-__longjmp
-+
-diff -NurpP dietlibc-0.30_pre20060501.orig/powerpc/Makefile.add dietlibc-0.30_pre20060501-ppc-rename/powerpc/Makefile.add
---- dietlibc-0.30_pre20060501.orig/powerpc/Makefile.add 1970-01-01 01:00:00.000000000 +0100
-+++ dietlibc-0.30_pre20060501-ppc-rename/powerpc/Makefile.add 2001-01-30 16:01:20.000000000 +0100
-@@ -0,0 +1,3 @@
-+
-+CFLAGS+=-mpowerpc-gpopt -mpowerpc-gfxopt -Os
-+VPATH:=ppc:syscalls.s:$(VPATH)
-diff -NurpP dietlibc-0.30_pre20060501.orig/powerpc/mmap.c dietlibc-0.30_pre20060501-ppc-rename/powerpc/mmap.c
---- dietlibc-0.30_pre20060501.orig/powerpc/mmap.c 1970-01-01 01:00:00.000000000 +0100
-+++ dietlibc-0.30_pre20060501-ppc-rename/powerpc/mmap.c 2001-06-18 23:08:07.000000000 +0200
-@@ -0,0 +1,40 @@
-+#include "dietfeatures.h"
-+#include <sys/types.h>
-+#include <errno.h>
-+#include "syscalls.h"
-+
-+int mmap(void*start,size_t length,int prot,int flags,int fd,off_t offset) {
-+ unsigned long __sc_ret, __sc_err;
-+ {
-+ register unsigned long __sc_0 __asm__ ("r0");
-+ register unsigned long __sc_3 __asm__ ("r3");
-+ register unsigned long __sc_4 __asm__ ("r4");
-+ register unsigned long __sc_5 __asm__ ("r5");
-+ register unsigned long __sc_6 __asm__ ("r6");
-+ register unsigned long __sc_7 __asm__ ("r7");
-+ register unsigned long __sc_8 __asm__ ("r8");
-+
-+ __sc_3 = (unsigned long) (start);
-+ __sc_4 = (unsigned long) (length);
-+ __sc_5 = (unsigned long) (prot);
-+ __sc_6 = (unsigned long) (flags);
-+ __sc_7 = (unsigned long) (fd);
-+ __sc_8 = (unsigned long) (offset);
-+ __sc_0 = __NR_mmap;
-+ __asm__ __volatile__
-+ ("sc \n\t"
-+ "mfcr %1 "
-+ : "=&r" (__sc_3), "=&r" (__sc_0)
-+ : "0" (__sc_3), "1" (__sc_0),
-+ "r" (__sc_4),
-+ "r" (__sc_5),
-+ "r" (__sc_6),
-+ "r" (__sc_7),
-+ "r" (__sc_8)
-+ : "r4", "r5", "r6", "r7", "r8", "r9", "r10", "r11", "r12");
-+ __sc_ret = __sc_3;
-+ __sc_err = __sc_0;
-+ }
-+ return (__sc_err & 0x10000000 ? errno = __sc_ret, __sc_ret = -1 : 0),
-+ (int) __sc_ret;
-+}
-diff -NurpP dietlibc-0.30_pre20060501.orig/powerpc/setjmp.S dietlibc-0.30_pre20060501-ppc-rename/powerpc/setjmp.S
---- dietlibc-0.30_pre20060501.orig/powerpc/setjmp.S 1970-01-01 01:00:00.000000000 +0100
-+++ dietlibc-0.30_pre20060501-ppc-rename/powerpc/setjmp.S 2001-01-09 18:57:44.000000000 +0100
-@@ -0,0 +1,56 @@
-+#include <setjmp.h>
-+
-+#ifdef PIC
-+#define JUMPTARGET(name) name##@plt
-+#else
-+#define JUMPTARGET(name) name
-+#endif
-+
-+.global __sigsetjmp
-+.type __sigsetjmp,@function
-+.align 2
-+__sigsetjmp:
-+ stw 1,(JB_GPR1*4)(3)
-+ mflr 0
-+ stw 2,(JB_GPR2*4)(3)
-+ stw 14,((JB_GPRS+0)*4)(3)
-+ stfd 14,((JB_FPRS+0*2)*4)(3)
-+ stw 0,(JB_LR*4)(3)
-+ stw 15,((JB_GPRS+1)*4)(3)
-+ stfd 15,((JB_FPRS+1*2)*4)(3)
-+ mfcr 0
-+ stw 16,((JB_GPRS+2)*4)(3)
-+ stfd 16,((JB_FPRS+2*2)*4)(3)
-+ stw 0,(JB_CR*4)(3)
-+ stw 17,((JB_GPRS+3)*4)(3)
-+ stfd 17,((JB_FPRS+3*2)*4)(3)
-+ stw 18,((JB_GPRS+4)*4)(3)
-+ stfd 18,((JB_FPRS+4*2)*4)(3)
-+ stw 19,((JB_GPRS+5)*4)(3)
-+ stfd 19,((JB_FPRS+5*2)*4)(3)
-+ stw 20,((JB_GPRS+6)*4)(3)
-+ stfd 20,((JB_FPRS+6*2)*4)(3)
-+ stw 21,((JB_GPRS+7)*4)(3)
-+ stfd 21,((JB_FPRS+7*2)*4)(3)
-+ stw 22,((JB_GPRS+8)*4)(3)
-+ stfd 22,((JB_FPRS+8*2)*4)(3)
-+ stw 23,((JB_GPRS+9)*4)(3)
-+ stfd 23,((JB_FPRS+9*2)*4)(3)
-+ stw 24,((JB_GPRS+10)*4)(3)
-+ stfd 24,((JB_FPRS+10*2)*4)(3)
-+ stw 25,((JB_GPRS+11)*4)(3)
-+ stfd 25,((JB_FPRS+11*2)*4)(3)
-+ stw 26,((JB_GPRS+12)*4)(3)
-+ stfd 26,((JB_FPRS+12*2)*4)(3)
-+ stw 27,((JB_GPRS+13)*4)(3)
-+ stfd 27,((JB_FPRS+13*2)*4)(3)
-+ stw 28,((JB_GPRS+14)*4)(3)
-+ stfd 28,((JB_FPRS+14*2)*4)(3)
-+ stw 29,((JB_GPRS+15)*4)(3)
-+ stfd 29,((JB_FPRS+15*2)*4)(3)
-+ stw 30,((JB_GPRS+16)*4)(3)
-+ stfd 30,((JB_FPRS+16*2)*4)(3)
-+ stw 31,((JB_GPRS+17)*4)(3)
-+ stfd 31,((JB_FPRS+17*2)*4)(3)
-+ b JUMPTARGET (__sigjmp_save)
-+.size __sigsetjmp,.-__sigsetjmp
-diff -NurpP dietlibc-0.30_pre20060501.orig/powerpc/start.S dietlibc-0.30_pre20060501-ppc-rename/powerpc/start.S
---- dietlibc-0.30_pre20060501.orig/powerpc/start.S 1970-01-01 01:00:00.000000000 +0100
-+++ dietlibc-0.30_pre20060501-ppc-rename/powerpc/start.S 2006-04-04 07:35:14.000000000 +0200
-@@ -0,0 +1,52 @@
-+#include "dietfeatures.h"
-+
-+.text
-+.global _start
-+.type _start,@function
-+_start:
-+ /* Save the stack pointer, in case we're statically linked under Linux. */
-+ mr 9,1
-+ /* Set up an initial stack frame, and clear the LR. */
-+ clrrwi 1,1,4
-+ li 0,0
-+ stwu 1,-16(1)
-+ mtlr 0
-+ stw 0,0(1)
-+
-+ /* r9 contains the initial stack pointer
-+ argc = (r9)
-+ argv = (r9+4)
-+ envp = argv+(argc+1)*4 */
-+
-+ lis 14,__libc_stack_end@ha
-+ stw 9,__libc_stack_end@l(14)
-+
-+ lwzu 3,0(9) /* argc */
-+ addi 4,9,4 /* argv */
-+ add 5,0,3 /* argc... */
-+ addi 5,5,1 /* argc+1...*/
-+ slwi 5,5,2 /* (argc+1)*4 */
-+ add 5,5,4 /* argv+(argc+1)*4 */
-+
-+ lis 14,environ@ha
-+ stw 5,environ@l(14)
-+
-+#ifdef WANT_DYNAMIC
-+ mr 6,7
-+ bl _dyn_start
-+#else
-+ bl CALL_IN_STARTCODE
-+#endif
-+ b exit
-+.size _start,.-_start
-+
-+
-+/* Define a symbol for the first piece of initialized data. */
-+ .section ".data"
-+__data_start:
-+
-+/* this is needed for libgcc_eh.a - see gcc-3.4/gcc/config/rs6000/linux-unwind.h */
-+ .weak __libc_stack_end
-+ .lcomm __libc_stack_end,4,4
-+ .type __libc_stack_end,@object
-+
-diff -NurpP dietlibc-0.30_pre20060501.orig/powerpc/syscalls.h dietlibc-0.30_pre20060501-ppc-rename/powerpc/syscalls.h
---- dietlibc-0.30_pre20060501.orig/powerpc/syscalls.h 1970-01-01 01:00:00.000000000 +0100
-+++ dietlibc-0.30_pre20060501-ppc-rename/powerpc/syscalls.h 2005-09-21 09:33:08.000000000 +0200
-@@ -0,0 +1,299 @@
-+
-+#define __NR_exit 1
-+#define __NR_fork 2
-+#define __NR_read 3
-+#define __NR_write 4
-+#define __NR_open 5
-+#define __NR_close 6
-+#define __NR_waitpid 7
-+#define __NR_creat 8
-+#define __NR_link 9
-+#define __NR_unlink 10
-+#define __NR_execve 11
-+#define __NR_chdir 12
-+#define __NR_time 13
-+#define __NR_mknod 14
-+#define __NR_chmod 15
-+#define __NR_lchown 16
-+#define __NR_break 17
-+#define __NR_oldstat 18
-+#define __NR_lseek 19
-+#define __NR_getpid 20
-+#define __NR_mount 21
-+#define __NR_umount 22
-+#define __NR_setuid 23
-+#define __NR_getuid 24
-+#define __NR_stime 25
-+#define __NR_ptrace 26
-+#define __NR_alarm 27
-+#define __NR_oldfstat 28
-+#define __NR_pause 29
-+#define __NR_utime 30
-+#define __NR_stty 31
-+#define __NR_gtty 32
-+#define __NR_access 33
-+#define __NR_nice 34
-+#define __NR_ftime 35
-+#define __NR_sync 36
-+#define __NR_kill 37
-+#define __NR_rename 38
-+#define __NR_mkdir 39
-+#define __NR_rmdir 40
-+#define __NR_dup 41
-+#define __NR_pipe 42
-+#define __NR_times 43
-+#define __NR_prof 44
-+#define __NR_brk 45
-+#define __NR_setgid 46
-+#define __NR_getgid 47
-+#define __NR_signal 48
-+#define __NR_geteuid 49
-+#define __NR_getegid 50
-+#define __NR_acct 51
-+#define __NR_umount2 52
-+#define __NR_lock 53
-+#define __NR_ioctl 54
-+#define __NR_fcntl 55
-+#define __NR_mpx 56
-+#define __NR_setpgid 57
-+#define __NR_ulimit 58
-+#define __NR_oldolduname 59
-+#define __NR_umask 60
-+#define __NR_chroot 61
-+#define __NR_ustat 62
-+#define __NR_dup2 63
-+#define __NR_getppid 64
-+#define __NR_getpgrp 65
-+#define __NR_setsid 66
-+#define __NR_sigaction 67
-+#define __NR_sgetmask 68
-+#define __NR_ssetmask 69
-+#define __NR_setreuid 70
-+#define __NR_setregid 71
-+#define __NR_sigsuspend 72
-+#define __NR_sigpending 73
-+#define __NR_sethostname 74
-+#define __NR_setrlimit 75
-+#define __NR_getrlimit 76
-+#define __NR_getrusage 77
-+#define __NR_gettimeofday 78
-+#define __NR_settimeofday 79
-+#define __NR_getgroups 80
-+#define __NR_setgroups 81
-+#define __NR_select 82
-+#define __NR_symlink 83
-+#define __NR_oldlstat 84
-+#define __NR_readlink 85
-+#define __NR_uselib 86
-+#define __NR_swapon 87
-+#define __NR_reboot 88
-+#define __NR_readdir 89
-+#define __NR_mmap 90
-+#define __NR_munmap 91
-+#define __NR_truncate 92
-+#define __NR_ftruncate 93
-+#define __NR_fchmod 94
-+#define __NR_fchown 95
-+#define __NR_getpriority 96
-+#define __NR_setpriority 97
-+#define __NR_profil 98
-+#define __NR_statfs 99
-+#define __NR_fstatfs 100
-+#define __NR_ioperm 101
-+#define __NR_socketcall 102
-+#define __NR_syslog 103
-+#define __NR_setitimer 104
-+#define __NR_getitimer 105
-+#define __NR_stat 106
-+#define __NR_lstat 107
-+#define __NR_fstat 108
-+#define __NR_olduname 109
-+#define __NR_iopl 110
-+#define __NR_vhangup 111
-+#define __NR_idle 112
-+#define __NR_vm86 113
-+#define __NR_wait4 114
-+#define __NR_swapoff 115
-+#define __NR_sysinfo 116
-+#define __NR_ipc 117
-+#define __NR_fsync 118
-+#define __NR_sigreturn 119
-+#define __NR_clone 120
-+#define __NR_setdomainname 121
-+#define __NR_uname 122
-+#define __NR_modify_ldt 123
-+#define __NR_adjtimex 124
-+#define __NR_mprotect 125
-+#define __NR_sigprocmask 126
-+#define __NR_create_module 127
-+#define __NR_init_module 128
-+#define __NR_delete_module 129
-+#define __NR_get_kernel_syms 130
-+#define __NR_quotactl 131
-+#define __NR_getpgid 132
-+#define __NR_fchdir 133
-+#define __NR_bdflush 134
-+#define __NR_sysfs 135
-+#define __NR_personality 136
-+#define __NR_afs_syscall 137 /* Syscall for Andrew File System */
-+#define __NR_setfsuid 138
-+#define __NR_setfsgid 139
-+#define __NR__llseek 140
-+#define __NR_getdents 141
-+#define __NR__newselect 142
-+#define __NR_flock 143
-+#define __NR_msync 144
-+#define __NR_readv 145
-+#define __NR_writev 146
-+#define __NR_getsid 147
-+#define __NR_fdatasync 148
-+#define __NR__sysctl 149
-+#define __NR_mlock 150
-+#define __NR_munlock 151
-+#define __NR_mlockall 152
-+#define __NR_munlockall 153
-+#define __NR_sched_setparam 154
-+#define __NR_sched_getparam 155
-+#define __NR_sched_setscheduler 156
-+#define __NR_sched_getscheduler 157
-+#define __NR_sched_yield 158
-+#define __NR_sched_get_priority_max 159
-+#define __NR_sched_get_priority_min 160
-+#define __NR_sched_rr_get_interval 161
-+#define __NR_nanosleep 162
-+#define __NR_mremap 163
-+#define __NR_setresuid 164
-+#define __NR_getresuid 165
-+#define __NR_query_module 166
-+#define __NR_poll 167
-+#define __NR_nfsservctl 168
-+#define __NR_setresgid 169
-+#define __NR_getresgid 170
-+#define __NR_prctl 171
-+#define __NR_rt_sigreturn 172
-+#define __NR_rt_sigaction 173
-+#define __NR_rt_sigprocmask 174
-+#define __NR_rt_sigpending 175
-+#define __NR_rt_sigtimedwait 176
-+#define __NR_rt_sigqueueinfo 177
-+#define __NR_rt_sigsuspend 178
-+#define __NR_pread 179
-+#define __NR_pwrite 180
-+#define __NR_chown 181
-+#define __NR_getcwd 182
-+#define __NR_capget 183
-+#define __NR_capset 184
-+#define __NR_sigaltstack 185
-+#define __NR_sendfile 186
-+#define __NR_getpmsg 187 /* some people actually want streams */
-+#define __NR_putpmsg 188 /* some people actually want streams */
-+#define __NR_vfork 189
-+#define __NR_ugetrlimit 190 /* SuS compliant getrlimit */
-+#define __NR_readahead 191
-+#define __NR_mmap2 192
-+#define __NR_truncate64 193
-+#define __NR_ftruncate64 194
-+#define __NR_stat64 195
-+#define __NR_lstat64 196
-+#define __NR_fstat64 197
-+#define __NR_pciconfig_read 198
-+#define __NR_pciconfig_write 199
-+#define __NR_pciconfig_iobase 200
-+#define __NR_multiplexer 201
-+#define __NR_getdents64 202
-+#define __NR_pivot_root 203
-+#define __NR_fcntl64 204
-+#define __NR_madvise 205
-+#define __NR_mincore 206
-+#define __NR_gettid 207
-+#define __NR_tkill 208
-+#define __NR_setxattr 209
-+#define __NR_lsetxattr 210
-+#define __NR_fsetxattr 211
-+#define __NR_getxattr 212
-+#define __NR_lgetxattr 213
-+#define __NR_fgetxattr 214
-+#define __NR_listxattr 215
-+#define __NR_llistxattr 216
-+#define __NR_flistxattr 217
-+#define __NR_removexattr 218
-+#define __NR_lremovexattr 219
-+#define __NR_fremovexattr 220
-+#define __NR_futex 221
-+#define __NR_sched_setaffinity 222
-+#define __NR_sched_getaffinity 223
-+/* 224 currently unused */
-+#define __NR_tuxcall 225
-+#define __NR_sendfile64 226
-+#define __NR_io_setup 227
-+#define __NR_io_destroy 228
-+#define __NR_io_getevents 229
-+#define __NR_io_submit 230
-+#define __NR_io_cancel 231
-+#define __NR_set_tid_address 232
-+#define __NR_fadvise64 233
-+#define __NR_exit_group 234
-+#define __NR_lookup_dcookie 235
-+#define __NR_epoll_create 236
-+#define __NR_epoll_ctl 237
-+#define __NR_epoll_wait 238
-+#define __NR_remap_file_pages 239
-+#define __NR_timer_create 240
-+#define __NR_timer_settime 241
-+#define __NR_timer_gettime 242
-+#define __NR_timer_getoverrun 243
-+#define __NR_timer_delete 244
-+#define __NR_clock_settime 245
-+#define __NR_clock_gettime 246
-+#define __NR_clock_getres 247
-+#define __NR_clock_nanosleep 248
-+#define __NR_swapcontext 249
-+#define __NR_tgkill 250
-+#define __NR_utimes 251
-+#define __NR_statfs64 252
-+#define __NR_fstatfs64 253
-+#define __NR_fadvise64_64 254
-+#define __NR_rtas 255
-+#define __NR_sys_debug_setcontext 256
-+/* Number 257 is reserved for vserver */
-+/* Number 258 is reserved for new sys_remap_file_pages */
-+/* Number 259 is reserved for new sys_mbind */
-+/* Number 260 is reserved for new sys_get_mempolicy */
-+/* Number 261 is reserved for new sys_set_mempolicy */
-+#define __NR_mq_open 262
-+#define __NR_mq_unlink 263
-+#define __NR_mq_timedsend 264
-+#define __NR_mq_timedreceive 265
-+#define __NR_mq_notify 266
-+#define __NR_mq_getsetattr 267
-+#define __NR_kexec_load 268
-+#define __NR_add_key 269
-+#define __NR_request_key 270
-+#define __NR_keyctl 271
-+#define __NR_waitid 272
-+#define __NR_ioprio_set 273
-+#define __NR_ioprio_get 274
-+#define __NR_inotify_init 275
-+#define __NR_inotify_add_watch 276
-+#define __NR_inotify_rm_watch 277
-+
-+
-+#define syscall_weak(name,wsym,sym) \
-+.text; \
-+.type wsym,@function; \
-+.weak wsym; \
-+wsym: ; \
-+.type sym,@function; \
-+.global sym; \
-+sym: \
-+ li 0,__NR_##name; \
-+ b __unified_syscall
-+
-+#define syscall(name,sym) \
-+.text; \
-+.type sym,@function; \
-+.global sym; \
-+sym: \
-+ li 0,__NR_##name; \
-+ b __unified_syscall
-+
-diff -NurpP dietlibc-0.30_pre20060501.orig/powerpc/__testandset.S dietlibc-0.30_pre20060501-ppc-rename/powerpc/__testandset.S
---- dietlibc-0.30_pre20060501.orig/powerpc/__testandset.S 1970-01-01 01:00:00.000000000 +0100
-+++ dietlibc-0.30_pre20060501-ppc-rename/powerpc/__testandset.S 2002-09-16 13:17:01.000000000 +0200
-@@ -0,0 +1,12 @@
-+.global __testandset
-+.type __testandset,@function
-+.align 2
-+__testandset:
-+1: lwarx 5,0,3
-+ li 0,1
-+ stwcx. 0,0,3
-+ bne- 1b
-+ mr 3,5
-+ blr
-+.size __testandset,.-__testandset
-+
-diff -NurpP dietlibc-0.30_pre20060501.orig/powerpc/unified.S dietlibc-0.30_pre20060501-ppc-rename/powerpc/unified.S
---- dietlibc-0.30_pre20060501.orig/powerpc/unified.S 1970-01-01 01:00:00.000000000 +0100
-+++ dietlibc-0.30_pre20060501-ppc-rename/powerpc/unified.S 2002-01-21 16:55:19.000000000 +0100
-@@ -0,0 +1,40 @@
-+#include <dietfeatures.h>
-+#include "syscalls.h"
-+
-+.text
-+.type exit,@function
-+.weak exit
-+exit:
-+.type _exit,@function
-+.global _exit
-+_exit:
-+ li 0,__NR_exit
-+.global __unified_syscall
-+__unified_syscall:
-+ sc
-+ bnslr+
-+
-+.global error_unified_syscall
-+error_unified_syscall:
-+#ifdef WANT_THREAD_SAFE
-+ stwu 1,-16(1)
-+ mflr 0
-+ stw 0,20(1)
-+ stw 3,12(1)
-+ bl __errno_location
-+ lwz 0,12(1)
-+ stw 0,0(3)
-+ lwz 0,20(1)
-+ mtlr 0
-+ addi 1,1,16
-+#else
-+ lis 9,errno@ha
-+ stw 3,errno@l(9)
-+#endif
-+ li 3,-1
-+
-+/* here we go and "reuse" the return for weak-void functions */
-+#include "dietuglyweaks.h"
-+
-+ blr
-+
-diff -NurpP dietlibc-0.30_pre20060501.orig/powerpc64/clone.S dietlibc-0.30_pre20060501-ppc-rename/powerpc64/clone.S
---- dietlibc-0.30_pre20060501.orig/powerpc64/clone.S 1970-01-01 01:00:00.000000000 +0100
-+++ dietlibc-0.30_pre20060501-ppc-rename/powerpc64/clone.S 2005-05-13 20:39:32.000000000 +0200
-@@ -0,0 +1,52 @@
-+#include <dietfeatures.h>
-+#include "syscalls.h"
-+#include <errno.h>
-+
-+.text
-+.weak clone
-+clone:
-+.global __clone
-+__clone:
-+ cmpwi 4,0 /* check have non null child_stack pointer */
-+ cmpwi cr1, 3,0 /* check have non null thread_funcion */
-+ cror eq,4*cr1+eq,eq /* now if eq is set one is or both are zero */
-+ beq .Lclone_error
-+
-+ stdu 1,-64(1) /* alloc some space on the stack */
-+ std 29, 16(1) /* save r29,r30,r31 on stack */
-+ std 30, 24(1)
-+ std 31, 32(1)
-+
-+ rlwinm 4,4,0,0,27 /* mask out lower 4 bits */
-+
-+ /* move parameter to positions clone wants them */
-+ mr 29,3 /* r29 = r3 fn */
-+ mr 30,4 /* r30 = r4 stack */
-+ mr 31,6 /* r31 = r6 arg */
-+ mr 3, 5 /* r3 = r5 flags */
-+
-+ li 0, __NR_clone /* load syscall nr. */
-+ sc
-+
-+ cmpwi cr1,3,0 /* compare return of syscall with 0 */
-+ crandc 4*cr1+eq,4*cr1+eq,so
-+ bne .Lclone_parent /* return was non zero -> .Lclone_parent */
-+
-+ /* we are the cloned process */
-+ mr 1, 30 /* set stack pointer */
-+ mtctr 29 /* set count register to fn ? */
-+ mr 3, 31 /* set argument */
-+ bctrl /* branch trough count register and link */
-+ b _exit /* exit thread */
-+
-+.Lclone_parent:
-+ ld 29,16(1) /* restore saved registers */
-+ ld 30,24(1)
-+ ld 31,32(1)
-+ addi 1, 1,64 /* free stack */
-+ bnslr+ /* had cloned a thread so return to parent */
-+ b error_unified_syscall
-+
-+.Lclone_error:
-+ li 3, EINVAL
-+ b error_unified_syscall
-diff -NurpP dietlibc-0.30_pre20060501.orig/powerpc64/__longjmp.S dietlibc-0.30_pre20060501-ppc-rename/powerpc64/__longjmp.S
---- dietlibc-0.30_pre20060501.orig/powerpc64/__longjmp.S 1970-01-01 01:00:00.000000000 +0100
-+++ dietlibc-0.30_pre20060501-ppc-rename/powerpc64/__longjmp.S 2005-09-21 09:33:08.000000000 +0200
-@@ -0,0 +1,54 @@
-+#include <setjmp.h>
-+
-+ .quad .__longjmp,.TOC.@tocbase,0
-+ .text
-+ .size __longjmp,24
-+ .type .__longjmp,@function
-+ .globl .__longjmp
-+.align 2
-+.__longjmp:
-+ ld 1,(JB_GPR1*8)(3)
-+ ld 2,(JB_GPR2*8)(3)
-+ ld 0,(JB_LR*8)(3)
-+ ld 14,((JB_GPRS+0)*8)(3)
-+ lfd 14,((JB_FPRS+0)*8)(3)
-+ ld 15,((JB_GPRS+1)*8)(3)
-+ lfd 15,((JB_FPRS+1)*8)(3)
-+ ld 16,((JB_GPRS+2)*8)(3)
-+ lfd 16,((JB_FPRS+2)*8)(3)
-+ ld 17,((JB_GPRS+3)*8)(3)
-+ lfd 17,((JB_FPRS+3)*8)(3)
-+ ld 18,((JB_GPRS+4)*8)(3)
-+ lfd 18,((JB_FPRS+4)*8)(3)
-+ ld 19,((JB_GPRS+5)*8)(3)
-+ lfd 19,((JB_FPRS+5)*8)(3)
-+ ld 20,((JB_GPRS+6)*8)(3)
-+ lfd 20,((JB_FPRS+6)*8)(3)
-+ mtlr 0
-+ ld 21,((JB_GPRS+7)*8)(3)
-+ lfd 21,((JB_FPRS+7)*8)(3)
-+ ld 22,((JB_GPRS+8)*8)(3)
-+ lfd 22,((JB_FPRS+8)*8)(3)
-+ ld 0,(JB_CR*8)(3)
-+ ld 23,((JB_GPRS+9)*8)(3)
-+ lfd 23,((JB_FPRS+9)*8)(3)
-+ ld 24,((JB_GPRS+10)*8)(3)
-+ lfd 24,((JB_FPRS+10)*8)(3)
-+ ld 25,((JB_GPRS+11)*8)(3)
-+ lfd 25,((JB_FPRS+11)*8)(3)
-+ mtcrf 0xFF,0
-+ ld 26,((JB_GPRS+12)*8)(3)
-+ lfd 26,((JB_FPRS+12)*8)(3)
-+ ld 27,((JB_GPRS+13)*8)(3)
-+ lfd 27,((JB_FPRS+13)*8)(3)
-+ ld 28,((JB_GPRS+14)*8)(3)
-+ lfd 28,((JB_FPRS+14)*8)(3)
-+ ld 29,((JB_GPRS+15)*8)(3)
-+ lfd 29,((JB_FPRS+15)*8)(3)
-+ ld 30,((JB_GPRS+16)*8)(3)
-+ lfd 30,((JB_FPRS+16)*8)(3)
-+ ld 31,((JB_GPRS+17)*8)(3)
-+ lfd 31,((JB_FPRS+17)*8)(3)
-+ mr 3,4
-+ blr
-+.size .__longjmp,.-.__longjmp
-diff -NurpP dietlibc-0.30_pre20060501.orig/powerpc64/Makefile.add dietlibc-0.30_pre20060501-ppc-rename/powerpc64/Makefile.add
---- dietlibc-0.30_pre20060501.orig/powerpc64/Makefile.add 1970-01-01 01:00:00.000000000 +0100
-+++ dietlibc-0.30_pre20060501-ppc-rename/powerpc64/Makefile.add 2003-10-10 15:37:34.000000000 +0200
-@@ -0,0 +1,3 @@
-+
-+CFLAGS+=-Os -mpowerpc64
-+VPATH:=ppc64:syscalls.s:$(VPATH)
-diff -NurpP dietlibc-0.30_pre20060501.orig/powerpc64/setjmp.S dietlibc-0.30_pre20060501-ppc-rename/powerpc64/setjmp.S
---- dietlibc-0.30_pre20060501.orig/powerpc64/setjmp.S 1970-01-01 01:00:00.000000000 +0100
-+++ dietlibc-0.30_pre20060501-ppc-rename/powerpc64/setjmp.S 2005-09-21 09:33:08.000000000 +0200
-@@ -0,0 +1,59 @@
-+#include <setjmp.h>
-+
-+#ifdef PIC
-+#define JUMPTARGET(name) name##@plt
-+#else
-+#define JUMPTARGET(name) .name
-+#endif
-+
-+ .quad .__sigsetjmp,.TOC.@tocbase,0
-+ .text
-+ .size __sigsetjmp,24
-+ .type .__sigsetjmp,@function
-+ .globl .__sigsetjmp
-+.align 2
-+.__sigsetjmp:
-+ std 1,(JB_GPR1*8)(3)
-+ mflr 0
-+ std 2,(JB_GPR2*8)(3)
-+ std 14,((JB_GPRS+0)*8)(3)
-+ stfd 14,((JB_FPRS+0)*8)(3)
-+ std 0,(JB_LR*8)(3)
-+ std 15,((JB_GPRS+1)*8)(3)
-+ stfd 15,((JB_FPRS+1)*8)(3)
-+ mfcr 0
-+ std 16,((JB_GPRS+2)*8)(3)
-+ stfd 16,((JB_FPRS+2)*8)(3)
-+ std 0,(JB_CR*8)(3)
-+ std 17,((JB_GPRS+3)*8)(3)
-+ stfd 17,((JB_FPRS+3)*8)(3)
-+ std 18,((JB_GPRS+4)*8)(3)
-+ stfd 18,((JB_FPRS+4)*8)(3)
-+ std 19,((JB_GPRS+5)*8)(3)
-+ stfd 19,((JB_FPRS+5)*8)(3)
-+ std 20,((JB_GPRS+6)*8)(3)
-+ stfd 20,((JB_FPRS+6)*8)(3)
-+ std 21,((JB_GPRS+7)*8)(3)
-+ stfd 21,((JB_FPRS+7)*8)(3)
-+ std 22,((JB_GPRS+8)*8)(3)
-+ stfd 22,((JB_FPRS+8)*8)(3)
-+ std 23,((JB_GPRS+9)*8)(3)
-+ stfd 23,((JB_FPRS+9)*8)(3)
-+ std 24,((JB_GPRS+10)*8)(3)
-+ stfd 24,((JB_FPRS+10)*8)(3)
-+ std 25,((JB_GPRS+11)*8)(3)
-+ stfd 25,((JB_FPRS+11)*8)(3)
-+ std 26,((JB_GPRS+12)*8)(3)
-+ stfd 26,((JB_FPRS+12)*8)(3)
-+ std 27,((JB_GPRS+13)*8)(3)
-+ stfd 27,((JB_FPRS+13)*8)(3)
-+ std 28,((JB_GPRS+14)*8)(3)
-+ stfd 28,((JB_FPRS+14)*8)(3)
-+ std 29,((JB_GPRS+15)*8)(3)
-+ stfd 29,((JB_FPRS+15)*8)(3)
-+ std 30,((JB_GPRS+16)*8)(3)
-+ stfd 30,((JB_FPRS+16)*8)(3)
-+ std 31,((JB_GPRS+17)*8)(3)
-+ stfd 31,((JB_FPRS+17)*8)(3)
-+ b JUMPTARGET (__sigjmp_save)
-+.size .__sigsetjmp,.-.__sigsetjmp
-diff -NurpP dietlibc-0.30_pre20060501.orig/powerpc64/start.S dietlibc-0.30_pre20060501-ppc-rename/powerpc64/start.S
---- dietlibc-0.30_pre20060501.orig/powerpc64/start.S 1970-01-01 01:00:00.000000000 +0100
-+++ dietlibc-0.30_pre20060501-ppc-rename/powerpc64/start.S 2006-04-04 07:35:14.000000000 +0200
-@@ -0,0 +1,91 @@
-+#include "dietfeatures.h"
-+
-+ .section ".text"
-+ .align 2
-+ .globl ._start
-+ .type ._start,@function
-+ .globl _start
-+ .section ".opd","aw"
-+_start:
-+ .quad ._start
-+ .quad .TOC.@tocbase, 0
-+ .previous
-+._start:
-+
-+/*
-+ .section ".text"
-+ .align 2
-+ .globl ._start
-+ .type ._start,@function
-+ .globl _start
-+ .section ".opd","aw"
-+_start:
-+ .quad ._start
-+ .quad .TOC.@tocbase, 0
-+ .previous
-+._start:
-+*/
-+ /* Save the stack pointer, in case we're statically linked under Linux. */
-+ mr 9,1
-+ /* Set up an initial stack frame, and clear the LR. */
-+ clrrdi 1,1,4
-+ li 0,0
-+ stdu 1,-128(1)
-+ mtlr 0
-+ std 0,0(1)
-+
-+ /* r9 contains the initial stack pointer
-+ argc = (r9)
-+ argv = (r9+4)
-+ envp = argv+(argc+1)*4 */
-+
-+ lis 14,__libc_stack_end@highesta
-+ ori 14,14,__libc_stack_end@highera
-+ sldi 14,14,32
-+ oris 14,14,__libc_stack_end@ha
-+ std 9,__libc_stack_end@l(14)
-+
-+ ldu 3,0(9) /* argc */
-+ addi 4,9,8 /* argv */
-+ add 5,0,3 /* argc... */
-+ addi 5,5,1 /* argc+1...*/
-+ slwi 5,5,3 /* (argc+1)*8 */
-+ add 5,5,4 /* argv+(argc+1)*8 */
-+
-+ lis 14,environ@highesta
-+ ori 14,14,environ@highera
-+ sldi 14,14,32
-+ oris 14,14,environ@ha
-+ std 5,environ@l(14)
-+
-+#ifdef WANT_DYNAMIC
-+/* #warning dynamic */
-+ mr 6,7
-+ bl ._dyn_start
-+#else
-+/* #warning static */
-+#define DOTIFY(name) .##name
-+ bl DOTIFY(CALL_IN_STARTCODE)
-+#endif
-+ b .exit
-+
-+.LT_start:
-+ .long 0
-+ .quad 0x000c000000000000 | 0x0000200000000000 | 0x0000004000000000
-+ .long .LT_start-._start
-+ .short .LT_start_name_end-.LT_start_name_start
-+.LT_start_name_start:
-+ .ascii "_start"
-+.LT_start_name_end:
-+ .align 2
-+ .size _start,.-_start
-+
-+/* Define a symbol for the first piece of initialized data. */
-+ .section ".data"
-+__data_start:
-+
-+/* this is needed for libgcc_eh.a - see gcc-3.4/gcc/config/rs6000/linux-unwind.h */
-+ .weak __libc_stack_end
-+ .lcomm __libc_stack_end,8,8
-+ .type __libc_stack_end,@object
-+
-diff -NurpP dietlibc-0.30_pre20060501.orig/powerpc64/syscalls.h dietlibc-0.30_pre20060501-ppc-rename/powerpc64/syscalls.h
---- dietlibc-0.30_pre20060501.orig/powerpc64/syscalls.h 1970-01-01 01:00:00.000000000 +0100
-+++ dietlibc-0.30_pre20060501-ppc-rename/powerpc64/syscalls.h 2005-09-21 09:33:08.000000000 +0200
-@@ -0,0 +1,317 @@
-+
-+#define __NR_exit 1
-+#define __NR_fork 2
-+#define __NR_read 3
-+#define __NR_write 4
-+#define __NR_open 5
-+#define __NR_close 6
-+#define __NR_waitpid 7
-+#define __NR_creat 8
-+#define __NR_link 9
-+#define __NR_unlink 10
-+#define __NR_execve 11
-+#define __NR_chdir 12
-+#define __NR_time 13
-+#define __NR_mknod 14
-+#define __NR_chmod 15
-+#define __NR_lchown 16
-+#define __NR_break 17
-+#define __NR_oldstat 18
-+#define __NR_lseek 19
-+#define __NR_getpid 20
-+#define __NR_mount 21
-+#define __NR_umount 22
-+#define __NR_setuid 23
-+#define __NR_getuid 24
-+#define __NR_stime 25
-+#define __NR_ptrace 26
-+#define __NR_alarm 27
-+#define __NR_oldfstat 28
-+#define __NR_pause 29
-+#define __NR_utime 30
-+#define __NR_stty 31
-+#define __NR_gtty 32
-+#define __NR_access 33
-+#define __NR_nice 34
-+#define __NR_ftime 35
-+#define __NR_sync 36
-+#define __NR_kill 37
-+#define __NR_rename 38
-+#define __NR_mkdir 39
-+#define __NR_rmdir 40
-+#define __NR_dup 41
-+#define __NR_pipe 42
-+#define __NR_times 43
-+#define __NR_prof 44
-+#define __NR_brk 45
-+#define __NR_setgid 46
-+#define __NR_getgid 47
-+#define __NR_signal 48
-+#define __NR_geteuid 49
-+#define __NR_getegid 50
-+#define __NR_acct 51
-+#define __NR_umount2 52
-+#define __NR_lock 53
-+#define __NR_ioctl 54
-+#define __NR_fcntl 55
-+#define __NR_mpx 56
-+#define __NR_setpgid 57
-+#define __NR_ulimit 58
-+#define __NR_oldolduname 59
-+#define __NR_umask 60
-+#define __NR_chroot 61
-+#define __NR_ustat 62
-+#define __NR_dup2 63
-+#define __NR_getppid 64
-+#define __NR_getpgrp 65
-+#define __NR_setsid 66
-+#define __NR_sigaction 67
-+#define __NR_sgetmask 68
-+#define __NR_ssetmask 69
-+#define __NR_setreuid 70
-+#define __NR_setregid 71
-+#define __NR_sigsuspend 72
-+#define __NR_sigpending 73
-+#define __NR_sethostname 74
-+#define __NR_setrlimit 75
-+#define __NR_getrlimit 76
-+#define __NR_getrusage 77
-+#define __NR_gettimeofday 78
-+#define __NR_settimeofday 79
-+#define __NR_getgroups 80
-+#define __NR_setgroups 81
-+#define __NR_select 82
-+#define __NR_symlink 83
-+#define __NR_oldlstat 84
-+#define __NR_readlink 85
-+#define __NR_uselib 86
-+#define __NR_swapon 87
-+#define __NR_reboot 88
-+#define __NR_readdir 89
-+#define __NR_mmap 90
-+#define __NR_munmap 91
-+#define __NR_truncate 92
-+#define __NR_ftruncate 93
-+#define __NR_fchmod 94
-+#define __NR_fchown 95
-+#define __NR_getpriority 96
-+#define __NR_setpriority 97
-+#define __NR_profil 98
-+#define __NR_statfs 99
-+#define __NR_fstatfs 100
-+#define __NR_ioperm 101
-+#define __NR_socketcall 102
-+#define __NR_syslog 103
-+#define __NR_setitimer 104
-+#define __NR_getitimer 105
-+#define __NR_stat 106
-+#define __NR_lstat 107
-+#define __NR_fstat 108
-+#define __NR_olduname 109
-+#define __NR_iopl 110
-+#define __NR_vhangup 111
-+#define __NR_idle 112
-+#define __NR_vm86 113
-+#define __NR_wait4 114
-+#define __NR_swapoff 115
-+#define __NR_sysinfo 116
-+#define __NR_ipc 117
-+#define __NR_fsync 118
-+#define __NR_sigreturn 119
-+#define __NR_clone 120
-+#define __NR_setdomainname 121
-+#define __NR_uname 122
-+#define __NR_modify_ldt 123
-+#define __NR_adjtimex 124
-+#define __NR_mprotect 125
-+#define __NR_sigprocmask 126
-+#define __NR_create_module 127
-+#define __NR_init_module 128
-+#define __NR_delete_module 129
-+#define __NR_get_kernel_syms 130
-+#define __NR_quotactl 131
-+#define __NR_getpgid 132
-+#define __NR_fchdir 133
-+#define __NR_bdflush 134
-+#define __NR_sysfs 135
-+#define __NR_personality 136
-+#define __NR_afs_syscall 137 /* Syscall for Andrew File System */
-+#define __NR_setfsuid 138
-+#define __NR_setfsgid 139
-+#define __NR__llseek 140
-+#define __NR_getdents 141
-+#define __NR__newselect 142
-+#define __NR_flock 143
-+#define __NR_msync 144
-+#define __NR_readv 145
-+#define __NR_writev 146
-+#define __NR_getsid 147
-+#define __NR_fdatasync 148
-+#define __NR__sysctl 149
-+#define __NR_mlock 150
-+#define __NR_munlock 151
-+#define __NR_mlockall 152
-+#define __NR_munlockall 153
-+#define __NR_sched_setparam 154
-+#define __NR_sched_getparam 155
-+#define __NR_sched_setscheduler 156
-+#define __NR_sched_getscheduler 157
-+#define __NR_sched_yield 158
-+#define __NR_sched_get_priority_max 159
-+#define __NR_sched_get_priority_min 160
-+#define __NR_sched_rr_get_interval 161
-+#define __NR_nanosleep 162
-+#define __NR_mremap 163
-+#define __NR_setresuid 164
-+#define __NR_getresuid 165
-+#define __NR_query_module 166
-+#define __NR_poll 167
-+#define __NR_nfsservctl 168
-+#define __NR_setresgid 169
-+#define __NR_getresgid 170
-+#define __NR_prctl 171
-+#define __NR_rt_sigreturn 172
-+#define __NR_rt_sigaction 173
-+#define __NR_rt_sigprocmask 174
-+#define __NR_rt_sigpending 175
-+#define __NR_rt_sigtimedwait 176
-+#define __NR_rt_sigqueueinfo 177
-+#define __NR_rt_sigsuspend 178
-+#define __NR_pread 179
-+#define __NR_pwrite 180
-+#define __NR_chown 181
-+#define __NR_getcwd 182
-+#define __NR_capget 183
-+#define __NR_capset 184
-+#define __NR_sigaltstack 185
-+#define __NR_sendfile 186
-+#define __NR_getpmsg 187 /* some people actually want streams */
-+#define __NR_putpmsg 188 /* some people actually want streams */
-+#define __NR_vfork 189
-+#define __NR_ugetrlimit 190 /* SuS compliant getrlimit */
-+#define __NR_readahead 191
-+/* #define __NR_mmap2 192 32bit only */
-+/* #define __NR_truncate64 193 32bit only */
-+/* #define __NR_ftruncate64 194 32bit only */
-+/* #define __NR_stat64 195 32bit only */
-+/* #define __NR_lstat64 196 32bit only */
-+/* #define __NR_fstat64 197 32bit only */
-+#define __NR_pciconfig_read 198
-+#define __NR_pciconfig_write 199
-+#define __NR_pciconfig_iobase 200
-+#define __NR_multiplexer 201
-+#define __NR_getdents64 202
-+#define __NR_pivot_root 203
-+/* #define __NR_fcntl64 204 32bit only */
-+#define __NR_madvise 205
-+#define __NR_mincore 206
-+#define __NR_gettid 207
-+#define __NR_tkill 208
-+#define __NR_setxattr 209
-+#define __NR_lsetxattr 210
-+#define __NR_fsetxattr 211
-+#define __NR_getxattr 212
-+#define __NR_lgetxattr 213
-+#define __NR_fgetxattr 214
-+#define __NR_listxattr 215
-+#define __NR_llistxattr 216
-+#define __NR_flistxattr 217
-+#define __NR_removexattr 218
-+#define __NR_lremovexattr 219
-+#define __NR_fremovexattr 220
-+#define __NR_futex 221
-+#define __NR_sched_setaffinity 222
-+#define __NR_sched_getaffinity 223
-+/* 224 currently unused */
-+#define __NR_tuxcall 225
-+/* #define __NR_sendfile64 226 32bit only */
-+#define __NR_io_setup 227
-+#define __NR_io_destroy 228
-+#define __NR_io_getevents 229
-+#define __NR_io_submit 230
-+#define __NR_io_cancel 231
-+#define __NR_set_tid_address 232
-+#define __NR_fadvise64 233
-+#define __NR_exit_group 234
-+#define __NR_lookup_dcookie 235
-+#define __NR_epoll_create 236
-+#define __NR_epoll_ctl 237
-+#define __NR_epoll_wait 238
-+#define __NR_remap_file_pages 239
-+#define __NR_timer_create 240
-+#define __NR_timer_settime 241
-+#define __NR_timer_gettime 242
-+#define __NR_timer_getoverrun 243
-+#define __NR_timer_delete 244
-+#define __NR_clock_settime 245
-+#define __NR_clock_gettime 246
-+#define __NR_clock_getres 247
-+#define __NR_clock_nanosleep 248
-+#define __NR_swapcontext 249
-+#define __NR_tgkill 250
-+#define __NR_utimes 251
-+#define __NR_statfs64 252
-+#define __NR_fstatfs64 253
-+/* #define __NR_fadvise64_64 254 32bit only */
-+#define __NR_rtas 255
-+/* Number 256 is reserved for sys_debug_setcontext */
-+/* Number 257 is reserved for vserver */
-+/* Number 258 is reserved for new sys_remap_file_pages */
-+#define __NR_mbind 259
-+#define __NR_get_mempolicy 260
-+#define __NR_set_mempolicy 261
-+#define __NR_mq_open 262
-+#define __NR_mq_unlink 263
-+#define __NR_mq_timedsend 264
-+#define __NR_mq_timedreceive 265
-+#define __NR_mq_notify 266
-+#define __NR_mq_getsetattr 267
-+#define __NR_kexec_load 268
-+#define __NR_add_key 269
-+#define __NR_request_key 270
-+#define __NR_keyctl 271
-+#define __NR_waitid 272
-+#define __NR_ioprio_set 273
-+#define __NR_ioprio_get 274
-+#define __NR_inotify_init 275
-+#define __NR_inotify_add_watch 276
-+#define __NR_inotify_rm_watch 277
-+
-+
-+
-+#define __diet_proto_common(sym) \
-+ .section ".opd","aw"; \
-+ .align 3; \
-+sym: \
-+ .quad .sym,.TOC.@tocbase,0; \
-+ .previous; \
-+ .size sym,24; \
-+ .type .sym,@function
-+
-+#define diet_proto_weak(sym) \
-+ .weak sym; \
-+ .weak .sym; \
-+ __diet_proto_common(sym)
-+
-+#define diet_proto(sym) \
-+ .globl sym; \
-+ .globl .sym; \
-+ __diet_proto_common(sym)
-+
-+
-+#define syscall_weak(name,wsym,sym) \
-+.text; \
-+diet_proto_weak(wsym); \
-+diet_proto(sym); \
-+.wsym: \
-+.sym: \
-+ li 0,__NR_##name; \
-+ b __unified_syscall
-+
-+#define syscall(name,sym) \
-+.text; \
-+diet_proto(sym); \
-+.sym: \
-+ li 0,__NR_##name; \
-+ b __unified_syscall
-+
-diff -NurpP dietlibc-0.30_pre20060501.orig/powerpc64/__testandset.S dietlibc-0.30_pre20060501-ppc-rename/powerpc64/__testandset.S
---- dietlibc-0.30_pre20060501.orig/powerpc64/__testandset.S 1970-01-01 01:00:00.000000000 +0100
-+++ dietlibc-0.30_pre20060501-ppc-rename/powerpc64/__testandset.S 2003-10-10 15:37:34.000000000 +0200
-@@ -0,0 +1,12 @@
-+.global __testandset
-+.type __testandset,@function
-+.align 2
-+__testandset:
-+1: lwarx 5,0,3
-+ li 0,1
-+ stwcx. 0,0,3
-+ bne- 1b
-+ mr 3,5
-+ blr
-+.size __testandset,.-__testandset
-+
-diff -NurpP dietlibc-0.30_pre20060501.orig/powerpc64/umount.S dietlibc-0.30_pre20060501-ppc-rename/powerpc64/umount.S
---- dietlibc-0.30_pre20060501.orig/powerpc64/umount.S 1970-01-01 01:00:00.000000000 +0100
-+++ dietlibc-0.30_pre20060501-ppc-rename/powerpc64/umount.S 2004-12-17 19:47:59.000000000 +0100
-@@ -0,0 +1,8 @@
-+#include "syscalls.h"
-+
-+ .text
-+diet_proto(umount)
-+.umount:
-+ li 0, __NR_umount2
-+ li 4, 0
-+ b __unified_syscall
-diff -NurpP dietlibc-0.30_pre20060501.orig/powerpc64/unified.S dietlibc-0.30_pre20060501-ppc-rename/powerpc64/unified.S
---- dietlibc-0.30_pre20060501.orig/powerpc64/unified.S 1970-01-01 01:00:00.000000000 +0100
-+++ dietlibc-0.30_pre20060501-ppc-rename/powerpc64/unified.S 2005-05-13 20:39:32.000000000 +0200
-@@ -0,0 +1,71 @@
-+#include <dietfeatures.h>
-+#include "syscalls.h"
-+
-+ .text
-+.exit:
-+ .weak .exit
-+._exit:
-+ li 0,__NR_exit
-+ .global __unified_syscall
-+__unified_syscall:
-+ sc
-+ bnslr+
-+
-+ .global error_unified_syscall
-+error_unified_syscall:
-+
-+#ifdef WANT_THREAD_SAFE
-+ stdu 1,-128(1)
-+ mflr 0
-+ std 0,20(1)
-+ std 3,12(1)
-+ bl .__errno_location
-+ ld 0,12(1)
-+ stw 0,0(3)
-+ ld 0,20(1)
-+ mtlr 0
-+ addi 1,1,128
-+#else
-+ lis 9,errno@highesta
-+ ori 9,9,errno@highera
-+ sldi 9,9,32
-+ oris 9,9,errno@ha
-+ stw 3,errno@l(9)
-+#endif
-+ li 3,-1
-+
-+/* here we go and "reuse" the return for weak-void functions */
-+//#include "dietuglyweaks.h"
-+.__thread_doexit:
-+ .weak .__thread_doexit
-+.__fflush_stdin:
-+ .weak .__fflush_stdin
-+.__fflush_stdout:
-+ .weak .__fflush_stdout
-+.__fflush_stderr:
-+ .weak .__fflush_stderr
-+.flockfile:
-+ .weak .flockfile
-+.funlockfile:
-+ .weak .funlockfile
-+.__nop:
-+ .weak .__nop
-+.__you_tried_to_link_a_dietlibc_object_against_glibc:
-+ .weak .__you_tried_to_link_a_dietlibc_object_against_glibc
-+
-+ blr
-+ .long 0
-+ .byte 0,0,0,1,128,0,0,0
-+ .size ._exit,.-._exit
-+ .size .exit,.-.exit
-+
-+diet_proto_weak(__thread_doexit)
-+diet_proto_weak(__fflush_stdin)
-+diet_proto_weak(__fflush_stdout)
-+diet_proto_weak(__fflush_stderr)
-+diet_proto_weak(flockfile)
-+diet_proto_weak(funlockfile)
-+diet_proto_weak(__nop)
-+diet_proto_weak(__you_tried_to_link_a_dietlibc_object_against_glibc)
-+diet_proto_weak(exit)
-+diet_proto(_exit)
-diff -NurpP dietlibc-0.30_pre20060501.orig/ppc/clone.S dietlibc-0.30_pre20060501-ppc-rename/ppc/clone.S
---- dietlibc-0.30_pre20060501.orig/ppc/clone.S 2001-12-13 17:05:03.000000000 +0100
-+++ dietlibc-0.30_pre20060501-ppc-rename/ppc/clone.S 1970-01-01 01:00:00.000000000 +0100
-@@ -1,48 +0,0 @@
--#include <dietfeatures.h>
--#include "syscalls.h"
--#include <errno.h>
--
--.text
--.weak clone
--clone:
--.global __clone
--__clone:
-- cmpwi 4,0 /* check have non null child_stack pointer */
-- cmpwi cr1, 3,0 /* check have non null thread_funcion */
-- cror eq,4*cr1+eq,eq /* now if eq is set one is or both are zero */
-- beq .Lclone_error
--
-- stwu 1,-32(1) /* alloc some space on the stack */
-- stmw 29, 16(1) /* save r29,r30,r31 on stack */
--
-- rlwinm 4,4,0,0,27 /* mask out lower 4 bits */
--
-- /* move parameter to positions clone wants them */
-- mr 29,3 /* r29 = r3 fn */
-- mr 30,4 /* r30 = r4 stack */
-- mr 31,6 /* r31 = r6 arg */
-- mr 3, 5 /* r3 = r5 flags */
--
-- li 0, __NR_clone /* load syscall nr. */
-- sc
--
-- cmpwi cr1,3,0 /* compare return of syscall with 0 */
-- crandc 4*cr1+eq,4*cr1+eq,so
-- bne .Lclone_parent /* return was non zero -> .Lclone_parent */
--
-- /* we are the cloned process */
-- mr 1, 30 /* set stack pointer */
-- mtctr 29 /* set count register to fn ? */
-- mr 3, 31 /* set argument */
-- bctrl /* branch trough count register and link */
-- b _exit /* exit thread */
--
--.Lclone_parent:
-- lmw 29,16(1) /* restore saved registers */
-- addi 1, 1,32 /* free stack */
-- bnslr+ /* had cloned a thread so return to parent */
-- b error_unified_syscall
--
--.Lclone_error:
-- li 3, EINVAL
-- b error_unified_syscall
-diff -NurpP dietlibc-0.30_pre20060501.orig/ppc/__longjmp.S dietlibc-0.30_pre20060501-ppc-rename/ppc/__longjmp.S
---- dietlibc-0.30_pre20060501.orig/ppc/__longjmp.S 2001-01-25 18:23:36.000000000 +0100
-+++ dietlibc-0.30_pre20060501-ppc-rename/ppc/__longjmp.S 1970-01-01 01:00:00.000000000 +0100
-@@ -1,59 +0,0 @@
--#include <setjmp.h>
--
--
--#ifdef PIC
--#define JUMPTARGET(name) name##@plt
--#else
--#define JUMPTARGET(name) name
--#endif
--
--.global __longjmp
--.type __longjmp,@function
--.align 2
--__longjmp:
-- lwz 1,(JB_GPR1*4)(3)
-- lwz 2,(JB_GPR2*4)(3)
-- lwz 0,(JB_LR*4)(3)
-- lwz 14,((JB_GPRS+0)*4)(3)
-- lfd 14,((JB_FPRS+0*2)*4)(3)
-- lwz 15,((JB_GPRS+1)*4)(3)
-- lfd 15,((JB_FPRS+1*2)*4)(3)
-- lwz 16,((JB_GPRS+2)*4)(3)
-- lfd 16,((JB_FPRS+2*2)*4)(3)
-- lwz 17,((JB_GPRS+3)*4)(3)
-- lfd 17,((JB_FPRS+3*2)*4)(3)
-- lwz 18,((JB_GPRS+4)*4)(3)
-- lfd 18,((JB_FPRS+4*2)*4)(3)
-- lwz 19,((JB_GPRS+5)*4)(3)
-- lfd 19,((JB_FPRS+5*2)*4)(3)
-- lwz 20,((JB_GPRS+6)*4)(3)
-- lfd 20,((JB_FPRS+6*2)*4)(3)
-- mtlr 0
-- lwz 21,((JB_GPRS+7)*4)(3)
-- lfd 21,((JB_FPRS+7*2)*4)(3)
-- lwz 22,((JB_GPRS+8)*4)(3)
-- lfd 22,((JB_FPRS+8*2)*4)(3)
-- lwz 0,(JB_CR*4)(3)
-- lwz 23,((JB_GPRS+9)*4)(3)
-- lfd 23,((JB_FPRS+9*2)*4)(3)
-- lwz 24,((JB_GPRS+10)*4)(3)
-- lfd 24,((JB_FPRS+10*2)*4)(3)
-- lwz 25,((JB_GPRS+11)*4)(3)
-- lfd 25,((JB_FPRS+11*2)*4)(3)
-- mtcrf 0xFF,0
-- lwz 26,((JB_GPRS+12)*4)(3)
-- lfd 26,((JB_FPRS+12*2)*4)(3)
-- lwz 27,((JB_GPRS+13)*4)(3)
-- lfd 27,((JB_FPRS+13*2)*4)(3)
-- lwz 28,((JB_GPRS+14)*4)(3)
-- lfd 28,((JB_FPRS+14*2)*4)(3)
-- lwz 29,((JB_GPRS+15)*4)(3)
-- lfd 29,((JB_FPRS+15*2)*4)(3)
-- lwz 30,((JB_GPRS+16)*4)(3)
-- lfd 30,((JB_FPRS+16*2)*4)(3)
-- lwz 31,((JB_GPRS+17)*4)(3)
-- lfd 31,((JB_FPRS+17*2)*4)(3)
-- mr 3,4
-- blr
--.size __longjmp,.-__longjmp
--
-diff -NurpP dietlibc-0.30_pre20060501.orig/ppc/Makefile.add dietlibc-0.30_pre20060501-ppc-rename/ppc/Makefile.add
---- dietlibc-0.30_pre20060501.orig/ppc/Makefile.add 2001-01-30 16:01:20.000000000 +0100
-+++ dietlibc-0.30_pre20060501-ppc-rename/ppc/Makefile.add 1970-01-01 01:00:00.000000000 +0100
-@@ -1,3 +0,0 @@
--
--CFLAGS+=-mpowerpc-gpopt -mpowerpc-gfxopt -Os
--VPATH:=ppc:syscalls.s:$(VPATH)
-diff -NurpP dietlibc-0.30_pre20060501.orig/ppc/mmap.c dietlibc-0.30_pre20060501-ppc-rename/ppc/mmap.c
---- dietlibc-0.30_pre20060501.orig/ppc/mmap.c 2001-06-18 23:08:07.000000000 +0200
-+++ dietlibc-0.30_pre20060501-ppc-rename/ppc/mmap.c 1970-01-01 01:00:00.000000000 +0100
-@@ -1,40 +0,0 @@
--#include "dietfeatures.h"
--#include <sys/types.h>
--#include <errno.h>
--#include "syscalls.h"
--
--int mmap(void*start,size_t length,int prot,int flags,int fd,off_t offset) {
-- unsigned long __sc_ret, __sc_err;
-- {
-- register unsigned long __sc_0 __asm__ ("r0");
-- register unsigned long __sc_3 __asm__ ("r3");
-- register unsigned long __sc_4 __asm__ ("r4");
-- register unsigned long __sc_5 __asm__ ("r5");
-- register unsigned long __sc_6 __asm__ ("r6");
-- register unsigned long __sc_7 __asm__ ("r7");
-- register unsigned long __sc_8 __asm__ ("r8");
--
-- __sc_3 = (unsigned long) (start);
-- __sc_4 = (unsigned long) (length);
-- __sc_5 = (unsigned long) (prot);
-- __sc_6 = (unsigned long) (flags);
-- __sc_7 = (unsigned long) (fd);
-- __sc_8 = (unsigned long) (offset);
-- __sc_0 = __NR_mmap;
-- __asm__ __volatile__
-- ("sc \n\t"
-- "mfcr %1 "
-- : "=&r" (__sc_3), "=&r" (__sc_0)
-- : "0" (__sc_3), "1" (__sc_0),
-- "r" (__sc_4),
-- "r" (__sc_5),
-- "r" (__sc_6),
-- "r" (__sc_7),
-- "r" (__sc_8)
-- : "r4", "r5", "r6", "r7", "r8", "r9", "r10", "r11", "r12");
-- __sc_ret = __sc_3;
-- __sc_err = __sc_0;
-- }
-- return (__sc_err & 0x10000000 ? errno = __sc_ret, __sc_ret = -1 : 0),
-- (int) __sc_ret;
--}
-diff -NurpP dietlibc-0.30_pre20060501.orig/ppc/setjmp.S dietlibc-0.30_pre20060501-ppc-rename/ppc/setjmp.S
---- dietlibc-0.30_pre20060501.orig/ppc/setjmp.S 2001-01-09 18:57:44.000000000 +0100
-+++ dietlibc-0.30_pre20060501-ppc-rename/ppc/setjmp.S 1970-01-01 01:00:00.000000000 +0100
-@@ -1,56 +0,0 @@
--#include <setjmp.h>
--
--#ifdef PIC
--#define JUMPTARGET(name) name##@plt
--#else
--#define JUMPTARGET(name) name
--#endif
--
--.global __sigsetjmp
--.type __sigsetjmp,@function
--.align 2
--__sigsetjmp:
-- stw 1,(JB_GPR1*4)(3)
-- mflr 0
-- stw 2,(JB_GPR2*4)(3)
-- stw 14,((JB_GPRS+0)*4)(3)
-- stfd 14,((JB_FPRS+0*2)*4)(3)
-- stw 0,(JB_LR*4)(3)
-- stw 15,((JB_GPRS+1)*4)(3)
-- stfd 15,((JB_FPRS+1*2)*4)(3)
-- mfcr 0
-- stw 16,((JB_GPRS+2)*4)(3)
-- stfd 16,((JB_FPRS+2*2)*4)(3)
-- stw 0,(JB_CR*4)(3)
-- stw 17,((JB_GPRS+3)*4)(3)
-- stfd 17,((JB_FPRS+3*2)*4)(3)
-- stw 18,((JB_GPRS+4)*4)(3)
-- stfd 18,((JB_FPRS+4*2)*4)(3)
-- stw 19,((JB_GPRS+5)*4)(3)
-- stfd 19,((JB_FPRS+5*2)*4)(3)
-- stw 20,((JB_GPRS+6)*4)(3)
-- stfd 20,((JB_FPRS+6*2)*4)(3)
-- stw 21,((JB_GPRS+7)*4)(3)
-- stfd 21,((JB_FPRS+7*2)*4)(3)
-- stw 22,((JB_GPRS+8)*4)(3)
-- stfd 22,((JB_FPRS+8*2)*4)(3)
-- stw 23,((JB_GPRS+9)*4)(3)
-- stfd 23,((JB_FPRS+9*2)*4)(3)
-- stw 24,((JB_GPRS+10)*4)(3)
-- stfd 24,((JB_FPRS+10*2)*4)(3)
-- stw 25,((JB_GPRS+11)*4)(3)
-- stfd 25,((JB_FPRS+11*2)*4)(3)
-- stw 26,((JB_GPRS+12)*4)(3)
-- stfd 26,((JB_FPRS+12*2)*4)(3)
-- stw 27,((JB_GPRS+13)*4)(3)
-- stfd 27,((JB_FPRS+13*2)*4)(3)
-- stw 28,((JB_GPRS+14)*4)(3)
-- stfd 28,((JB_FPRS+14*2)*4)(3)
-- stw 29,((JB_GPRS+15)*4)(3)
-- stfd 29,((JB_FPRS+15*2)*4)(3)
-- stw 30,((JB_GPRS+16)*4)(3)
-- stfd 30,((JB_FPRS+16*2)*4)(3)
-- stw 31,((JB_GPRS+17)*4)(3)
-- stfd 31,((JB_FPRS+17*2)*4)(3)
-- b JUMPTARGET (__sigjmp_save)
--.size __sigsetjmp,.-__sigsetjmp
-diff -NurpP dietlibc-0.30_pre20060501.orig/ppc/start.S dietlibc-0.30_pre20060501-ppc-rename/ppc/start.S
---- dietlibc-0.30_pre20060501.orig/ppc/start.S 2006-04-04 07:35:14.000000000 +0200
-+++ dietlibc-0.30_pre20060501-ppc-rename/ppc/start.S 1970-01-01 01:00:00.000000000 +0100
-@@ -1,52 +0,0 @@
--#include "dietfeatures.h"
--
--.text
--.global _start
--.type _start,@function
--_start:
-- /* Save the stack pointer, in case we're statically linked under Linux. */
-- mr 9,1
-- /* Set up an initial stack frame, and clear the LR. */
-- clrrwi 1,1,4
-- li 0,0
-- stwu 1,-16(1)
-- mtlr 0
-- stw 0,0(1)
--
-- /* r9 contains the initial stack pointer
-- argc = (r9)
-- argv = (r9+4)
-- envp = argv+(argc+1)*4 */
--
-- lis 14,__libc_stack_end@ha
-- stw 9,__libc_stack_end@l(14)
--
-- lwzu 3,0(9) /* argc */
-- addi 4,9,4 /* argv */
-- add 5,0,3 /* argc... */
-- addi 5,5,1 /* argc+1...*/
-- slwi 5,5,2 /* (argc+1)*4 */
-- add 5,5,4 /* argv+(argc+1)*4 */
--
-- lis 14,environ@ha
-- stw 5,environ@l(14)
--
--#ifdef WANT_DYNAMIC
-- mr 6,7
-- bl _dyn_start
--#else
-- bl CALL_IN_STARTCODE
--#endif
-- b exit
--.size _start,.-_start
--
--
--/* Define a symbol for the first piece of initialized data. */
-- .section ".data"
--__data_start:
--
--/* this is needed for libgcc_eh.a - see gcc-3.4/gcc/config/rs6000/linux-unwind.h */
-- .weak __libc_stack_end
-- .lcomm __libc_stack_end,4,4
-- .type __libc_stack_end,@object
--
-diff -NurpP dietlibc-0.30_pre20060501.orig/ppc/syscalls.h dietlibc-0.30_pre20060501-ppc-rename/ppc/syscalls.h
---- dietlibc-0.30_pre20060501.orig/ppc/syscalls.h 2005-09-21 09:33:08.000000000 +0200
-+++ dietlibc-0.30_pre20060501-ppc-rename/ppc/syscalls.h 1970-01-01 01:00:00.000000000 +0100
-@@ -1,299 +0,0 @@
--
--#define __NR_exit 1
--#define __NR_fork 2
--#define __NR_read 3
--#define __NR_write 4
--#define __NR_open 5
--#define __NR_close 6
--#define __NR_waitpid 7
--#define __NR_creat 8
--#define __NR_link 9
--#define __NR_unlink 10
--#define __NR_execve 11
--#define __NR_chdir 12
--#define __NR_time 13
--#define __NR_mknod 14
--#define __NR_chmod 15
--#define __NR_lchown 16
--#define __NR_break 17
--#define __NR_oldstat 18
--#define __NR_lseek 19
--#define __NR_getpid 20
--#define __NR_mount 21
--#define __NR_umount 22
--#define __NR_setuid 23
--#define __NR_getuid 24
--#define __NR_stime 25
--#define __NR_ptrace 26
--#define __NR_alarm 27
--#define __NR_oldfstat 28
--#define __NR_pause 29
--#define __NR_utime 30
--#define __NR_stty 31
--#define __NR_gtty 32
--#define __NR_access 33
--#define __NR_nice 34
--#define __NR_ftime 35
--#define __NR_sync 36
--#define __NR_kill 37
--#define __NR_rename 38
--#define __NR_mkdir 39
--#define __NR_rmdir 40
--#define __NR_dup 41
--#define __NR_pipe 42
--#define __NR_times 43
--#define __NR_prof 44
--#define __NR_brk 45
--#define __NR_setgid 46
--#define __NR_getgid 47
--#define __NR_signal 48
--#define __NR_geteuid 49
--#define __NR_getegid 50
--#define __NR_acct 51
--#define __NR_umount2 52
--#define __NR_lock 53
--#define __NR_ioctl 54
--#define __NR_fcntl 55
--#define __NR_mpx 56
--#define __NR_setpgid 57
--#define __NR_ulimit 58
--#define __NR_oldolduname 59
--#define __NR_umask 60
--#define __NR_chroot 61
--#define __NR_ustat 62
--#define __NR_dup2 63
--#define __NR_getppid 64
--#define __NR_getpgrp 65
--#define __NR_setsid 66
--#define __NR_sigaction 67
--#define __NR_sgetmask 68
--#define __NR_ssetmask 69
--#define __NR_setreuid 70
--#define __NR_setregid 71
--#define __NR_sigsuspend 72
--#define __NR_sigpending 73
--#define __NR_sethostname 74
--#define __NR_setrlimit 75
--#define __NR_getrlimit 76
--#define __NR_getrusage 77
--#define __NR_gettimeofday 78
--#define __NR_settimeofday 79
--#define __NR_getgroups 80
--#define __NR_setgroups 81
--#define __NR_select 82
--#define __NR_symlink 83
--#define __NR_oldlstat 84
--#define __NR_readlink 85
--#define __NR_uselib 86
--#define __NR_swapon 87
--#define __NR_reboot 88
--#define __NR_readdir 89
--#define __NR_mmap 90
--#define __NR_munmap 91
--#define __NR_truncate 92
--#define __NR_ftruncate 93
--#define __NR_fchmod 94
--#define __NR_fchown 95
--#define __NR_getpriority 96
--#define __NR_setpriority 97
--#define __NR_profil 98
--#define __NR_statfs 99
--#define __NR_fstatfs 100
--#define __NR_ioperm 101
--#define __NR_socketcall 102
--#define __NR_syslog 103
--#define __NR_setitimer 104
--#define __NR_getitimer 105
--#define __NR_stat 106
--#define __NR_lstat 107
--#define __NR_fstat 108
--#define __NR_olduname 109
--#define __NR_iopl 110
--#define __NR_vhangup 111
--#define __NR_idle 112
--#define __NR_vm86 113
--#define __NR_wait4 114
--#define __NR_swapoff 115
--#define __NR_sysinfo 116
--#define __NR_ipc 117
--#define __NR_fsync 118
--#define __NR_sigreturn 119
--#define __NR_clone 120
--#define __NR_setdomainname 121
--#define __NR_uname 122
--#define __NR_modify_ldt 123
--#define __NR_adjtimex 124
--#define __NR_mprotect 125
--#define __NR_sigprocmask 126
--#define __NR_create_module 127
--#define __NR_init_module 128
--#define __NR_delete_module 129
--#define __NR_get_kernel_syms 130
--#define __NR_quotactl 131
--#define __NR_getpgid 132
--#define __NR_fchdir 133
--#define __NR_bdflush 134
--#define __NR_sysfs 135
--#define __NR_personality 136
--#define __NR_afs_syscall 137 /* Syscall for Andrew File System */
--#define __NR_setfsuid 138
--#define __NR_setfsgid 139
--#define __NR__llseek 140
--#define __NR_getdents 141
--#define __NR__newselect 142
--#define __NR_flock 143
--#define __NR_msync 144
--#define __NR_readv 145
--#define __NR_writev 146
--#define __NR_getsid 147
--#define __NR_fdatasync 148
--#define __NR__sysctl 149
--#define __NR_mlock 150
--#define __NR_munlock 151
--#define __NR_mlockall 152
--#define __NR_munlockall 153
--#define __NR_sched_setparam 154
--#define __NR_sched_getparam 155
--#define __NR_sched_setscheduler 156
--#define __NR_sched_getscheduler 157
--#define __NR_sched_yield 158
--#define __NR_sched_get_priority_max 159
--#define __NR_sched_get_priority_min 160
--#define __NR_sched_rr_get_interval 161
--#define __NR_nanosleep 162
--#define __NR_mremap 163
--#define __NR_setresuid 164
--#define __NR_getresuid 165
--#define __NR_query_module 166
--#define __NR_poll 167
--#define __NR_nfsservctl 168
--#define __NR_setresgid 169
--#define __NR_getresgid 170
--#define __NR_prctl 171
--#define __NR_rt_sigreturn 172
--#define __NR_rt_sigaction 173
--#define __NR_rt_sigprocmask 174
--#define __NR_rt_sigpending 175
--#define __NR_rt_sigtimedwait 176
--#define __NR_rt_sigqueueinfo 177
--#define __NR_rt_sigsuspend 178
--#define __NR_pread 179
--#define __NR_pwrite 180
--#define __NR_chown 181
--#define __NR_getcwd 182
--#define __NR_capget 183
--#define __NR_capset 184
--#define __NR_sigaltstack 185
--#define __NR_sendfile 186
--#define __NR_getpmsg 187 /* some people actually want streams */
--#define __NR_putpmsg 188 /* some people actually want streams */
--#define __NR_vfork 189
--#define __NR_ugetrlimit 190 /* SuS compliant getrlimit */
--#define __NR_readahead 191
--#define __NR_mmap2 192
--#define __NR_truncate64 193
--#define __NR_ftruncate64 194
--#define __NR_stat64 195
--#define __NR_lstat64 196
--#define __NR_fstat64 197
--#define __NR_pciconfig_read 198
--#define __NR_pciconfig_write 199
--#define __NR_pciconfig_iobase 200
--#define __NR_multiplexer 201
--#define __NR_getdents64 202
--#define __NR_pivot_root 203
--#define __NR_fcntl64 204
--#define __NR_madvise 205
--#define __NR_mincore 206
--#define __NR_gettid 207
--#define __NR_tkill 208
--#define __NR_setxattr 209
--#define __NR_lsetxattr 210
--#define __NR_fsetxattr 211
--#define __NR_getxattr 212
--#define __NR_lgetxattr 213
--#define __NR_fgetxattr 214
--#define __NR_listxattr 215
--#define __NR_llistxattr 216
--#define __NR_flistxattr 217
--#define __NR_removexattr 218
--#define __NR_lremovexattr 219
--#define __NR_fremovexattr 220
--#define __NR_futex 221
--#define __NR_sched_setaffinity 222
--#define __NR_sched_getaffinity 223
--/* 224 currently unused */
--#define __NR_tuxcall 225
--#define __NR_sendfile64 226
--#define __NR_io_setup 227
--#define __NR_io_destroy 228
--#define __NR_io_getevents 229
--#define __NR_io_submit 230
--#define __NR_io_cancel 231
--#define __NR_set_tid_address 232
--#define __NR_fadvise64 233
--#define __NR_exit_group 234
--#define __NR_lookup_dcookie 235
--#define __NR_epoll_create 236
--#define __NR_epoll_ctl 237
--#define __NR_epoll_wait 238
--#define __NR_remap_file_pages 239
--#define __NR_timer_create 240
--#define __NR_timer_settime 241
--#define __NR_timer_gettime 242
--#define __NR_timer_getoverrun 243
--#define __NR_timer_delete 244
--#define __NR_clock_settime 245
--#define __NR_clock_gettime 246
--#define __NR_clock_getres 247
--#define __NR_clock_nanosleep 248
--#define __NR_swapcontext 249
--#define __NR_tgkill 250
--#define __NR_utimes 251
--#define __NR_statfs64 252
--#define __NR_fstatfs64 253
--#define __NR_fadvise64_64 254
--#define __NR_rtas 255
--#define __NR_sys_debug_setcontext 256
--/* Number 257 is reserved for vserver */
--/* Number 258 is reserved for new sys_remap_file_pages */
--/* Number 259 is reserved for new sys_mbind */
--/* Number 260 is reserved for new sys_get_mempolicy */
--/* Number 261 is reserved for new sys_set_mempolicy */
--#define __NR_mq_open 262
--#define __NR_mq_unlink 263
--#define __NR_mq_timedsend 264
--#define __NR_mq_timedreceive 265
--#define __NR_mq_notify 266
--#define __NR_mq_getsetattr 267
--#define __NR_kexec_load 268
--#define __NR_add_key 269
--#define __NR_request_key 270
--#define __NR_keyctl 271
--#define __NR_waitid 272
--#define __NR_ioprio_set 273
--#define __NR_ioprio_get 274
--#define __NR_inotify_init 275
--#define __NR_inotify_add_watch 276
--#define __NR_inotify_rm_watch 277
--
--
--#define syscall_weak(name,wsym,sym) \
--.text; \
--.type wsym,@function; \
--.weak wsym; \
--wsym: ; \
--.type sym,@function; \
--.global sym; \
--sym: \
-- li 0,__NR_##name; \
-- b __unified_syscall
--
--#define syscall(name,sym) \
--.text; \
--.type sym,@function; \
--.global sym; \
--sym: \
-- li 0,__NR_##name; \
-- b __unified_syscall
--
-diff -NurpP dietlibc-0.30_pre20060501.orig/ppc/__testandset.S dietlibc-0.30_pre20060501-ppc-rename/ppc/__testandset.S
---- dietlibc-0.30_pre20060501.orig/ppc/__testandset.S 2002-09-16 13:17:01.000000000 +0200
-+++ dietlibc-0.30_pre20060501-ppc-rename/ppc/__testandset.S 1970-01-01 01:00:00.000000000 +0100
-@@ -1,12 +0,0 @@
--.global __testandset
--.type __testandset,@function
--.align 2
--__testandset:
--1: lwarx 5,0,3
-- li 0,1
-- stwcx. 0,0,3
-- bne- 1b
-- mr 3,5
-- blr
--.size __testandset,.-__testandset
--
-diff -NurpP dietlibc-0.30_pre20060501.orig/ppc/unified.S dietlibc-0.30_pre20060501-ppc-rename/ppc/unified.S
---- dietlibc-0.30_pre20060501.orig/ppc/unified.S 2002-01-21 16:55:19.000000000 +0100
-+++ dietlibc-0.30_pre20060501-ppc-rename/ppc/unified.S 1970-01-01 01:00:00.000000000 +0100
-@@ -1,40 +0,0 @@
--#include <dietfeatures.h>
--#include "syscalls.h"
--
--.text
--.type exit,@function
--.weak exit
--exit:
--.type _exit,@function
--.global _exit
--_exit:
-- li 0,__NR_exit
--.global __unified_syscall
--__unified_syscall:
-- sc
-- bnslr+
--
--.global error_unified_syscall
--error_unified_syscall:
--#ifdef WANT_THREAD_SAFE
-- stwu 1,-16(1)
-- mflr 0
-- stw 0,20(1)
-- stw 3,12(1)
-- bl __errno_location
-- lwz 0,12(1)
-- stw 0,0(3)
-- lwz 0,20(1)
-- mtlr 0
-- addi 1,1,16
--#else
-- lis 9,errno@ha
-- stw 3,errno@l(9)
--#endif
-- li 3,-1
--
--/* here we go and "reuse" the return for weak-void functions */
--#include "dietuglyweaks.h"
--
-- blr
--
-diff -NurpP dietlibc-0.30_pre20060501.orig/ppc64/clone.S dietlibc-0.30_pre20060501-ppc-rename/ppc64/clone.S
---- dietlibc-0.30_pre20060501.orig/ppc64/clone.S 2005-05-13 20:39:32.000000000 +0200
-+++ dietlibc-0.30_pre20060501-ppc-rename/ppc64/clone.S 1970-01-01 01:00:00.000000000 +0100
-@@ -1,52 +0,0 @@
--#include <dietfeatures.h>
--#include "syscalls.h"
--#include <errno.h>
--
--.text
--.weak clone
--clone:
--.global __clone
--__clone:
-- cmpwi 4,0 /* check have non null child_stack pointer */
-- cmpwi cr1, 3,0 /* check have non null thread_funcion */
-- cror eq,4*cr1+eq,eq /* now if eq is set one is or both are zero */
-- beq .Lclone_error
--
-- stdu 1,-64(1) /* alloc some space on the stack */
-- std 29, 16(1) /* save r29,r30,r31 on stack */
-- std 30, 24(1)
-- std 31, 32(1)
--
-- rlwinm 4,4,0,0,27 /* mask out lower 4 bits */
--
-- /* move parameter to positions clone wants them */
-- mr 29,3 /* r29 = r3 fn */
-- mr 30,4 /* r30 = r4 stack */
-- mr 31,6 /* r31 = r6 arg */
-- mr 3, 5 /* r3 = r5 flags */
--
-- li 0, __NR_clone /* load syscall nr. */
-- sc
--
-- cmpwi cr1,3,0 /* compare return of syscall with 0 */
-- crandc 4*cr1+eq,4*cr1+eq,so
-- bne .Lclone_parent /* return was non zero -> .Lclone_parent */
--
-- /* we are the cloned process */
-- mr 1, 30 /* set stack pointer */
-- mtctr 29 /* set count register to fn ? */
-- mr 3, 31 /* set argument */
-- bctrl /* branch trough count register and link */
-- b _exit /* exit thread */
--
--.Lclone_parent:
-- ld 29,16(1) /* restore saved registers */
-- ld 30,24(1)
-- ld 31,32(1)
-- addi 1, 1,64 /* free stack */
-- bnslr+ /* had cloned a thread so return to parent */
-- b error_unified_syscall
--
--.Lclone_error:
-- li 3, EINVAL
-- b error_unified_syscall
-diff -NurpP dietlibc-0.30_pre20060501.orig/ppc64/__longjmp.S dietlibc-0.30_pre20060501-ppc-rename/ppc64/__longjmp.S
---- dietlibc-0.30_pre20060501.orig/ppc64/__longjmp.S 2005-09-21 09:33:08.000000000 +0200
-+++ dietlibc-0.30_pre20060501-ppc-rename/ppc64/__longjmp.S 1970-01-01 01:00:00.000000000 +0100
-@@ -1,54 +0,0 @@
--#include <setjmp.h>
--
-- .quad .__longjmp,.TOC.@tocbase,0
-- .text
-- .size __longjmp,24
-- .type .__longjmp,@function
-- .globl .__longjmp
--.align 2
--.__longjmp:
-- ld 1,(JB_GPR1*8)(3)
-- ld 2,(JB_GPR2*8)(3)
-- ld 0,(JB_LR*8)(3)
-- ld 14,((JB_GPRS+0)*8)(3)
-- lfd 14,((JB_FPRS+0)*8)(3)
-- ld 15,((JB_GPRS+1)*8)(3)
-- lfd 15,((JB_FPRS+1)*8)(3)
-- ld 16,((JB_GPRS+2)*8)(3)
-- lfd 16,((JB_FPRS+2)*8)(3)
-- ld 17,((JB_GPRS+3)*8)(3)
-- lfd 17,((JB_FPRS+3)*8)(3)
-- ld 18,((JB_GPRS+4)*8)(3)
-- lfd 18,((JB_FPRS+4)*8)(3)
-- ld 19,((JB_GPRS+5)*8)(3)
-- lfd 19,((JB_FPRS+5)*8)(3)
-- ld 20,((JB_GPRS+6)*8)(3)
-- lfd 20,((JB_FPRS+6)*8)(3)
-- mtlr 0
-- ld 21,((JB_GPRS+7)*8)(3)
-- lfd 21,((JB_FPRS+7)*8)(3)
-- ld 22,((JB_GPRS+8)*8)(3)
-- lfd 22,((JB_FPRS+8)*8)(3)
-- ld 0,(JB_CR*8)(3)
-- ld 23,((JB_GPRS+9)*8)(3)
-- lfd 23,((JB_FPRS+9)*8)(3)
-- ld 24,((JB_GPRS+10)*8)(3)
-- lfd 24,((JB_FPRS+10)*8)(3)
-- ld 25,((JB_GPRS+11)*8)(3)
-- lfd 25,((JB_FPRS+11)*8)(3)
-- mtcrf 0xFF,0
-- ld 26,((JB_GPRS+12)*8)(3)
-- lfd 26,((JB_FPRS+12)*8)(3)
-- ld 27,((JB_GPRS+13)*8)(3)
-- lfd 27,((JB_FPRS+13)*8)(3)
-- ld 28,((JB_GPRS+14)*8)(3)
-- lfd 28,((JB_FPRS+14)*8)(3)
-- ld 29,((JB_GPRS+15)*8)(3)
-- lfd 29,((JB_FPRS+15)*8)(3)
-- ld 30,((JB_GPRS+16)*8)(3)
-- lfd 30,((JB_FPRS+16)*8)(3)
-- ld 31,((JB_GPRS+17)*8)(3)
-- lfd 31,((JB_FPRS+17)*8)(3)
-- mr 3,4
-- blr
--.size .__longjmp,.-.__longjmp
-diff -NurpP dietlibc-0.30_pre20060501.orig/ppc64/Makefile.add dietlibc-0.30_pre20060501-ppc-rename/ppc64/Makefile.add
---- dietlibc-0.30_pre20060501.orig/ppc64/Makefile.add 2003-10-10 15:37:34.000000000 +0200
-+++ dietlibc-0.30_pre20060501-ppc-rename/ppc64/Makefile.add 1970-01-01 01:00:00.000000000 +0100
-@@ -1,3 +0,0 @@
--
--CFLAGS+=-Os -mpowerpc64
--VPATH:=ppc64:syscalls.s:$(VPATH)
-diff -NurpP dietlibc-0.30_pre20060501.orig/ppc64/setjmp.S dietlibc-0.30_pre20060501-ppc-rename/ppc64/setjmp.S
---- dietlibc-0.30_pre20060501.orig/ppc64/setjmp.S 2005-09-21 09:33:08.000000000 +0200
-+++ dietlibc-0.30_pre20060501-ppc-rename/ppc64/setjmp.S 1970-01-01 01:00:00.000000000 +0100
-@@ -1,59 +0,0 @@
--#include <setjmp.h>
--
--#ifdef PIC
--#define JUMPTARGET(name) name##@plt
--#else
--#define JUMPTARGET(name) .name
--#endif
--
-- .quad .__sigsetjmp,.TOC.@tocbase,0
-- .text
-- .size __sigsetjmp,24
-- .type .__sigsetjmp,@function
-- .globl .__sigsetjmp
--.align 2
--.__sigsetjmp:
-- std 1,(JB_GPR1*8)(3)
-- mflr 0
-- std 2,(JB_GPR2*8)(3)
-- std 14,((JB_GPRS+0)*8)(3)
-- stfd 14,((JB_FPRS+0)*8)(3)
-- std 0,(JB_LR*8)(3)
-- std 15,((JB_GPRS+1)*8)(3)
-- stfd 15,((JB_FPRS+1)*8)(3)
-- mfcr 0
-- std 16,((JB_GPRS+2)*8)(3)
-- stfd 16,((JB_FPRS+2)*8)(3)
-- std 0,(JB_CR*8)(3)
-- std 17,((JB_GPRS+3)*8)(3)
-- stfd 17,((JB_FPRS+3)*8)(3)
-- std 18,((JB_GPRS+4)*8)(3)
-- stfd 18,((JB_FPRS+4)*8)(3)
-- std 19,((JB_GPRS+5)*8)(3)
-- stfd 19,((JB_FPRS+5)*8)(3)
-- std 20,((JB_GPRS+6)*8)(3)
-- stfd 20,((JB_FPRS+6)*8)(3)
-- std 21,((JB_GPRS+7)*8)(3)
-- stfd 21,((JB_FPRS+7)*8)(3)
-- std 22,((JB_GPRS+8)*8)(3)
-- stfd 22,((JB_FPRS+8)*8)(3)
-- std 23,((JB_GPRS+9)*8)(3)
-- stfd 23,((JB_FPRS+9)*8)(3)
-- std 24,((JB_GPRS+10)*8)(3)
-- stfd 24,((JB_FPRS+10)*8)(3)
-- std 25,((JB_GPRS+11)*8)(3)
-- stfd 25,((JB_FPRS+11)*8)(3)
-- std 26,((JB_GPRS+12)*8)(3)
-- stfd 26,((JB_FPRS+12)*8)(3)
-- std 27,((JB_GPRS+13)*8)(3)
-- stfd 27,((JB_FPRS+13)*8)(3)
-- std 28,((JB_GPRS+14)*8)(3)
-- stfd 28,((JB_FPRS+14)*8)(3)
-- std 29,((JB_GPRS+15)*8)(3)
-- stfd 29,((JB_FPRS+15)*8)(3)
-- std 30,((JB_GPRS+16)*8)(3)
-- stfd 30,((JB_FPRS+16)*8)(3)
-- std 31,((JB_GPRS+17)*8)(3)
-- stfd 31,((JB_FPRS+17)*8)(3)
-- b JUMPTARGET (__sigjmp_save)
--.size .__sigsetjmp,.-.__sigsetjmp
-diff -NurpP dietlibc-0.30_pre20060501.orig/ppc64/start.S dietlibc-0.30_pre20060501-ppc-rename/ppc64/start.S
---- dietlibc-0.30_pre20060501.orig/ppc64/start.S 2006-04-04 07:35:14.000000000 +0200
-+++ dietlibc-0.30_pre20060501-ppc-rename/ppc64/start.S 1970-01-01 01:00:00.000000000 +0100
-@@ -1,91 +0,0 @@
--#include "dietfeatures.h"
--
-- .section ".text"
-- .align 2
-- .globl ._start
-- .type ._start,@function
-- .globl _start
-- .section ".opd","aw"
--_start:
-- .quad ._start
-- .quad .TOC.@tocbase, 0
-- .previous
--._start:
--
--/*
-- .section ".text"
-- .align 2
-- .globl ._start
-- .type ._start,@function
-- .globl _start
-- .section ".opd","aw"
--_start:
-- .quad ._start
-- .quad .TOC.@tocbase, 0
-- .previous
--._start:
--*/
-- /* Save the stack pointer, in case we're statically linked under Linux. */
-- mr 9,1
-- /* Set up an initial stack frame, and clear the LR. */
-- clrrdi 1,1,4
-- li 0,0
-- stdu 1,-128(1)
-- mtlr 0
-- std 0,0(1)
--
-- /* r9 contains the initial stack pointer
-- argc = (r9)
-- argv = (r9+4)
-- envp = argv+(argc+1)*4 */
--
-- lis 14,__libc_stack_end@highesta
-- ori 14,14,__libc_stack_end@highera
-- sldi 14,14,32
-- oris 14,14,__libc_stack_end@ha
-- std 9,__libc_stack_end@l(14)
--
-- ldu 3,0(9) /* argc */
-- addi 4,9,8 /* argv */
-- add 5,0,3 /* argc... */
-- addi 5,5,1 /* argc+1...*/
-- slwi 5,5,3 /* (argc+1)*8 */
-- add 5,5,4 /* argv+(argc+1)*8 */
--
-- lis 14,environ@highesta
-- ori 14,14,environ@highera
-- sldi 14,14,32
-- oris 14,14,environ@ha
-- std 5,environ@l(14)
--
--#ifdef WANT_DYNAMIC
--/* #warning dynamic */
-- mr 6,7
-- bl ._dyn_start
--#else
--/* #warning static */
--#define DOTIFY(name) .##name
-- bl DOTIFY(CALL_IN_STARTCODE)
--#endif
-- b .exit
--
--.LT_start:
-- .long 0
-- .quad 0x000c000000000000 | 0x0000200000000000 | 0x0000004000000000
-- .long .LT_start-._start
-- .short .LT_start_name_end-.LT_start_name_start
--.LT_start_name_start:
-- .ascii "_start"
--.LT_start_name_end:
-- .align 2
-- .size _start,.-_start
--
--/* Define a symbol for the first piece of initialized data. */
-- .section ".data"
--__data_start:
--
--/* this is needed for libgcc_eh.a - see gcc-3.4/gcc/config/rs6000/linux-unwind.h */
-- .weak __libc_stack_end
-- .lcomm __libc_stack_end,8,8
-- .type __libc_stack_end,@object
--
-diff -NurpP dietlibc-0.30_pre20060501.orig/ppc64/syscalls.h dietlibc-0.30_pre20060501-ppc-rename/ppc64/syscalls.h
---- dietlibc-0.30_pre20060501.orig/ppc64/syscalls.h 2005-09-21 09:33:08.000000000 +0200
-+++ dietlibc-0.30_pre20060501-ppc-rename/ppc64/syscalls.h 1970-01-01 01:00:00.000000000 +0100
-@@ -1,317 +0,0 @@
--
--#define __NR_exit 1
--#define __NR_fork 2
--#define __NR_read 3
--#define __NR_write 4
--#define __NR_open 5
--#define __NR_close 6
--#define __NR_waitpid 7
--#define __NR_creat 8
--#define __NR_link 9
--#define __NR_unlink 10
--#define __NR_execve 11
--#define __NR_chdir 12
--#define __NR_time 13
--#define __NR_mknod 14
--#define __NR_chmod 15
--#define __NR_lchown 16
--#define __NR_break 17
--#define __NR_oldstat 18
--#define __NR_lseek 19
--#define __NR_getpid 20
--#define __NR_mount 21
--#define __NR_umount 22
--#define __NR_setuid 23
--#define __NR_getuid 24
--#define __NR_stime 25
--#define __NR_ptrace 26
--#define __NR_alarm 27
--#define __NR_oldfstat 28
--#define __NR_pause 29
--#define __NR_utime 30
--#define __NR_stty 31
--#define __NR_gtty 32
--#define __NR_access 33
--#define __NR_nice 34
--#define __NR_ftime 35
--#define __NR_sync 36
--#define __NR_kill 37
--#define __NR_rename 38
--#define __NR_mkdir 39
--#define __NR_rmdir 40
--#define __NR_dup 41
--#define __NR_pipe 42
--#define __NR_times 43
--#define __NR_prof 44
--#define __NR_brk 45
--#define __NR_setgid 46
--#define __NR_getgid 47
--#define __NR_signal 48
--#define __NR_geteuid 49
--#define __NR_getegid 50
--#define __NR_acct 51
--#define __NR_umount2 52
--#define __NR_lock 53
--#define __NR_ioctl 54
--#define __NR_fcntl 55
--#define __NR_mpx 56
--#define __NR_setpgid 57
--#define __NR_ulimit 58
--#define __NR_oldolduname 59
--#define __NR_umask 60
--#define __NR_chroot 61
--#define __NR_ustat 62
--#define __NR_dup2 63
--#define __NR_getppid 64
--#define __NR_getpgrp 65
--#define __NR_setsid 66
--#define __NR_sigaction 67
--#define __NR_sgetmask 68
--#define __NR_ssetmask 69
--#define __NR_setreuid 70
--#define __NR_setregid 71
--#define __NR_sigsuspend 72
--#define __NR_sigpending 73
--#define __NR_sethostname 74
--#define __NR_setrlimit 75
--#define __NR_getrlimit 76
--#define __NR_getrusage 77
--#define __NR_gettimeofday 78
--#define __NR_settimeofday 79
--#define __NR_getgroups 80
--#define __NR_setgroups 81
--#define __NR_select 82
--#define __NR_symlink 83
--#define __NR_oldlstat 84
--#define __NR_readlink 85
--#define __NR_uselib 86
--#define __NR_swapon 87
--#define __NR_reboot 88
--#define __NR_readdir 89
--#define __NR_mmap 90
--#define __NR_munmap 91
--#define __NR_truncate 92
--#define __NR_ftruncate 93
--#define __NR_fchmod 94
--#define __NR_fchown 95
--#define __NR_getpriority 96
--#define __NR_setpriority 97
--#define __NR_profil 98
--#define __NR_statfs 99
--#define __NR_fstatfs 100
--#define __NR_ioperm 101
--#define __NR_socketcall 102
--#define __NR_syslog 103
--#define __NR_setitimer 104
--#define __NR_getitimer 105
--#define __NR_stat 106
--#define __NR_lstat 107
--#define __NR_fstat 108
--#define __NR_olduname 109
--#define __NR_iopl 110
--#define __NR_vhangup 111
--#define __NR_idle 112
--#define __NR_vm86 113
--#define __NR_wait4 114
--#define __NR_swapoff 115
--#define __NR_sysinfo 116
--#define __NR_ipc 117
--#define __NR_fsync 118
--#define __NR_sigreturn 119
--#define __NR_clone 120
--#define __NR_setdomainname 121
--#define __NR_uname 122
--#define __NR_modify_ldt 123
--#define __NR_adjtimex 124
--#define __NR_mprotect 125
--#define __NR_sigprocmask 126
--#define __NR_create_module 127
--#define __NR_init_module 128
--#define __NR_delete_module 129
--#define __NR_get_kernel_syms 130
--#define __NR_quotactl 131
--#define __NR_getpgid 132
--#define __NR_fchdir 133
--#define __NR_bdflush 134
--#define __NR_sysfs 135
--#define __NR_personality 136
--#define __NR_afs_syscall 137 /* Syscall for Andrew File System */
--#define __NR_setfsuid 138
--#define __NR_setfsgid 139
--#define __NR__llseek 140
--#define __NR_getdents 141
--#define __NR__newselect 142
--#define __NR_flock 143
--#define __NR_msync 144
--#define __NR_readv 145
--#define __NR_writev 146
--#define __NR_getsid 147
--#define __NR_fdatasync 148
--#define __NR__sysctl 149
--#define __NR_mlock 150
--#define __NR_munlock 151
--#define __NR_mlockall 152
--#define __NR_munlockall 153
--#define __NR_sched_setparam 154
--#define __NR_sched_getparam 155
--#define __NR_sched_setscheduler 156
--#define __NR_sched_getscheduler 157
--#define __NR_sched_yield 158
--#define __NR_sched_get_priority_max 159
--#define __NR_sched_get_priority_min 160
--#define __NR_sched_rr_get_interval 161
--#define __NR_nanosleep 162
--#define __NR_mremap 163
--#define __NR_setresuid 164
--#define __NR_getresuid 165
--#define __NR_query_module 166
--#define __NR_poll 167
--#define __NR_nfsservctl 168
--#define __NR_setresgid 169
--#define __NR_getresgid 170
--#define __NR_prctl 171
--#define __NR_rt_sigreturn 172
--#define __NR_rt_sigaction 173
--#define __NR_rt_sigprocmask 174
--#define __NR_rt_sigpending 175
--#define __NR_rt_sigtimedwait 176
--#define __NR_rt_sigqueueinfo 177
--#define __NR_rt_sigsuspend 178
--#define __NR_pread 179
--#define __NR_pwrite 180
--#define __NR_chown 181
--#define __NR_getcwd 182
--#define __NR_capget 183
--#define __NR_capset 184
--#define __NR_sigaltstack 185
--#define __NR_sendfile 186
--#define __NR_getpmsg 187 /* some people actually want streams */
--#define __NR_putpmsg 188 /* some people actually want streams */
--#define __NR_vfork 189
--#define __NR_ugetrlimit 190 /* SuS compliant getrlimit */
--#define __NR_readahead 191
--/* #define __NR_mmap2 192 32bit only */
--/* #define __NR_truncate64 193 32bit only */
--/* #define __NR_ftruncate64 194 32bit only */
--/* #define __NR_stat64 195 32bit only */
--/* #define __NR_lstat64 196 32bit only */
--/* #define __NR_fstat64 197 32bit only */
--#define __NR_pciconfig_read 198
--#define __NR_pciconfig_write 199
--#define __NR_pciconfig_iobase 200
--#define __NR_multiplexer 201
--#define __NR_getdents64 202
--#define __NR_pivot_root 203
--/* #define __NR_fcntl64 204 32bit only */
--#define __NR_madvise 205
--#define __NR_mincore 206
--#define __NR_gettid 207
--#define __NR_tkill 208
--#define __NR_setxattr 209
--#define __NR_lsetxattr 210
--#define __NR_fsetxattr 211
--#define __NR_getxattr 212
--#define __NR_lgetxattr 213
--#define __NR_fgetxattr 214
--#define __NR_listxattr 215
--#define __NR_llistxattr 216
--#define __NR_flistxattr 217
--#define __NR_removexattr 218
--#define __NR_lremovexattr 219
--#define __NR_fremovexattr 220
--#define __NR_futex 221
--#define __NR_sched_setaffinity 222
--#define __NR_sched_getaffinity 223
--/* 224 currently unused */
--#define __NR_tuxcall 225
--/* #define __NR_sendfile64 226 32bit only */
--#define __NR_io_setup 227
--#define __NR_io_destroy 228
--#define __NR_io_getevents 229
--#define __NR_io_submit 230
--#define __NR_io_cancel 231
--#define __NR_set_tid_address 232
--#define __NR_fadvise64 233
--#define __NR_exit_group 234
--#define __NR_lookup_dcookie 235
--#define __NR_epoll_create 236
--#define __NR_epoll_ctl 237
--#define __NR_epoll_wait 238
--#define __NR_remap_file_pages 239
--#define __NR_timer_create 240
--#define __NR_timer_settime 241
--#define __NR_timer_gettime 242
--#define __NR_timer_getoverrun 243
--#define __NR_timer_delete 244
--#define __NR_clock_settime 245
--#define __NR_clock_gettime 246
--#define __NR_clock_getres 247
--#define __NR_clock_nanosleep 248
--#define __NR_swapcontext 249
--#define __NR_tgkill 250
--#define __NR_utimes 251
--#define __NR_statfs64 252
--#define __NR_fstatfs64 253
--/* #define __NR_fadvise64_64 254 32bit only */
--#define __NR_rtas 255
--/* Number 256 is reserved for sys_debug_setcontext */
--/* Number 257 is reserved for vserver */
--/* Number 258 is reserved for new sys_remap_file_pages */
--#define __NR_mbind 259
--#define __NR_get_mempolicy 260
--#define __NR_set_mempolicy 261
--#define __NR_mq_open 262
--#define __NR_mq_unlink 263
--#define __NR_mq_timedsend 264
--#define __NR_mq_timedreceive 265
--#define __NR_mq_notify 266
--#define __NR_mq_getsetattr 267
--#define __NR_kexec_load 268
--#define __NR_add_key 269
--#define __NR_request_key 270
--#define __NR_keyctl 271
--#define __NR_waitid 272
--#define __NR_ioprio_set 273
--#define __NR_ioprio_get 274
--#define __NR_inotify_init 275
--#define __NR_inotify_add_watch 276
--#define __NR_inotify_rm_watch 277
--
--
--
--#define __diet_proto_common(sym) \
-- .section ".opd","aw"; \
-- .align 3; \
--sym: \
-- .quad .sym,.TOC.@tocbase,0; \
-- .previous; \
-- .size sym,24; \
-- .type .sym,@function
--
--#define diet_proto_weak(sym) \
-- .weak sym; \
-- .weak .sym; \
-- __diet_proto_common(sym)
--
--#define diet_proto(sym) \
-- .globl sym; \
-- .globl .sym; \
-- __diet_proto_common(sym)
--
--
--#define syscall_weak(name,wsym,sym) \
--.text; \
--diet_proto_weak(wsym); \
--diet_proto(sym); \
--.wsym: \
--.sym: \
-- li 0,__NR_##name; \
-- b __unified_syscall
--
--#define syscall(name,sym) \
--.text; \
--diet_proto(sym); \
--.sym: \
-- li 0,__NR_##name; \
-- b __unified_syscall
--
-diff -NurpP dietlibc-0.30_pre20060501.orig/ppc64/__testandset.S dietlibc-0.30_pre20060501-ppc-rename/ppc64/__testandset.S
---- dietlibc-0.30_pre20060501.orig/ppc64/__testandset.S 2003-10-10 15:37:34.000000000 +0200
-+++ dietlibc-0.30_pre20060501-ppc-rename/ppc64/__testandset.S 1970-01-01 01:00:00.000000000 +0100
-@@ -1,12 +0,0 @@
--.global __testandset
--.type __testandset,@function
--.align 2
--__testandset:
--1: lwarx 5,0,3
-- li 0,1
-- stwcx. 0,0,3
-- bne- 1b
-- mr 3,5
-- blr
--.size __testandset,.-__testandset
--
-diff -NurpP dietlibc-0.30_pre20060501.orig/ppc64/umount.S dietlibc-0.30_pre20060501-ppc-rename/ppc64/umount.S
---- dietlibc-0.30_pre20060501.orig/ppc64/umount.S 2004-12-17 19:47:59.000000000 +0100
-+++ dietlibc-0.30_pre20060501-ppc-rename/ppc64/umount.S 1970-01-01 01:00:00.000000000 +0100
-@@ -1,8 +0,0 @@
--#include "syscalls.h"
--
-- .text
--diet_proto(umount)
--.umount:
-- li 0, __NR_umount2
-- li 4, 0
-- b __unified_syscall
-diff -NurpP dietlibc-0.30_pre20060501.orig/ppc64/unified.S dietlibc-0.30_pre20060501-ppc-rename/ppc64/unified.S
---- dietlibc-0.30_pre20060501.orig/ppc64/unified.S 2005-05-13 20:39:32.000000000 +0200
-+++ dietlibc-0.30_pre20060501-ppc-rename/ppc64/unified.S 1970-01-01 01:00:00.000000000 +0100
-@@ -1,71 +0,0 @@
--#include <dietfeatures.h>
--#include "syscalls.h"
--
-- .text
--.exit:
-- .weak .exit
--._exit:
-- li 0,__NR_exit
-- .global __unified_syscall
--__unified_syscall:
-- sc
-- bnslr+
--
-- .global error_unified_syscall
--error_unified_syscall:
--
--#ifdef WANT_THREAD_SAFE
-- stdu 1,-128(1)
-- mflr 0
-- std 0,20(1)
-- std 3,12(1)
-- bl .__errno_location
-- ld 0,12(1)
-- stw 0,0(3)
-- ld 0,20(1)
-- mtlr 0
-- addi 1,1,128
--#else
-- lis 9,errno@highesta
-- ori 9,9,errno@highera
-- sldi 9,9,32
-- oris 9,9,errno@ha
-- stw 3,errno@l(9)
--#endif
-- li 3,-1
--
--/* here we go and "reuse" the return for weak-void functions */
--//#include "dietuglyweaks.h"
--.__thread_doexit:
-- .weak .__thread_doexit
--.__fflush_stdin:
-- .weak .__fflush_stdin
--.__fflush_stdout:
-- .weak .__fflush_stdout
--.__fflush_stderr:
-- .weak .__fflush_stderr
--.flockfile:
-- .weak .flockfile
--.funlockfile:
-- .weak .funlockfile
--.__nop:
-- .weak .__nop
--.__you_tried_to_link_a_dietlibc_object_against_glibc:
-- .weak .__you_tried_to_link_a_dietlibc_object_against_glibc
--
-- blr
-- .long 0
-- .byte 0,0,0,1,128,0,0,0
-- .size ._exit,.-._exit
-- .size .exit,.-.exit
--
--diet_proto_weak(__thread_doexit)
--diet_proto_weak(__fflush_stdin)
--diet_proto_weak(__fflush_stdout)
--diet_proto_weak(__fflush_stderr)
--diet_proto_weak(flockfile)
--diet_proto_weak(funlockfile)
--diet_proto_weak(__nop)
--diet_proto_weak(__you_tried_to_link_a_dietlibc_object_against_glibc)
--diet_proto_weak(exit)
--diet_proto(_exit)
-diff -NurpP dietlibc-0.30_pre20060501.orig/syscalls.h dietlibc-0.30_pre20060501-ppc-rename/syscalls.h
---- dietlibc-0.30_pre20060501.orig/syscalls.h 2005-03-15 09:51:22.000000000 +0100
-+++ dietlibc-0.30_pre20060501-ppc-rename/syscalls.h 2006-05-01 12:22:21.566468000 +0200
-@@ -12,10 +12,10 @@
- #endif
-
- #elif defined(__powerpc64__)
--#include "ppc64/syscalls.h"
-+#include "powerpc64/syscalls.h"
-
- #elif defined(__powerpc__)
--#include "ppc/syscalls.h"
-+#include "powerpc/syscalls.h"
-
- #elif defined(__mips__)
- #include "mips/syscalls.h"
diff --git a/dietlibc/patches/0.30_pre20060501-r1/04_all_prefix.patch b/dietlibc/patches/0.30_pre20060501-r1/04_all_prefix.patch
deleted file mode 100644
index 9f8aa7f..0000000
--- a/dietlibc/patches/0.30_pre20060501-r1/04_all_prefix.patch
+++ /dev/null
@@ -1,10 +0,0 @@
-diff -NurpP dietlibc-0.30_pre20060501.orig/Makefile dietlibc-0.30_pre20060501/Makefile
---- dietlibc-0.30_pre20060501.orig/Makefile 2006-04-04 07:35:14.000000000 +0200
-+++ dietlibc-0.30_pre20060501/Makefile 2006-05-01 13:03:31.816974500 +0200
-@@ -1,5 +1,5 @@
- INSTALL=install
--prefix?=/opt/diet
-+prefix=/usr/diet
- # Set the following to install to a different root
- #DESTDIR=/tmp/fefix
- # Use "make DEBUG=1" to compile a debug version.
diff --git a/dietlibc/patches/0.30_pre20060501-r1/05_all_diet.ld.conf.patch b/dietlibc/patches/0.30_pre20060501-r1/05_all_diet.ld.conf.patch
deleted file mode 100644
index 027c32e..0000000
--- a/dietlibc/patches/0.30_pre20060501-r1/05_all_diet.ld.conf.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: dietlibc-0.30_pre20060501/Makefile
-===================================================================
---- dietlibc-0.30_pre20060501/Makefile
-+++ dietlibc-0.30_pre20060501/Makefile
-@@ -359,7 +359,7 @@ endif
- -$(INSTALL) $(PICODIR)/dyn_stop.o $(DESTDIR)$(ILIBDIR)/dyn_dstop.o
- -$(INSTALL) $(PICODIR)/dstart.o $(PICODIR)/dyn_so_start.o $(DESTDIR)$(ILIBDIR)
- $(INSTALL) -m 644 diet.1 $(DESTDIR)$(MAN1DIR)/diet.1
-- if test -f $(PICODIR)/libc.so -a ! -f $(DESTDIR)/etc/diet.ld.conf; then mkdir $(DESTDIR)/etc; echo "$(ILIBDIR)" > $(DESTDIR)/etc/diet.ld.conf; fi
-+ if test -f $(PICODIR)/libc.so -a ! -f $(DESTDIR)/etc/diet.ld.conf; then mkdir $(DESTDIR)/etc; echo "$(ILIBDIR)-$(ARCH)" > $(DESTDIR)/etc/diet.ld.conf; fi
- for i in `find include -name \*.h`; do install -m 644 -D $$i $(DESTDIR)$(prefix)/$$i; done
-
- uninstall:
diff --git a/dietlibc/patches/0.30_pre20060501-r1/20_all_dirent-prototype.patch b/dietlibc/patches/0.30_pre20060501-r1/20_all_dirent-prototype.patch
deleted file mode 100644
index 0d229e6..0000000
--- a/dietlibc/patches/0.30_pre20060501-r1/20_all_dirent-prototype.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-Index: dietlibc-0.29/include/dirent.h
-===================================================================
---- dietlibc-0.29.orig/include/dirent.h
-+++ dietlibc-0.29/include/dirent.h
-@@ -37,8 +37,8 @@ int closedir (DIR *__dirp) __THROW;
- struct dirent *readdir (DIR *__dirp) __THROW;
- struct dirent64 *readdir64 (DIR *__dirp) __THROW;
- void rewinddir (DIR *__dirp) __THROW;
--void seekdir (DIR *__dirp, long int __pos) __THROW;
--long int telldir (DIR *__dirp) __THROW;
-+void seekdir (DIR *__dirp, off_t __pos) __THROW;
-+off_t telldir (DIR *__dirp) __THROW;
-
- int scandir(const char *dir, struct dirent ***namelist,
- int (*selection)(const struct dirent *),
diff --git a/dietlibc/patches/0.30_pre20060501-r1/21_all_nice.patch b/dietlibc/patches/0.30_pre20060501-r1/21_all_nice.patch
deleted file mode 100644
index 641e6c3..0000000
--- a/dietlibc/patches/0.30_pre20060501-r1/21_all_nice.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-Index: dietlibc-0.29/lib/__nice.c
-===================================================================
---- dietlibc-0.29.orig/lib/__nice.c
-+++ dietlibc-0.29/lib/__nice.c
-@@ -1,9 +1,14 @@
- #include "syscalls.h"
- #include <sys/time.h>
- #include <sys/resource.h>
-+#include <errno.h>
-
- #ifndef __NR_nice
- int nice(int i) {
-- return setpriority(PRIO_PROCESS,0,getpriority(PRIO_PROCESS,0)+i);
-+ if (setpriority(PRIO_PROCESS,0,getpriority(PRIO_PROCESS,0)+i) == -1) {
-+ errno=EPERM;
-+ return -1;
-+ }
-+ return getpriority(PRIO_PROCESS,0);
- }
- #endif
diff --git a/dietlibc/patches/0.30_pre20060501-r1/40_sparc64_Makefile.patch b/dietlibc/patches/0.30_pre20060501-r1/40_sparc64_Makefile.patch
deleted file mode 100644
index 7230687..0000000
--- a/dietlibc/patches/0.30_pre20060501-r1/40_sparc64_Makefile.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: dietlibc-0.30_pre20060501/Makefile
-===================================================================
---- dietlibc-0.30_pre20060501.orig/Makefile
-+++ dietlibc-0.30_pre20060501/Makefile
-@@ -8,7 +8,7 @@ LIBDIR=${prefix}/lib
- BINDIR=${prefix}/bin
- MAN1DIR=${prefix}/man/man1
-
--MYARCH:=$(shell uname -m | sed -e 's/i[4-9]86/i386/' -e 's/armv[3-6]t\?e\?[lb]/arm/')
-+MYARCH:=$(shell uname -m | sed -e 's/i[4-9]86/i386/' -e 's/armv[3-6]t\?e\?[lb]/arm/' -e 's/sparc64/sparc/')
-
- # This extra-ugly cruft is here so make will not run uname and sed each
- # time it looks at $(OBJDIR). This alone sped up running make when
diff --git a/dietlibc/patches/0.30_pre20060501-r1/41_sparc_termios.patch b/dietlibc/patches/0.30_pre20060501-r1/41_sparc_termios.patch
deleted file mode 100644
index e2ff4cf..0000000
--- a/dietlibc/patches/0.30_pre20060501-r1/41_sparc_termios.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-Index: dietlibc-0.29/include/termios.h
-===================================================================
---- dietlibc-0.29.orig/include/termios.h
-+++ dietlibc-0.29/include/termios.h
-@@ -202,8 +202,8 @@ struct termios {
- #define VDISCARD 13
- #define VWERASE 14
- #define VLNEXT 15
--#define VMIN 16
--#define VTIME 17
-+#define VMIN VEOF
-+#define VTIME VEOL
- #else /* arm, i386, parisc, s390, x86_64 */
- #define VINTR 0
- #define VQUIT 1
diff --git a/dietlibc/patches/0.30_pre20060501-r1/42_arm_waitpid.patch b/dietlibc/patches/0.30_pre20060501-r1/42_arm_waitpid.patch
deleted file mode 100644
index c0f9835..0000000
--- a/dietlibc/patches/0.30_pre20060501-r1/42_arm_waitpid.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: dietlibc-0.29/arm/syscalls.h
-===================================================================
---- dietlibc-0.29.orig/arm/syscalls.h
-+++ dietlibc-0.29/arm/syscalls.h
-@@ -6,7 +6,7 @@
- #define __NR_write (__NR_SYSCALL_BASE+ 4)
- #define __NR_open (__NR_SYSCALL_BASE+ 5)
- #define __NR_close (__NR_SYSCALL_BASE+ 6)
-- /* 7 was sys_waitpid */
-+#define __NR_waitpid (__NR_SYSCALL_BASE+ 7)
- #define __NR_creat (__NR_SYSCALL_BASE+ 8)
- #define __NR_link (__NR_SYSCALL_BASE+ 9)
- #define __NR_unlink (__NR_SYSCALL_BASE+ 10)
diff --git a/dietlibc/patches/0.30_pre20060501-r1/43_ia64_no-fno-omit-frame-pointer.patch b/dietlibc/patches/0.30_pre20060501-r1/43_ia64_no-fno-omit-frame-pointer.patch
deleted file mode 100644
index 9c3a929..0000000
--- a/dietlibc/patches/0.30_pre20060501-r1/43_ia64_no-fno-omit-frame-pointer.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-Index: diet.c
-===================================================================
-RCS file: /cvs/dietlibc/diet.c,v
-retrieving revision 1.60
-diff -u -r1.60 diet.c
---- diet.c 17 Dec 2004 18:47:58 -0000 1.60
-+++ diet.c 23 Dec 2004 09:20:56 -0000
-@@ -40,7 +40,7 @@
- "s390","-Os","-fomit-frame-pointer",0,
- "s390x","-Os","-fomit-frame-pointer",0,
- "sh","-Os","-fomit-frame-pointer",0,
-- "ia64","-Os","-fno-omit-frame-pointer",0,
-+ "ia64","-Os",0,
- "x86_64","-Os","-fstrict-aliasing","-momit-leaf-frame-pointer","-mfancy-math-387",0,
- 0};
-
diff --git a/dietlibc/patches/0.30_pre20060501-r1/44_ia64_proc-endp.patch b/dietlibc/patches/0.30_pre20060501-r1/44_ia64_proc-endp.patch
deleted file mode 100644
index aee3eaf..0000000
--- a/dietlibc/patches/0.30_pre20060501-r1/44_ia64_proc-endp.patch
+++ /dev/null
@@ -1,58 +0,0 @@
-Index: ia64/clone.S
-===================================================================
-RCS file: /cvs/dietlibc/ia64/clone.S,v
-retrieving revision 1.1
-diff -u -r1.1 clone.S
---- ia64/clone.S 13 May 2002 15:55:50 -0000 1.1
-+++ ia64/clone.S 12 Aug 2005 17:51:49 -0000
-@@ -37,5 +37,4 @@
- br.call.dptk.few b0=__error_unified_syscall
- br.ret.sptk.few b0
- .endp __clone
--.endp __clone2
- .size __clone, . - __clone
-Index: ia64/unified.S
-===================================================================
-RCS file: /cvs/dietlibc/ia64/unified.S,v
-retrieving revision 1.2
-diff -u -r1.2 unified.S
---- ia64/unified.S 24 Jul 2002 12:47:33 -0000 1.2
-+++ ia64/unified.S 12 Aug 2005 17:51:49 -0000
-@@ -16,9 +16,7 @@
- .text
-
- .globl __unified_syscall
--.proc __unified_syscall
- .globl __error_unified_syscall
--.proc __error_unified_syscall
- .globl _exit
- .proc _exit
-
-@@ -27,11 +25,18 @@
- .endp _exit
- .size _exit, . - _exit
-
-+.proc __unified_syscall
-+
- __unified_syscall:
- break.i 0x100000
- movl r2=errno
- cmp.eq p6,p0=-1,r10
- ;;
-+.endp __unified_syscall
-+.size __unified_syscall, . - __unified_syscall
-+
-+.proc __error_unified_syscall
-+
- __error_unified_syscall:
- (p6) st4 [r2]=r8
- (p6) mov r8=-1
-@@ -39,8 +44,5 @@
- #include "dietuglyweaks.h"
-
- br.ret.sptk.few rp
--
--.endp __unified_syscall
- .endp __error_unified_syscall
--.size __unified_syscall, __error_unified_syscall - __unified_syscall
- .size __error_unified_syscall, . - __error_unified_syscall
diff --git a/dietlibc/patches/0.30_pre20060501-r1/45_parisc_iitlbp.patch b/dietlibc/patches/0.30_pre20060501-r1/45_parisc_iitlbp.patch
deleted file mode 100644
index b1f86a9..0000000
--- a/dietlibc/patches/0.30_pre20060501-r1/45_parisc_iitlbp.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: parisc/clone.S
-===================================================================
-RCS file: /cvs/dietlibc/parisc/clone.S,v
-retrieving revision 1.2
-diff -u -r1.2 clone.S
---- parisc/clone.S 20 Jul 2002 13:29:26 -0000 1.2
-+++ parisc/clone.S 16 Oct 2005 18:28:55 -0000
-@@ -37,4 +37,4 @@
- bl _exit,%r2 /* exit thread */
- copy %r28,%r26 /* return -> arg0 */
-
-- iitlbp %r0,(%r0) /* DIE ! DIE ! */
-+ iitlbp %r0,(%sr0,%r0) /* DIE ! DIE ! */
diff --git a/dietlibc/patches/0.30_pre20060501-r1/60_all_ssp.patch b/dietlibc/patches/0.30_pre20060501-r1/60_all_ssp.patch
deleted file mode 100644
index a43fdb1..0000000
--- a/dietlibc/patches/0.30_pre20060501-r1/60_all_ssp.patch
+++ /dev/null
@@ -1,239 +0,0 @@
-Index: dietlibc-0.30_pre20060501/i386/start.S
-===================================================================
---- dietlibc-0.30_pre20060501.orig/i386/start.S
-+++ dietlibc-0.30_pre20060501/i386/start.S
-@@ -50,7 +50,9 @@ _start:
- PUT_VAR %edi, __vsyscall, %edx
- 1:
- #endif
--
-+#ifdef __dietlibc__
-+ call __guard_setup
-+#endif
- #ifdef WANT_DYNAMIC
- call _dyn_start
- #else
-Index: dietlibc-0.30_pre20060501/lib/ssp.c
-===================================================================
---- /dev/null
-+++ dietlibc-0.30_pre20060501/lib/ssp.c
-@@ -0,0 +1,129 @@
-+/*
-+ * Distributed under the terms of the GNU General Public License v2
-+ * $Header: /var/cvsroot/gentoo-x86/dev-libs/dietlibc/files/ssp.c,v 1.2 2004/12/05 19:25:40 solar Exp $
-+ *
-+ * This is a modified version of Hiroaki Etoh's stack smashing routines
-+ * implemented for glibc.
-+ *
-+ * The following people have contributed input to this code.
-+ * Ned Ludd - <solar[@]gentoo.org>
-+ * Alexander Gabert - <pappy[@]gentoo.org>
-+ * The PaX Team - <pageexec[@]freemail.hu>
-+ * Peter S. Mazinger - <ps.m[@]gmx.net>
-+ * Yoann Vandoorselaere - <yoann[@]prelude-ids.org>
-+ * Robert Connolly - <robert[@]linuxfromscratch.org>
-+ * Cory Visi <cory@visi.name>
-+ *
-+ */
-+
-+#ifdef HAVE_CONFIG_H
-+# include <config.h>
-+#endif
-+
-+#include <stdio.h>
-+#include <string.h>
-+#include <fcntl.h>
-+#include <unistd.h>
-+#include <signal.h>
-+#include <sys/types.h>
-+#include <sys/socket.h>
-+#include <sys/un.h>
-+#include <sys/time.h>
-+
-+#ifdef __PROPOLICE_BLOCK_SEGV__
-+#define SSP_SIGTYPE SIGSEGV
-+#elif __PROPOLICE_BLOCK_KILL__
-+#define SSP_SIGTYPE SIGKILL
-+#else
-+#define SSP_SIGTYPE SIGABRT
-+#endif
-+
-+unsigned long __guard = 0UL;
-+
-+void
-+__guard_setup (void)
-+{
-+ size_t size;
-+ if (__guard != 0UL)
-+ return;
-+
-+#ifndef __SSP_QUICK_CANARY__
-+ /*
-+ * Attempt to open kernel pseudo random device if one exists before
-+ * opening urandom to avoid system entropy depletion.
-+ */
-+ {
-+ int fd;
-+#ifdef HAVE_DEV_ERANDOM
-+ if ((fd = open ("/dev/erandom", O_RDONLY)) == (-1))
-+#endif
-+ fd = open ("/dev/urandom", O_RDONLY);
-+ if (fd != (-1))
-+ {
-+ size = read (fd, (char *) &__guard, sizeof (__guard));
-+ close (fd);
-+ if (size == sizeof (__guard))
-+ return;
-+ }
-+ }
-+#endif
-+
-+ /* If sysctl was unsuccessful, use the "terminator canary". */
-+ __guard = 0xFF0A0D00UL;
-+
-+ {
-+ /* Everything failed? Or we are using a weakened model of the
-+ * terminator canary */
-+ struct timeval tv;
-+
-+ gettimeofday (&tv, NULL);
-+ __guard ^= tv.tv_usec ^ tv.tv_sec;
-+ }
-+}
-+
-+void
-+__stack_smash_handler (char func[], int damaged)
-+{
-+ struct sigaction sa;
-+ const char message[] = ": stack smashing attack in function ";
-+ int bufsz, len;
-+ char buf[512];
-+ static char *__progname = "dietapp";
-+
-+ sigset_t mask;
-+ sigfillset (&mask);
-+
-+ sigdelset (&mask, SSP_SIGTYPE); /* Block all signal handlers */
-+ sigprocmask (SIG_BLOCK, &mask, NULL); /* except SIGABRT */
-+
-+ bufsz = sizeof (buf);
-+ strcpy (buf, "<2>");
-+ len = 3;
-+
-+ strncat (buf, __progname, sizeof (buf) - 4);
-+ len = strlen (buf);
-+
-+ if (bufsz > len)
-+ {
-+ strncat (buf, message, bufsz - len - 1);
-+ len = strlen (buf);
-+ }
-+ if (bufsz > len)
-+ {
-+ strncat (buf, func, bufsz - len - 1);
-+ len = strlen (buf);
-+ }
-+
-+ /* print error message */
-+ write (STDERR_FILENO, buf + 3, len - 3);
-+ write (STDERR_FILENO, "()\n", 3);
-+
-+ /* Make sure the default handler is associated with the our signal handler */
-+ memset (&sa, 0, sizeof (struct sigaction));
-+ sigfillset (&sa.sa_mask); /* Block all signals */
-+ sa.sa_flags = 0;
-+ sa.sa_handler = SIG_DFL;
-+ sigaction (SSP_SIGTYPE, &sa, NULL);
-+ (void) kill (getpid (), SSP_SIGTYPE);
-+ _exit (127);
-+}
-Index: dietlibc-0.30_pre20060501/sparc/start.S
-===================================================================
---- dietlibc-0.30_pre20060501.orig/sparc/start.S
-+++ dietlibc-0.30_pre20060501/sparc/start.S
-@@ -31,6 +31,9 @@ _start:
- be NULL. */
-
- /* Let libc do the rest of the initialization, and call main. */
-+#if 0 /* FIXME: __dietlibc__ */
-+ call __guard_setup
-+#endif
- #ifdef WANT_DYNAMIC
- call _dyn_start
- #else
-Index: dietlibc-0.30_pre20060501/sparc64/start.S
-===================================================================
---- dietlibc-0.30_pre20060501.orig/sparc64/start.S
-+++ dietlibc-0.30_pre20060501/sparc64/start.S
-@@ -31,6 +31,9 @@ _start:
- be NULL. */
-
- /* Let libc do the rest of the initialization, and call main. */
-+#if 0 /* FIXME: __dietlibc__ */
-+ call __guard_setup
-+#endif
- #ifdef WANT_DYNAMIC
- call _dyn_start
- #else
-Index: dietlibc-0.30_pre20060501/x86_64/start.S
-===================================================================
---- dietlibc-0.30_pre20060501.orig/x86_64/start.S
-+++ dietlibc-0.30_pre20060501/x86_64/start.S
-@@ -35,6 +35,10 @@ _start:
- popq %rdi
- #endif
-
-+#if 0 /* FIXME: __dietlibc__ */
-+ call __guard_setup
-+#endif
-+
- #ifdef WANT_DYNAMIC
- call _dyn_start
- #else
-Index: dietlibc-0.30_pre20060501/lib/stack_smash_handler2.c
-===================================================================
---- dietlibc-0.30_pre20060501.orig/lib/stack_smash_handler2.c
-+++ /dev/null
-@@ -1,12 +0,0 @@
--#include <unistd.h>
--#include <write12.h>
--
--void __stack_chk_fail(void);
--
--/* earlier versions of ProPolice actually gave the address and function
-- * name as arguments to the handler, so it could print some useful
-- * diagnostics. No more. :-( */
--void __stack_chk_fail(void) {
-- __write2("smashed stack detected, program terminated.\n");
-- _exit(127);
--}
-Index: dietlibc-0.30_pre20060501/lib/stack_smash_handler.c
-===================================================================
---- dietlibc-0.30_pre20060501.orig/lib/stack_smash_handler.c
-+++ /dev/null
-@@ -1,25 +0,0 @@
--#include <write12.h>
--#include <unistd.h>
--
--/* this is only used with ProPolice in gcc 3.x */
--
--void __stack_smash_handler(char* func,unsigned int damaged);
--void __stack_smash_handler(char* func,unsigned int damaged) {
-- char buf[sizeof(char*)*2+1];
-- int i;
-- for (i=0; i<(int)sizeof(buf)-1; ++i) {
-- char c=damaged&0xf;
-- c+=c<10?'0':'a';
-- buf[sizeof(buf)-2-i]=c;
-- damaged>>=4;
-- }
-- buf[sizeof(buf)-1]=0;
-- __write2("stack smashed in ");
-- __write2(func);
-- __write2(" (value 0x");
-- __write2(buf);
-- __write2(")\n");
-- _exit(127);
--}
--
--