• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1.set    noreorder
2
3.global __cp_begin
4.hidden __cp_begin
5.type   __cp_begin,@function
6.global __cp_end
7.hidden __cp_end
8.type   __cp_end,@function
9.global __cp_cancel
10.hidden __cp_cancel
11.type   __cp_cancel,@function
12.hidden __cancel
13.global __syscall_cp_asm
14.hidden __syscall_cp_asm
15.type   __syscall_cp_asm,@function
16__syscall_cp_asm:
17	subu    $sp, $sp, 32
18__cp_begin:
19	lw      $4, 0($4)
20	bne     $4, $0, __cp_cancel
21	move    $2, $5
22	move    $4, $6
23	move    $5, $7
24	lw      $6, 48($sp)
25	lw      $7, 52($sp)
26	lw      $8, 56($sp)
27	lw      $9, 60($sp)
28	lw      $10,64($sp)
29	sw      $8, 16($sp)
30	sw      $9, 20($sp)
31	sw      $10,24($sp)
32	sw      $2, 28($sp)
33	lw      $2, 28($sp)
34	syscall
35__cp_end:
36	beq     $7, $0, 1f
37	addu    $sp, $sp, 32
38	subu    $2, $0, $2
391:	jr      $ra
40	nop
41
42__cp_cancel:
43	move    $2, $ra
44	bal     1f
45	addu    $sp, $sp, 32
46	.gpword .
47	.gpword __cancel
481:	lw      $3, ($ra)
49	subu    $3, $ra, $3
50	lw      $25, 4($ra)
51	addu    $25, $25, $3
52	jr      $25
53	move    $ra, $2
54