486 lines
		
	
	
		
			6.0 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			486 lines
		
	
	
		
			6.0 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
.set reorder
 | 
						|
.globl addpoint
 | 
						|
.text
 | 
						|
.text
 | 
						|
.align 2
 | 
						|
.ent addpoint
 | 
						|
addpoint:
 | 
						|
.frame $sp,0,$31
 | 
						|
.set noreorder
 | 
						|
.cpload $25
 | 
						|
.set reorder
 | 
						|
sw $5,4($sp)
 | 
						|
sw $6,8($sp)
 | 
						|
sw $7,12($sp)
 | 
						|
lw $24,4+0($sp)
 | 
						|
lw $15,12+0($sp)
 | 
						|
addu $24,$24,$15
 | 
						|
sw $24,4+0($sp)
 | 
						|
lw $24,8+0($sp)
 | 
						|
lw $15,16+0($sp)
 | 
						|
addu $24,$24,$15
 | 
						|
sw $24,8+0($sp)
 | 
						|
la $8,4+0($sp)
 | 
						|
lw $3,0($8)
 | 
						|
lw $9,4($8)
 | 
						|
sw $3,0($4)
 | 
						|
sw $9,4($4)
 | 
						|
L.1:
 | 
						|
j $31
 | 
						|
.end addpoint
 | 
						|
.globl canonrect
 | 
						|
.text
 | 
						|
.align 2
 | 
						|
.ent canonrect
 | 
						|
canonrect:
 | 
						|
.frame $sp,32,$31
 | 
						|
.set noreorder
 | 
						|
.cpload $25
 | 
						|
.set reorder
 | 
						|
addu $sp,$sp,-32
 | 
						|
.mask 0x40e00000,-20
 | 
						|
sw $21,0($sp)
 | 
						|
sw $22,4($sp)
 | 
						|
sw $23,8($sp)
 | 
						|
sw $30,12($sp)
 | 
						|
sw $5,36($sp)
 | 
						|
sw $6,40($sp)
 | 
						|
sw $7,44($sp)
 | 
						|
lw $24,4+32($sp)
 | 
						|
lw $15,12+32($sp)
 | 
						|
bge $24,$15,L.10
 | 
						|
lw $30,4+32($sp)
 | 
						|
b L.11
 | 
						|
L.10:
 | 
						|
lw $30,12+32($sp)
 | 
						|
L.11:
 | 
						|
sw $30,-16+32($sp)
 | 
						|
lw $24,8+32($sp)
 | 
						|
lw $15,16+32($sp)
 | 
						|
bge $24,$15,L.20
 | 
						|
lw $23,8+32($sp)
 | 
						|
b L.21
 | 
						|
L.20:
 | 
						|
lw $23,16+32($sp)
 | 
						|
L.21:
 | 
						|
sw $23,-12+32($sp)
 | 
						|
lw $24,4+32($sp)
 | 
						|
lw $15,12+32($sp)
 | 
						|
ble $24,$15,L.26
 | 
						|
lw $22,4+32($sp)
 | 
						|
b L.27
 | 
						|
L.26:
 | 
						|
lw $22,12+32($sp)
 | 
						|
L.27:
 | 
						|
sw $22,-8+32($sp)
 | 
						|
lw $24,8+32($sp)
 | 
						|
lw $15,16+32($sp)
 | 
						|
ble $24,$15,L.37
 | 
						|
lw $21,8+32($sp)
 | 
						|
b L.38
 | 
						|
L.37:
 | 
						|
lw $21,16+32($sp)
 | 
						|
L.38:
 | 
						|
sw $21,-4+32($sp)
 | 
						|
la $8,-16+32($sp)
 | 
						|
lw $3,0($8)
 | 
						|
lw $9,4($8)
 | 
						|
sw $3,0($4)
 | 
						|
sw $9,4($4)
 | 
						|
lw $3,8($8)
 | 
						|
lw $9,12($8)
 | 
						|
sw $3,8($4)
 | 
						|
sw $9,12($4)
 | 
						|
L.5:
 | 
						|
lw $21,0($sp)
 | 
						|
lw $22,4($sp)
 | 
						|
lw $23,8($sp)
 | 
						|
lw $30,12($sp)
 | 
						|
addu $sp,$sp,32
 | 
						|
j $31
 | 
						|
.end canonrect
 | 
						|
.globl makepoint
 | 
						|
.text
 | 
						|
.align 2
 | 
						|
.ent makepoint
 | 
						|
makepoint:
 | 
						|
.frame $sp,16,$31
 | 
						|
.set noreorder
 | 
						|
.cpload $25
 | 
						|
.set reorder
 | 
						|
addu $sp,$sp,-16
 | 
						|
sw $5,-8+16($sp)
 | 
						|
sw $6,-4+16($sp)
 | 
						|
la $8,-8+16($sp)
 | 
						|
lw $3,0($8)
 | 
						|
lw $9,4($8)
 | 
						|
sw $3,0($4)
 | 
						|
sw $9,4($4)
 | 
						|
L.39:
 | 
						|
addu $sp,$sp,16
 | 
						|
j $31
 | 
						|
.end makepoint
 | 
						|
.globl makerect
 | 
						|
.text
 | 
						|
.align 2
 | 
						|
.ent makerect
 | 
						|
makerect:
 | 
						|
.frame $sp,48,$31
 | 
						|
.set noreorder
 | 
						|
.cpload $25
 | 
						|
.set reorder
 | 
						|
addu $sp,$sp,-48
 | 
						|
.mask 0x82000000,-24
 | 
						|
.cprestore 20
 | 
						|
sw $31,24($sp)
 | 
						|
sw $4,48($sp)
 | 
						|
sw $5,52($sp)
 | 
						|
sw $6,56($sp)
 | 
						|
sw $7,60($sp)
 | 
						|
la $24,-16+48($sp)
 | 
						|
la $8,4+48($sp)
 | 
						|
lw $3,0($8)
 | 
						|
lw $9,4($8)
 | 
						|
sw $3,0($24)
 | 
						|
sw $9,4($24)
 | 
						|
la $24,-8+48($sp)
 | 
						|
la $8,12+48($sp)
 | 
						|
lw $3,0($8)
 | 
						|
lw $9,4($8)
 | 
						|
sw $3,0($24)
 | 
						|
sw $9,4($24)
 | 
						|
lw $4,0+48($sp)
 | 
						|
la $8,-16+48($sp)
 | 
						|
lw $3,0($8)
 | 
						|
lw $9,4($8)
 | 
						|
sw $3,4($29)
 | 
						|
sw $9,8($29)
 | 
						|
lw $3,8($8)
 | 
						|
lw $9,12($8)
 | 
						|
sw $3,12($29)
 | 
						|
sw $9,16($29)
 | 
						|
lw $5,4($sp)
 | 
						|
lw $6,8($sp)
 | 
						|
lw $7,12($sp)
 | 
						|
jal canonrect
 | 
						|
L.42:
 | 
						|
lw $25,20($sp)
 | 
						|
lw $31,24($sp)
 | 
						|
addu $sp,$sp,48
 | 
						|
j $31
 | 
						|
.end makerect
 | 
						|
.globl ptinrect
 | 
						|
.text
 | 
						|
.align 2
 | 
						|
.ent ptinrect
 | 
						|
ptinrect:
 | 
						|
.frame $sp,16,$31
 | 
						|
.set noreorder
 | 
						|
.cpload $25
 | 
						|
.set reorder
 | 
						|
addu $sp,$sp,-16
 | 
						|
.mask 0x40000000,-16
 | 
						|
sw $30,0($sp)
 | 
						|
sw $4,16($sp)
 | 
						|
sw $5,20($sp)
 | 
						|
sw $6,24($sp)
 | 
						|
sw $7,28($sp)
 | 
						|
lw $24,0+16($sp)
 | 
						|
lw $15,8+16($sp)
 | 
						|
blt $24,$15,L.53
 | 
						|
lw $15,16+16($sp)
 | 
						|
bge $24,$15,L.53
 | 
						|
lw $24,4+16($sp)
 | 
						|
lw $15,12+16($sp)
 | 
						|
blt $24,$15,L.53
 | 
						|
lw $24,4+16($sp)
 | 
						|
lw $15,20+16($sp)
 | 
						|
bge $24,$15,L.53
 | 
						|
la $30,1
 | 
						|
b L.54
 | 
						|
L.53:
 | 
						|
move $30,$0
 | 
						|
L.54:
 | 
						|
move $2,$30
 | 
						|
L.45:
 | 
						|
lw $30,0($sp)
 | 
						|
addu $sp,$sp,16
 | 
						|
j $31
 | 
						|
.end ptinrect
 | 
						|
.globl y
 | 
						|
.sdata
 | 
						|
.align 0
 | 
						|
y:
 | 
						|
.byte 97
 | 
						|
.byte 98
 | 
						|
.byte 0
 | 
						|
.globl odd
 | 
						|
.text
 | 
						|
.text
 | 
						|
.align 2
 | 
						|
.ent odd
 | 
						|
odd:
 | 
						|
.frame $sp,32,$31
 | 
						|
.set noreorder
 | 
						|
.cpload $25
 | 
						|
.set reorder
 | 
						|
addu $sp,$sp,-32
 | 
						|
.mask 0x82000000,-12
 | 
						|
.cprestore 16
 | 
						|
sw $31,20($sp)
 | 
						|
sw $4,32($sp)
 | 
						|
la $24,-3+32($sp)
 | 
						|
la $8,0+32($sp)
 | 
						|
ulhu $3,0($8)
 | 
						|
ush $3,0($24)
 | 
						|
lbu $3,2($8)
 | 
						|
sb $3,2($24)
 | 
						|
la $4,L.56
 | 
						|
la $5,-3+32($sp)
 | 
						|
jal printf
 | 
						|
move $2,$0
 | 
						|
L.55:
 | 
						|
lw $25,16($sp)
 | 
						|
lw $31,20($sp)
 | 
						|
addu $sp,$sp,32
 | 
						|
j $31
 | 
						|
.end odd
 | 
						|
.rdata
 | 
						|
.align 2
 | 
						|
L.58:
 | 
						|
.word 0x0
 | 
						|
.word 0x0
 | 
						|
.align 2
 | 
						|
L.59:
 | 
						|
.word 0x140
 | 
						|
.word 0x140
 | 
						|
.align 2
 | 
						|
L.60:
 | 
						|
.word 0xffffffff
 | 
						|
.word 0xffffffff
 | 
						|
.word 0x1
 | 
						|
.word 0x1
 | 
						|
.word 0x14
 | 
						|
.word 0x12c
 | 
						|
.word 0x1f4
 | 
						|
.word 0x190
 | 
						|
.globl main
 | 
						|
.text
 | 
						|
.text
 | 
						|
.align 2
 | 
						|
.ent main
 | 
						|
main:
 | 
						|
.frame $sp,144,$31
 | 
						|
.set noreorder
 | 
						|
.cpload $25
 | 
						|
.set reorder
 | 
						|
addu $sp,$sp,-144
 | 
						|
.mask 0xc2000000,-112
 | 
						|
.cprestore 24
 | 
						|
sw $30,28($sp)
 | 
						|
sw $31,32($sp)
 | 
						|
la $24,-64+144($sp)
 | 
						|
la $8,L.58
 | 
						|
lw $3,0($8)
 | 
						|
lw $9,4($8)
 | 
						|
sw $3,0($24)
 | 
						|
sw $9,4($24)
 | 
						|
la $24,-72+144($sp)
 | 
						|
la $8,L.59
 | 
						|
lw $3,0($8)
 | 
						|
lw $9,4($8)
 | 
						|
sw $3,0($24)
 | 
						|
sw $9,4($24)
 | 
						|
la $24,-32+144($sp)
 | 
						|
la $8,L.60
 | 
						|
addu $8,$8,32
 | 
						|
addu $10,$24,32
 | 
						|
L.76:
 | 
						|
addu $8,$8,-8
 | 
						|
addu $10,$10,-8
 | 
						|
lw $3,0($8)
 | 
						|
lw $9,4($8)
 | 
						|
sw $3,0($10)
 | 
						|
sw $9,4($10)
 | 
						|
bltu $24,$10,L.76
 | 
						|
la $4,-80+144($sp)
 | 
						|
la $24,-10
 | 
						|
move $5,$24
 | 
						|
move $6,$24
 | 
						|
jal makepoint
 | 
						|
la $4,-88+144($sp)
 | 
						|
la $8,-72+144($sp)
 | 
						|
lw $3,0($8)
 | 
						|
lw $9,4($8)
 | 
						|
sw $3,4($29)
 | 
						|
sw $9,8($29)
 | 
						|
lw $5,4($sp)
 | 
						|
lw $6,8($sp)
 | 
						|
la $8,-80+144($sp)
 | 
						|
lw $3,0($8)
 | 
						|
lw $9,4($8)
 | 
						|
sw $3,12($29)
 | 
						|
sw $9,16($29)
 | 
						|
lw $7,12($sp)
 | 
						|
jal addpoint
 | 
						|
la $4,-96+144($sp)
 | 
						|
la $24,10
 | 
						|
move $5,$24
 | 
						|
move $6,$24
 | 
						|
jal makepoint
 | 
						|
la $4,-104+144($sp)
 | 
						|
la $8,-64+144($sp)
 | 
						|
lw $3,0($8)
 | 
						|
lw $9,4($8)
 | 
						|
sw $3,4($29)
 | 
						|
sw $9,8($29)
 | 
						|
lw $5,4($sp)
 | 
						|
lw $6,8($sp)
 | 
						|
la $8,-96+144($sp)
 | 
						|
lw $3,0($8)
 | 
						|
lw $9,4($8)
 | 
						|
sw $3,12($29)
 | 
						|
sw $9,16($29)
 | 
						|
lw $7,12($sp)
 | 
						|
jal addpoint
 | 
						|
la $4,-48+144($sp)
 | 
						|
la $8,-88+144($sp)
 | 
						|
lw $3,0($8)
 | 
						|
lw $9,4($8)
 | 
						|
sw $3,4($29)
 | 
						|
sw $9,8($29)
 | 
						|
lw $5,4($sp)
 | 
						|
lw $6,8($sp)
 | 
						|
la $8,-104+144($sp)
 | 
						|
lw $3,0($8)
 | 
						|
lw $9,4($8)
 | 
						|
sw $3,12($29)
 | 
						|
sw $9,16($29)
 | 
						|
lw $7,12($sp)
 | 
						|
jal makerect
 | 
						|
move $30,$0
 | 
						|
b L.64
 | 
						|
L.61:
 | 
						|
la $4,-56+144($sp)
 | 
						|
sll $24,$30,3
 | 
						|
la $15,-32+144($sp)
 | 
						|
addu $15,$24,$15
 | 
						|
lw $5,($15)
 | 
						|
la $15,-28+144($sp)
 | 
						|
addu $24,$24,$15
 | 
						|
lw $6,($24)
 | 
						|
jal makepoint
 | 
						|
la $4,L.65
 | 
						|
sll $24,$30,3
 | 
						|
la $15,-32+144($sp)
 | 
						|
addu $24,$24,$15
 | 
						|
lw $5,($24)
 | 
						|
lw $6,-52+144($sp)
 | 
						|
jal printf
 | 
						|
la $8,-56+144($sp)
 | 
						|
lw $3,0($8)
 | 
						|
lw $9,4($8)
 | 
						|
sw $3,0($29)
 | 
						|
sw $9,4($29)
 | 
						|
lw $4,0($sp)
 | 
						|
lw $5,4($sp)
 | 
						|
la $8,-48+144($sp)
 | 
						|
lw $3,0($8)
 | 
						|
lw $9,4($8)
 | 
						|
sw $3,8($29)
 | 
						|
sw $9,12($29)
 | 
						|
lw $3,8($8)
 | 
						|
lw $9,12($8)
 | 
						|
sw $3,16($29)
 | 
						|
sw $9,20($29)
 | 
						|
lw $6,8($sp)
 | 
						|
lw $7,12($sp)
 | 
						|
jal ptinrect
 | 
						|
bne $2,$0,L.68
 | 
						|
la $4,L.70
 | 
						|
jal printf
 | 
						|
L.68:
 | 
						|
la $4,L.71
 | 
						|
lw $5,-48+144($sp)
 | 
						|
lw $6,-44+144($sp)
 | 
						|
lw $7,-40+144($sp)
 | 
						|
lw $24,-36+144($sp)
 | 
						|
sw $24,16($sp)
 | 
						|
jal printf
 | 
						|
L.62:
 | 
						|
la $30,1($30)
 | 
						|
L.64:
 | 
						|
move $24,$30
 | 
						|
la $15,4
 | 
						|
bltu $24,$15,L.61
 | 
						|
la $8,y
 | 
						|
ulhu $3,0($8)
 | 
						|
sh $3,0($29)
 | 
						|
lbu $3,2($8)
 | 
						|
sb $3,2($29)
 | 
						|
lw $4,0($sp)
 | 
						|
jal odd
 | 
						|
move $4,$0
 | 
						|
jal exit
 | 
						|
move $2,$0
 | 
						|
L.57:
 | 
						|
lw $25,24($sp)
 | 
						|
lw $30,28($sp)
 | 
						|
lw $31,32($sp)
 | 
						|
addu $sp,$sp,144
 | 
						|
j $31
 | 
						|
.end main
 | 
						|
.rdata
 | 
						|
.align 0
 | 
						|
L.71:
 | 
						|
.byte 119
 | 
						|
.byte 105
 | 
						|
.byte 116
 | 
						|
.byte 104
 | 
						|
.byte 105
 | 
						|
.byte 110
 | 
						|
.byte 32
 | 
						|
.byte 91
 | 
						|
.byte 37
 | 
						|
.byte 100
 | 
						|
.byte 44
 | 
						|
.byte 37
 | 
						|
.byte 100
 | 
						|
.byte 59
 | 
						|
.byte 32
 | 
						|
.byte 37
 | 
						|
.byte 100
 | 
						|
.byte 44
 | 
						|
.byte 37
 | 
						|
.byte 100
 | 
						|
.byte 93
 | 
						|
.byte 10
 | 
						|
.byte 0
 | 
						|
.align 0
 | 
						|
L.70:
 | 
						|
.byte 110
 | 
						|
.byte 111
 | 
						|
.byte 116
 | 
						|
.byte 32
 | 
						|
.byte 0
 | 
						|
.align 0
 | 
						|
L.65:
 | 
						|
.byte 40
 | 
						|
.byte 37
 | 
						|
.byte 100
 | 
						|
.byte 44
 | 
						|
.byte 37
 | 
						|
.byte 100
 | 
						|
.byte 41
 | 
						|
.byte 32
 | 
						|
.byte 105
 | 
						|
.byte 115
 | 
						|
.byte 32
 | 
						|
.byte 0
 | 
						|
.align 0
 | 
						|
L.56:
 | 
						|
.byte 37
 | 
						|
.byte 115
 | 
						|
.byte 10
 | 
						|
.byte 0
 |