github.com/afumu/libc@v0.0.6/musl/src/thread/arm/syscall_cp.s (about) 1 .syntax unified 2 .global __cp_begin 3 .hidden __cp_begin 4 .global __cp_end 5 .hidden __cp_end 6 .global __cp_cancel 7 .hidden __cp_cancel 8 .hidden __cancel 9 .global __syscall_cp_asm 10 .hidden __syscall_cp_asm 11 .type __syscall_cp_asm,%function 12 __syscall_cp_asm: 13 mov ip,sp 14 stmfd sp!,{r4,r5,r6,r7} 15 __cp_begin: 16 ldr r0,[r0] 17 cmp r0,#0 18 bne __cp_cancel 19 mov r7,r1 20 mov r0,r2 21 mov r1,r3 22 ldmfd ip,{r2,r3,r4,r5,r6} 23 svc 0 24 __cp_end: 25 ldmfd sp!,{r4,r5,r6,r7} 26 bx lr 27 __cp_cancel: 28 ldmfd sp!,{r4,r5,r6,r7} 29 b __cancel