diff options
Diffstat (limited to 'ports/sysdeps/unix/sysv/linux/arm/clone.S')
-rw-r--r-- | ports/sysdeps/unix/sysv/linux/arm/clone.S | 4 |
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] |