Annotation of researchv10no/cmd/lcc/gen2/dag.s, revision 1.1.1.1

1.1       root        1: .set reorder
                      2: .globl codehead
                      3: .data; .align 2; codehead:.word 0x6
                      4: .space 44
                      5: .globl codelist
                      6: .sdata; .align 2; codelist:.word codehead
                      7: .text
                      8: .globl addlocal
                      9: .text
                     10: .align 2; .ent addlocal
                     11: addlocal:
                     12: $fp1=24
                     13: .frame $sp,24,$31
                     14: addu $sp,$sp,-24
                     15: .mask 0x80000000,-8
                     16: sw $31,16($sp)
                     17: sw $4,24($sp)
                     18: lw $25,$fp1+0($sp)
                     19: lw $25,32($25)
                     20: and $25,$25,0x80000000
                     21: bne $25,$0,L.24
                     22: li $4,2
                     23: jal code  # int
                     24: move $25,$2
                     25: lw $24,$fp1+0($sp)
                     26: sw $24,12($25)
                     27: lw $25,$fp1+0($sp)
                     28: lw $24,32($25)
                     29: or $24,$24,0x80000000
                     30: sw $24,32($25)
                     31: lw $25,$fp1+0($sp)
                     32: lw $24,level
                     33: sh $24,28($25)
                     34: L.24:
                     35: L.23:
                     36: lw $31,16($sp)
                     37: addu $sp,$sp,24
                     38: j $31
                     39: .end addlocal
                     40: .globl btot
                     41: .text
                     42: .align 2; .ent btot
                     43: btot:
                     44: $fp2=24
                     45: .frame $sp,24,$31
                     46: addu $sp,$sp,-24
                     47: .mask 0xc0000000,-4
                     48: sw $30,16($sp)
                     49: sw $31,20($sp)
                     50: sw $4,24($sp)
                     51: lw $25,$fp2+0($sp)
                     52: and $30,$25,15
                     53: blt $30,1,L.27
                     54: bgt $30,7,L.27
                     55: sll $25,$30,2
                     56: lw $25,L.40-4($25)
                     57: j $25
                     58: L.40:
                     59: .align 2; .word L.30
                     60: .align 2; .word L.31
                     61: .align 2; .word L.32
                     62: .align 2; .word L.33
                     63: .align 2; .word L.34
                     64: .align 2; .word L.35
                     65: .align 2; .word L.36
                     66: L.30:
                     67: lw $2,floattype
                     68: b L.26
                     69: L.31:
                     70: lw $2,doubletype
                     71: b L.26
                     72: L.32:
                     73: lw $2,chartype
                     74: b L.26
                     75: L.33:
                     76: lw $2,shorttype
                     77: b L.26
                     78: L.34:
                     79: lw $2,inttype
                     80: b L.26
                     81: L.35:
                     82: lw $2,unsignedtype
                     83: b L.26
                     84: L.36:
                     85: lw $2,voidptype
                     86: b L.26
                     87: L.27:
                     88: la $4,L.37
                     89: la $5,L.38
                     90: li $6,46
                     91: jal fatal  # int
                     92: move $2,$0
                     93: L.26:
                     94: lw $30,16($sp)
                     95: lw $31,20($sp)
                     96: addu $sp,$sp,24
                     97: j $31
                     98: .end btot
                     99: .globl code
                    100: .text
                    101: .align 2; .ent code
                    102: code:
                    103: $fp3=32
                    104: .frame $sp,32,$31
                    105: addu $sp,$sp,-32
                    106: .mask 0xc0800000,-8
                    107: sw $23,16($sp)
                    108: sw $30,20($sp)
                    109: sw $31,24($sp)
                    110: sw $4,32($sp)
                    111: lw $25,$fp3+0($sp)
                    112: ble $25,5,L.43
                    113: lw $30,codelist
                    114: b L.48
                    115: L.45:
                    116: lw $30,4($30)
                    117: L.46:
                    118: L.48:
                    119: lw $25,($30)
                    120: blt $25,5,L.45
                    121: lw $25,($30)
                    122: bne $25,9,L.49
                    123: la $4,L.51
                    124: jal warning  # int
                    125: L.49:
                    126: L.43:
                    127: lw $25,transient
                    128: li $24,48
                    129: sw $24,($25)
                    130: lw $25,transient
                    131: lw $24,($25)
                    132: lw $15,4($25)
                    133: addu $24,$24,$15
                    134: lw $25,8($25)
                    135: bltu $24,$25,L.53
                    136: lw $25,transient
                    137: lw $4,($25)
                    138: la $5,transient
                    139: jal allocate  # int
                    140: move $23,$2
                    141: b L.54
                    142: L.53:
                    143: lw $25,transient
                    144: lw $24,($25)
                    145: lw $15,4($25)
                    146: addu $24,$24,$15
                    147: sw $24,4($25)
                    148: lw $25,transient
                    149: lw $24,4($25)
                    150: lw $25,($25)
                    151: subu $23,$24,$25
                    152: L.54:
                    153: move $30,$23
                    154: lw $25,$fp3+0($sp)
                    155: sw $25,($30)
                    156: lw $25,codelist
                    157: sw $25,4($30)
                    158: sw $0,8($30)
                    159: lw $25,codelist
                    160: sw $30,8($25)
                    161: sw $30,codelist
                    162: move $2,$30
                    163: L.42:
                    164: lw $23,16($sp)
                    165: lw $30,20($sp)
                    166: lw $31,24($sp)
                    167: addu $sp,$sp,32
                    168: j $31
                    169: .end code
                    170: .text
                    171: .align 2; .ent dagnode
                    172: dagnode:
                    173: $fp4=32
                    174: .frame $sp,32,$31
                    175: addu $sp,$sp,-32
                    176: .mask 0xc0c00000,-4
                    177: sw $22,16($sp)
                    178: sw $23,20($sp)
                    179: sw $30,24($sp)
                    180: sw $31,28($sp)
                    181: sw $4,32($sp)
                    182: sw $5,36($sp)
                    183: sw $6,40($sp)
                    184: sw $7,44($sp)
                    185: lw $25,transient
                    186: li $24,88
                    187: sw $24,($25)
                    188: lw $25,transient
                    189: lw $24,($25)
                    190: lw $15,4($25)
                    191: addu $24,$24,$15
                    192: lw $25,8($25)
                    193: bltu $24,$25,L.57
                    194: lw $25,transient
                    195: lw $4,($25)
                    196: la $5,transient
                    197: jal allocate  # int
                    198: move $23,$2
                    199: b L.58
                    200: L.57:
                    201: lw $25,transient
                    202: lw $24,($25)
                    203: lw $15,4($25)
                    204: addu $24,$24,$15
                    205: sw $24,4($25)
                    206: lw $25,transient
                    207: lw $24,4($25)
                    208: lw $25,($25)
                    209: subu $23,$24,$25
                    210: L.58:
                    211: move $30,$23
                    212: move $23,$30
                    213: addu $22,$23,64
                    214: b L.62
                    215: L.59:
                    216: sw $0,28($23)
                    217: sw $0,24($23)
                    218: sw $0,20($23)
                    219: sw $0,16($23)
                    220: sw $0,12($23)
                    221: sw $0,8($23)
                    222: sw $0,4($23)
                    223: sw $0,($23)
                    224: L.60:
                    225: addu $23,$23,32
                    226: L.62:
                    227: bltu $23,$22,L.59
                    228: sw $0,($23)
                    229: sw $0,4($23)
                    230: sw $0,8($23)
                    231: sw $0,12($23)
                    232: sw $0,16($23)
                    233: lw $25,$fp4+0($sp)
                    234: sw $25,($30)
                    235: lw $25,$fp4+4($sp)
                    236: sw $25,24($30)
                    237: beq $25,$0,L.63
                    238: lw $25,$fp4+4($sp)
                    239: lh $24,4($25)
                    240: addu $24,$24,1
                    241: sh $24,4($25)
                    242: L.63:
                    243: lw $25,$fp4+8($sp)
                    244: sw $25,28($30)
                    245: beq $25,$0,L.65
                    246: lw $25,$fp4+8($sp)
                    247: lh $24,4($25)
                    248: addu $24,$24,1
                    249: sh $24,4($25)
                    250: L.65:
                    251: lw $25,$fp4+12($sp)
                    252: sw $25,8($30)
                    253: move $2,$30
                    254: L.55:
                    255: lw $22,16($sp)
                    256: lw $23,20($sp)
                    257: lw $30,24($sp)
                    258: lw $31,28($sp)
                    259: addu $sp,$sp,32
                    260: j $31
                    261: .end dagnode
                    262: .globl emitcode
                    263: .text
                    264: .align 2; .ent emitcode
                    265: emitcode:
                    266: $fp5=48
                    267: .frame $sp,48,$31
                    268: addu $sp,$sp,-48
                    269: .mask 0xc0f00000,-12
                    270: sw $20,16($sp)
                    271: sw $21,20($sp)
                    272: sw $22,24($sp)
                    273: sw $23,28($sp)
                    274: sw $30,32($sp)
                    275: sw $31,36($sp)
                    276: la $25,$fp5-8($sp)
                    277: la $24,src
                    278: lw $2,0($24)
                    279: lw $3,4($24)
                    280: sw $2,0($25)
                    281: sw $3,4($25)
                    282: move $23,$0
                    283: la $30,codehead
                    284: b L.71
                    285: L.68:
                    286: lw $22,($30)
                    287: blt $22,$0,L.72
                    288: bgt $22,10,L.72
                    289: sll $25,$22,2
                    290: lw $25,L.100($25)
                    291: j $25
                    292: L.100:
                    293: .align 2; .word L.75
                    294: .align 2; .word L.78
                    295: .align 2; .word L.81
                    296: .align 2; .word L.72
                    297: .align 2; .word L.84
                    298: .align 2; .word L.90
                    299: .align 2; .word L.72
                    300: .align 2; .word L.72
                    301: .align 2; .word L.90
                    302: .align 2; .word L.87
                    303: .align 2; .word L.91
                    304: L.75:
                    305: sw $23,12($30)
                    306: move $23,$30
                    307: lw $25,glevel
                    308: beq $25,$0,L.73
                    309: lw $25,IR
                    310: lw $25,104($25)
                    311: beq $25,$0,L.73
                    312: li $4,123
                    313: lh $25,18($23)
                    314: subu $5,$25,5
                    315: lw $6,20($23)
                    316: lw $25,IR
                    317: lw $25,104($25)
                    318: jal $25  # int
                    319: li $4,1
                    320: jal swtoseg  # int
                    321: b L.73
                    322: L.78:
                    323: lw $25,glevel
                    324: beq $25,$0,L.79
                    325: lw $25,IR
                    326: lw $25,104($25)
                    327: beq $25,$0,L.79
                    328: lw $4,24($23)
                    329: lh $5,18($23)
                    330: la $6,typestab
                    331: move $7,$0
                    332: jal foreach  # int
                    333: lw $4,28($23)
                    334: lh $5,18($23)
                    335: la $6,typestab
                    336: move $7,$0
                    337: jal foreach  # int
                    338: li $4,125
                    339: lh $25,18($23)
                    340: subu $5,$25,5
                    341: lw $6,20($23)
                    342: lw $25,IR
                    343: lw $25,104($25)
                    344: jal $25  # int
                    345: li $4,1
                    346: jal swtoseg  # int
                    347: L.79:
                    348: lw $23,12($23)
                    349: b L.73
                    350: L.81:
                    351: lw $25,glevel
                    352: beq $25,$0,L.73
                    353: lw $25,IR
                    354: lw $25,124($25)
                    355: beq $25,$0,L.73
                    356: lw $4,12($30)
                    357: lw $25,IR
                    358: lw $25,124($25)
                    359: jal $25  # int
                    360: li $4,1
                    361: jal swtoseg  # int
                    362: b L.73
                    363: L.84:
                    364: la $25,src
                    365: la $24,12($30)
                    366: lw $2,0($24)
                    367: lw $3,4($24)
                    368: sw $2,0($25)
                    369: sw $3,4($25)
                    370: lw $25,glevel
                    371: beq $25,$0,L.73
                    372: lw $25,IR
                    373: lw $25,120($25)
                    374: beq $25,$0,L.73
                    375: addu $4,$30,12
                    376: lw $25,IR
                    377: lw $25,120($25)
                    378: jal $25  # int
                    379: li $4,1
                    380: jal swtoseg  # int
                    381: b L.73
                    382: L.87:
                    383: lw $25,12($30)
                    384: bne $25,$0,L.88
                    385: b L.73
                    386: L.88:
                    387: L.90:
                    388: lw $4,12($30)
                    389: lw $25,IR
                    390: lw $25,60($25)
                    391: jal $25  # int
                    392: b L.73
                    393: L.91:
                    394: lw $25,28($30)
                    395: lw $20,($25)
                    396: move $21,$0
                    397: b L.95
                    398: L.96:
                    399: lw $25,20($30)
                    400: lw $4,68($25)
                    401: lw $25,IR
                    402: lw $25,44($25)
                    403: jal $25  # int
                    404: L.97:
                    405: move $25,$20
                    406: addu $20,$25,1
                    407: sll $24,$21,2
                    408: lw $15,28($30)
                    409: addu $24,$24,$15
                    410: lw $24,($24)
                    411: blt $25,$24,L.96
                    412: sll $25,$21,2
                    413: lw $24,32($30)
                    414: addu $25,$25,$24
                    415: lw $25,($25)
                    416: lw $4,68($25)
                    417: lw $25,IR
                    418: lw $25,44($25)
                    419: jal $25  # int
                    420: L.93:
                    421: addu $21,$21,1
                    422: L.95:
                    423: lw $25,24($30)
                    424: blt $21,$25,L.97
                    425: L.72:
                    426: L.73:
                    427: L.69:
                    428: lw $30,8($30)
                    429: L.71:
                    430: lw $25,errcnt
                    431: bgt $25,$0,L.101
                    432: bne $30,$0,L.68
                    433: L.101:
                    434: la $25,src
                    435: la $24,$fp5-8($sp)
                    436: lw $2,0($24)
                    437: lw $3,4($24)
                    438: sw $2,0($25)
                    439: sw $3,4($25)
                    440: L.67:
                    441: lw $20,16($sp)
                    442: lw $21,20($sp)
                    443: lw $22,24($sp)
                    444: lw $23,28($sp)
                    445: lw $30,32($sp)
                    446: lw $31,36($sp)
                    447: addu $sp,$sp,48
                    448: j $31
                    449: .end emitcode
                    450: .text
                    451: .align 2; .ent fixup
                    452: fixup:
                    453: $fp6=32
                    454: .frame $sp,32,$31
                    455: addu $sp,$sp,-32
                    456: .mask 0xc0800000,-8
                    457: sw $23,16($sp)
                    458: sw $30,20($sp)
                    459: sw $31,24($sp)
                    460: move $30,$4
                    461: b L.106
                    462: L.103:
                    463: lw $25,($30)
                    464: and $23,$25,0xfffffff0
                    465: beq $23,544,L.113
                    466: beq $23,560,L.113
                    467: bgt $23,560,L.115
                    468: beq $23,512,L.113
                    469: beq $23,528,L.113
                    470: bgt $23,528,L.107
                    471: beq $23,480,L.113
                    472: beq $23,496,L.113
                    473: b L.107
                    474: L.115:
                    475: beq $23,576,L.110
                    476: beq $23,592,L.113
                    477: b L.107
                    478: L.110:
                    479: lw $25,24($30)
                    480: lw $25,($25)
                    481: bne $25,263,L.108
                    482: lw $25,24($30)
                    483: lw $24,8($25)
                    484: lw $24,68($24)
                    485: sw $24,8($25)
                    486: b L.108
                    487: L.113:
                    488: lw $25,8($30)
                    489: bne $25,$0,L.114
                    490: la $4,L.37
                    491: la $5,L.38
                    492: li $6,151
                    493: jal fatal  # int
                    494: L.114:
                    495: lw $25,8($30)
                    496: lw $25,68($25)
                    497: sw $25,8($30)
                    498: L.107:
                    499: L.108:
                    500: L.104:
                    501: lw $30,48($30)
                    502: L.106:
                    503: bne $30,$0,L.103
                    504: L.102:
                    505: lw $23,16($sp)
                    506: lw $30,20($sp)
                    507: lw $31,24($sp)
                    508: addu $sp,$sp,32
                    509: j $31
                    510: .end fixup
                    511: .globl gencode
                    512: .text
                    513: .align 2; .ent gencode
                    514: gencode:
                    515: $fp7=64
                    516: .frame $sp,64,$31
                    517: addu $sp,$sp,-64
                    518: .mask 0xc0ff0000,-12
                    519: sw $16,16($sp)
                    520: sw $17,20($sp)
                    521: sw $18,24($sp)
                    522: sw $19,28($sp)
                    523: sw $20,32($sp)
                    524: sw $21,36($sp)
                    525: sw $22,40($sp)
                    526: sw $23,44($sp)
                    527: sw $30,48($sp)
                    528: sw $31,52($sp)
                    529: move $30,$4
                    530: move $23,$5
                    531: la $25,$fp7-8($sp)
                    532: la $24,src
                    533: lw $2,0($24)
                    534: lw $3,4($24)
                    535: sw $2,0($25)
                    536: sw $3,4($25)
                    537: lw $25,codehead+8
                    538: lw $22,8($25)
                    539: lw $25,codehead+8
                    540: sw $25,codelist
                    541: move $19,$0
                    542: b L.122
                    543: L.119:
                    544: lbu $25,30($21)
                    545: lbu $24,30($20)
                    546: bne $25,$24,L.125
                    547: lw $25,40($21)
                    548: lw $24,40($20)
                    549: beq $25,$24,L.123
                    550: L.125:
                    551: move $4,$20
                    552: jal idnode  # int
                    553: move $4,$21
                    554: move $5,$2
                    555: jal asgn  # int
                    556: move $4,$2
                    557: move $5,$0
                    558: move $6,$0
                    559: jal walk  # int
                    560: lw $25,glevel
                    561: beq $25,$0,L.124
                    562: lw $25,IR
                    563: lw $25,124($25)
                    564: beq $25,$0,L.124
                    565: move $4,$21
                    566: lw $25,IR
                    567: lw $25,124($25)
                    568: jal $25  # int
                    569: move $4,$20
                    570: lw $25,IR
                    571: lw $25,124($25)
                    572: jal $25  # int
                    573: li $4,1
                    574: jal swtoseg  # int
                    575: b L.124
                    576: L.123:
                    577: lw $25,glevel
                    578: beq $25,$0,L.128
                    579: lw $25,IR
                    580: lw $25,124($25)
                    581: beq $25,$0,L.128
                    582: move $4,$21
                    583: lw $25,IR
                    584: lw $25,124($25)
                    585: jal $25  # int
                    586: li $4,1
                    587: jal swtoseg  # int
                    588: L.128:
                    589: L.124:
                    590: L.120:
                    591: addu $19,$19,1
                    592: L.122:
                    593: sll $25,$19,2
                    594: addu $24,$25,$23
                    595: lw $24,($24)
                    596: move $21,$24
                    597: beq $24,$0,L.130
                    598: addu $25,$25,$30
                    599: lw $25,($25)
                    600: move $20,$25
                    601: bne $25,$0,L.119
                    602: L.130:
                    603: lw $25,codelist
                    604: sw $22,8($25)
                    605: lw $25,codelist
                    606: sw $25,4($22)
                    607: move $18,$0
                    608: la $22,codehead
                    609: b L.134
                    610: L.131:
                    611: lw $17,($22)
                    612: blt $17,$0,L.135
                    613: bgt $17,10,L.135
                    614: sll $25,$17,2
                    615: lw $25,L.160($25)
                    616: j $25
                    617: L.160:
                    618: .align 2; .word L.140
                    619: .align 2; .word L.149
                    620: .align 2; .word L.150
                    621: .align 2; .word L.152
                    622: .align 2; .word L.139
                    623: .align 2; .word L.156
                    624: .align 2; .word L.136
                    625: .align 2; .word L.135
                    626: .align 2; .word L.156
                    627: .align 2; .word L.153
                    628: .align 2; .word L.136
                    629: b L.136
                    630: L.139:
                    631: la $25,src
                    632: la $24,12($22)
                    633: lw $2,0($24)
                    634: lw $3,4($24)
                    635: sw $2,0($25)
                    636: sw $3,4($25)
                    637: b L.136
                    638: L.140:
                    639: lw $16,20($22)
                    640: sw $18,12($22)
                    641: move $18,$22
                    642: addu $4,$18,32
                    643: lw $25,IR
                    644: lw $25,36($25)
                    645: jal $25  # int
                    646: b L.144
                    647: L.141:
                    648: lw $25,($16)
                    649: l.s $f18,36($25)
                    650: l.s $f16,L.148
                    651: c.eq.s $f18,$f16; bc1f L.147
                    652: lw $25,glevel
                    653: beq $25,$0,L.145
                    654: L.147:
                    655: lw $4,($16)
                    656: lw $25,IR
                    657: lw $25,84($25)
                    658: jal $25  # int
                    659: L.145:
                    660: L.142:
                    661: addu $16,$16,4
                    662: L.144:
                    663: lw $25,($16)
                    664: bne $25,$0,L.141
                    665: b L.136
                    666: L.149:
                    667: addu $4,$18,32
                    668: lw $25,IR
                    669: lw $25,40($25)
                    670: jal $25  # int
                    671: lw $18,12($18)
                    672: b L.136
                    673: L.150:
                    674: lw $25,12($22)
                    675: lhu $25,28($25)
                    676: lh $24,18($18)
                    677: beq $25,$24,L.151
                    678: la $4,L.37
                    679: la $5,L.38
                    680: li $6,202
                    681: jal fatal  # int
                    682: L.151:
                    683: lw $4,12($22)
                    684: lw $25,IR
                    685: lw $25,84($25)
                    686: jal $25  # int
                    687: b L.136
                    688: L.152:
                    689: lw $4,12($22)
                    690: lw $5,16($22)
                    691: lw $6,20($22)
                    692: lw $25,IR
                    693: lw $25,32($25)
                    694: jal $25  # int
                    695: b L.136
                    696: L.153:
                    697: lw $25,12($22)
                    698: bne $25,$0,L.154
                    699: b L.136
                    700: L.154:
                    701: L.156:
                    702: lw $4,12($22)
                    703: jal fixup  # int
                    704: lw $25,IR
                    705: lw $25,28($25)
                    706: and $25,$25,0x2000000
                    707: beq $25,$0,L.157
                    708: lw $4,12($22)
                    709: jal undag  # int
                    710: move $25,$2
                    711: sw $25,12($22)
                    712: L.157:
                    713: lw $4,12($22)
                    714: lw $25,IR
                    715: lw $25,72($25)
                    716: jal $25  # int
                    717: move $25,$2
                    718: sw $25,12($22)
                    719: b L.136
                    720: L.135:
                    721: la $4,L.37
                    722: la $5,L.38
                    723: li $6,218
                    724: jal fatal  # int
                    725: L.136:
                    726: L.132:
                    727: lw $22,8($22)
                    728: L.134:
                    729: lw $25,errcnt
                    730: bgt $25,$0,L.161
                    731: bne $22,$0,L.131
                    732: L.161:
                    733: la $25,src
                    734: la $24,$fp7-8($sp)
                    735: lw $2,0($24)
                    736: lw $3,4($24)
                    737: sw $2,0($25)
                    738: sw $3,4($25)
                    739: L.116:
                    740: lw $16,16($sp)
                    741: lw $17,20($sp)
                    742: lw $18,24($sp)
                    743: lw $19,28($sp)
                    744: lw $20,32($sp)
                    745: lw $21,36($sp)
                    746: lw $22,40($sp)
                    747: lw $23,44($sp)
                    748: lw $30,48($sp)
                    749: lw $31,52($sp)
                    750: addu $sp,$sp,64
                    751: j $31
                    752: .end gencode
                    753: .text
                    754: .align 2; .ent haskid
                    755: haskid:
                    756: $fp8=24
                    757: .frame $sp,24,$31
                    758: addu $sp,$sp,-24
                    759: .mask 0xc0000000,-4
                    760: sw $30,16($sp)
                    761: sw $31,20($sp)
                    762: sw $4,24($sp)
                    763: sw $5,28($sp)
                    764: lw $25,$fp8+4($sp)
                    765: bne $25,$0,L.163
                    766: move $2,$0
                    767: b L.162
                    768: L.163:
                    769: lw $25,$fp8+0($sp)
                    770: lw $24,$fp8+4($sp)
                    771: bne $25,$24,L.165
                    772: li $2,1
                    773: b L.162
                    774: L.165:
                    775: lw $4,$fp8+0($sp)
                    776: lw $25,$fp8+4($sp)
                    777: lw $5,24($25)
                    778: jal haskid  # int
                    779: bne $2,$0,L.170
                    780: lw $4,$fp8+0($sp)
                    781: lw $25,$fp8+4($sp)
                    782: lw $5,28($25)
                    783: jal haskid  # int
                    784: beq $2,$0,L.168
                    785: L.170:
                    786: li $30,1
                    787: b L.169
                    788: L.168:
                    789: move $30,$0
                    790: L.169:
                    791: move $2,$30
                    792: L.162:
                    793: lw $30,16($sp)
                    794: lw $31,20($sp)
                    795: addu $sp,$sp,24
                    796: j $31
                    797: .end haskid
                    798: .text
                    799: .align 2; .ent labelnode
                    800: labelnode:
                    801: $fp9=24
                    802: .frame $sp,24,$31
                    803: addu $sp,$sp,-24
                    804: .mask 0x80000000,-8
                    805: sw $31,16($sp)
                    806: sw $4,24($sp)
                    807: lw $25,$fp9+0($sp)
                    808: bne $25,$0,L.172
                    809: la $4,L.37
                    810: la $5,L.38
                    811: li $6,235
                    812: jal fatal  # int
                    813: L.172:
                    814: lw $25,nodelist
                    815: move $24,$25
                    816: beq $24,$0,L.173
                    817: lw $24,($25)
                    818: bne $24,600,L.173
                    819: lw $25,8($25)
                    820: beq $25,$0,L.173
                    821: lw $4,$fp9+0($sp)
                    822: jal findlabel  # int
                    823: move $4,$2
                    824: lw $25,nodelist
                    825: lw $5,8($25)
                    826: jal equatelab  # int
                    827: lw $2,nodelist
                    828: b L.171
                    829: L.173:
                    830: lw $4,$fp9+0($sp)
                    831: jal findlabel  # int
                    832: li $4,600
                    833: move $5,$0
                    834: move $6,$0
                    835: move $7,$2
                    836: jal newnode  # int
                    837: move $4,$2
                    838: jal list  # int
                    839: L.171:
                    840: lw $31,16($sp)
                    841: addu $sp,$sp,24
                    842: j $31
                    843: .end labelnode
                    844: .text
                    845: .align 2; .ent list
                    846: list:
                    847: $fp10=0
                    848: .frame $sp,0,$31
                    849: beq $4,$0,L.176
                    850: lw $25,48($4)
                    851: bne $25,$0,L.176
                    852: lw $25,nodelist
                    853: beq $25,$0,L.178
                    854: lw $25,nodelist
                    855: lw $25,48($25)
                    856: sw $25,48($4)
                    857: lw $25,nodelist
                    858: sw $4,48($25)
                    859: b L.179
                    860: L.178:
                    861: sw $4,48($4)
                    862: L.179:
                    863: sw $4,nodelist
                    864: L.176:
                    865: move $2,$4
                    866: L.175:
                    867: j $31
                    868: .end list
                    869: .globl listnodes
                    870: .text
                    871: .align 2; .ent listnodes
                    872: listnodes:
                    873: $fp11=80
                    874: .frame $sp,80,$31
                    875: addu $sp,$sp,-80
                    876: .mask 0xc0f80000,-40
                    877: sw $19,16($sp)
                    878: sw $20,20($sp)
                    879: sw $21,24($sp)
                    880: sw $22,28($sp)
                    881: sw $23,32($sp)
                    882: sw $30,36($sp)
                    883: sw $31,40($sp)
                    884: move $30,$4
                    885: sw $5,84($sp)
                    886: sw $6,88($sp)
                    887: bne $30,$0,L.181
                    888: move $2,$0
                    889: b L.180
                    890: L.181:
                    891: lw $25,16($30)
                    892: beq $25,$0,L.183
                    893: lw $2,16($30)
                    894: b L.180
                    895: L.183:
                    896: lw $25,($30)
                    897: and $25,$25,0xfffffff0
                    898: sw $25,$fp11-4($sp)
                    899: lw $22,$fp11-4($sp)
                    900: beq $22,336,L.323
                    901: beq $22,352,L.323
                    902: bgt $22,352,L.376
                    903: beq $22,176,L.336
                    904: beq $22,192,L.336
                    905: bgt $22,192,L.377
                    906: beq $22,80,L.336
                    907: beq $22,96,L.336
                    908: bgt $22,96,L.378
                    909: beq $22,48,L.292
                    910: beq $22,64,L.339
                    911: bgt $22,64,L.185
                    912: beq $22,16,L.211
                    913: beq $22,32,L.266
                    914: b L.185
                    915: L.378:
                    916: beq $22,144,L.336
                    917: beq $22,160,L.336
                    918: bgt $22,160,L.185
                    919: beq $22,112,L.336
                    920: beq $22,128,L.336
                    921: b L.185
                    922: L.377:
                    923: beq $22,272,L.371
                    924: beq $22,288,L.366
                    925: bgt $22,288,L.379
                    926: beq $22,240,L.333
                    927: beq $22,256,L.371
                    928: bgt $22,256,L.185
                    929: beq $22,208,L.248
                    930: b L.185
                    931: L.379:
                    932: beq $22,304,L.323
                    933: beq $22,320,L.323
                    934: b L.185
                    935: L.376:
                    936: beq $22,528,L.273
                    937: beq $22,544,L.273
                    938: bgt $22,544,L.380
                    939: beq $22,432,L.323
                    940: beq $22,448,L.323
                    941: bgt $22,448,L.381
                    942: beq $22,400,L.336
                    943: beq $22,416,L.323
                    944: bgt $22,416,L.185
                    945: beq $22,368,L.318
                    946: beq $22,384,L.313
                    947: b L.185
                    948: L.381:
                    949: beq $22,496,L.273
                    950: beq $22,512,L.273
                    951: bgt $22,512,L.185
                    952: beq $22,464,L.323
                    953: beq $22,480,L.273
                    954: b L.185
                    955: L.380:
                    956: beq $22,608,L.188
                    957: beq $22,624,L.191
                    958: bgt $22,624,L.382
                    959: beq $22,560,L.273
                    960: beq $22,576,L.243
                    961: b L.185
                    962: L.382:
                    963: beq $22,672,L.226
                    964: beq $22,688,L.363
                    965: bgt $22,688,L.185
                    966: beq $22,640,L.192
                    967: beq $22,656,L.195
                    968: b L.185
                    969: L.188:
                    970: lw $25,$fp11+8($sp)
                    971: beq $25,$0,L.189
                    972: lw $4,8($30)
                    973: move $5,$0
                    974: lw $6,$fp11+8($sp)
                    975: jal listnodes  # int
                    976: lw $4,12($30)
                    977: move $5,$0
                    978: lw $6,$fp11+8($sp)
                    979: jal listnodes  # int
                    980: move $25,$2
                    981: sw $25,$fp11-12($sp)
                    982: b L.190
                    983: L.189:
                    984: li $4,1
                    985: jal genlabel  # int
                    986: sw $2,$fp11+8($sp)
                    987: lw $4,8($30)
                    988: move $5,$0
                    989: move $6,$2
                    990: jal listnodes  # int
                    991: lw $4,12($30)
                    992: lw $5,$fp11+4($sp)
                    993: move $6,$0
                    994: jal listnodes  # int
                    995: lw $4,$fp11+8($sp)
                    996: jal labelnode  # int
                    997: move $25,$2
                    998: sw $25,$fp11-12($sp)
                    999: L.190:
                   1000: move $4,$0
                   1001: jal trash  # int
                   1002: lw $2,$fp11-12($sp)
                   1003: b L.180
                   1004: L.191:
                   1005: lw $4,8($30)
                   1006: lw $5,$fp11+8($sp)
                   1007: lw $6,$fp11+4($sp)
                   1008: jal listnodes  # int
                   1009: b L.180
                   1010: L.192:
                   1011: lw $25,$fp11+4($sp)
                   1012: beq $25,$0,L.193
                   1013: lw $4,8($30)
                   1014: lw $5,$fp11+4($sp)
                   1015: move $6,$0
                   1016: jal listnodes  # int
                   1017: lw $4,12($30)
                   1018: lw $5,$fp11+4($sp)
                   1019: move $6,$0
                   1020: jal listnodes  # int
                   1021: move $25,$2
                   1022: sw $25,$fp11-12($sp)
                   1023: b L.194
                   1024: L.193:
                   1025: li $4,1
                   1026: jal genlabel  # int
                   1027: sw $2,$fp11+4($sp)
                   1028: lw $4,8($30)
                   1029: move $5,$2
                   1030: move $6,$0
                   1031: jal listnodes  # int
                   1032: lw $4,12($30)
                   1033: move $5,$0
                   1034: lw $6,$fp11+8($sp)
                   1035: jal listnodes  # int
                   1036: lw $4,$fp11+4($sp)
                   1037: jal labelnode  # int
                   1038: move $25,$2
                   1039: sw $25,$fp11-12($sp)
                   1040: L.194:
                   1041: move $4,$0
                   1042: jal trash  # int
                   1043: lw $2,$fp11-12($sp)
                   1044: b L.180
                   1045: L.195:
                   1046: lw $25,$fp11+4($sp)
                   1047: bne $25,$0,L.197
                   1048: lw $25,$fp11+8($sp)
                   1049: beq $25,$0,L.196
                   1050: L.197:
                   1051: la $4,L.37
                   1052: la $5,L.38
                   1053: li $6,296
                   1054: jal fatal  # int
                   1055: L.196:
                   1056: lw $25,24($30)
                   1057: beq $25,$0,L.198
                   1058: lw $4,24($30)
                   1059: jal addlocal  # int
                   1060: L.198:
                   1061: move $4,$0
                   1062: jal trash  # int
                   1063: li $4,2
                   1064: jal genlabel  # int
                   1065: sw $2,$fp11+8($sp)
                   1066: lw $4,8($30)
                   1067: move $5,$0
                   1068: move $6,$2
                   1069: jal listnodes  # int
                   1070: move $4,$0
                   1071: jal trash  # int
                   1072: lw $25,12($30)
                   1073: sw $25,$fp11-16($sp)
                   1074: beq $25,$0,L.200
                   1075: lw $25,$fp11-16($sp)
                   1076: lw $25,($25)
                   1077: beq $25,672,L.202
                   1078: la $4,L.37
                   1079: la $5,L.38
                   1080: li $6,303
                   1081: jal fatal  # int
                   1082: L.202:
                   1083: lw $25,$fp11-16($sp)
                   1084: lw $4,8($25)
                   1085: move $5,$0
                   1086: move $6,$0
                   1087: jal listnodes  # int
                   1088: lw $25,nodelist
                   1089: move $24,$25
                   1090: beq $24,$0,L.203
                   1091: lw $24,($25)
                   1092: bne $24,600,L.203
                   1093: lw $25,8($25)
                   1094: beq $25,$0,L.203
                   1095: lw $25,$fp11+8($sp)
                   1096: addu $4,$25,1
                   1097: jal findlabel  # int
                   1098: lw $25,nodelist
                   1099: lw $4,8($25)
                   1100: move $5,$2
                   1101: jal equatelab  # int
                   1102: lw $4,nodelist
                   1103: jal remove  # int
                   1104: L.203:
                   1105: move $4,$0
                   1106: jal trash  # int
                   1107: L.200:
                   1108: lw $25,$fp11-16($sp)
                   1109: move $24,$25
                   1110: beq $24,$0,L.205
                   1111: lw $25,12($25)
                   1112: beq $25,$0,L.205
                   1113: lw $25,$fp11+8($sp)
                   1114: addu $4,$25,1
                   1115: jal jump  # int
                   1116: move $4,$2
                   1117: jal list  # int
                   1118: lw $4,$fp11+8($sp)
                   1119: jal labelnode  # int
                   1120: lw $25,$fp11-16($sp)
                   1121: lw $4,12($25)
                   1122: move $5,$0
                   1123: move $6,$0
                   1124: jal listnodes  # int
                   1125: lw $25,nodelist
                   1126: move $24,$25
                   1127: beq $24,$0,L.206
                   1128: lw $24,($25)
                   1129: bne $24,600,L.206
                   1130: lw $25,8($25)
                   1131: beq $25,$0,L.206
                   1132: lw $25,$fp11+8($sp)
                   1133: addu $4,$25,1
                   1134: jal findlabel  # int
                   1135: lw $25,nodelist
                   1136: lw $4,8($25)
                   1137: move $5,$2
                   1138: jal equatelab  # int
                   1139: lw $4,nodelist
                   1140: jal remove  # int
                   1141: b L.206
                   1142: L.205:
                   1143: lw $4,$fp11+8($sp)
                   1144: jal labelnode  # int
                   1145: L.206:
                   1146: lw $25,$fp11+8($sp)
                   1147: addu $4,$25,1
                   1148: jal labelnode  # int
                   1149: move $23,$2
                   1150: move $4,$0
                   1151: jal trash  # int
                   1152: lw $25,24($30)
                   1153: beq $25,$0,L.186
                   1154: lw $4,24($30)
                   1155: jal idnode  # int
                   1156: move $25,$2
                   1157: sw $25,$fp11-20($sp)
                   1158: lw $25,24($30)
                   1159: l.s $f18,L.148
                   1160: s.s $f18,36($25)
                   1161: lw $4,$fp11-20($sp)
                   1162: move $5,$0
                   1163: move $6,$0
                   1164: jal listnodes  # int
                   1165: move $23,$2
                   1166: b L.186
                   1167: L.211:
                   1168: lw $25,4($30)
                   1169: lw $25,($25)
                   1170: blt $25,15,L.213
                   1171: lw $25,4($30)
                   1172: lw $21,12($25)
                   1173: b L.214
                   1174: L.213:
                   1175: lw $21,4($30)
                   1176: L.214:
                   1177: sw $21,$fp11-16($sp)
                   1178: lw $25,$fp11-4($sp)
                   1179: beq $25,20,L.215
                   1180: lw $25,$fp11-16($sp)
                   1181: lw $25,16($25)
                   1182: bne $25,$0,L.215
                   1183: la $4,L.37
                   1184: la $5,L.38
                   1185: li $6,332
                   1186: jal fatal  # int
                   1187: L.215:
                   1188: lw $25,$fp11-4($sp)
                   1189: beq $25,20,L.218
                   1190: lw $25,$fp11-16($sp)
                   1191: lw $25,16($25)
                   1192: lw $25,32($25)
                   1193: and $25,$25,0x8000000
                   1194: beq $25,$0,L.216
                   1195: L.218:
                   1196: move $4,$30
                   1197: jal cvtconst  # int
                   1198: move $4,$2
                   1199: lw $5,$fp11+4($sp)
                   1200: lw $6,$fp11+8($sp)
                   1201: jal listnodes  # int
                   1202: move $23,$2
                   1203: b L.186
                   1204: L.216:
                   1205: lw $25,$fp11+4($sp)
                   1206: bne $25,$0,L.219
                   1207: lw $25,$fp11+8($sp)
                   1208: bne $25,$0,L.219
                   1209: lw $4,$fp11-16($sp)
                   1210: la $25,24($30)
                   1211: lw $2,0($25)
                   1212: lw $3,4($25)
                   1213: sw $2,8($sp)
                   1214: sw $3,12($sp)
                   1215: lw $6,8($sp)
                   1216: lw $7,12($sp)
                   1217: jal constant  # int
                   1218: lw $4,($30)
                   1219: move $5,$0
                   1220: move $6,$0
                   1221: move $7,$2
                   1222: jal node  # int
                   1223: move $23,$2
                   1224: b L.186
                   1225: L.219:
                   1226: lw $25,$fp11-16($sp)
                   1227: lw $24,inttype
                   1228: beq $25,$24,L.221
                   1229: la $4,L.37
                   1230: la $5,L.38
                   1231: li $6,338
                   1232: jal fatal  # int
                   1233: L.221:
                   1234: lw $25,$fp11+4($sp)
                   1235: beq $25,$0,L.222
                   1236: lw $25,24($30)
                   1237: beq $25,$0,L.222
                   1238: lw $4,$fp11+4($sp)
                   1239: jal jump  # int
                   1240: move $4,$2
                   1241: jal list  # int
                   1242: move $23,$2
                   1243: b L.186
                   1244: L.222:
                   1245: lw $25,$fp11+8($sp)
                   1246: beq $25,$0,L.224
                   1247: lw $25,24($30)
                   1248: bne $25,$0,L.224
                   1249: lw $4,$fp11+8($sp)
                   1250: jal jump  # int
                   1251: move $4,$2
                   1252: jal list  # int
                   1253: move $23,$2
                   1254: b L.186
                   1255: L.224:
                   1256: move $23,$0
                   1257: b L.186
                   1258: L.226:
                   1259: lw $25,8($30)
                   1260: move $24,$25
                   1261: beq $24,$0,L.227
                   1262: lw $24,($25)
                   1263: and $24,$24,0xfffffff0
                   1264: bne $24,64,L.227
                   1265: lw $24,12($30)
                   1266: move $15,$24
                   1267: beq $15,$0,L.227
                   1268: lw $15,($24)
                   1269: and $15,$15,0xfffffff0
                   1270: bne $15,48,L.227
                   1271: lw $25,8($25)
                   1272: lw $24,8($24)
                   1273: bne $25,$24,L.227
                   1274: lw $4,8($30)
                   1275: move $5,$0
                   1276: move $6,$0
                   1277: jal listnodes  # int
                   1278: move $23,$2
                   1279: lw $25,nodelist
                   1280: beq $25,$0,L.229
                   1281: lw $25,nodelist
                   1282: sw $25,$fp11-16($sp)
                   1283: L.231:
                   1284: move $4,$23
                   1285: lw $25,$fp11-16($sp)
                   1286: lw $5,48($25)
                   1287: jal haskid  # int
                   1288: beq $2,$0,L.235
                   1289: lw $25,$fp11-16($sp)
                   1290: lw $25,48($25)
                   1291: sw $25,48($23)
                   1292: lw $25,$fp11-16($sp)
                   1293: sw $23,48($25)
                   1294: b L.230
                   1295: L.235:
                   1296: lw $25,$fp11-16($sp)
                   1297: lw $25,48($25)
                   1298: lw $24,nodelist
                   1299: bne $25,$24,L.237
                   1300: move $4,$23
                   1301: jal list  # int
                   1302: b L.230
                   1303: L.237:
                   1304: L.232:
                   1305: lw $25,$fp11-16($sp)
                   1306: lw $25,48($25)
                   1307: sw $25,$fp11-16($sp)
                   1308: b L.231
                   1309: L.229:
                   1310: move $4,$23
                   1311: jal list  # int
                   1312: L.230:
                   1313: lw $4,12($30)
                   1314: move $5,$0
                   1315: move $6,$0
                   1316: jal listnodes  # int
                   1317: b L.186
                   1318: L.227:
                   1319: lw $25,12($30)
                   1320: beq $25,$0,L.239
                   1321: lw $25,8($30)
                   1322: move $24,$25
                   1323: beq $24,$0,L.241
                   1324: lw $25,($25)
                   1325: and $25,$25,0xfffffff0
                   1326: bne $25,16,L.241
                   1327: sw $0,8($30)
                   1328: L.241:
                   1329: lw $4,8($30)
                   1330: move $5,$0
                   1331: move $6,$0
                   1332: jal listnodes  # int
                   1333: lw $4,12($30)
                   1334: lw $5,$fp11+4($sp)
                   1335: lw $6,$fp11+8($sp)
                   1336: jal listnodes  # int
                   1337: move $23,$2
                   1338: b L.186
                   1339: L.239:
                   1340: lw $4,8($30)
                   1341: lw $5,$fp11+4($sp)
                   1342: lw $6,$fp11+8($sp)
                   1343: jal listnodes  # int
                   1344: move $23,$2
                   1345: b L.186
                   1346: L.243:
                   1347: lw $25,$fp11+4($sp)
                   1348: bne $25,$0,L.245
                   1349: lw $25,$fp11+8($sp)
                   1350: beq $25,$0,L.244
                   1351: L.245:
                   1352: la $4,L.37
                   1353: la $5,L.38
                   1354: li $6,376
                   1355: jal fatal  # int
                   1356: L.244:
                   1357: lw $25,24($30)
                   1358: beq $25,$0,L.246
                   1359: la $4,L.37
                   1360: la $5,L.38
                   1361: li $6,377
                   1362: jal fatal  # int
                   1363: L.246:
                   1364: lw $25,8($30)
                   1365: bne $25,$0,L.247
                   1366: la $4,L.37
                   1367: la $5,L.38
                   1368: li $6,378
                   1369: jal fatal  # int
                   1370: L.247:
                   1371: lw $4,8($30)
                   1372: move $5,$0
                   1373: move $6,$0
                   1374: jal listnodes  # int
                   1375: move $25,$2
                   1376: sw $25,$fp11-8($sp)
                   1377: li $4,584
                   1378: lw $5,$fp11-8($sp)
                   1379: move $6,$0
                   1380: move $7,$0
                   1381: jal newnode  # int
                   1382: move $23,$2
                   1383: move $4,$0
                   1384: jal trash  # int
                   1385: move $4,$23
                   1386: jal list  # int
                   1387: b L.186
                   1388: L.248:
                   1389: lw $25,$fp11+4($sp)
                   1390: bne $25,$0,L.250
                   1391: lw $25,$fp11+8($sp)
                   1392: beq $25,$0,L.249
                   1393: L.250:
                   1394: la $4,L.37
                   1395: la $5,L.38
                   1396: li $6,385
                   1397: jal fatal  # int
                   1398: L.249:
                   1399: lw $4,8($30)
                   1400: move $5,$0
                   1401: move $6,$0
                   1402: jal listnodes  # int
                   1403: move $25,$2
                   1404: sw $25,$fp11-8($sp)
                   1405: lw $4,12($30)
                   1406: move $5,$0
                   1407: move $6,$0
                   1408: jal listnodes  # int
                   1409: move $25,$2
                   1410: sw $25,$fp11-12($sp)
                   1411: lw $4,($30)
                   1412: lw $5,$fp11-8($sp)
                   1413: lw $6,$fp11-12($sp)
                   1414: move $7,$0
                   1415: jal newnode  # int
                   1416: move $23,$2
                   1417: lw $25,transient
                   1418: li $24,104
                   1419: sw $24,($25)
                   1420: lw $25,transient
                   1421: lw $24,($25)
                   1422: lw $15,4($25)
                   1423: addu $24,$24,$15
                   1424: lw $25,8($25)
                   1425: bltu $24,$25,L.252
                   1426: lw $25,transient
                   1427: lw $4,($25)
                   1428: la $5,transient
                   1429: jal allocate  # int
                   1430: move $21,$2
                   1431: b L.253
                   1432: L.252:
                   1433: lw $25,transient
                   1434: lw $24,($25)
                   1435: lw $15,4($25)
                   1436: addu $24,$24,$15
                   1437: sw $24,4($25)
                   1438: lw $25,transient
                   1439: lw $24,4($25)
                   1440: lw $25,($25)
                   1441: subu $21,$24,$25
                   1442: L.253:
                   1443: sw $21,8($23)
                   1444: lw $21,8($23)
                   1445: addu $25,$21,96
                   1446: sw $25,$fp11-16($sp)
                   1447: b L.257
                   1448: L.254:
                   1449: sw $0,28($21)
                   1450: sw $0,24($21)
                   1451: sw $0,20($21)
                   1452: sw $0,16($21)
                   1453: sw $0,12($21)
                   1454: sw $0,8($21)
                   1455: sw $0,4($21)
                   1456: sw $0,($21)
                   1457: L.255:
                   1458: addu $21,$21,32
                   1459: L.257:
                   1460: lw $25,$fp11-16($sp)
                   1461: bltu $21,$25,L.254
                   1462: sw $0,($21)
                   1463: sw $0,4($21)
                   1464: lw $25,8($30)
                   1465: lw $25,4($25)
                   1466: lw $25,($25)
                   1467: blt $25,15,L.262
                   1468: lw $25,8($30)
                   1469: lw $25,4($25)
                   1470: lw $21,12($25)
                   1471: b L.263
                   1472: L.262:
                   1473: lw $25,8($30)
                   1474: lw $21,4($25)
                   1475: L.263:
                   1476: lw $25,($21)
                   1477: bne $25,7,L.258
                   1478: lw $25,8($30)
                   1479: lw $25,4($25)
                   1480: lw $25,12($25)
                   1481: lw $25,($25)
                   1482: blt $25,15,L.264
                   1483: lw $25,8($30)
                   1484: lw $25,4($25)
                   1485: lw $25,12($25)
                   1486: lw $20,12($25)
                   1487: b L.265
                   1488: L.264:
                   1489: lw $25,8($30)
                   1490: lw $25,4($25)
                   1491: lw $20,12($25)
                   1492: L.265:
                   1493: lw $25,($20)
                   1494: bne $25,11,L.258
                   1495: lw $25,8($23)
                   1496: lw $24,8($30)
                   1497: lw $24,4($24)
                   1498: lw $24,12($24)
                   1499: sw $24,40($25)
                   1500: b L.259
                   1501: L.258:
                   1502: lw $4,voidtype
                   1503: move $5,$0
                   1504: li $6,1
                   1505: jal func  # int
                   1506: lw $25,8($23)
                   1507: move $24,$2
                   1508: sw $24,40($25)
                   1509: L.259:
                   1510: move $4,$0
                   1511: jal trash  # int
                   1512: move $4,$23
                   1513: jal list  # int
                   1514: lw $25,cfunc
                   1515: lw $24,92($25)
                   1516: addu $24,$24,1
                   1517: sw $24,92($25)
                   1518: b L.186
                   1519: L.266:
                   1520: lw $25,$fp11+4($sp)
                   1521: bne $25,$0,L.268
                   1522: lw $25,$fp11+8($sp)
                   1523: beq $25,$0,L.267
                   1524: L.268:
                   1525: la $4,L.37
                   1526: la $5,L.38
                   1527: li $6,400
                   1528: jal fatal  # int
                   1529: L.267:
                   1530: lw $25,IR
                   1531: lw $25,28($25)
                   1532: and $25,$25,0x80000000
                   1533: beq $25,$0,L.269
                   1534: lw $4,12($30)
                   1535: move $5,$0
                   1536: move $6,$0
                   1537: jal listnodes  # int
                   1538: L.269:
                   1539: lw $4,8($30)
                   1540: move $5,$0
                   1541: move $6,$0
                   1542: jal listnodes  # int
                   1543: move $25,$2
                   1544: sw $25,$fp11-8($sp)
                   1545: lw $4,($30)
                   1546: lw $5,$fp11-8($sp)
                   1547: move $6,$0
                   1548: move $7,$0
                   1549: jal newnode  # int
                   1550: move $23,$2
                   1551: lw $25,4($30)
                   1552: lw $4,8($25)
                   1553: jal intconst  # int
                   1554: move $25,$2
                   1555: sw $25,8($23)
                   1556: lw $25,4($30)
                   1557: lh $4,4($25)
                   1558: jal intconst  # int
                   1559: move $25,$2
                   1560: sw $25,12($23)
                   1561: move $4,$23
                   1562: jal list  # int
                   1563: lw $25,IR
                   1564: lw $25,28($25)
                   1565: and $25,$25,0x80000000
                   1566: bne $25,$0,L.271
                   1567: lw $4,12($30)
                   1568: move $5,$0
                   1569: move $6,$0
                   1570: jal listnodes  # int
                   1571: L.271:
                   1572: move $2,$0
                   1573: b L.180
                   1574: L.273:
                   1575: lw $25,24($30)
                   1576: beq $25,$0,L.274
                   1577: la $4,L.37
                   1578: la $5,L.38
                   1579: li $6,413
                   1580: jal fatal  # int
                   1581: L.274:
                   1582: lw $25,errcnt
                   1583: bne $25,$0,L.275
                   1584: lw $25,$fp11+4($sp)
                   1585: bne $25,$0,L.275
                   1586: lw $25,$fp11+8($sp)
                   1587: bne $25,$0,L.275
                   1588: la $4,L.37
                   1589: la $5,L.38
                   1590: li $6,414
                   1591: jal fatal  # int
                   1592: L.275:
                   1593: lw $25,$fp11+8($sp)
                   1594: sw $25,$fp11-16($sp)
                   1595: beq $25,$0,L.276
                   1596: lw $25,$fp11+4($sp)
                   1597: beq $25,$0,L.278
                   1598: la $4,L.37
                   1599: la $5,L.38
                   1600: li $6,416
                   1601: jal fatal  # int
                   1602: L.278:
                   1603: lw $21,$fp11-4($sp)
                   1604: beq $21,512,L.284
                   1605: beq $21,528,L.287
                   1606: bgt $21,528,L.288
                   1607: beq $21,480,L.282
                   1608: beq $21,496,L.286
                   1609: b L.277
                   1610: L.288:
                   1611: beq $21,544,L.285
                   1612: beq $21,560,L.283
                   1613: b L.277
                   1614: L.282:
                   1615: lw $25,($30)
                   1616: and $25,$25,15
                   1617: addu $25,$25,560
                   1618: sw $25,$fp11-4($sp)
                   1619: b L.277
                   1620: L.283:
                   1621: lw $25,($30)
                   1622: and $25,$25,15
                   1623: addu $25,$25,480
                   1624: sw $25,$fp11-4($sp)
                   1625: b L.277
                   1626: L.284:
                   1627: lw $25,($30)
                   1628: and $25,$25,15
                   1629: addu $25,$25,528
                   1630: sw $25,$fp11-4($sp)
                   1631: b L.277
                   1632: L.285:
                   1633: lw $25,($30)
                   1634: and $25,$25,15
                   1635: addu $25,$25,496
                   1636: sw $25,$fp11-4($sp)
                   1637: b L.277
                   1638: L.286:
                   1639: lw $25,($30)
                   1640: and $25,$25,15
                   1641: addu $25,$25,544
                   1642: sw $25,$fp11-4($sp)
                   1643: b L.277
                   1644: L.287:
                   1645: lw $25,($30)
                   1646: and $25,$25,15
                   1647: addu $25,$25,512
                   1648: sw $25,$fp11-4($sp)
                   1649: b L.277
                   1650: L.276:
                   1651: lw $25,$fp11+4($sp)
                   1652: sw $25,$fp11-16($sp)
                   1653: beq $25,$0,L.289
                   1654: lw $25,($30)
                   1655: sw $25,$fp11-4($sp)
                   1656: L.289:
                   1657: L.277:
                   1658: lw $4,8($30)
                   1659: move $5,$0
                   1660: move $6,$0
                   1661: jal listnodes  # int
                   1662: move $25,$2
                   1663: sw $25,$fp11-8($sp)
                   1664: lw $4,12($30)
                   1665: move $5,$0
                   1666: move $6,$0
                   1667: jal listnodes  # int
                   1668: move $25,$2
                   1669: sw $25,$fp11-12($sp)
                   1670: lw $4,$fp11-16($sp)
                   1671: jal findlabel  # int
                   1672: lw $4,$fp11-4($sp)
                   1673: lw $5,$fp11-8($sp)
                   1674: lw $6,$fp11-12($sp)
                   1675: move $7,$2
                   1676: jal newnode  # int
                   1677: move $23,$2
                   1678: lw $25,8($23)
                   1679: l.s $f18,36($25)
                   1680: l.s $f16,L.291
                   1681: add.s $f18,$f18,$f16
                   1682: s.s $f18,36($25)
                   1683: move $4,$23
                   1684: jal list  # int
                   1685: b L.186
                   1686: L.292:
                   1687: lw $25,$fp11+4($sp)
                   1688: bne $25,$0,L.294
                   1689: lw $25,$fp11+8($sp)
                   1690: beq $25,$0,L.293
                   1691: L.294:
                   1692: la $4,L.37
                   1693: la $5,L.38
                   1694: li $6,435
                   1695: jal fatal  # int
                   1696: L.293:
                   1697: lw $25,8($30)
                   1698: lw $25,($25)
                   1699: bne $25,688,L.295
                   1700: lw $25,8($30)
                   1701: lw $25,8($25)
                   1702: sw $25,$fp11-20($sp)
                   1703: lw $25,8($30)
                   1704: lw $25,24($25)
                   1705: sw $25,$fp11-16($sp)
                   1706: lw $25,$fp11-20($sp)
                   1707: lw $25,($25)
                   1708: and $25,$25,0xfffffff0
                   1709: beq $25,64,L.297
                   1710: la $4,L.37
                   1711: la $5,L.38
                   1712: li $6,439
                   1713: jal fatal  # int
                   1714: L.297:
                   1715: move $4,$0
                   1716: jal trash  # int
                   1717: lw $4,$fp11-20($sp)
                   1718: jal lvalue  # int
                   1719: move $4,$2
                   1720: move $5,$0
                   1721: move $6,$0
                   1722: jal listnodes  # int
                   1723: move $25,$2
                   1724: sw $25,$fp11-8($sp)
                   1725: lw $25,$fp11-16($sp)
                   1726: lh $24,12($25)
                   1727: lw $25,4($25)
                   1728: lw $25,8($25)
                   1729: sll $25,$25,3
                   1730: bge $24,$25,L.298
                   1731: li $25,0xffffffff
                   1732: lw $24,$fp11-16($sp)
                   1733: lh $24,12($24)
                   1734: sll $25,$25,$24
                   1735: not $25,$25
                   1736: sw $25,$fp11-28($sp)
                   1737: lw $25,$fp11-28($sp)
                   1738: lw $24,$fp11-16($sp)
                   1739: lh $24,14($24)
                   1740: subu $24,$24,1
                   1741: sll $25,$25,$24
                   1742: sw $25,$fp11-32($sp)
                   1743: lw $25,12($30)
                   1744: sw $25,$fp11-24($sp)
                   1745: lw $25,$fp11-24($sp)
                   1746: lw $24,($25)
                   1747: bne $24,21,L.303
                   1748: lw $25,24($25)
                   1749: beq $25,$0,L.302
                   1750: L.303:
                   1751: lw $25,$fp11-24($sp)
                   1752: lw $24,($25)
                   1753: bne $24,22,L.300
                   1754: lw $25,24($25)
                   1755: bne $25,$0,L.300
                   1756: L.302:
                   1757: lw $25,$fp11-32($sp)
                   1758: not $4,$25
                   1759: lw $5,unsignedtype
                   1760: jal constnode  # int
                   1761: li $4,384
                   1762: lw $5,$fp11-20($sp)
                   1763: move $6,$2
                   1764: jal bitnode  # int
                   1765: move $25,$2
                   1766: sw $25,$fp11-24($sp)
                   1767: b L.301
                   1768: L.300:
                   1769: lw $25,$fp11-24($sp)
                   1770: lw $24,($25)
                   1771: bne $24,21,L.307
                   1772: lw $25,24($25)
                   1773: lw $24,$fp11-28($sp)
                   1774: and $25,$25,$24
                   1775: beq $25,$24,L.306
                   1776: L.307:
                   1777: lw $25,$fp11-24($sp)
                   1778: lw $24,($25)
                   1779: bne $24,22,L.304
                   1780: lw $25,24($25)
                   1781: lw $24,$fp11-28($sp)
                   1782: and $25,$25,$24
                   1783: bne $25,$24,L.304
                   1784: L.306:
                   1785: lw $4,$fp11-32($sp)
                   1786: lw $5,unsignedtype
                   1787: jal constnode  # int
                   1788: li $4,416
                   1789: lw $5,$fp11-20($sp)
                   1790: move $6,$2
                   1791: jal bitnode  # int
                   1792: move $25,$2
                   1793: sw $25,$fp11-24($sp)
                   1794: b L.305
                   1795: L.304:
                   1796: lw $25,$fp11-32($sp)
                   1797: not $4,$25
                   1798: lw $5,unsignedtype
                   1799: jal constnode  # int
                   1800: li $4,384
                   1801: lw $5,$fp11-20($sp)
                   1802: move $6,$2
                   1803: jal bitnode  # int
                   1804: move $21,$2
                   1805: lw $4,$fp11-24($sp)
                   1806: lw $5,unsignedtype
                   1807: jal cast  # int
                   1808: move $20,$2
                   1809: lw $25,$fp11-16($sp)
                   1810: lh $25,14($25)
                   1811: subu $4,$25,1
                   1812: lw $5,inttype
                   1813: jal constnode  # int
                   1814: li $4,336
                   1815: move $5,$20
                   1816: move $6,$2
                   1817: jal shnode  # int
                   1818: move $19,$2
                   1819: lw $4,$fp11-32($sp)
                   1820: lw $5,unsignedtype
                   1821: jal constnode  # int
                   1822: li $4,384
                   1823: move $5,$19
                   1824: move $6,$2
                   1825: jal bitnode  # int
                   1826: li $4,416
                   1827: move $5,$21
                   1828: move $6,$2
                   1829: jal bitnode  # int
                   1830: move $25,$2
                   1831: sw $25,$fp11-24($sp)
                   1832: L.305:
                   1833: L.301:
                   1834: lw $4,$fp11-24($sp)
                   1835: move $5,$0
                   1836: move $6,$0
                   1837: jal listnodes  # int
                   1838: move $25,$2
                   1839: sw $25,$fp11-12($sp)
                   1840: b L.296
                   1841: L.298:
                   1842: lw $4,12($30)
                   1843: move $5,$0
                   1844: move $6,$0
                   1845: jal listnodes  # int
                   1846: move $25,$2
                   1847: sw $25,$fp11-12($sp)
                   1848: b L.296
                   1849: L.295:
                   1850: lw $4,8($30)
                   1851: move $5,$0
                   1852: move $6,$0
                   1853: jal listnodes  # int
                   1854: move $25,$2
                   1855: sw $25,$fp11-8($sp)
                   1856: lw $4,12($30)
                   1857: move $5,$0
                   1858: move $6,$0
                   1859: jal listnodes  # int
                   1860: move $25,$2
                   1861: sw $25,$fp11-12($sp)
                   1862: L.296:
                   1863: lw $25,8($30)
                   1864: lw $25,($25)
                   1865: beq $25,263,L.312
                   1866: beq $25,295,L.312
                   1867: bne $25,279,L.309
                   1868: L.312:
                   1869: lw $25,8($30)
                   1870: lw $25,24($25)
                   1871: lw $25,32($25)
                   1872: and $25,$25,0x10000000
                   1873: bne $25,$0,L.309
                   1874: lw $21,$fp11-8($sp)
                   1875: b L.310
                   1876: L.309:
                   1877: move $21,$0
                   1878: L.310:
                   1879: move $4,$21
                   1880: jal trash  # int
                   1881: lw $4,($30)
                   1882: lw $5,$fp11-8($sp)
                   1883: lw $6,$fp11-12($sp)
                   1884: move $7,$0
                   1885: jal newnode  # int
                   1886: move $23,$2
                   1887: lw $25,12($30)
                   1888: lw $25,4($25)
                   1889: lw $4,8($25)
                   1890: jal intconst  # int
                   1891: move $25,$2
                   1892: sw $25,8($23)
                   1893: lw $25,12($30)
                   1894: lw $25,4($25)
                   1895: lh $4,4($25)
                   1896: jal intconst  # int
                   1897: move $25,$2
                   1898: sw $25,12($23)
                   1899: move $4,$23
                   1900: jal list  # int
                   1901: lw $4,12($30)
                   1902: move $5,$0
                   1903: move $6,$0
                   1904: jal listnodes  # int
                   1905: move $23,$2
                   1906: b L.186
                   1907: L.313:
                   1908: lw $25,$fp11+4($sp)
                   1909: bne $25,$0,L.315
                   1910: lw $25,$fp11+8($sp)
                   1911: beq $25,$0,L.314
                   1912: L.315:
                   1913: la $4,L.37
                   1914: la $5,L.38
                   1915: li $6,473
                   1916: jal fatal  # int
                   1917: L.314:
                   1918: lw $4,8($30)
                   1919: move $5,$0
                   1920: move $6,$0
                   1921: jal listnodes  # int
                   1922: move $25,$2
                   1923: sw $25,$fp11-8($sp)
                   1924: lw $25,IR
                   1925: lw $25,28($25)
                   1926: and $25,$25,0x8000000
                   1927: beq $25,$0,L.316
                   1928: lw $4,12($30)
                   1929: lw $5,unsignedtype
                   1930: jal cast  # int
                   1931: li $4,406
                   1932: lw $5,unsignedtype
                   1933: move $6,$2
                   1934: move $7,$0
                   1935: jal simplify  # int
                   1936: move $4,$2
                   1937: lw $25,12($30)
                   1938: lw $5,4($25)
                   1939: jal cast  # int
                   1940: move $4,$2
                   1941: move $5,$0
                   1942: move $6,$0
                   1943: jal listnodes  # int
                   1944: move $25,$2
                   1945: sw $25,$fp11-12($sp)
                   1946: b L.317
                   1947: L.316:
                   1948: lw $4,12($30)
                   1949: move $5,$0
                   1950: move $6,$0
                   1951: jal listnodes  # int
                   1952: move $25,$2
                   1953: sw $25,$fp11-12($sp)
                   1954: L.317:
                   1955: lw $4,($30)
                   1956: lw $5,$fp11-8($sp)
                   1957: lw $6,$fp11-12($sp)
                   1958: move $7,$0
                   1959: jal node  # int
                   1960: move $23,$2
                   1961: b L.186
                   1962: L.318:
                   1963: lw $25,$fp11+4($sp)
                   1964: bne $25,$0,L.320
                   1965: lw $25,$fp11+8($sp)
                   1966: beq $25,$0,L.319
                   1967: L.320:
                   1968: la $4,L.37
                   1969: la $5,L.38
                   1970: li $6,485
                   1971: jal fatal  # int
                   1972: L.319:
                   1973: lw $4,8($30)
                   1974: move $5,$0
                   1975: move $6,$0
                   1976: jal listnodes  # int
                   1977: move $25,$2
                   1978: sw $25,$fp11-8($sp)
                   1979: lw $25,IR
                   1980: lw $25,28($25)
                   1981: and $25,$25,0x8000000
                   1982: beq $25,$0,L.321
                   1983: lw $25,($30)
                   1984: bne $25,373,L.321
                   1985: li $4,197
                   1986: lw $5,inttype
                   1987: lw $6,12($30)
                   1988: move $7,$0
                   1989: jal simplify  # int
                   1990: move $4,$2
                   1991: move $5,$0
                   1992: move $6,$0
                   1993: jal listnodes  # int
                   1994: move $25,$2
                   1995: sw $25,$fp11-12($sp)
                   1996: b L.322
                   1997: L.321:
                   1998: lw $4,12($30)
                   1999: move $5,$0
                   2000: move $6,$0
                   2001: jal listnodes  # int
                   2002: move $25,$2
                   2003: sw $25,$fp11-12($sp)
                   2004: L.322:
                   2005: lw $4,($30)
                   2006: lw $5,$fp11-8($sp)
                   2007: lw $6,$fp11-12($sp)
                   2008: move $7,$0
                   2009: jal node  # int
                   2010: move $23,$2
                   2011: b L.186
                   2012: L.323:
                   2013: lw $25,$fp11+4($sp)
                   2014: bne $25,$0,L.325
                   2015: lw $25,$fp11+8($sp)
                   2016: beq $25,$0,L.324
                   2017: L.325:
                   2018: la $4,L.37
                   2019: la $5,L.38
                   2020: li $6,495
                   2021: jal fatal  # int
                   2022: L.324:
                   2023: lw $4,8($30)
                   2024: move $5,$0
                   2025: move $6,$0
                   2026: jal listnodes  # int
                   2027: move $25,$2
                   2028: sw $25,$fp11-8($sp)
                   2029: lw $4,12($30)
                   2030: move $5,$0
                   2031: move $6,$0
                   2032: jal listnodes  # int
                   2033: move $25,$2
                   2034: sw $25,$fp11-12($sp)
                   2035: lw $4,($30)
                   2036: lw $5,$fp11-8($sp)
                   2037: lw $6,$fp11-12($sp)
                   2038: move $7,$0
                   2039: jal node  # int
                   2040: move $23,$2
                   2041: lw $25,IR
                   2042: lw $25,28($25)
                   2043: and $25,$25,0x10000000
                   2044: beq $25,$0,L.186
                   2045: lw $25,($23)
                   2046: beq $25,453,L.332
                   2047: beq $25,357,L.332
                   2048: beq $25,469,L.332
                   2049: beq $25,454,L.332
                   2050: beq $25,358,L.332
                   2051: bne $25,470,L.186
                   2052: L.332:
                   2053: move $4,$23
                   2054: jal list  # int
                   2055: b L.186
                   2056: L.333:
                   2057: lw $25,$fp11+4($sp)
                   2058: bne $25,$0,L.335
                   2059: lw $25,$fp11+8($sp)
                   2060: beq $25,$0,L.334
                   2061: L.335:
                   2062: la $4,L.37
                   2063: la $5,L.38
                   2064: li $6,505
                   2065: jal fatal  # int
                   2066: L.334:
                   2067: lw $4,8($30)
                   2068: move $5,$0
                   2069: move $6,$0
                   2070: jal listnodes  # int
                   2071: move $25,$2
                   2072: sw $25,$fp11-8($sp)
                   2073: lw $4,($30)
                   2074: lw $5,$fp11-8($sp)
                   2075: move $6,$0
                   2076: move $7,$0
                   2077: jal newnode  # int
                   2078: move $23,$2
                   2079: move $4,$23
                   2080: jal list  # int
                   2081: b L.186
                   2082: L.336:
                   2083: lw $25,$fp11+4($sp)
                   2084: bne $25,$0,L.338
                   2085: lw $25,$fp11+8($sp)
                   2086: beq $25,$0,L.337
                   2087: L.338:
                   2088: la $4,L.37
                   2089: la $5,L.38
                   2090: li $6,512
                   2091: jal fatal  # int
                   2092: L.337:
                   2093: lw $4,8($30)
                   2094: move $5,$0
                   2095: move $6,$0
                   2096: jal listnodes  # int
                   2097: move $25,$2
                   2098: sw $25,$fp11-8($sp)
                   2099: lw $4,($30)
                   2100: lw $5,$fp11-8($sp)
                   2101: move $6,$0
                   2102: move $7,$0
                   2103: jal node  # int
                   2104: move $23,$2
                   2105: b L.186
                   2106: L.339:
                   2107: lw $25,8($30)
                   2108: lw $25,4($25)
                   2109: sw $25,$fp11-16($sp)
                   2110: lw $25,$fp11-16($sp)
                   2111: lw $25,($25)
                   2112: blt $25,15,L.343
                   2113: lw $25,$fp11-16($sp)
                   2114: lw $21,12($25)
                   2115: b L.344
                   2116: L.343:
                   2117: lw $21,$fp11-16($sp)
                   2118: L.344:
                   2119: lw $25,($21)
                   2120: bne $25,7,L.340
                   2121: lw $25,$fp11-16($sp)
                   2122: lw $25,($25)
                   2123: blt $25,15,L.346
                   2124: lw $25,$fp11-16($sp)
                   2125: lw $21,12($25)
                   2126: b L.347
                   2127: L.346:
                   2128: lw $21,$fp11-16($sp)
                   2129: L.347:
                   2130: lw $25,12($21)
                   2131: sw $25,$fp11-16($sp)
                   2132: L.340:
                   2133: lw $25,$fp11+4($sp)
                   2134: bne $25,$0,L.349
                   2135: lw $25,$fp11+8($sp)
                   2136: beq $25,$0,L.348
                   2137: L.349:
                   2138: la $4,L.37
                   2139: la $5,L.38
                   2140: li $6,520
                   2141: jal fatal  # int
                   2142: L.348:
                   2143: lw $4,8($30)
                   2144: move $5,$0
                   2145: move $6,$0
                   2146: jal listnodes  # int
                   2147: move $25,$2
                   2148: sw $25,$fp11-8($sp)
                   2149: lw $25,$fp11-16($sp)
                   2150: lw $25,($25)
                   2151: beq $25,16,L.355
                   2152: beq $25,31,L.355
                   2153: lw $25,$fp11-16($sp)
                   2154: lw $25,($25)
                   2155: blt $25,15,L.357
                   2156: lw $25,$fp11-16($sp)
                   2157: lw $21,12($25)
                   2158: b L.358
                   2159: L.357:
                   2160: lw $21,$fp11-16($sp)
                   2161: L.358:
                   2162: lw $25,($21)
                   2163: beq $25,9,L.356
                   2164: lw $25,$fp11-16($sp)
                   2165: lw $25,($25)
                   2166: blt $25,15,L.359
                   2167: lw $25,$fp11-16($sp)
                   2168: lw $20,12($25)
                   2169: b L.360
                   2170: L.359:
                   2171: lw $20,$fp11-16($sp)
                   2172: L.360:
                   2173: lw $25,($20)
                   2174: bne $25,10,L.350
                   2175: L.356:
                   2176: lw $25,$fp11-16($sp)
                   2177: lw $25,($25)
                   2178: blt $25,15,L.361
                   2179: lw $25,$fp11-16($sp)
                   2180: lw $19,12($25)
                   2181: b L.362
                   2182: L.361:
                   2183: lw $19,$fp11-16($sp)
                   2184: L.362:
                   2185: lw $25,16($19)
                   2186: lw $25,64($25)
                   2187: and $25,$25,0x40000000
                   2188: beq $25,$0,L.350
                   2189: L.355:
                   2190: lw $4,($30)
                   2191: lw $5,$fp11-8($sp)
                   2192: move $6,$0
                   2193: move $7,$0
                   2194: jal newnode  # int
                   2195: move $23,$2
                   2196: b L.186
                   2197: L.350:
                   2198: lw $4,($30)
                   2199: lw $5,$fp11-8($sp)
                   2200: move $6,$0
                   2201: move $7,$0
                   2202: jal node  # int
                   2203: move $23,$2
                   2204: b L.186
                   2205: L.363:
                   2206: lw $25,$fp11+4($sp)
                   2207: bne $25,$0,L.365
                   2208: lw $25,$fp11+8($sp)
                   2209: beq $25,$0,L.364
                   2210: L.365:
                   2211: la $4,L.37
                   2212: la $5,L.38
                   2213: li $6,530
                   2214: jal fatal  # int
                   2215: L.364:
                   2216: lw $25,24($30)
                   2217: lw $24,4($25)
                   2218: lw $24,8($24)
                   2219: sll $24,$24,3
                   2220: lh $15,12($25)
                   2221: subu $24,$24,$15
                   2222: lh $25,14($25)
                   2223: subu $25,$25,1
                   2224: subu $4,$24,$25
                   2225: lw $5,inttype
                   2226: jal constnode  # int
                   2227: li $4,336
                   2228: lw $5,8($30)
                   2229: move $6,$2
                   2230: jal shnode  # int
                   2231: move $21,$2
                   2232: lw $25,4($30)
                   2233: lw $25,8($25)
                   2234: sll $25,$25,3
                   2235: lw $24,24($30)
                   2236: lh $24,12($24)
                   2237: subu $4,$25,$24
                   2238: lw $5,inttype
                   2239: jal constnode  # int
                   2240: li $4,368
                   2241: move $5,$21
                   2242: move $6,$2
                   2243: jal shnode  # int
                   2244: move $25,$2
                   2245: sw $25,$fp11-16($sp)
                   2246: lw $4,$fp11-16($sp)
                   2247: move $5,$0
                   2248: move $6,$0
                   2249: jal listnodes  # int
                   2250: move $23,$2
                   2251: b L.186
                   2252: L.366:
                   2253: lw $25,$fp11+4($sp)
                   2254: bne $25,$0,L.368
                   2255: lw $25,$fp11+8($sp)
                   2256: beq $25,$0,L.367
                   2257: L.368:
                   2258: la $4,L.37
                   2259: la $5,L.38
                   2260: li $6,539
                   2261: jal fatal  # int
                   2262: L.367:
                   2263: lw $25,24($30)
                   2264: lw $25,32($25)
                   2265: and $25,$25,0x40000000
                   2266: beq $25,$0,L.369
                   2267: lw $4,24($30)
                   2268: jal addlocal  # int
                   2269: lw $4,24($30)
                   2270: jal release  # int
                   2271: L.369:
                   2272: lw $4,($30)
                   2273: move $5,$0
                   2274: move $6,$0
                   2275: lw $7,24($30)
                   2276: jal node  # int
                   2277: move $23,$2
                   2278: b L.186
                   2279: L.371:
                   2280: lw $25,$fp11+4($sp)
                   2281: bne $25,$0,L.373
                   2282: lw $25,$fp11+8($sp)
                   2283: beq $25,$0,L.372
                   2284: L.373:
                   2285: la $4,L.37
                   2286: la $5,L.38
                   2287: li $6,547
                   2288: jal fatal  # int
                   2289: L.372:
                   2290: lw $25,24($30)
                   2291: lhu $25,28($25)
                   2292: bne $25,2,L.374
                   2293: lw $25,24($30)
                   2294: l.s $f18,36($25)
                   2295: l.s $f16,L.291
                   2296: add.s $f18,$f18,$f16
                   2297: s.s $f18,36($25)
                   2298: L.374:
                   2299: lw $4,($30)
                   2300: move $5,$0
                   2301: move $6,$0
                   2302: lw $7,24($30)
                   2303: jal node  # int
                   2304: move $23,$2
                   2305: b L.186
                   2306: L.185:
                   2307: la $4,L.37
                   2308: la $5,L.38
                   2309: li $6,552
                   2310: jal fatal  # int
                   2311: L.186:
                   2312: sw $23,16($30)
                   2313: move $2,$23
                   2314: L.180:
                   2315: lw $19,16($sp)
                   2316: lw $20,20($sp)
                   2317: lw $21,24($sp)
                   2318: lw $22,28($sp)
                   2319: lw $23,32($sp)
                   2320: lw $30,36($sp)
                   2321: lw $31,40($sp)
                   2322: addu $sp,$sp,80
                   2323: j $31
                   2324: .end listnodes
                   2325: .globl jump
                   2326: .text
                   2327: .align 2; .ent jump
                   2328: jump:
                   2329: $fp12=24
                   2330: .frame $sp,24,$31
                   2331: addu $sp,$sp,-24
                   2332: .mask 0xc0000000,-4
                   2333: sw $30,16($sp)
                   2334: sw $31,20($sp)
                   2335: sw $4,24($sp)
                   2336: lw $4,$fp12+0($sp)
                   2337: jal findlabel  # int
                   2338: move $30,$2
                   2339: l.s $f18,36($30)
                   2340: l.s $f16,L.291
                   2341: add.s $f18,$f18,$f16
                   2342: s.s $f18,36($30)
                   2343: li $4,263
                   2344: move $5,$0
                   2345: move $6,$0
                   2346: move $7,$30
                   2347: jal node  # int
                   2348: li $4,584
                   2349: move $5,$2
                   2350: move $6,$0
                   2351: move $7,$0
                   2352: jal newnode  # int
                   2353: L.387:
                   2354: lw $30,16($sp)
                   2355: lw $31,20($sp)
                   2356: addu $sp,$sp,24
                   2357: j $31
                   2358: .end jump
                   2359: .globl newnode
                   2360: .text
                   2361: .align 2; .ent newnode
                   2362: newnode:
                   2363: $fp13=24
                   2364: .frame $sp,24,$31
                   2365: addu $sp,$sp,-24
                   2366: .mask 0x80000000,-8
                   2367: sw $31,16($sp)
                   2368: sw $4,24($sp)
                   2369: sw $5,28($sp)
                   2370: sw $6,32($sp)
                   2371: sw $7,36($sp)
                   2372: lw $4,$fp13+0($sp)
                   2373: lw $5,$fp13+4($sp)
                   2374: lw $6,$fp13+8($sp)
                   2375: lw $7,$fp13+12($sp)
                   2376: jal dagnode  # int
                   2377: L.388:
                   2378: lw $31,16($sp)
                   2379: addu $sp,$sp,24
                   2380: j $31
                   2381: .end newnode
                   2382: .globl node
                   2383: .text
                   2384: .align 2; .ent node
                   2385: node:
                   2386: $fp14=32
                   2387: .frame $sp,32,$31
                   2388: addu $sp,$sp,-32
                   2389: .mask 0xc0800000,-8
                   2390: sw $23,16($sp)
                   2391: sw $30,20($sp)
                   2392: sw $31,24($sp)
                   2393: sw $4,32($sp)
                   2394: sw $5,36($sp)
                   2395: sw $6,40($sp)
                   2396: sw $7,44($sp)
                   2397: lw $25,$fp14+0($sp)
                   2398: sra $25,$25,4
                   2399: lw $24,$fp14+12($sp)
                   2400: srl $24,$24,2
                   2401: xor $25,$25,$24
                   2402: and $23,$25,15
                   2403: sll $25,$23,2
                   2404: lw $30,buckets($25)
                   2405: b L.393
                   2406: L.390:
                   2407: lw $25,($30)
                   2408: lw $24,$fp14+0($sp)
                   2409: bne $25,$24,L.394
                   2410: lw $25,8($30)
                   2411: lw $24,$fp14+12($sp)
                   2412: bne $25,$24,L.394
                   2413: lw $25,24($30)
                   2414: lw $24,$fp14+4($sp)
                   2415: bne $25,$24,L.394
                   2416: lw $25,28($30)
                   2417: lw $24,$fp14+8($sp)
                   2418: bne $25,$24,L.394
                   2419: move $2,$30
                   2420: b L.389
                   2421: L.394:
                   2422: L.391:
                   2423: lw $30,80($30)
                   2424: L.393:
                   2425: bne $30,$0,L.390
                   2426: lw $4,$fp14+0($sp)
                   2427: lw $5,$fp14+4($sp)
                   2428: lw $6,$fp14+8($sp)
                   2429: lw $7,$fp14+12($sp)
                   2430: jal dagnode  # int
                   2431: move $30,$2
                   2432: sll $25,$23,2
                   2433: lw $25,buckets($25)
                   2434: sw $25,80($30)
                   2435: sll $25,$23,2
                   2436: sw $30,buckets($25)
                   2437: lw $25,nodecount
                   2438: addu $25,$25,1
                   2439: sw $25,nodecount
                   2440: move $2,$30
                   2441: L.389:
                   2442: lw $23,16($sp)
                   2443: lw $30,20($sp)
                   2444: lw $31,24($sp)
                   2445: addu $sp,$sp,32
                   2446: j $31
                   2447: .end node
                   2448: .globl printdag
                   2449: .text
                   2450: .align 2; .ent printdag
                   2451: printdag:
                   2452: $fp15=32
                   2453: .frame $sp,32,$31
                   2454: addu $sp,$sp,-32
                   2455: .mask 0xc0800000,-8
                   2456: sw $23,16($sp)
                   2457: sw $30,20($sp)
                   2458: sw $31,24($sp)
                   2459: move $30,$4
                   2460: move $23,$5
                   2461: move $4,$0
                   2462: jal printed  # int
                   2463: bne $30,$0,L.397
                   2464: lw $25,nodelist
                   2465: move $30,$25
                   2466: beq $25,$0,L.398
                   2467: L.401:
                   2468: lw $30,48($30)
                   2469: move $4,$30
                   2470: move $5,$23
                   2471: move $6,$0
                   2472: jal printdag1  # int
                   2473: L.402:
                   2474: lw $25,nodelist
                   2475: bne $30,$25,L.401
                   2476: b L.398
                   2477: L.397:
                   2478: move $4,$30
                   2479: jal nodeid  # int
                   2480: move $4,$2
                   2481: jal printed  # int
                   2482: move $25,$2
                   2483: lw $25,($25)
                   2484: beq $25,$0,L.404
                   2485: move $4,$30
                   2486: jal nodeid  # int
                   2487: move $4,$23
                   2488: la $5,L.406
                   2489: move $6,$2
                   2490: jal fprint  # int
                   2491: b L.405
                   2492: L.404:
                   2493: move $4,$30
                   2494: move $5,$23
                   2495: move $6,$0
                   2496: jal printdag1  # int
                   2497: L.405:
                   2498: L.398:
                   2499: L.396:
                   2500: lw $23,16($sp)
                   2501: lw $30,20($sp)
                   2502: lw $31,24($sp)
                   2503: addu $sp,$sp,32
                   2504: j $31
                   2505: .end printdag
                   2506: .text
                   2507: .align 2; .ent printdag1
                   2508: printdag1:
                   2509: $fp16=40
                   2510: .frame $sp,40,$31
                   2511: addu $sp,$sp,-40
                   2512: .mask 0xc0e00000,-8
                   2513: sw $21,16($sp)
                   2514: sw $22,20($sp)
                   2515: sw $23,24($sp)
                   2516: sw $30,28($sp)
                   2517: sw $31,32($sp)
                   2518: move $30,$4
                   2519: move $23,$5
                   2520: move $22,$6
                   2521: beq $30,$0,L.410
                   2522: move $4,$30
                   2523: jal nodeid  # int
                   2524: sw $2,$fp16-4($sp)
                   2525: move $4,$2
                   2526: jal printed  # int
                   2527: move $25,$2
                   2528: lw $25,($25)
                   2529: beq $25,$0,L.408
                   2530: L.410:
                   2531: b L.407
                   2532: L.408:
                   2533: lw $4,$fp16-4($sp)
                   2534: jal printed  # int
                   2535: move $25,$2
                   2536: li $24,1
                   2537: sw $24,($25)
                   2538: move $21,$0
                   2539: L.411:
                   2540: sll $25,$21,2
                   2541: la $24,24($30)
                   2542: addu $25,$25,$24
                   2543: lw $4,($25)
                   2544: move $5,$23
                   2545: addu $6,$22,1
                   2546: jal printdag1  # int
                   2547: L.412:
                   2548: addu $21,$21,1
                   2549: blt $21,6,L.411
                   2550: move $4,$30
                   2551: move $5,$23
                   2552: move $6,$22
                   2553: jal printnode  # int
                   2554: L.407:
                   2555: lw $21,16($sp)
                   2556: lw $22,20($sp)
                   2557: lw $23,24($sp)
                   2558: lw $30,28($sp)
                   2559: lw $31,32($sp)
                   2560: addu $sp,$sp,40
                   2561: j $31
                   2562: .end printdag1
                   2563: .text
                   2564: .align 2; .ent printnode
                   2565: printnode:
                   2566: $fp17=56
                   2567: .frame $sp,56,$31
                   2568: addu $sp,$sp,-56
                   2569: .mask 0xc0f80000,-12
                   2570: sw $19,20($sp)
                   2571: sw $20,24($sp)
                   2572: sw $21,28($sp)
                   2573: sw $22,32($sp)
                   2574: sw $23,36($sp)
                   2575: sw $30,40($sp)
                   2576: sw $31,44($sp)
                   2577: move $30,$4
                   2578: move $23,$5
                   2579: sw $6,64($sp)
                   2580: beq $30,$0,L.416
                   2581: move $4,$30
                   2582: jal nodeid  # int
                   2583: sw $2,$fp17-4($sp)
                   2584: move $4,$23
                   2585: la $5,L.418
                   2586: lw $25,$fp17+8($sp)
                   2587: bne $25,$0,L.423
                   2588: li $21,39
                   2589: b L.424
                   2590: L.423:
                   2591: li $21,35
                   2592: L.424:
                   2593: move $6,$21
                   2594: lw $7,$fp17-4($sp)
                   2595: lw $25,$fp17-4($sp)
                   2596: bge $25,10,L.425
                   2597: move $20,$0
                   2598: b L.426
                   2599: L.425:
                   2600: lw $25,$fp17-4($sp)
                   2601: bge $25,100,L.427
                   2602: li $19,1
                   2603: b L.428
                   2604: L.427:
                   2605: li $19,2
                   2606: L.428:
                   2607: move $20,$19
                   2608: L.426:
                   2609: la $25,L.420($20)
                   2610: sw $25,16($sp)
                   2611: jal fprint  # int
                   2612: lw $4,($30)
                   2613: jal opname  # int
                   2614: move $4,$23
                   2615: la $5,L.429
                   2616: move $6,$2
                   2617: lh $7,4($30)
                   2618: jal fprint  # int
                   2619: move $22,$0
                   2620: b L.433
                   2621: L.430:
                   2622: sll $25,$22,2
                   2623: la $24,24($30)
                   2624: addu $25,$25,$24
                   2625: lw $4,($25)
                   2626: jal nodeid  # int
                   2627: move $4,$23
                   2628: la $5,L.434
                   2629: move $6,$2
                   2630: jal fprint  # int
                   2631: L.431:
                   2632: addu $22,$22,1
                   2633: L.433:
                   2634: bge $22,6,L.435
                   2635: sll $25,$22,2
                   2636: la $24,24($30)
                   2637: addu $25,$25,$24
                   2638: lw $25,($25)
                   2639: bne $25,$0,L.430
                   2640: L.435:
                   2641: move $22,$0
                   2642: b L.439
                   2643: L.436:
                   2644: move $4,$23
                   2645: la $5,L.440
                   2646: sll $25,$22,2
                   2647: la $24,8($30)
                   2648: addu $25,$25,$24
                   2649: lw $25,($25)
                   2650: lw $6,24($25)
                   2651: jal fprint  # int
                   2652: L.437:
                   2653: addu $22,$22,1
                   2654: L.439:
                   2655: bge $22,4,L.441
                   2656: sll $25,$22,2
                   2657: la $24,8($30)
                   2658: addu $25,$25,$24
                   2659: lw $25,($25)
                   2660: bne $25,$0,L.436
                   2661: L.441:
                   2662: move $4,$23
                   2663: la $5,L.442
                   2664: jal fprint  # int
                   2665: L.416:
                   2666: L.415:
                   2667: lw $19,20($sp)
                   2668: lw $20,24($sp)
                   2669: lw $21,28($sp)
                   2670: lw $22,32($sp)
                   2671: lw $23,36($sp)
                   2672: lw $30,40($sp)
                   2673: lw $31,44($sp)
                   2674: addu $sp,$sp,56
                   2675: j $31
                   2676: .end printnode
                   2677: .text
                   2678: .align 2; .ent remove
                   2679: remove:
                   2680: $fp18=32
                   2681: .frame $sp,32,$31
                   2682: addu $sp,$sp,-32
                   2683: .mask 0xc0800000,-8
                   2684: sw $23,16($sp)
                   2685: sw $30,20($sp)
                   2686: sw $31,24($sp)
                   2687: move $30,$4
                   2688: lw $25,nodelist
                   2689: beq $25,$0,L.444
                   2690: lw $23,nodelist
                   2691: b L.449
                   2692: L.446:
                   2693: L.447:
                   2694: lw $23,48($23)
                   2695: L.449:
                   2696: lw $25,48($23)
                   2697: beq $25,$30,L.450
                   2698: lw $24,nodelist
                   2699: bne $25,$24,L.446
                   2700: L.450:
                   2701: lw $25,48($23)
                   2702: beq $25,$30,L.451
                   2703: la $4,L.37
                   2704: la $5,L.38
                   2705: li $6,637
                   2706: jal fatal  # int
                   2707: L.451:
                   2708: lw $25,48($30)
                   2709: sw $25,48($23)
                   2710: lw $25,nodelist
                   2711: bne $30,$25,L.452
                   2712: sw $23,nodelist
                   2713: L.452:
                   2714: L.444:
                   2715: L.443:
                   2716: lw $23,16($sp)
                   2717: lw $30,20($sp)
                   2718: lw $31,24($sp)
                   2719: addu $sp,$sp,32
                   2720: j $31
                   2721: .end remove
                   2722: .text
                   2723: .align 2; .ent reset
                   2724: reset:
                   2725: $fp19=0
                   2726: .frame $sp,0,$31
                   2727: la $24,buckets
                   2728: addu $25,$24,64
                   2729: b L.458
                   2730: L.455:
                   2731: sw $0,28($24)
                   2732: sw $0,24($24)
                   2733: sw $0,20($24)
                   2734: sw $0,16($24)
                   2735: sw $0,12($24)
                   2736: sw $0,8($24)
                   2737: sw $0,4($24)
                   2738: sw $0,($24)
                   2739: L.456:
                   2740: addu $24,$24,32
                   2741: L.458:
                   2742: bltu $24,$25,L.455
                   2743: sw $0,nodecount
                   2744: L.454:
                   2745: j $31
                   2746: .end reset
                   2747: .text
                   2748: .align 2; .ent trash
                   2749: trash:
                   2750: $fp20=16
                   2751: .frame $sp,16,$31
                   2752: addu $sp,$sp,-16
                   2753: .mask 0xc0c00000,-4
                   2754: sw $22,0($sp)
                   2755: sw $23,4($sp)
                   2756: sw $30,8($sp)
                   2757: sw $31,12($sp)
                   2758: sw $4,16($sp)
                   2759: lw $25,$fp20+0($sp)
                   2760: beq $25,$0,L.460
                   2761: move $30,$0
                   2762: L.462:
                   2763: sll $25,$30,2
                   2764: la $22,buckets($25)
                   2765: b L.469
                   2766: L.466:
                   2767: lw $25,($23)
                   2768: and $25,$25,0xfffffff0
                   2769: bne $25,64,L.470
                   2770: lw $25,24($23)
                   2771: lw $25,($25)
                   2772: beq $25,263,L.474
                   2773: beq $25,295,L.474
                   2774: bne $25,279,L.472
                   2775: L.474:
                   2776: lw $25,24($23)
                   2777: lw $25,8($25)
                   2778: lw $24,$fp20+0($sp)
                   2779: lw $24,8($24)
                   2780: bne $25,$24,L.470
                   2781: L.472:
                   2782: lw $25,80($23)
                   2783: sw $25,($22)
                   2784: lw $25,nodecount
                   2785: subu $25,$25,1
                   2786: sw $25,nodecount
                   2787: b L.471
                   2788: L.470:
                   2789: addu $22,$23,80
                   2790: L.471:
                   2791: L.467:
                   2792: L.469:
                   2793: lw $25,($22)
                   2794: move $23,$25
                   2795: bne $25,$0,L.466
                   2796: L.463:
                   2797: addu $30,$30,1
                   2798: blt $30,16,L.462
                   2799: b L.461
                   2800: L.460:
                   2801: lw $25,nodecount
                   2802: ble $25,$0,L.475
                   2803: jal reset  # int
                   2804: L.475:
                   2805: L.461:
                   2806: L.459:
                   2807: lw $22,0($sp)
                   2808: lw $23,4($sp)
                   2809: lw $30,8($sp)
                   2810: lw $31,12($sp)
                   2811: addu $sp,$sp,16
                   2812: j $31
                   2813: .end trash
                   2814: .text
                   2815: .align 2; .ent typestab
                   2816: typestab:
                   2817: $fp21=32
                   2818: .frame $sp,32,$31
                   2819: addu $sp,$sp,-32
                   2820: .mask 0xc0800000,-8
                   2821: sw $23,16($sp)
                   2822: sw $30,20($sp)
                   2823: sw $31,24($sp)
                   2824: move $30,$4
                   2825: sw $5,36($sp)
                   2826: lw $25,40($30)
                   2827: lw $25,($25)
                   2828: blt $25,15,L.481
                   2829: lw $25,40($30)
                   2830: lw $23,12($25)
                   2831: b L.482
                   2832: L.481:
                   2833: lw $23,40($30)
                   2834: L.482:
                   2835: lw $25,($23)
                   2836: beq $25,11,L.478
                   2837: lbu $25,30($30)
                   2838: beq $25,74,L.483
                   2839: bne $25,81,L.478
                   2840: L.483:
                   2841: lw $25,IR
                   2842: lw $25,124($25)
                   2843: beq $25,$0,L.478
                   2844: move $4,$30
                   2845: lw $25,IR
                   2846: lw $25,124($25)
                   2847: jal $25  # int
                   2848: b L.479
                   2849: L.478:
                   2850: lbu $25,30($30)
                   2851: beq $25,83,L.486
                   2852: bne $25,$0,L.484
                   2853: L.486:
                   2854: lw $25,IR
                   2855: lw $25,128($25)
                   2856: beq $25,$0,L.484
                   2857: move $4,$30
                   2858: lw $25,IR
                   2859: lw $25,128($25)
                   2860: jal $25  # int
                   2861: L.484:
                   2862: L.479:
                   2863: L.477:
                   2864: lw $23,16($sp)
                   2865: lw $30,20($sp)
                   2866: lw $31,24($sp)
                   2867: addu $sp,$sp,32
                   2868: j $31
                   2869: .end typestab
                   2870: .text
                   2871: .align 2; .ent undag
                   2872: undag:
                   2873: $fp22=112
                   2874: .frame $sp,112,$31
                   2875: addu $sp,$sp,-112
                   2876: .mask 0xc0c00000,-84
                   2877: sw $22,16($sp)
                   2878: sw $23,20($sp)
                   2879: sw $30,24($sp)
                   2880: sw $31,28($sp)
                   2881: sw $4,112($sp)
                   2882: lw $25,$fp22+0($sp)
                   2883: sw $25,$fp22-32($sp)
                   2884: la $23,$fp22-80($sp)
                   2885: b L.492
                   2886: L.489:
                   2887: lw $22,48($30)
                   2888: sw $23,48($30)
                   2889: lw $25,($30)
                   2890: and $25,$25,0xfffffff0
                   2891: bne $25,64,L.493
                   2892: lh $25,4($30)
                   2893: bge $25,1,L.495
                   2894: la $4,L.37
                   2895: la $5,L.38
                   2896: li $6,695
                   2897: jal fatal  # int
                   2898: L.495:
                   2899: move $4,$30
                   2900: move $5,$30
                   2901: jal undag1  # int
                   2902: lw $23,48($30)
                   2903: sw $22,48($23)
                   2904: sw $0,48($30)
                   2905: b L.494
                   2906: L.493:
                   2907: lw $25,($30)
                   2908: move $24,$25
                   2909: and $24,$24,0xfffffff0
                   2910: beq $24,208,L.503
                   2911: lw $24,IR
                   2912: lw $24,28($24)
                   2913: and $24,$24,0x10000000
                   2914: beq $24,$0,L.496
                   2915: beq $25,453,L.503
                   2916: beq $25,357,L.503
                   2917: beq $25,469,L.503
                   2918: beq $25,454,L.503
                   2919: beq $25,358,L.503
                   2920: bne $25,470,L.496
                   2921: L.503:
                   2922: lh $25,4($30)
                   2923: blt $25,1,L.496
                   2924: move $4,$30
                   2925: move $5,$30
                   2926: jal undag1  # int
                   2927: lw $25,48($30)
                   2928: move $24,$25
                   2929: beq $24,$0,L.506
                   2930: lw $24,($25)
                   2931: and $24,$24,0xfffffff0
                   2932: bne $24,48,L.506
                   2933: lw $25,28($25)
                   2934: beq $25,$30,L.504
                   2935: L.506:
                   2936: la $4,L.37
                   2937: la $5,L.38
                   2938: li $6,711
                   2939: jal fatal  # int
                   2940: L.504:
                   2941: lw $23,48($30)
                   2942: sw $22,48($23)
                   2943: sw $0,48($30)
                   2944: b L.497
                   2945: L.496:
                   2946: lh $25,4($30)
                   2947: beq $25,$0,L.507
                   2948: la $4,L.37
                   2949: la $5,L.38
                   2950: li $6,730
                   2951: jal fatal  # int
                   2952: L.507:
                   2953: move $4,$30
                   2954: move $5,$30
                   2955: jal undag1  # int
                   2956: sw $22,48($30)
                   2957: move $23,$30
                   2958: L.497:
                   2959: L.494:
                   2960: L.490:
                   2961: L.492:
                   2962: lw $25,48($23)
                   2963: move $30,$25
                   2964: bne $25,$0,L.489
                   2965: move $4,$0
                   2966: li $5,5
                   2967: jal rmtemps  # int
                   2968: lw $2,$fp22-32($sp)
                   2969: L.487:
                   2970: lw $22,16($sp)
                   2971: lw $23,20($sp)
                   2972: lw $30,24($sp)
                   2973: lw $31,28($sp)
                   2974: addu $sp,$sp,112
                   2975: j $31
                   2976: .end undag
                   2977: .text
                   2978: .align 2; .ent undag1
                   2979: undag1:
                   2980: $fp23=40
                   2981: .frame $sp,40,$31
                   2982: addu $sp,$sp,-40
                   2983: .mask 0xc0c00000,-12
                   2984: sw $22,16($sp)
                   2985: sw $23,20($sp)
                   2986: sw $30,24($sp)
                   2987: sw $31,28($sp)
                   2988: move $30,$4
                   2989: sw $5,44($sp)
                   2990: bne $30,$0,L.510
                   2991: b L.511
                   2992: L.510:
                   2993: lw $25,16($30)
                   2994: beq $25,$0,L.512
                   2995: lw $25,16($30)
                   2996: lw $25,40($25)
                   2997: lw $25,($25)
                   2998: blt $25,15,L.518
                   2999: lw $25,16($30)
                   3000: lw $25,40($25)
                   3001: lw $22,12($25)
                   3002: b L.519
                   3003: L.518:
                   3004: lw $25,16($30)
                   3005: lw $22,40($25)
                   3006: L.519:
                   3007: lw $25,($22)
                   3008: bne $25,6,L.516
                   3009: li $23,5
                   3010: b L.517
                   3011: L.516:
                   3012: lw $25,16($30)
                   3013: lw $4,40($25)
                   3014: jal ttob  # int
                   3015: move $23,$2
                   3016: L.517:
                   3017: li $4,295
                   3018: move $5,$0
                   3019: move $6,$0
                   3020: lw $7,16($30)
                   3021: jal newnode  # int
                   3022: addu $4,$23,64
                   3023: move $5,$2
                   3024: move $6,$0
                   3025: move $7,$0
                   3026: jal newnode  # int
                   3027: move $25,$2
                   3028: sw $25,$fp23-4($sp)
                   3029: lw $25,$fp23-4($sp)
                   3030: li $24,1
                   3031: sh $24,4($25)
                   3032: lh $25,4($30)
                   3033: subu $25,$25,1
                   3034: sh $25,4($30)
                   3035: sll $25,$25,16; sra $25,$25,16
                   3036: bne $25,1,L.520
                   3037: sw $0,16($30)
                   3038: L.520:
                   3039: lw $30,$fp23-4($sp)
                   3040: b L.513
                   3041: L.512:
                   3042: lh $25,4($30)
                   3043: bgt $25,1,L.531
                   3044: lw $25,($30)
                   3045: move $24,$25
                   3046: and $24,$24,0xfffffff0
                   3047: beq $24,208,L.531
                   3048: lw $24,IR
                   3049: lw $24,28($24)
                   3050: and $24,$24,0x10000000
                   3051: beq $24,$0,L.537
                   3052: beq $25,453,L.531
                   3053: beq $25,357,L.531
                   3054: beq $25,469,L.531
                   3055: beq $25,454,L.531
                   3056: beq $25,358,L.531
                   3057: bne $25,470,L.537
                   3058: L.531:
                   3059: lh $25,4($30)
                   3060: bne $25,$0,L.522
                   3061: lw $25,($30)
                   3062: move $24,$25
                   3063: and $24,$24,0xfffffff0
                   3064: beq $24,208,L.537
                   3065: lw $24,IR
                   3066: lw $24,28($24)
                   3067: and $24,$24,0x10000000
                   3068: beq $24,$0,L.522
                   3069: beq $25,453,L.537
                   3070: beq $25,357,L.537
                   3071: beq $25,469,L.537
                   3072: beq $25,454,L.537
                   3073: beq $25,358,L.537
                   3074: bne $25,470,L.522
                   3075: L.537:
                   3076: lw $4,24($30)
                   3077: lw $5,$fp23+4($sp)
                   3078: jal undag1  # int
                   3079: move $25,$2
                   3080: sw $25,24($30)
                   3081: lw $4,28($30)
                   3082: lw $5,$fp23+4($sp)
                   3083: jal undag1  # int
                   3084: move $25,$2
                   3085: sw $25,28($30)
                   3086: b L.523
                   3087: L.522:
                   3088: lw $25,($30)
                   3089: beq $25,295,L.540
                   3090: bne $25,279,L.538
                   3091: L.540:
                   3092: lw $25,$fp23+4($sp)
                   3093: bne $30,$25,L.541
                   3094: la $4,L.37
                   3095: la $5,L.38
                   3096: li $6,765
                   3097: jal fatal  # int
                   3098: L.541:
                   3099: lw $4,($30)
                   3100: move $5,$0
                   3101: move $6,$0
                   3102: lw $7,8($30)
                   3103: jal newnode  # int
                   3104: move $30,$2
                   3105: li $25,1
                   3106: sh $25,4($30)
                   3107: b L.539
                   3108: L.538:
                   3109: lw $25,($30)
                   3110: and $25,$25,0xfffffff0
                   3111: bne $25,64,L.542
                   3112: lw $25,24($30)
                   3113: lw $25,($25)
                   3114: beq $25,295,L.544
                   3115: bne $25,279,L.542
                   3116: L.544:
                   3117: lw $25,24($30)
                   3118: lw $25,8($25)
                   3119: lbu $25,30($25)
                   3120: bne $25,78,L.542
                   3121: lw $25,$fp23+4($sp)
                   3122: beq $30,$25,L.542
                   3123: lw $25,24($30)
                   3124: lw $4,($25)
                   3125: move $5,$0
                   3126: move $6,$0
                   3127: lw $7,8($25)
                   3128: jal newnode  # int
                   3129: lw $4,($30)
                   3130: move $5,$2
                   3131: move $6,$0
                   3132: move $7,$0
                   3133: jal newnode  # int
                   3134: move $30,$2
                   3135: li $25,1
                   3136: sh $25,4($30)
                   3137: b L.543
                   3138: L.542:
                   3139: lw $25,($30)
                   3140: bne $25,73,L.545
                   3141: lh $25,4($30)
                   3142: subu $25,$25,1
                   3143: sh $25,4($30)
                   3144: lw $4,($30)
                   3145: lw $5,24($30)
                   3146: move $6,$0
                   3147: move $7,$0
                   3148: jal newnode  # int
                   3149: move $30,$2
                   3150: li $25,1
                   3151: sh $25,4($30)
                   3152: lw $4,24($30)
                   3153: lw $5,$fp23+4($sp)
                   3154: jal undag1  # int
                   3155: move $25,$2
                   3156: sw $25,24($30)
                   3157: b L.546
                   3158: L.545:
                   3159: lw $4,($30)
                   3160: jal btot  # int
                   3161: li $4,78
                   3162: move $5,$2
                   3163: jal temporary  # int
                   3164: move $25,$2
                   3165: sw $25,16($30)
                   3166: lw $25,16($30)
                   3167: lw $25,32($25)
                   3168: and $25,$25,0x80000000
                   3169: bne $25,$0,L.547
                   3170: lw $25,16($30)
                   3171: li $24,5
                   3172: sh $24,28($25)
                   3173: lw $25,16($30)
                   3174: l.s $f18,L.291
                   3175: s.s $f18,36($25)
                   3176: lw $4,16($30)
                   3177: lw $25,IR
                   3178: lw $25,84($25)
                   3179: jal $25  # int
                   3180: lw $25,16($30)
                   3181: lw $24,32($25)
                   3182: or $24,$24,0x80000000
                   3183: sw $24,32($25)
                   3184: L.547:
                   3185: lw $4,24($30)
                   3186: lw $5,$fp23+4($sp)
                   3187: jal undag1  # int
                   3188: move $25,$2
                   3189: sw $25,24($30)
                   3190: lw $4,28($30)
                   3191: lw $5,$fp23+4($sp)
                   3192: jal undag1  # int
                   3193: move $25,$2
                   3194: sw $25,28($30)
                   3195: lw $25,16($30)
                   3196: lw $25,40($25)
                   3197: lw $25,($25)
                   3198: blt $25,15,L.553
                   3199: lw $25,16($30)
                   3200: lw $25,40($25)
                   3201: lw $22,12($25)
                   3202: b L.554
                   3203: L.553:
                   3204: lw $25,16($30)
                   3205: lw $22,40($25)
                   3206: L.554:
                   3207: lw $25,($22)
                   3208: bne $25,6,L.551
                   3209: li $23,5
                   3210: b L.552
                   3211: L.551:
                   3212: lw $25,16($30)
                   3213: lw $4,40($25)
                   3214: jal ttob  # int
                   3215: move $23,$2
                   3216: L.552:
                   3217: li $4,295
                   3218: move $5,$0
                   3219: move $6,$0
                   3220: lw $7,16($30)
                   3221: jal newnode  # int
                   3222: addu $4,$23,48
                   3223: move $5,$2
                   3224: move $6,$30
                   3225: move $7,$0
                   3226: jal newnode  # int
                   3227: move $25,$2
                   3228: sw $25,$fp23-4($sp)
                   3229: lw $25,16($30)
                   3230: lw $25,40($25)
                   3231: lw $4,8($25)
                   3232: jal intconst  # int
                   3233: lw $25,$fp23-4($sp)
                   3234: move $24,$2
                   3235: sw $24,8($25)
                   3236: lw $25,16($30)
                   3237: lw $25,40($25)
                   3238: lh $4,4($25)
                   3239: jal intconst  # int
                   3240: lw $25,$fp23-4($sp)
                   3241: move $24,$2
                   3242: sw $24,12($25)
                   3243: lw $25,$fp23+4($sp)
                   3244: lw $24,48($25)
                   3245: lw $15,$fp23-4($sp)
                   3246: sw $15,48($24)
                   3247: sw $15,48($25)
                   3248: lw $25,$fp23-4($sp)
                   3249: lw $24,$fp23+4($sp)
                   3250: sw $24,48($25)
                   3251: lw $25,$fp23+4($sp)
                   3252: beq $30,$25,L.555
                   3253: move $4,$30
                   3254: lw $5,$fp23+4($sp)
                   3255: jal undag1  # int
                   3256: move $30,$2
                   3257: L.555:
                   3258: L.546:
                   3259: L.543:
                   3260: L.539:
                   3261: L.523:
                   3262: L.513:
                   3263: L.511:
                   3264: move $2,$30
                   3265: L.509:
                   3266: lw $22,16($sp)
                   3267: lw $23,20($sp)
                   3268: lw $30,24($sp)
                   3269: lw $31,28($sp)
                   3270: addu $sp,$sp,40
                   3271: j $31
                   3272: .end undag1
                   3273: .globl walk
                   3274: .text
                   3275: .align 2; .ent walk
                   3276: walk:
                   3277: $fp24=24
                   3278: .frame $sp,24,$31
                   3279: addu $sp,$sp,-24
                   3280: .mask 0x80000000,-8
                   3281: sw $31,16($sp)
                   3282: sw $4,24($sp)
                   3283: sw $5,28($sp)
                   3284: sw $6,32($sp)
                   3285: lw $4,$fp24+0($sp)
                   3286: lw $5,$fp24+4($sp)
                   3287: lw $6,$fp24+8($sp)
                   3288: jal listnodes  # int
                   3289: lw $25,nodelist
                   3290: beq $25,$0,L.558
                   3291: move $4,$0
                   3292: jal trash  # int
                   3293: li $4,8
                   3294: jal code  # int
                   3295: lw $25,codelist
                   3296: lw $24,nodelist
                   3297: lw $24,48($24)
                   3298: sw $24,12($25)
                   3299: lw $25,nodelist
                   3300: sw $0,48($25)
                   3301: sw $0,nodelist
                   3302: li $4,78
                   3303: move $5,$0
                   3304: jal rmtemps  # int
                   3305: L.558:
                   3306: jal reset  # int
                   3307: sw $0,ntree
                   3308: L.557:
                   3309: lw $31,16($sp)
                   3310: addu $sp,$sp,24
                   3311: j $31
                   3312: .end walk
                   3313: .lcomm nodelist,4
                   3314: .lcomm buckets,64
                   3315: .extern voidtype 4
                   3316: .extern voidptype 4
                   3317: .extern unsignedtype 4
                   3318: .extern unsignedshort 4
                   3319: .extern unsignedlong 4
                   3320: .extern unsignedchar 4
                   3321: .extern signedchar 4
                   3322: .extern shorttype 4
                   3323: .extern longtype 4
                   3324: .extern longdouble 4
                   3325: .extern inttype 4
                   3326: .extern floattype 4
                   3327: .extern doubletype 4
                   3328: .extern chartype 4
                   3329: .extern transient 4
                   3330: .extern permanent 4
                   3331: .extern refinc 4
                   3332: .extern density 4
                   3333: .extern needconst 4
                   3334: .extern opnode 0
                   3335: .extern wflag 4
                   3336: .extern errlimit 4
                   3337: .extern errcnt 4
                   3338: .extern bp 4
                   3339: .extern events 24
                   3340: .extern npoints 4
                   3341: .extern ncalled 4
                   3342: .extern xref 4
                   3343: .extern glevel 4
                   3344: .extern YYnull 4
                   3345: .extern Pflag 4
                   3346: .extern Aflag 4
                   3347: .extern tsym 4
                   3348: .extern token 4
                   3349: .extern t 4
                   3350: .extern src 8
                   3351: .extern kind 0
                   3352: .extern lineno 4
                   3353: .extern line 4
                   3354: .extern limit 4
                   3355: .extern firstfile 4
                   3356: .extern file 4
                   3357: .extern cp 4
                   3358: .extern ntree 4
                   3359: .extern retv 4
                   3360: .extern fname 4
                   3361: .extern cfunc 4
                   3362: .globl nodecount
                   3363: .comm nodecount,4
                   3364: .extern symbols 4
                   3365: .extern level 4
                   3366: .extern types 4
                   3367: .extern labels 0
                   3368: .extern identifiers 4
                   3369: .extern globals 4
                   3370: .extern externals 4
                   3371: .extern constants 4
                   3372: .extern bnumber 4
                   3373: .extern IR 4
                   3374: .extern interfaces 0
                   3375: .extern genx 4
                   3376: .extern salign 4
                   3377: .extern dalign 4
                   3378: .extern vmask 0
                   3379: .extern usedmask 0
                   3380: .extern tmask 0
                   3381: .extern tempmask 0
                   3382: .extern savemask 0
                   3383: .extern savebase 0
                   3384: .extern rmap 0
                   3385: .extern regvars 4
                   3386: .extern regs 4
                   3387: .extern opcodes 4
                   3388: .extern nregsets 4
                   3389: .extern rflag 4
                   3390: .extern pflag 4
                   3391: .extern kflag 4
                   3392: .extern dflag 4
                   3393: .extern bflag 4
                   3394: .extern offset 4
                   3395: .extern ncalls 4
                   3396: .extern maxoffset 4
                   3397: .extern last 4
                   3398: .extern freemask 0
                   3399: .extern eemask 0
                   3400: .extern asmstr 0
                   3401: .extern argoffset 4
                   3402: .extern argbuildsize 4
                   3403: .rdata
                   3404: L.442:.byte 10,0
                   3405: L.440:.ascii " %s\000"
                   3406: L.434:.ascii " #%d\000"
                   3407: L.429:.ascii "%s count=%d\000"
                   3408: L.420:.ascii "   \000"
                   3409: L.418:.ascii "%c%d%s\000"
                   3410: L.406:.ascii "node'%d printed above\012\000"
                   3411: .align 2; L.291:.word 0x3f800000
                   3412: .align 2; L.148:.word 0x0
                   3413: L.51:.ascii "unreachable code\012\000"
                   3414: L.38:.ascii "assertion failure at line %d\012\000"
                   3415: L.37:.ascii "../c/dag.c\000"

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.