blob: ccf60c9cf983e675fc46265299ac11277dc1c98c [
file] [
log] [
blame]
| .set reorder |
| .globl main |
| .text |
| .text |
| .align 2 |
| .ent main |
| main: |
| .frame $sp,32,$31 |
| .set noreorder |
| .cpload $25 |
| .set reorder |
| addu $sp,$sp,-32 |
| .mask 0xc2800000,-4 |
| sw $23,16($sp) |
| .cprestore 20 |
| sw $30,24($sp) |
| sw $31,28($sp) |
| la $30,L.6 |
| b L.5 |
| L.2: |
| lb $4,($30) |
| jal backslash |
| move $24,$2 |
| la $4,L.7 |
| lb $5,($30) |
| move $6,$24 |
| jal printf |
| L.3: |
| la $30,1($30) |
| L.5: |
| lb $24,($30) |
| bne $24,$0,L.2 |
| jal f |
| jal g |
| jal h |
| la $23,16777216 |
| b L.11 |
| L.8: |
| move $4,$23 |
| jal big |
| L.9: |
| la $23,16777216($23) |
| L.11: |
| and $24,$23,117440512 |
| bne $24,$0,L.8 |
| jal limit |
| move $2,$0 |
| L.1: |
| lw $23,16($sp) |
| lw $25,20($sp) |
| lw $30,24($sp) |
| lw $31,28($sp) |
| addu $sp,$sp,32 |
| j $31 |
| .end main |
| .globl backslash |
| .text |
| .align 2 |
| .ent backslash |
| backslash: |
| .frame $sp,0,$31 |
| .set noreorder |
| .cpload $25 |
| .set reorder |
| la $24,102 |
| beq $4,$24,L.16 |
| bgt $4,$24,L.22 |
| L.21: |
| la $24,98 |
| beq $4,$24,L.15 |
| b L.13 |
| L.22: |
| la $24,110 |
| beq $4,$24,L.17 |
| blt $4,$24,L.13 |
| L.23: |
| la $24,114 |
| beq $4,$24,L.18 |
| la $24,116 |
| beq $4,$24,L.19 |
| la $24,118 |
| beq $4,$24,L.20 |
| b L.13 |
| L.15: |
| la $2,8 |
| b L.12 |
| L.16: |
| la $2,12 |
| b L.12 |
| L.17: |
| la $2,10 |
| b L.12 |
| L.18: |
| la $2,13 |
| b L.12 |
| L.19: |
| la $2,9 |
| b L.12 |
| L.20: |
| la $2,11 |
| b L.12 |
| L.13: |
| move $2,$4 |
| L.12: |
| j $31 |
| .end backslash |
| .globl f |
| .text |
| .align 2 |
| .ent f |
| f: |
| .frame $sp,48,$31 |
| .set noreorder |
| .cpload $25 |
| .set reorder |
| addu $sp,$sp,-48 |
| .mask 0xc2c00000,-16 |
| sw $22,16($sp) |
| sw $23,20($sp) |
| .cprestore 24 |
| sw $30,28($sp) |
| sw $31,32($sp) |
| move $23,$0 |
| la $4,L.25 |
| jal printf |
| move $30,$0 |
| L.26: |
| move $22,$30 |
| la $24,1 |
| blt $30,$24,L.30 |
| la $24,20 |
| bgt $30,$24,L.30 |
| sll $24,$30,2 |
| lw $24,L.42-4($24) |
| .cpadd $24 |
| j $24 |
| .rdata |
| .align 2 |
| L.42: |
| .gpword L.32 |
| .gpword L.33 |
| .gpword L.30 |
| .gpword L.30 |
| .gpword L.30 |
| .gpword L.30 |
| .gpword L.34 |
| .gpword L.35 |
| .gpword L.36 |
| .gpword L.30 |
| .gpword L.30 |
| .gpword L.30 |
| .gpword L.30 |
| .gpword L.30 |
| .gpword L.30 |
| .gpword L.37 |
| .gpword L.38 |
| .gpword L.39 |
| .gpword L.40 |
| .gpword L.41 |
| .text |
| L.32: |
| move $23,$30 |
| b L.31 |
| L.33: |
| move $23,$30 |
| b L.31 |
| L.34: |
| move $23,$30 |
| b L.31 |
| L.35: |
| move $23,$30 |
| b L.31 |
| L.36: |
| move $23,$30 |
| b L.31 |
| L.37: |
| move $23,$30 |
| b L.31 |
| L.38: |
| move $23,$30 |
| b L.31 |
| L.39: |
| move $23,$30 |
| b L.31 |
| L.40: |
| move $23,$30 |
| b L.31 |
| L.41: |
| move $23,$30 |
| L.30: |
| L.31: |
| la $4,L.44 |
| move $5,$23 |
| jal printf |
| L.27: |
| la $30,1($30) |
| la $24,20 |
| ble $30,$24,L.26 |
| move $2,$0 |
| L.24: |
| lw $22,16($sp) |
| lw $23,20($sp) |
| lw $25,24($sp) |
| lw $30,28($sp) |
| lw $31,32($sp) |
| addu $sp,$sp,48 |
| j $31 |
| .end f |
| .globl g |
| .text |
| .align 2 |
| .ent g |
| g: |
| .frame $sp,32,$31 |
| .set noreorder |
| .cpload $25 |
| .set reorder |
| addu $sp,$sp,-32 |
| .mask 0xc2000000,-8 |
| .cprestore 16 |
| sw $30,20($sp) |
| sw $31,24($sp) |
| la $4,L.46 |
| jal printf |
| la $30,1 |
| L.47: |
| la $24,1001 |
| blt $30,$24,L.64 |
| la $24,1004 |
| bgt $30,$24,L.65 |
| sll $24,$30,2 |
| lw $24,L.66-4004($24) |
| .cpadd $24 |
| j $24 |
| .rdata |
| .align 2 |
| L.66: |
| .gpword L.60 |
| .gpword L.60 |
| .gpword L.60 |
| .gpword L.60 |
| .text |
| L.64: |
| la $24,1 |
| blt $30,$24,L.51 |
| la $24,8 |
| bgt $30,$24,L.51 |
| sll $24,$30,2 |
| lw $24,L.68-4($24) |
| .cpadd $24 |
| j $24 |
| .rdata |
| .align 2 |
| L.68: |
| .gpword L.53 |
| .gpword L.53 |
| .gpword L.55 |
| .gpword L.55 |
| .gpword L.55 |
| .gpword L.57 |
| .gpword L.57 |
| .gpword L.57 |
| .text |
| L.65: |
| la $24,3001 |
| blt $30,$24,L.51 |
| la $24,3004 |
| bgt $30,$24,L.51 |
| sll $24,$30,2 |
| lw $24,L.70-12004($24) |
| .cpadd $24 |
| j $24 |
| .rdata |
| .align 2 |
| L.70: |
| .gpword L.62 |
| .gpword L.62 |
| .gpword L.62 |
| .gpword L.62 |
| .text |
| L.53: |
| la $4,L.54 |
| move $5,$30 |
| jal printf |
| b L.52 |
| L.55: |
| la $4,L.56 |
| move $5,$30 |
| jal printf |
| b L.52 |
| L.57: |
| la $4,L.58 |
| move $5,$30 |
| jal printf |
| L.51: |
| la $4,L.59 |
| move $5,$30 |
| jal printf |
| b L.52 |
| L.60: |
| la $4,L.61 |
| move $5,$30 |
| jal printf |
| b L.52 |
| L.62: |
| la $4,L.63 |
| move $5,$30 |
| jal printf |
| L.52: |
| L.48: |
| la $30,1($30) |
| la $24,10 |
| ble $30,$24,L.47 |
| move $2,$0 |
| L.45: |
| lw $25,16($sp) |
| lw $30,20($sp) |
| lw $31,24($sp) |
| addu $sp,$sp,32 |
| j $31 |
| .end g |
| .globl h |
| .text |
| .align 2 |
| .ent h |
| h: |
| .frame $sp,32,$31 |
| .set noreorder |
| .cpload $25 |
| .set reorder |
| addu $sp,$sp,-32 |
| .mask 0xc2800000,-4 |
| sw $23,16($sp) |
| .cprestore 20 |
| sw $30,24($sp) |
| sw $31,28($sp) |
| move $23,$0 |
| la $4,L.73 |
| jal printf |
| la $30,1 |
| L.74: |
| la $24,264 |
| beq $30,$24,L.86 |
| bgt $30,$24,L.94 |
| L.93: |
| la $24,120 |
| beq $30,$24,L.84 |
| bgt $30,$24,L.96 |
| L.95: |
| la $24,8 |
| beq $30,$24,L.83 |
| blt $30,$24,L.78 |
| L.97: |
| la $24,16 |
| beq $30,$24,L.82 |
| b L.78 |
| L.96: |
| la $24,128 |
| beq $30,$24,L.80 |
| blt $30,$24,L.78 |
| L.98: |
| la $24,248 |
| beq $30,$24,L.87 |
| b L.78 |
| L.94: |
| la $24,288 |
| beq $30,$24,L.91 |
| bgt $30,$24,L.100 |
| L.99: |
| la $24,272 |
| beq $30,$24,L.88 |
| blt $30,$24,L.78 |
| L.101: |
| la $24,280 |
| beq $30,$24,L.85 |
| b L.78 |
| L.100: |
| la $24,304 |
| beq $30,$24,L.89 |
| bgt $30,$24,L.103 |
| L.102: |
| la $24,296 |
| beq $30,$24,L.90 |
| b L.78 |
| L.103: |
| la $24,312 |
| beq $30,$24,L.92 |
| b L.78 |
| L.78: |
| la $23,1($23) |
| b L.75 |
| L.80: |
| la $4,L.81 |
| move $5,$30 |
| jal printf |
| b L.79 |
| L.82: |
| la $4,L.81 |
| move $5,$30 |
| jal printf |
| b L.79 |
| L.83: |
| la $4,L.81 |
| move $5,$30 |
| jal printf |
| b L.79 |
| L.84: |
| la $4,L.81 |
| move $5,$30 |
| jal printf |
| b L.79 |
| L.85: |
| la $4,L.81 |
| move $5,$30 |
| jal printf |
| b L.79 |
| L.86: |
| la $4,L.81 |
| move $5,$30 |
| jal printf |
| b L.79 |
| L.87: |
| la $4,L.81 |
| move $5,$30 |
| jal printf |
| b L.79 |
| L.88: |
| la $4,L.81 |
| move $5,$30 |
| jal printf |
| b L.79 |
| L.89: |
| la $4,L.81 |
| move $5,$30 |
| jal printf |
| b L.79 |
| L.90: |
| la $4,L.81 |
| move $5,$30 |
| jal printf |
| b L.79 |
| L.91: |
| la $4,L.81 |
| move $5,$30 |
| jal printf |
| b L.79 |
| L.92: |
| la $4,L.81 |
| move $5,$30 |
| jal printf |
| L.79: |
| L.75: |
| la $30,1($30) |
| la $24,500 |
| ble $30,$24,L.74 |
| la $4,L.104 |
| move $5,$23 |
| jal printf |
| move $2,$0 |
| L.72: |
| lw $23,16($sp) |
| lw $25,20($sp) |
| lw $30,24($sp) |
| lw $31,28($sp) |
| addu $sp,$sp,32 |
| j $31 |
| .end h |
| .globl big |
| .text |
| .align 2 |
| .ent big |
| big: |
| .frame $sp,32,$31 |
| .set noreorder |
| .cpload $25 |
| .set reorder |
| addu $sp,$sp,-32 |
| .mask 0xc2000000,-8 |
| .cprestore 16 |
| sw $30,20($sp) |
| sw $31,24($sp) |
| sw $4,32($sp) |
| lw $24,0+32($sp) |
| and $30,$24,0x6000000 |
| la $15,33554432 |
| beq $30,$15,L.111 |
| bgt $30,$15,L.115 |
| L.114: |
| la $15,-2 |
| beq $30,$15,L.109 |
| la $15,-1 |
| beq $30,$15,L.109 |
| beq $30,$0,L.109 |
| b L.106 |
| L.115: |
| move $24,$30 |
| la $15,67108864 |
| beq $24,$15,L.112 |
| b L.106 |
| L.109: |
| la $4,L.110 |
| lw $5,0+32($sp) |
| jal printf |
| b L.107 |
| L.111: |
| la $4,L.110 |
| lw $5,0+32($sp) |
| jal printf |
| b L.107 |
| L.112: |
| la $4,L.110 |
| lw $5,0+32($sp) |
| jal printf |
| b L.107 |
| L.106: |
| la $4,L.113 |
| lw $5,0+32($sp) |
| jal printf |
| L.107: |
| move $2,$0 |
| L.105: |
| lw $25,16($sp) |
| lw $30,20($sp) |
| lw $31,24($sp) |
| addu $sp,$sp,32 |
| j $31 |
| .end big |
| .globl limit |
| .text |
| .align 2 |
| .ent limit |
| limit: |
| .frame $sp,32,$31 |
| .set noreorder |
| .cpload $25 |
| .set reorder |
| addu $sp,$sp,-32 |
| .mask 0xc2000000,-8 |
| .cprestore 16 |
| sw $30,20($sp) |
| sw $31,24($sp) |
| la $30,-2147483648 |
| L.117: |
| la $24,-2147483648 |
| blt $30,$24,L.121 |
| la $15,-2147483644 |
| bgt $30,$15,L.121 |
| sll $15,$30,2 |
| sll $24,$24,2 |
| subu $24,$15,$24 |
| lw $24,L.134($24) |
| .cpadd $24 |
| j $24 |
| .rdata |
| .align 2 |
| L.134: |
| .gpword L.123 |
| .gpword L.125 |
| .gpword L.127 |
| .gpword L.129 |
| .gpword L.131 |
| .text |
| L.123: |
| la $4,L.124 |
| jal printf |
| b L.122 |
| L.125: |
| la $4,L.126 |
| jal printf |
| b L.122 |
| L.127: |
| la $4,L.128 |
| jal printf |
| b L.122 |
| L.129: |
| la $4,L.130 |
| jal printf |
| b L.122 |
| L.131: |
| la $4,L.132 |
| jal printf |
| b L.122 |
| L.121: |
| la $4,L.133 |
| jal printf |
| L.122: |
| L.118: |
| la $30,1($30) |
| la $24,-2147483643 |
| ble $30,$24,L.117 |
| la $30,2147483647 |
| L.135: |
| la $24,2147483643 |
| blt $30,$24,L.139 |
| la $15,2147483647 |
| bgt $30,$15,L.139 |
| sll $15,$30,2 |
| sll $24,$24,2 |
| subu $24,$15,$24 |
| lw $24,L.146($24) |
| .cpadd $24 |
| j $24 |
| .rdata |
| .align 2 |
| L.146: |
| .gpword L.145 |
| .gpword L.144 |
| .gpword L.143 |
| .gpword L.142 |
| .gpword L.141 |
| .text |
| L.141: |
| la $4,L.124 |
| jal printf |
| b L.140 |
| L.142: |
| la $4,L.126 |
| jal printf |
| b L.140 |
| L.143: |
| la $4,L.128 |
| jal printf |
| b L.140 |
| L.144: |
| la $4,L.130 |
| jal printf |
| b L.140 |
| L.145: |
| la $4,L.132 |
| jal printf |
| b L.140 |
| L.139: |
| la $4,L.133 |
| jal printf |
| L.140: |
| L.136: |
| subu $30,$30,1 |
| la $24,2147483642 |
| bge $30,$24,L.135 |
| move $2,$0 |
| L.116: |
| lw $25,16($sp) |
| lw $30,20($sp) |
| lw $31,24($sp) |
| addu $sp,$sp,32 |
| j $31 |
| .end limit |
| .rdata |
| .align 0 |
| L.133: |
| .byte 53 |
| .byte 10 |
| .byte 0 |
| .align 0 |
| L.132: |
| .byte 52 |
| .byte 10 |
| .byte 0 |
| .align 0 |
| L.130: |
| .byte 51 |
| .byte 10 |
| .byte 0 |
| .align 0 |
| L.128: |
| .byte 50 |
| .byte 10 |
| .byte 0 |
| .align 0 |
| L.126: |
| .byte 49 |
| .byte 10 |
| .byte 0 |
| .align 0 |
| L.124: |
| .byte 48 |
| .byte 10 |
| .byte 0 |
| .align 0 |
| L.113: |
| .byte 120 |
| .byte 32 |
| .byte 61 |
| .byte 32 |
| .byte 48 |
| .byte 120 |
| .byte 37 |
| .byte 120 |
| .byte 32 |
| .byte 40 |
| .byte 100 |
| .byte 101 |
| .byte 102 |
| .byte 97 |
| .byte 117 |
| .byte 108 |
| .byte 116 |
| .byte 41 |
| .byte 10 |
| .byte 0 |
| .align 0 |
| L.110: |
| .byte 120 |
| .byte 32 |
| .byte 61 |
| .byte 32 |
| .byte 48 |
| .byte 120 |
| .byte 37 |
| .byte 120 |
| .byte 10 |
| .byte 0 |
| .align 0 |
| L.104: |
| .byte 37 |
| .byte 100 |
| .byte 32 |
| .byte 100 |
| .byte 101 |
| .byte 102 |
| .byte 97 |
| .byte 117 |
| .byte 108 |
| .byte 116 |
| .byte 115 |
| .byte 10 |
| .byte 0 |
| .align 0 |
| L.81: |
| .byte 105 |
| .byte 32 |
| .byte 61 |
| .byte 32 |
| .byte 37 |
| .byte 100 |
| .byte 10 |
| .byte 0 |
| .align 0 |
| L.73: |
| .byte 104 |
| .byte 58 |
| .byte 10 |
| .byte 0 |
| .align 0 |
| L.63: |
| .byte 54 |
| .byte 32 |
| .byte 37 |
| .byte 100 |
| .byte 10 |
| .byte 0 |
| .align 0 |
| L.61: |
| .byte 53 |
| .byte 32 |
| .byte 37 |
| .byte 100 |
| .byte 10 |
| .byte 0 |
| .align 0 |
| L.59: |
| .byte 100 |
| .byte 32 |
| .byte 37 |
| .byte 100 |
| .byte 10 |
| .byte 0 |
| .align 0 |
| L.58: |
| .byte 51 |
| .byte 32 |
| .byte 37 |
| .byte 100 |
| .byte 10 |
| .byte 0 |
| .align 0 |
| L.56: |
| .byte 50 |
| .byte 32 |
| .byte 37 |
| .byte 100 |
| .byte 10 |
| .byte 0 |
| .align 0 |
| L.54: |
| .byte 49 |
| .byte 32 |
| .byte 37 |
| .byte 100 |
| .byte 10 |
| .byte 0 |
| .align 0 |
| L.46: |
| .byte 103 |
| .byte 58 |
| .byte 10 |
| .byte 0 |
| .align 0 |
| L.44: |
| .byte 120 |
| .byte 32 |
| .byte 61 |
| .byte 32 |
| .byte 37 |
| .byte 100 |
| .byte 10 |
| .byte 0 |
| .align 0 |
| L.25: |
| .byte 102 |
| .byte 58 |
| .byte 10 |
| .byte 0 |
| .align 0 |
| L.7: |
| .byte 37 |
| .byte 99 |
| .byte 32 |
| .byte 61 |
| .byte 32 |
| .byte 48 |
| .byte 120 |
| .byte 37 |
| .byte 120 |
| .byte 10 |
| .byte 0 |
| .align 0 |
| L.6: |
| .byte 98 |
| .byte 102 |
| .byte 110 |
| .byte 114 |
| .byte 116 |
| .byte 118 |
| .byte 120 |
| .byte 0 |