]> Gitweb @ Texas Instruments - Open Source Git Repositories - git.TI.com/gitweb - android-sdk/platform-bionic.git/blobdiff - libc/arch-arm/bionic/__bionic_clone.S
Use the stmdb instead of str to save the fn/arg
[android-sdk/platform-bionic.git] / libc / arch-arm / bionic / __bionic_clone.S
index f5cf9e0e34f3f911c50aa6f411316e6e879c36ea..b02a70992e734985768e839281932c315fafb21d 100644 (file)
@@ -43,8 +43,7 @@ ENTRY(__bionic_clone)
     ldmfd   ip, {r4, r5, r6}
 
     # store 'fn' and 'arg' to the child stack
-    str     r5, [r1, #-4]
-    str     r6, [r1, #-8]
+    stmdb   r1!, {r5, r6}
 
     # System call
     ldr     r7, =__NR_clone
@@ -62,8 +61,7 @@ ENTRY(__bionic_clone)
 1:  # The child.
     # Setting lr to 0 will make the unwinder stop at __start_thread
     mov    lr, #0
-    ldr    r0, [sp, #-4]
-    ldr    r1, [sp, #-8]
+    pop    {r0, r1}
     b      __start_thread
 END(__bionic_clone)
 .hidden __bionic_clone