about summary refs log tree commit diff
path: root/sysdeps/unix/sysv/linux/s390/s390-32/clone.S
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/unix/sysv/linux/s390/s390-32/clone.S')
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/clone.S4
1 files changed, 2 insertions, 2 deletions
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/clone.S b/sysdeps/unix/sysv/linux/s390/s390-32/clone.S
index 91c362a2e8..650384cbc9 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/clone.S
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/clone.S
@@ -42,10 +42,10 @@ ENTRY(__clone)
 	l	%r5,100(%r15)		/* load child_tid from stack */
 	l	%r6,96(%r15)		/* load tls from stack */
 	svc	SYS_ify(clone)
-	l	%r6,24(%r15)		/* restore %r6 */
 	ltr	%r2,%r2			/* check return code */
-	jm	SYSCALL_ERROR_LABEL
 	jz	thread_start
+	l	%r6,24(%r15)		/* restore %r6 */
+	jm	SYSCALL_ERROR_LABEL
 	br	%r14
 error:
 	lhi	%r2,-EINVAL