am 50049943: am 50348295: am f4985b14: Merge "Clear link register in __bionic_clone."

* commit '500499435f04b8617e0756f71a37736bdc1ef9ad':
  Clear link register in __bionic_clone.
This commit is contained in:
Ben Cheng 2014-05-24 01:04:03 +00:00 committed by Android Git Automerger
commit a937f5246f
2 changed files with 4 additions and 9 deletions

View File

@ -54,19 +54,14 @@ ENTRY(__bionic_clone)
# In the parent, reload saved registers then either return or set errno.
ldmfd sp!, {r4, r5, r6, r7}
.cfi_def_cfa_offset 0
cmn r0, #(MAX_ERRNO + 1)
bxls lr
neg r0, r0
b __set_errno
1: # The child.
# Re-add the unwind directives that were reset from above.
.cfi_def_cfa_offset 16
.cfi_rel_offset r4, 0
.cfi_rel_offset r5, 4
.cfi_rel_offset r6, 8
.cfi_rel_offset r7, 12
# Setting lr to 0 will make the unwinder stop at __bionic_clone_entry
mov lr, #0
ldr r0, [sp, #-4]
ldr r1, [sp, #-8]
b __bionic_clone_entry

View File

@ -61,9 +61,9 @@ ENTRY(__bionic_clone)
.L_bc_child:
# We're in the child now. Set the end of the frame record chain...
.cfi_undefined x29
.cfi_undefined x30
mov x29, xzr
# Setting x30 to 0 will make the unwinder stop at __bionic_clone_entry
mov x30, xzr
# ...and call __bionic_clone_entry with the 'fn' and 'arg' we stored on the child stack.
ldp x0, x1, [sp, #-16]
b __bionic_clone_entry