about summary refs log tree commit diff
path: root/sysdeps/unix/sysv/linux/hppa/clone.S
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2001-04-22 03:33:47 +0000
committerUlrich Drepper <drepper@redhat.com>2001-04-22 03:33:47 +0000
commit463468350f1735034d9f1b4a3d4a50a5a794620e (patch)
tree7b61cf3d69e5ab2394131afbe11175db0b3ab566 /sysdeps/unix/sysv/linux/hppa/clone.S
parent5a74e68a52e0ef995733b27044dffeb8c7ce3dcd (diff)
downloadglibc-463468350f1735034d9f1b4a3d4a50a5a794620e.tar.gz
glibc-463468350f1735034d9f1b4a3d4a50a5a794620e.tar.xz
glibc-463468350f1735034d9f1b4a3d4a50a5a794620e.zip
Update.
2001-04-21  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>

	* sysdeps/unix/sysv/linux/powerpc/mmap64.c: Correct check for invalid
	offset.

2001-04-21  Ulrich Drepper  <drepper@redhat.com>

	* posix/getopt.h: Treat __cplusplus like __STDC__.

2001-04-20  John S. Marvin  <jsm@fc.hp.com>

	* sysdeps/unix/sysv/linux/hppa/clone.S: Fix clone system call
	entry point stub.

2001-04-20  Richard Hirst  <rhirst@linuxcare.com>

	* elf/elf.h: Corrected R_PARISC_DIR14R (should be 6, not 5),
	and added R_PARISC_DPREL21L and R_PARISC_DPREL14R for modutils.

	* sysdeps/unix/sysv/linux/hppa/syscalls.list: Removed ptrace
	entry so the ptrace.c wrapper is used.

2001-04-20  Alan Modra  <amodra@one.net.au>

	* sysdeps/hppa/dl-lookupcfg.h (_dl_function_address): Prototype.
	(DL_FUNCTION_ADDRESS): Define.
	(DL_DT_INIT_ADDRESS): Define.
	(DL_DT_FINI_ADDRESS): Define.
	* sysdeps/hppa/Versions: Add _dl_function_address.
	* sysdeps/hppa/dl-machine.h (ELF_MACHINE_START_ADDRESS): Define.
	* sysdeps/hppa/dl-symaddr.c (_dl_start_address): Rename to
	_dl_function_address.
Diffstat (limited to 'sysdeps/unix/sysv/linux/hppa/clone.S')
-rw-r--r--sysdeps/unix/sysv/linux/hppa/clone.S14
1 files changed, 7 insertions, 7 deletions
diff --git a/sysdeps/unix/sysv/linux/hppa/clone.S b/sysdeps/unix/sysv/linux/hppa/clone.S
index 510e0ff799..b902ff7669 100644
--- a/sysdeps/unix/sysv/linux/hppa/clone.S
+++ b/sysdeps/unix/sysv/linux/hppa/clone.S
@@ -33,18 +33,18 @@ ENTRY(__clone)
 	/* FIXME: I have no idea how profiling works on hppa. */
 
 	/* Sanity check arguments.  */
-	comib,<> 0,%arg0,.Lerror	/* no NULL function pointers */
-	ldi	EINVAL,%ret0
-	comib,<> 0,%arg1,.Lerror	/* no NULL stack pointers */
+	comib,=  0,%arg0,.Lerror        /* no NULL function pointers */
+	ldi     -EINVAL,%ret0
+	comib,=  0,%arg1,.Lerror        /* no NULL stack pointers */
 	nop
 
 	/* Save the fn ptr and arg on the new stack.  */
-	stwm	%arg3,64(%arg1)
+	stwm    %arg0,64(%arg1)
 	stw	%arg3,-60(%arg1)
 
 	/* Do the system call */
 	copy	%arg2,%arg0
-	ble	0x100(%sr7,%r0)
+	ble     0x100(%sr2,%r0)
 	ldi	__NR_clone,%r20
 
 	ldi	-4096,%r1
@@ -60,12 +60,12 @@ ENTRY(__clone)
 	/* Something bad happened -- no child created */
 .Lerror:
 	b	__syscall_error
-	nop
+	sub     %r0,%ret0,%arg0
 
 thread_start:
 	/* Load up the arguments.  */
 	ldw	-60(%sp),%arg0
-	ldwm	-64(%sp),%r22
+	ldw     -64(%sp),%r22
 
 	/* Call the user's function */
 	bl	$$dyncall,%r31