am f4985b14
: Merge "Clear link register in __bionic_clone."
* commit 'f4985b14cfed187376a24dd4a0cd16206e746bd9': Clear link register in __bionic_clone.
This commit is contained in:
commit
5034829504
@ -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
|
||||
|
@ -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
|
||||
|
Loading…
Reference in New Issue
Block a user