Align arm64 stacks to 16 bytes in __bionic_clone.

Also ensure that arm64/x86-64/x86 assembler uses local labels.
(There are are so many non-local labels in arm that fixing them
seems out of scope.)

Also synchronize the __bionic_clone.S comments.

Change-Id: I03b4f84780d996b54d6637a074638196bbb01cd4
This commit is contained in:
Elliott Hughes
2014-05-09 12:16:20 -07:00
parent 55b4c8a4a1
commit fff3c0fdcf
5 changed files with 29 additions and 22 deletions

View File

@@ -30,7 +30,7 @@
// pid_t __bionic_clone(int flags, void* child_stack, pid_t* parent_tid, void* tls, pid_t* child_tid, int (*fn)(void*), void* arg);
ENTRY(__bionic_clone)
# Enforce 16-byte alignment for child stack.
# Align 'child_stack' to 16 bytes.
andq $~15, %rsi
# Copy 'fn' and 'arg' onto the child stack.