am 0db8180f: am a4c979e3: am 66d16619: Merge "Remove a hardcoded constant from aarch64\'s vfork."
* commit '0db8180f9720c1b844d4e6c126e98d6bb78c0946': Remove a hardcoded constant from aarch64's vfork.
This commit is contained in:
commit
8b73b46948
@ -27,9 +27,11 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#include <private/bionic_asm.h>
|
#include <private/bionic_asm.h>
|
||||||
|
#include <asm/signal.h>
|
||||||
|
#include <linux/sched.h>
|
||||||
|
|
||||||
ENTRY(vfork)
|
ENTRY(vfork)
|
||||||
mov x0, #0x4111 /* CLONE_VM | CLONE_VFORK | SIGCHLD */
|
mov x0, #(CLONE_VM | CLONE_VFORK | SIGCHLD)
|
||||||
mov x1, xzr
|
mov x1, xzr
|
||||||
mov x2, xzr
|
mov x2, xzr
|
||||||
mov x3, xzr
|
mov x3, xzr
|
||||||
@ -37,11 +39,9 @@ ENTRY(vfork)
|
|||||||
|
|
||||||
str x8, [sp, #-16]!
|
str x8, [sp, #-16]!
|
||||||
mov x8, __NR_clone
|
mov x8, __NR_clone
|
||||||
|
|
||||||
svc #0
|
svc #0
|
||||||
ldr x8, [sp], #16
|
ldr x8, [sp], #16
|
||||||
|
|
||||||
/* check if syscall returned successfully */
|
|
||||||
cmn x0, #(MAX_ERRNO + 1)
|
cmn x0, #(MAX_ERRNO + 1)
|
||||||
cneg x0, x0, hi
|
cneg x0, x0, hi
|
||||||
b.hi __set_errno
|
b.hi __set_errno
|
||||||
|
Loading…
x
Reference in New Issue
Block a user