explicitly assemble all arm asm sources as UAL
[musl] / src / thread / arm / clone.s
1 .syntax unified
2 .text
3 .global __clone
4 .type   __clone,%function
5 __clone:
6         stmfd sp!,{r4,r5,r6,r7}
7         mov r7,#120
8         mov r6,r3
9         mov r5,r0
10         mov r0,r2
11         and r1,r1,#-16
12         ldr r2,[sp,#16]
13         ldr r3,[sp,#20]
14         ldr r4,[sp,#24]
15         svc 0
16         tst r0,r0
17         beq 1f
18         ldmfd sp!,{r4,r5,r6,r7}
19         bx lr
20
21 1:      mov r0,r6
22         tst r5,#1
23         bne 1f
24         mov lr,pc
25         mov pc,r5
26 2:      mov r7,#1
27         svc 0
28
29 1:      mov lr,pc
30         bx r5
31         b 2b