about summary refs log tree commit diff
path: root/sysdeps/unix/sysv/linux/ia64/clone2.S
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2003-03-03 19:53:27 +0000
committerUlrich Drepper <drepper@redhat.com>2003-03-03 19:53:27 +0000
commit625f22fc7f8e0d61e3e6cff2c65468b91dbad426 (patch)
tree2fb41fbb7b3fdd78fdaab5915d8621aa2f4ad7df /sysdeps/unix/sysv/linux/ia64/clone2.S
parent71502ebe1abb598545431a5cfcf06db52585656e (diff)
downloadglibc-625f22fc7f8e0d61e3e6cff2c65468b91dbad426.tar.gz
glibc-625f22fc7f8e0d61e3e6cff2c65468b91dbad426.tar.xz
glibc-625f22fc7f8e0d61e3e6cff2c65468b91dbad426.zip
Update.
2003-03-03  Ian Wienand  <ianw@gelato.unsw.edu.au>

	* sysdeps/unix/sysv/linux/ia64/clone2.S: Update to take extra clone
	flags.
	* include/sched.h: Update clone2 prototype.
Diffstat (limited to 'sysdeps/unix/sysv/linux/ia64/clone2.S')
-rw-r--r--sysdeps/unix/sysv/linux/ia64/clone2.S11
1 files changed, 8 insertions, 3 deletions
diff --git a/sysdeps/unix/sysv/linux/ia64/clone2.S b/sysdeps/unix/sysv/linux/ia64/clone2.S
index 90887216c5..2a6593889b 100644
--- a/sysdeps/unix/sysv/linux/ia64/clone2.S
+++ b/sysdeps/unix/sysv/linux/ia64/clone2.S
@@ -1,4 +1,4 @@
-/* Copyright (C) 2000, 2001 Free Software Foundation, Inc.
+/* Copyright (C) 2000, 2001, 2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -22,10 +22,12 @@
 
 
 /* int  __clone2(int (*fn) (void *arg), void *child_stack_base, 	*/
-/* 	         size_t child_stack_size, int flags, void *arg) */
+/* 	         size_t child_stack_size, int flags, void *arg,		*/
+/*	         pid_t *child_tid, pid_t *parent_tid,			*/
+/*	         struct user_desc *tls) */
 
 ENTRY(__clone2)
-	alloc r2=ar.pfs,5,2,3,0
+	alloc r2=ar.pfs,8,2,6,0
 	cmp.eq p6,p0=0,in0
 	mov r8=EINVAL
 (p6)	br.cond.spnt.few __syscall_error
@@ -41,6 +43,9 @@ ENTRY(__clone2)
 	mov out0=in3		/* Flags are first syscall argument.	*/
 	mov out1=in1		/* Stack address.			*/
 	mov out2=in2		/* Stack size.				*/
+	mov out3=in5		/* Child TID Pointer			*/
+	mov out4=in6		/* Parent TID Pointer			*/
+ 	mov out5=in7		/* TLS pointer				*/
         DO_CALL (SYS_ify (clone2))
         cmp.eq p6,p0=-1,r10
 	;;