diff options
Diffstat (limited to 'libc/sysdeps/linux/arm/vfork.S')
-rw-r--r-- | libc/sysdeps/linux/arm/vfork.S | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/libc/sysdeps/linux/arm/vfork.S b/libc/sysdeps/linux/arm/vfork.S index e13636940..486a7e8e4 100644 --- a/libc/sysdeps/linux/arm/vfork.S +++ b/libc/sysdeps/linux/arm/vfork.S @@ -26,7 +26,11 @@ __vfork: #ifdef __NR_vfork DO_CALL (vfork) cmn r0, #4096 +#if defined(__THUMB_INTERWORK__) + bxcc lr +#else movcc pc, lr +#endif /* Check if vfork even exists. */ ldr r1, =-ENOSYS @@ -39,7 +43,11 @@ __vfork: cmn r0, #4096 /* Syscall worked. Return to child/parent */ +#if defined(__THUMB_INTERWORK__) + bxcc lr +#else movcc pc, lr +#endif __error: b __syscall_error |