1234567891011121314151617181920212223242526272829 |
- .global __cp_begin
- .hidden __cp_begin
- .global __cp_end
- .hidden __cp_end
- .global __cp_cancel
- .hidden __cp_cancel
- .hidden __cancel
- .global __syscall_cp_asm
- .hidden __syscall_cp_asm
- .type __syscall_cp_asm,@function
- __syscall_cp_asm:
- __cp_begin:
- ld.w $a0, $a0, 0
- bnez $a0, __cp_cancel
- move $t8, $a1 # reserve system call number
- move $a0, $a2
- move $a1, $a3
- move $a2, $a4
- move $a3, $a5
- move $a4, $a6
- move $a5, $a7
- move $a7, $t8
- syscall 0
- __cp_end:
- jr $ra
- __cp_cancel:
- la.local $t8, __cancel
- jr $t8
|