blob: fe2e0e60ec4c9e5963fe55d5a940f4028f6c39da [file] [log] [blame]
.syntax unified
.text
.global __clone
.type __clone,%function
__clone:
stmfd sp!,{r4,r5,r6,r7}
mov r7,#120
mov r6,r3
mov r5,r0
mov r0,r2
and r1,r1,#-16
ldr r2,[sp,#16]
ldr r3,[sp,#20]
ldr r4,[sp,#24]
svc 0
tst r0,r0
beq 1f
ldmfd sp!,{r4,r5,r6,r7}
bx lr
1: mov r0,r6
tst r5,#1
bne 1f
mov lr,pc
mov pc,r5
2: mov r7,#1
svc 0
1: mov lr,pc
bx r5
b 2b