about summary refs log tree commit diff
path: root/sysdeps
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>2003-03-10 08:52:31 +0000
committerRoland McGrath <roland@gnu.org>2003-03-10 08:52:31 +0000
commitce5e9b1279004e21933534c7fa5878dda4ded17e (patch)
treeeaf14ace5e669535936759149b825710f085bd80 /sysdeps
parent4cf82237a1692744d3ade7f32ff58f517fae37c0 (diff)
downloadglibc-ce5e9b1279004e21933534c7fa5878dda4ded17e.tar.gz
glibc-ce5e9b1279004e21933534c7fa5878dda4ded17e.tar.xz
glibc-ce5e9b1279004e21933534c7fa5878dda4ded17e.zip
2003-03-09 Roland McGrath <roland@redhat.com>
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Take 3 new args
	used by NPTL on new kernels.  From Paul Mackerras <paulus@samba.org>.
Diffstat (limited to 'sysdeps')
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S8
1 files changed, 7 insertions, 1 deletions
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S b/sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S
index 97849a5b26..3bfd025984 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S
@@ -28,7 +28,8 @@
    all the freaky stuff we have to do to make the call useful.  */
 
 /* int [r3] clone(int (*fn)(void *arg) [r3], void *child_stack [r4],
-   		  int flags [r5], void *arg [r6]); */
+   		  int flags [r5], void *arg [r6], void *parent_tid [r7],
+		  void *tls [r8], void *child_tid [r9]); */
 
 ENTRY (BP_SYM (__clone))
 	/* GKM FIXME: add bounds checks, where sensible.  */
@@ -59,6 +60,11 @@ ENTRY (BP_SYM (__clone))
 	   argument is the stack pointer, already in r4.)  */
 	mr	r3,r5
 
+	/* Move the parent_tid, child_tid and tls arguments. */
+	mr	r5,r7
+	mr	r6,r8
+	mr	r7,r9
+
 	/* Do the call.  */
 	DO_CALL(SYS_ify(clone))