1.global __cp_begin 2.hidden __cp_begin 3.global __cp_end 4.hidden __cp_end 5.global __cp_cancel 6.hidden __cp_cancel 7.hidden __cancel 8.global __syscall_cp_asm 9.hidden __syscall_cp_asm 10.type __syscall_cp_asm,@function 11 12__syscall_cp_asm: 13__cp_begin: 14 ld.w $a0, $a0, 0 15 bnez $a0, __cp_cancel 16 move $t8, $a1 # reserve system call number 17 move $a0, $a2 18 move $a1, $a3 19 move $a2, $a4 20 move $a3, $a5 21 move $a4, $a6 22 move $a5, $a7 23 move $a7, $t8 24 syscall 0 25__cp_end: 26 jr $ra 27__cp_cancel: 28 la.local $t8, __cancel 29 jr $t8 30