clone.s 342 B

12345678910111213141516171819202122232425262728
  1. .syntax unified
  2. .text
  3. .global __clone
  4. .hidden __clone
  5. .type __clone,%function
  6. __clone:
  7. stmfd sp!,{r4,r5,r6,r7}
  8. mov r7,#120
  9. mov r6,r3
  10. mov r5,r0
  11. mov r0,r2
  12. and r1,r1,#-16
  13. ldr r2,[sp,#16]
  14. ldr r3,[sp,#20]
  15. ldr r4,[sp,#24]
  16. svc 0
  17. tst r0,r0
  18. beq 1f
  19. ldmfd sp!,{r4,r5,r6,r7}
  20. bx lr
  21. 1: mov r0,r6
  22. bl 3f
  23. 2: mov r7,#1
  24. svc 0
  25. b 2b
  26. 3: bx r5