Annotation of researchv10no/cmd/lcc/gen2/mips-iris/tst/init.s, revision 1.1.1.1

1.1       root        1: .set reorder
                      2: .globl words
                      3: .data; .align 2; words:.word 0x1
                      4: .word 0x2
                      5: .word 0x3
                      6: .ascii "if\000"
                      7: .space 3
                      8: .space 2
                      9: .word 0x4
                     10: .word 0x5
                     11: .space 4
                     12: .ascii "for"
                     13: .space 3
                     14: .space 2
                     15: .word 0x6
                     16: .word 0x7
                     17: .word 0x8
                     18: .ascii "else\000"
                     19: .space 1
                     20: .space 2
                     21: .word 0x9
                     22: .word 0xa
                     23: .word 0xb
                     24: .ascii "whil"
                     25: .byte 101
                     26: .space 1
                     27: .space 2
                     28: .word 0x0
                     29: .space 8
                     30: .space 8
                     31: .globl wordlist
                     32: .sdata; .align 2; wordlist:.word words
                     33: .globl x
                     34: .data; .align 2; x:.word 0x1
                     35: .word 0x2
                     36: .word 0x3
                     37: .word 0x4
                     38: .word 0x0
                     39: .word 0x5
                     40: .word 0x6
                     41: .space 12
                     42: .word 0x7
                     43: .space 16
                     44: .globl y
                     45: .data; .align 2; y:.word x
                     46: .word x+20
                     47: .word x+40
                     48: .word 0x0
                     49: .text
                     50: .globl main
                     51: .text
                     52: .align 2; .ent main
                     53: main:
                     54: $fp1=32
                     55: .frame $sp,32,$31
                     56: addu $sp,$sp,-32
                     57: .mask 0xc0800000,-8
                     58: sw $23,16($sp)
                     59: sw $30,20($sp)
                     60: sw $31,24($sp)
                     61: move $23,$0
                     62: b L.8
                     63: L.5:
                     64: move $30,$0
                     65: b L.12
                     66: L.9:
                     67: la $4,L.13
                     68: sll $25,$30,2
                     69: sll $24,$23,2
                     70: lw $24,y($24)
                     71: addu $25,$25,$24
                     72: lw $5,($25)
                     73: jal printf  # int
                     74: L.10:
                     75: addu $30,$30,1
                     76: L.12:
                     77: sll $25,$30,2
                     78: sll $24,$23,2
                     79: lw $24,y($24)
                     80: addu $25,$25,$24
                     81: lw $25,($25)
                     82: bne $25,$0,L.9
                     83: la $4,L.14
                     84: jal printf  # int
                     85: L.6:
                     86: addu $23,$23,1
                     87: L.8:
                     88: sll $25,$23,2
                     89: lw $25,y($25)
                     90: bne $25,$0,L.5
                     91: jal f  # int
                     92: lw $4,wordlist
                     93: jal g  # int
                     94: move $2,$0
                     95: L.4:
                     96: lw $23,16($sp)
                     97: lw $30,20($sp)
                     98: lw $31,24($sp)
                     99: addu $sp,$sp,32
                    100: j $31
                    101: .end main
                    102: .data; .align 2; L.16:.word L.17
                    103: .word L.18
                    104: .word L.19
                    105: .word L.20
                    106: .word 0x0
                    107: .text
                    108: .globl f
                    109: .text
                    110: .align 2; .ent f
                    111: f:
                    112: $fp2=24
                    113: .frame $sp,24,$31
                    114: addu $sp,$sp,-24
                    115: .mask 0xc0000000,-4
                    116: sw $30,16($sp)
                    117: sw $31,20($sp)
                    118: la $30,L.16
                    119: b L.24
                    120: L.21:
                    121: la $4,L.25
                    122: lw $5,($30)
                    123: jal printf  # int
                    124: L.22:
                    125: addu $30,$30,4
                    126: L.24:
                    127: lw $25,($30)
                    128: bne $25,$0,L.21
                    129: L.15:
                    130: lw $30,16($sp)
                    131: lw $31,20($sp)
                    132: addu $sp,$sp,24
                    133: j $31
                    134: .end f
                    135: .globl g
                    136: .text
                    137: .align 2; .ent g
                    138: g:
                    139: $fp3=32
                    140: .frame $sp,32,$31
                    141: addu $sp,$sp,-32
                    142: .mask 0xc0800000,-8
                    143: sw $23,16($sp)
                    144: sw $30,20($sp)
                    145: sw $31,24($sp)
                    146: move $30,$4
                    147: b L.30
                    148: L.27:
                    149: move $23,$0
                    150: b L.34
                    151: L.31:
                    152: la $4,L.35
                    153: sll $25,$23,2
                    154: addu $25,$25,$30
                    155: lw $5,($25)
                    156: jal printf  # int
                    157: L.32:
                    158: addu $23,$23,1
                    159: L.34:
                    160: bltu $23,3,L.31
                    161: la $4,L.25
                    162: addu $5,$30,12
                    163: jal printf  # int
                    164: L.28:
                    165: addu $30,$30,20
                    166: L.30:
                    167: lw $25,($30)
                    168: bne $25,$0,L.27
                    169: jal h  # int
                    170: L.26:
                    171: lw $23,16($sp)
                    172: lw $30,20($sp)
                    173: lw $31,24($sp)
                    174: addu $sp,$sp,32
                    175: j $31
                    176: .end g
                    177: .globl h
                    178: .text
                    179: .align 2; .ent h
                    180: h:
                    181: $fp4=32
                    182: .frame $sp,32,$31
                    183: addu $sp,$sp,-32
                    184: .mask 0xc0000000,-8
                    185: sw $30,20($sp)
                    186: sw $31,24($sp)
                    187: move $30,$0
                    188: b L.40
                    189: L.37:
                    190: la $4,L.41
                    191: li $25,20
                    192: mul $25,$25,$30
                    193: lw $5,words($25)
                    194: lw $6,words+4($25)
                    195: lw $7,words+8($25)
                    196: la $25,words+12($25)
                    197: sw $25,16($sp)
                    198: jal printf  # int
                    199: L.38:
                    200: addu $30,$30,1
                    201: L.40:
                    202: bltu $30,5,L.37
                    203: L.36:
                    204: lw $30,20($sp)
                    205: lw $31,24($sp)
                    206: addu $sp,$sp,32
                    207: j $31
                    208: .end h
                    209: .rdata
                    210: L.41:.ascii "%d %d %d %s\012\000"
                    211: L.35:.ascii "%d \000"
                    212: L.25:.byte 37,115,10,0
                    213: L.20:.ascii "while\000"
                    214: L.19:.ascii "else\000"
                    215: L.18:.ascii "for\000"
                    216: L.17:.ascii "if\000"
                    217: L.14:.byte 10,0
                    218: L.13:.ascii " %d\000"

unix.superglobalmegacorp.com

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