Quake-III-Arena

Quake III Arena GPL Source Release
Log | Files | Refs

wf1.sbk (4434B)


      1 .set reorder
      2 .globl main
      3 .text
      4 .text
      5 .align 2
      6 .ent main
      7 main:
      8 .frame $sp,48,$31
      9 .set noreorder
     10 .cpload $25
     11 .set reorder
     12 addu $sp,$sp,-48
     13 .mask 0x82000000,-28
     14 .cprestore 16
     15 sw $31,20($sp)
     16 sw $0,-24+48($sp)
     17 sw $0,next
     18 b L.3
     19 L.2:
     20 la $4,-20+48($sp)
     21 la $5,-24+48($sp)
     22 jal lookup
     23 lw $15,($2)
     24 la $15,1($15)
     25 sw $15,($2)
     26 L.3:
     27 la $4,-20+48($sp)
     28 jal getword
     29 bne $2,$0,L.2
     30 lw $4,-24+48($sp)
     31 jal tprint
     32 move $2,$0
     33 L.1:
     34 lw $25,16($sp)
     35 lw $31,20($sp)
     36 addu $sp,$sp,48
     37 j $31
     38 .end main
     39 .globl err
     40 .text
     41 .align 2
     42 .ent err
     43 err:
     44 .frame $sp,24,$31
     45 .set noreorder
     46 .cpload $25
     47 .set reorder
     48 addu $sp,$sp,-24
     49 .mask 0x82000000,-4
     50 .cprestore 16
     51 sw $31,20($sp)
     52 sw $4,24($sp)
     53 la $4,L.6
     54 lw $5,0+24($sp)
     55 jal printf
     56 la $4,1
     57 jal exit
     58 move $2,$0
     59 L.5:
     60 lw $25,16($sp)
     61 lw $31,20($sp)
     62 addu $sp,$sp,24
     63 j $31
     64 .end err
     65 .globl getword
     66 .text
     67 .align 2
     68 .ent getword
     69 getword:
     70 .frame $sp,32,$31
     71 .set noreorder
     72 .cpload $25
     73 .set reorder
     74 addu $sp,$sp,-32
     75 .mask 0xc2800000,-4
     76 sw $23,16($sp)
     77 .cprestore 20
     78 sw $30,24($sp)
     79 sw $31,28($sp)
     80 sw $4,32($sp)
     81 L.8:
     82 L.9:
     83 jal getchar
     84 move $24,$2
     85 move $30,$24
     86 la $15,-1
     87 beq $24,$15,L.11
     88 move $4,$30
     89 jal isletter
     90 beq $2,$0,L.8
     91 L.11:
     92 lw $23,0+32($sp)
     93 b L.15
     94 L.12:
     95 move $24,$23
     96 la $23,1($24)
     97 move $15,$30
     98 sb $15,($24)
     99 L.13:
    100 jal getchar
    101 move $30,$2
    102 L.15:
    103 move $4,$30
    104 jal isletter
    105 move $30,$2
    106 bne $2,$0,L.12
    107 sb $0,($23)
    108 move $24,$23
    109 lw $15,0+32($sp)
    110 bleu $24,$15,L.16
    111 la $2,1
    112 b L.7
    113 L.16:
    114 move $2,$0
    115 L.7:
    116 lw $23,16($sp)
    117 lw $25,20($sp)
    118 lw $30,24($sp)
    119 lw $31,28($sp)
    120 addu $sp,$sp,32
    121 j $31
    122 .end getword
    123 .globl isletter
    124 .text
    125 .align 2
    126 .ent isletter
    127 isletter:
    128 .frame $sp,0,$31
    129 .set noreorder
    130 .cpload $25
    131 .set reorder
    132 la $24,65
    133 blt $4,$24,L.19
    134 la $24,90
    135 bgt $4,$24,L.19
    136 la $4,32($4)
    137 L.19:
    138 la $24,97
    139 blt $4,$24,L.21
    140 la $24,122
    141 bgt $4,$24,L.21
    142 move $2,$4
    143 b L.18
    144 L.21:
    145 move $2,$0
    146 L.18:
    147 j $31
    148 .end isletter
    149 .globl lookup
    150 .text
    151 .align 2
    152 .ent lookup
    153 lookup:
    154 .frame $sp,32,$31
    155 .set noreorder
    156 .cpload $25
    157 .set reorder
    158 addu $sp,$sp,-32
    159 .mask 0xc2000000,-8
    160 .cprestore 16
    161 sw $30,20($sp)
    162 sw $31,24($sp)
    163 sw $4,32($sp)
    164 move $30,$5
    165 lw $24,($30)
    166 beq $24,$0,L.24
    167 lw $4,0+32($sp)
    168 lw $24,($30)
    169 lw $5,12($24)
    170 jal strcmp
    171 sw $2,-4+32($sp)
    172 lw $24,-4+32($sp)
    173 bge $24,$0,L.26
    174 lw $4,0+32($sp)
    175 lw $24,($30)
    176 la $5,4($24)
    177 jal lookup
    178 move $24,$2
    179 b L.23
    180 L.26:
    181 lw $24,-4+32($sp)
    182 ble $24,$0,L.28
    183 lw $4,0+32($sp)
    184 lw $24,($30)
    185 la $5,8($24)
    186 jal lookup
    187 move $24,$2
    188 b L.23
    189 L.28:
    190 lw $2,($30)
    191 b L.23
    192 L.24:
    193 lw $24,next
    194 la $15,2000
    195 blt $24,$15,L.30
    196 la $4,L.32
    197 jal err
    198 L.30:
    199 lw $24,next
    200 sll $24,$24,4
    201 sw $0,words($24)
    202 lw $24,next
    203 sll $24,$24,4
    204 sw $0,words+8($24)
    205 sw $0,words+4($24)
    206 lw $4,0+32($sp)
    207 jal strlen
    208 move $24,$2
    209 la $4,1($24)
    210 jal malloc
    211 lw $15,next
    212 sll $15,$15,4
    213 sw $2,words+12($15)
    214 lw $24,next
    215 sll $24,$24,4
    216 lw $24,words+12($24)
    217 bne $24,$0,L.36
    218 la $4,L.39
    219 jal err
    220 L.36:
    221 lw $24,next
    222 sll $24,$24,4
    223 lw $4,words+12($24)
    224 lw $5,0+32($sp)
    225 jal strcpy
    226 lw $24,next
    227 la $15,1($24)
    228 sw $15,next
    229 sll $24,$24,4
    230 la $24,words($24)
    231 sw $24,($30)
    232 move $2,$24
    233 L.23:
    234 lw $25,16($sp)
    235 lw $30,20($sp)
    236 lw $31,24($sp)
    237 addu $sp,$sp,32
    238 j $31
    239 .end lookup
    240 .globl tprint
    241 .text
    242 .align 2
    243 .ent tprint
    244 tprint:
    245 .frame $sp,32,$31
    246 .set noreorder
    247 .cpload $25
    248 .set reorder
    249 addu $sp,$sp,-32
    250 .mask 0xc2000000,-8
    251 .cprestore 16
    252 sw $30,20($sp)
    253 sw $31,24($sp)
    254 move $30,$4
    255 move $24,$30
    256 beq $24,$0,L.42
    257 lw $4,4($30)
    258 jal tprint
    259 la $4,L.44
    260 lw $5,($30)
    261 lw $6,12($30)
    262 jal printf
    263 lw $4,8($30)
    264 jal tprint
    265 L.42:
    266 move $2,$0
    267 L.41:
    268 lw $25,16($sp)
    269 lw $30,20($sp)
    270 lw $31,24($sp)
    271 addu $sp,$sp,32
    272 j $31
    273 .end tprint
    274 .globl strcmp
    275 .text
    276 .align 2
    277 .ent strcmp
    278 strcmp:
    279 .frame $sp,0,$31
    280 .set noreorder
    281 .cpload $25
    282 .set reorder
    283 b L.47
    284 L.46:
    285 move $24,$4
    286 la $4,1($24)
    287 lb $24,($24)
    288 bne $24,$0,L.49
    289 move $2,$0
    290 b L.45
    291 L.49:
    292 la $5,1($5)
    293 L.47:
    294 lb $24,($4)
    295 lb $15,($5)
    296 beq $24,$15,L.46
    297 lb $24,($4)
    298 bne $24,$0,L.51
    299 la $2,-1
    300 b L.45
    301 L.51:
    302 lb $24,($5)
    303 bne $24,$0,L.53
    304 la $2,1
    305 b L.45
    306 L.53:
    307 lb $24,($4)
    308 lb $15,($5)
    309 subu $2,$24,$15
    310 L.45:
    311 j $31
    312 .end strcmp
    313 .globl next
    314 .comm next,4
    315 .globl words
    316 .comm words,32000
    317 .rdata
    318 .align 0
    319 L.44:
    320 .byte 37
    321 .byte 100
    322 .byte 9
    323 .byte 37
    324 .byte 115
    325 .byte 10
    326 .byte 0
    327 .align 0
    328 L.39:
    329 .byte 111
    330 .byte 117
    331 .byte 116
    332 .byte 32
    333 .byte 111
    334 .byte 102
    335 .byte 32
    336 .byte 119
    337 .byte 111
    338 .byte 114
    339 .byte 100
    340 .byte 32
    341 .byte 115
    342 .byte 116
    343 .byte 111
    344 .byte 114
    345 .byte 97
    346 .byte 103
    347 .byte 101
    348 .byte 0
    349 .align 0
    350 L.32:
    351 .byte 111
    352 .byte 117
    353 .byte 116
    354 .byte 32
    355 .byte 111
    356 .byte 102
    357 .byte 32
    358 .byte 110
    359 .byte 111
    360 .byte 100
    361 .byte 101
    362 .byte 32
    363 .byte 115
    364 .byte 116
    365 .byte 111
    366 .byte 114
    367 .byte 97
    368 .byte 103
    369 .byte 101
    370 .byte 0
    371 .align 0
    372 L.6:
    373 .byte 63
    374 .byte 32
    375 .byte 37
    376 .byte 115
    377 .byte 10
    378 .byte 0