about summary refs log tree commit diff
path: root/ports/sysdeps/unix/sysv/linux/arm/clone.S
diff options
context:
space:
mode:
Diffstat (limited to 'ports/sysdeps/unix/sysv/linux/arm/clone.S')
-rw-r--r--ports/sysdeps/unix/sysv/linux/arm/clone.S4
1 files changed, 3 insertions, 1 deletions
diff --git a/ports/sysdeps/unix/sysv/linux/arm/clone.S b/ports/sysdeps/unix/sysv/linux/arm/clone.S
index de25db1609..732a3ffd01 100644
--- a/ports/sysdeps/unix/sysv/linux/arm/clone.S
+++ b/ports/sysdeps/unix/sysv/linux/arm/clone.S
@@ -33,6 +33,7 @@
 ENTRY(__clone)
 	@ sanity check args
 	cmp	r0, #0
+	ite	ne
 	cmpne	r1, #0
 	moveq	r0, #-EINVAL
 	beq	PLTJMP(syscall_error)
@@ -78,8 +79,9 @@ PSEUDO_END (__clone)
 	sub	pc, r0, #31
 	mov	r1, r0
 	tst	ip, #CLONE_VM
-	movne	r0, #-1
 	ldr	r7, =SYS_ify(getpid)
+	ite	ne
+	movne	r0, #-1
 	swieq	0x0
 	str	r0, [r1, #PID_OFFSET]
 	str	r0, [r1, #TID_OFFSET]