blob: 73369d308bd184ac15dcd9614b82ec88cff3ea9d [file] [log] [blame]
.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