OpenCores
URL https://opencores.org/ocsvn/yacc/yacc/trunk

Subversion Repositories yacc

[/] [yacc/] [trunk/] [bench/] [c_src/] [count/] [count_tak.s] - Blame information for rev 4

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 tak.sugawa
        .file   1 "count_tak.c"
2
 
3
 # -G value = 8, Cpu = 3000, ISA = 1
4
 # GNU C version egcs-2.90.23 980102 (egcs-1.0.1 release) (sde) [AL 1.1, MM 40] Algorithmics SDE-MIPS v4.0.5 compiled by GNU C version egcs-2.91.57 19980901 (egcs-1.1 release).
5
 # options passed:  -O2 -O -Wall
6
 # options enabled:  -fdefer-pop -fomit-frame-pointer -fthread-jumps
7
 # -fpeephole -finline -fkeep-static-consts -fpcc-struct-return
8
 # -fdelayed-branch -fcommon -fverbose-asm -fgnu-linker -falias-check
9
 # -fargument-alias -msplit-addresses -mgas -mrnames -mgpOPT -mgpopt
10
 # -membedded-data -meb -mmad -marg32 -mdebugh -mdebugi -mmadd -mno-gpconst
11
 # -mcpu=3000
12
 
13
gcc2_compiled.:
14
        .globl  name
15
        .data
16
        .align  0
17
        .align  2
18
name:
19
        .word   .LC0
20
        .word   .LC1
21
        .word   .LC2
22
        .word   .LC3
23
        .word   .LC4
24
        .word   .LC5
25
        .word   .LC6
26
        .word   .LC7
27
        .word   .LC8
28
        .word   .LC9
29
        .word   .LC10
30
        .word   .LC11
31
        .word   .LC12
32
        .word   .LC13
33
        .word   .LC14
34
        .word   .LC15
35
        .word   .LC16
36
        .word   .LC17
37
        .word   .LC18
38
        .word   .LC19
39
        .word   .LC0
40
        .word   .LC10
41
        .word   .LC20
42
        .word   .LC21
43
        .word   .LC22
44
        .word   .LC23
45
        .word   .LC24
46
        .word   .LC25
47
        .word   .LC26
48
        .word   .LC27
49
        .rdata
50
        .align  0
51
        .align  2
52
.LC27:
53
        .ascii  "ninety\000"
54
        .align  2
55
.LC26:
56
        .ascii  "eighty\000"
57
        .align  2
58
.LC25:
59
        .ascii  "seventy\000"
60
        .align  2
61
.LC24:
62
        .ascii  "sixty\000"
63
        .align  2
64
.LC23:
65
        .ascii  "fifty\000"
66
        .align  2
67
.LC22:
68
        .ascii  "forty\000"
69
        .align  2
70
.LC21:
71
        .ascii  "thirty\000"
72
        .align  2
73
.LC20:
74
        .ascii  "twenty\000"
75
        .align  2
76
.LC19:
77
        .ascii  "nineteen\000"
78
        .align  2
79
.LC18:
80
        .ascii  "eighteen\000"
81
        .align  2
82
.LC17:
83
        .ascii  "seventeen\000"
84
        .align  2
85
.LC16:
86
        .ascii  "sixteen\000"
87
        .align  2
88
.LC15:
89
        .ascii  "fifteen\000"
90
        .align  2
91
.LC14:
92
        .ascii  "fourteen\000"
93
        .align  2
94
.LC13:
95
        .ascii  "thirteen\000"
96
        .align  2
97
.LC12:
98
        .ascii  "twelve\000"
99
        .align  2
100
.LC11:
101
        .ascii  "eleven\000"
102
        .align  2
103
.LC10:
104
        .ascii  "ten\000"
105
        .align  2
106
.LC9:
107
        .ascii  "nine\000"
108
        .align  2
109
.LC8:
110
        .ascii  "eight\000"
111
        .align  2
112
.LC7:
113
        .ascii  "seven\000"
114
        .align  2
115
.LC6:
116
        .ascii  "six\000"
117
        .align  2
118
.LC5:
119
        .ascii  "five\000"
120
        .align  2
121
.LC4:
122
        .ascii  "four\000"
123
        .align  2
124
.LC3:
125
        .ascii  "three\000"
126
        .align  2
127
.LC2:
128
        .ascii  "two\000"
129
        .align  2
130
.LC1:
131
        .ascii  "one\000"
132
        .align  2
133
.LC0:
134
        .ascii  "\000"
135
        .size   name,120
136
 
137
        .lcomm  buf.12,12
138
        .rdata
139
        .align  0
140
        .align  2
141
.LC28:
142
        .ascii  ": \000"
143
        .align  2
144
.LC29:
145
        .ascii  " billion \000"
146
        .align  2
147
.LC30:
148
        .ascii  " hundred \000"
149
        .align  2
150
.LC31:
151
        .ascii  "million \000"
152
        .align  2
153
.LC32:
154
        .ascii  " million \000"
155
        .align  2
156
.LC33:
157
        .ascii  "thousand \000"
158
        .align  2
159
.LC34:
160
        .ascii  " thousand \000"
161
        .rdata
162
        .align  0
163
        .align  2
164
.LC35:
165
        .ascii  "This program is based on Steve Rhoards-san,author of pla"
166
        .ascii  "sma.\n\000"
167
        .align  2
168
.LC36:
169
        .ascii  "Mult by 3\r\n\000"
170
        .align  2
171
.LC37:
172
        .ascii  "uart port test\n\000"
173
        .align  2
174
.LC38:
175
        .ascii  " \000"
176
        .align  2
177
.LC39:
178
        .ascii  "$finish\000"
179
 
180
        .text
181
        .text
182
        .align  2
183
        .globl  print_uart
184
        .ent    print_uart
185
print_uart:
186
        .frame  $sp,0,$ra                # vars= 0, regs= 0/0, args= 0, extra= 0
187
        .mask   0x00000000,0
188
        .fmask  0x00000000,0
189
        lbu     $v0,0($a0)
190
        beq     $v0,$zero,.L3
191
        li      $v1,16380                       # 0x00003ffc
192
.L5:
193
        #.set   volatile
194
        lw      $v0,0($v1)
195
        #.set   novolatile
196
        andi    $v0,$v0,0x0100
197
        bne     $v0,$zero,.L5
198
        lbu     $v0,0($a0)
199
        #.set   volatile
200
        sb      $v0,0($v1)
201
        #.set   novolatile
202
        addu    $a0,$a0,1
203
        lbu     $v0,0($a0)
204
        bne     $v0,$zero,.L5
205
.L3:
206
        j       $ra
207
        .end    print_uart
208
        .size   print_uart,.-print_uart
209
        .align  2
210
        .globl  putc_uart
211
        .ent    putc_uart
212
putc_uart:
213
        .frame  $sp,0,$ra                # vars= 0, regs= 0/0, args= 0, extra= 0
214
        .mask   0x00000000,0
215
        .fmask  0x00000000,0
216
        andi    $a0,$a0,0x00ff
217
        li      $v1,16380                       # 0x00003ffc
218
.L11:
219
        #.set   volatile
220
        lw      $v0,0($v1)
221
        #.set   novolatile
222
        andi    $v0,$v0,0x0100
223
        .set    noreorder
224
        .set    nomacro
225
        bne     $v0,$zero,.L11
226
        li      $v0,16380                       # 0x00003ffc
227
        .set    macro
228
        .set    reorder
229
 
230
        #.set   volatile
231
        sb      $a0,0($v0)
232
        #.set   novolatile
233
        j       $ra
234
        .end    putc_uart
235
        .size   putc_uart,.-putc_uart
236
        .align  2
237
        .globl  read_uart
238
        .ent    read_uart
239
read_uart:
240
        .frame  $sp,0,$ra                # vars= 0, regs= 0/0, args= 0, extra= 0
241
        .mask   0x00000000,0
242
        .fmask  0x00000000,0
243
        li      $v0,16380                       # 0x00003ffc
244
        #.set   volatile
245
        lw      $v0,0($v0)
246
        #.set   novolatile
247
        .set    noreorder
248
        .set    nomacro
249
        j       $ra
250
        andi    $v0,$v0,0x00ff
251
        .set    macro
252
        .set    reorder
253
 
254
        .end    read_uart
255
        .size   read_uart,.-read_uart
256
        .align  2
257
        .globl  print
258
        .ent    print
259
print:
260
        .frame  $sp,0,$ra                # vars= 0, regs= 0/0, args= 0, extra= 0
261
        .mask   0x00000000,0
262
        .fmask  0x00000000,0
263
        lbu     $v0,0($a0)
264
        .set    noreorder
265
        .set    nomacro
266
        beq     $v0,$zero,.L18
267
        move    $v1,$v0
268
        .set    macro
269
        .set    reorder
270
 
271
        li      $a1,16368                       # 0x00003ff0
272
        move    $v0,$v1
273
.L21:
274
        #.set   volatile
275
        sb      $v0,0($a1)
276
        #.set   novolatile
277
        addu    $a0,$a0,1
278
        lbu     $v1,0($a0)
279
        .set    noreorder
280
        .set    nomacro
281
        bne     $v1,$zero,.L21
282
        move    $v0,$v1
283
        .set    macro
284
        .set    reorder
285
 
286
.L18:
287
        li      $v0,16368                       # 0x00003ff0
288
        #.set   volatile
289
        sb      $zero,0($v0)
290
        #.set   novolatile
291
        j       $ra
292
        .end    print
293
        .size   print,.-print
294
        .align  2
295
        .globl  print_char
296
        .ent    print_char
297
print_char:
298
        .frame  $sp,0,$ra                # vars= 0, regs= 0/0, args= 0, extra= 0
299
        .mask   0x00000000,0
300
        .fmask  0x00000000,0
301
        andi    $a0,$a0,0x00ff
302
        li      $v0,16368                       # 0x00003ff0
303
        #.set   volatile
304
        sb      $a0,0($v0)
305
        #.set   novolatile
306
        j       $ra
307
        .end    print_char
308
        .size   print_char,.-print_char
309
        .align  2
310
        .globl  itoa
311
        .ent    itoa
312
itoa:
313
        .frame  $sp,0,$ra                # vars= 0, regs= 0/0, args= 0, extra= 0
314
        .mask   0x00000000,0
315
        .fmask  0x00000000,0
316
        move    $a2,$a0
317
        lui     $v0,%hi(buf.12+10) # high
318
        sb      $zero,%lo(buf.12+10)($v0)
319
        li      $a1,9                   # 0x00000009
320
        lui     $v0,%hi(buf.12) # high
321
        addiu   $t0,$v0,%lo(buf.12) # low
322
        li      $a3,-858993459                  # 0xcccccccd
323
.L27:
324
        addu    $a0,$a1,$t0
325
        multu   $a2,$a3
326
        mfhi    $t1
327
        srl     $v1,$t1,3
328
        sll     $v0,$v1,2
329
        addu    $v0,$v0,$v1
330
        sll     $v0,$v0,1
331
        subu    $v0,$a2,$v0
332
        addu    $v0,$v0,48
333
        sb      $v0,0($a0)
334
        addu    $a1,$a1,-1
335
        .set    noreorder
336
        .set    nomacro
337
        bgez    $a1,.L27
338
        move    $a2,$v1
339
        .set    macro
340
        .set    reorder
341
 
342
        lui     $v0,%hi(buf.12) # high
343
        .set    noreorder
344
        .set    nomacro
345
        j       $ra
346
        addiu   $v0,$v0,%lo(buf.12) # low
347
        .set    macro
348
        .set    reorder
349
 
350
        .end    itoa
351
        .size   itoa,.-itoa
352
        .text
353
        .align  2
354
        .globl  number_text
355
        .ent    number_text
356
number_text:
357
        .frame  $sp,32,$ra              # vars= 0, regs= 3/0, args= 16, extra= 0
358
        .mask   0x80030000,-8
359
        .fmask  0x00000000,0
360
        subu    $sp,$sp,32
361
        sw      $ra,24($sp)
362
        sw      $s1,20($sp)
363
        sw      $s0,16($sp)
364
        .set    noreorder
365
        .set    nomacro
366
        jal     itoa
367
        move    $s1,$a0
368
        .set    macro
369
        .set    reorder
370
 
371
        .set    noreorder
372
        .set    nomacro
373
        jal     print
374
        move    $a0,$v0
375
        .set    macro
376
        .set    reorder
377
 
378
        lui     $a0,%hi(.LC28) # high
379
        .set    noreorder
380
        .set    nomacro
381
        jal     print
382
        addiu   $a0,$a0,%lo(.LC28) # low
383
        .set    macro
384
        .set    reorder
385
 
386
        li      $v0,999948288                   # 0x3b9a0000
387
        ori     $v0,$v0,0xc9ff
388
        sltu    $v0,$v0,$s1
389
        .set    noreorder
390
        .set    nomacro
391
        beq     $v0,$zero,.L30
392
        srl     $v1,$s1,9
393
        .set    macro
394
        .set    reorder
395
 
396
        li      $v0,262144                      # 0x00040000
397
        ori     $v0,$v0,0x4b83
398
        multu   $v1,$v0
399
        mfhi    $a1
400
        srl     $s0,$a1,7
401
        lui     $v1,%hi(name) # high
402
        addiu   $v1,$v1,%lo(name) # low
403
        sll     $v0,$s0,2
404
        addu    $v0,$v0,$v1
405
        lw      $a0,0($v0)
406
        jal     print
407
        lui     $a0,%hi(.LC29) # high
408
        .set    noreorder
409
        .set    nomacro
410
        jal     print
411
        addiu   $a0,$a0,%lo(.LC29) # low
412
        .set    macro
413
        .set    reorder
414
 
415
        sll     $v0,$s0,5
416
        subu    $v0,$v0,$s0
417
        sll     $v0,$v0,2
418
        subu    $v0,$v0,$s0
419
        sll     $v0,$v0,4
420
        addu    $v0,$v0,$s0
421
        sll     $v0,$v0,3
422
        subu    $v0,$v0,$s0
423
        sll     $v1,$v0,5
424
        subu    $v1,$v1,$v0
425
        sll     $v1,$v1,2
426
        addu    $v1,$v1,$s0
427
        sll     $v1,$v1,9
428
        subu    $s1,$s1,$v1
429
.L30:
430
        li      $v0,99942400                    # 0x05f50000
431
        ori     $v0,$v0,0xe0ff
432
        sltu    $v0,$v0,$s1
433
        .set    noreorder
434
        .set    nomacro
435
        beq     $v0,$zero,.L31
436
        li      $v0,1441136640                  # 0x55e60000
437
        .set    macro
438
        .set    reorder
439
 
440
        ori     $v0,$v0,0x3b89
441
        multu   $s1,$v0
442
        mfhi    $a1
443
        srl     $s0,$a1,25
444
        lui     $v1,%hi(name) # high
445
        addiu   $v1,$v1,%lo(name) # low
446
        sll     $v0,$s0,2
447
        addu    $v0,$v0,$v1
448
        lw      $a0,0($v0)
449
        jal     print
450
        lui     $a0,%hi(.LC30) # high
451
        .set    noreorder
452
        .set    nomacro
453
        jal     print
454
        addiu   $a0,$a0,%lo(.LC30) # low
455
        .set    macro
456
        .set    reorder
457
 
458
        sll     $v0,$s0,1
459
        addu    $v0,$v0,$s0
460
        sll     $v0,$v0,6
461
        subu    $v0,$v0,$s0
462
        sll     $v0,$v0,2
463
        subu    $v0,$v0,$s0
464
        sll     $v0,$v0,4
465
        subu    $v0,$v0,$s0
466
        sll     $v0,$v0,5
467
        addu    $v0,$v0,$s0
468
        sll     $v0,$v0,8
469
        subu    $s1,$s1,$v0
470
        li      $v0,983040                      # 0x000f0000
471
        ori     $v0,$v0,0x423f
472
        sltu    $v0,$v0,$s1
473
        .set    noreorder
474
        .set    nomacro
475
        bne     $v0,$zero,.L45
476
        li      $v0,19988480                    # 0x01310000
477
        .set    macro
478
        .set    reorder
479
 
480
        lui     $a0,%hi(.LC31) # high
481
        .set    noreorder
482
        .set    nomacro
483
        jal     print
484
        addiu   $a0,$a0,%lo(.LC31) # low
485
        .set    macro
486
        .set    reorder
487
 
488
.L31:
489
        li      $v0,19988480                    # 0x01310000
490
.L45:
491
        ori     $v0,$v0,0x2cff
492
        sltu    $v0,$v0,$s1
493
        .set    noreorder
494
        .set    nomacro
495
        beq     $v0,$zero,.L33
496
        li      $v0,1801388032                  # 0x6b5f0000
497
        .set    macro
498
        .set    reorder
499
 
500
        ori     $v0,$v0,0xca6b
501
        multu   $s1,$v0
502
        mfhi    $a1
503
        srl     $s0,$a1,22
504
        lui     $v1,%hi(name) # high
505
        addiu   $v1,$v1,%lo(name) # low
506
        addu    $v0,$s0,20
507
        sll     $v0,$v0,2
508
        addu    $v0,$v0,$v1
509
        lw      $a0,0($v0)
510
        jal     print
511
        .set    noreorder
512
        .set    nomacro
513
        jal     print_char
514
        li      $a0,32                  # 0x00000020
515
        .set    macro
516
        .set    reorder
517
 
518
        sll     $v1,$s0,5
519
        subu    $v1,$v1,$s0
520
        sll     $v0,$v1,6
521
        subu    $v0,$v0,$v1
522
        sll     $v0,$v0,3
523
        addu    $v0,$v0,$s0
524
        sll     $v1,$v0,2
525
        addu    $v0,$v0,$v1
526
        sll     $v0,$v0,7
527
        subu    $s1,$s1,$v0
528
        li      $v0,983040                      # 0x000f0000
529
        ori     $v0,$v0,0x423f
530
        sltu    $v0,$v0,$s1
531
        .set    noreorder
532
        .set    nomacro
533
        bne     $v0,$zero,.L46
534
        li      $v0,1125842944                  # 0x431b0000
535
        .set    macro
536
        .set    reorder
537
 
538
        lui     $a0,%hi(.LC31) # high
539
        .set    noreorder
540
        .set    nomacro
541
        jal     print
542
        addiu   $a0,$a0,%lo(.LC31) # low
543
        .set    macro
544
        .set    reorder
545
 
546
.L33:
547
        li      $v0,983040                      # 0x000f0000
548
        ori     $v0,$v0,0x423f
549
        sltu    $v0,$v0,$s1
550
        .set    noreorder
551
        .set    nomacro
552
        beq     $v0,$zero,.L35
553
        li      $v0,1125842944                  # 0x431b0000
554
        .set    macro
555
        .set    reorder
556
 
557
.L46:
558
        ori     $v0,$v0,0xde83
559
        multu   $s1,$v0
560
        mfhi    $a1
561
        srl     $s0,$a1,18
562
        lui     $v1,%hi(name) # high
563
        addiu   $v1,$v1,%lo(name) # low
564
        sll     $v0,$s0,2
565
        addu    $v0,$v0,$v1
566
        lw      $a0,0($v0)
567
        jal     print
568
        lui     $a0,%hi(.LC32) # high
569
        .set    noreorder
570
        .set    nomacro
571
        jal     print
572
        addiu   $a0,$a0,%lo(.LC32) # low
573
        .set    macro
574
        .set    reorder
575
 
576
        sll     $v1,$s0,5
577
        subu    $v1,$v1,$s0
578
        sll     $v0,$v1,6
579
        subu    $v0,$v0,$v1
580
        sll     $v0,$v0,3
581
        addu    $v0,$v0,$s0
582
        sll     $v0,$v0,6
583
        subu    $s1,$s1,$v0
584
.L35:
585
        li      $v0,65536                       # 0x00010000
586
        ori     $v0,$v0,0x869f
587
        sltu    $v0,$v0,$s1
588
        .set    noreorder
589
        .set    nomacro
590
        beq     $v0,$zero,.L36
591
        srl     $v1,$s1,5
592
        .set    macro
593
        .set    reorder
594
 
595
        li      $v0,175898624                   # 0x0a7c0000
596
        ori     $v0,$v0,0x5ac5
597
        multu   $v1,$v0
598
        mfhi    $a1
599
        srl     $s0,$a1,7
600
        lui     $v1,%hi(name) # high
601
        addiu   $v1,$v1,%lo(name) # low
602
        sll     $v0,$s0,2
603
        addu    $v0,$v0,$v1
604
        lw      $a0,0($v0)
605
        jal     print
606
        lui     $a0,%hi(.LC30) # high
607
        .set    noreorder
608
        .set    nomacro
609
        jal     print
610
        addiu   $a0,$a0,%lo(.LC30) # low
611
        .set    macro
612
        .set    reorder
613
 
614
        sll     $v0,$s0,1
615
        addu    $v0,$v0,$s0
616
        sll     $v1,$v0,6
617
        addu    $v0,$v0,$v1
618
        sll     $v0,$v0,2
619
        addu    $v0,$v0,$s0
620
        sll     $v0,$v0,2
621
        addu    $v0,$v0,$s0
622
        sll     $v0,$v0,5
623
        subu    $s1,$s1,$v0
624
        sltu    $v0,$s1,1000
625
        .set    noreorder
626
        .set    nomacro
627
        beq     $v0,$zero,.L47
628
        sltu    $v0,$s1,20000
629
        .set    macro
630
        .set    reorder
631
 
632
        lui     $a0,%hi(.LC33) # high
633
        .set    noreorder
634
        .set    nomacro
635
        jal     print
636
        addiu   $a0,$a0,%lo(.LC33) # low
637
        .set    macro
638
        .set    reorder
639
 
640
.L36:
641
        sltu    $v0,$s1,20000
642
.L47:
643
        .set    noreorder
644
        .set    nomacro
645
        bne     $v0,$zero,.L48
646
        sltu    $v0,$s1,1000
647
        .set    macro
648
        .set    reorder
649
 
650
        li      $v0,-776530087                  # 0xd1b71759
651
        multu   $s1,$v0
652
        mfhi    $a1
653
        srl     $s0,$a1,13
654
        lui     $v1,%hi(name) # high
655
        addiu   $v1,$v1,%lo(name) # low
656
        addu    $v0,$s0,20
657
        sll     $v0,$v0,2
658
        addu    $v0,$v0,$v1
659
        lw      $a0,0($v0)
660
        jal     print
661
        .set    noreorder
662
        .set    nomacro
663
        jal     print_char
664
        li      $a0,32                  # 0x00000020
665
        .set    macro
666
        .set    reorder
667
 
668
        sll     $v0,$s0,2
669
        addu    $v0,$v0,$s0
670
        sll     $v0,$v0,3
671
        subu    $v0,$v0,$s0
672
        sll     $v0,$v0,4
673
        addu    $v0,$v0,$s0
674
        sll     $v0,$v0,4
675
        subu    $s1,$s1,$v0
676
        sltu    $v0,$s1,1000
677
        .set    noreorder
678
        .set    nomacro
679
        beq     $v0,$zero,.L49
680
        li      $v0,274857984                   # 0x10620000
681
        .set    macro
682
        .set    reorder
683
 
684
        lui     $a0,%hi(.LC33) # high
685
        .set    noreorder
686
        .set    nomacro
687
        jal     print
688
        addiu   $a0,$a0,%lo(.LC33) # low
689
        .set    macro
690
        .set    reorder
691
 
692
        sltu    $v0,$s1,1000
693
.L48:
694
        .set    noreorder
695
        .set    nomacro
696
        bne     $v0,$zero,.L50
697
        sltu    $v0,$s1,100
698
        .set    macro
699
        .set    reorder
700
 
701
        li      $v0,274857984                   # 0x10620000
702
.L49:
703
        ori     $v0,$v0,0x4dd3
704
        multu   $s1,$v0
705
        mfhi    $a1
706
        srl     $s0,$a1,6
707
        lui     $v1,%hi(name) # high
708
        addiu   $v1,$v1,%lo(name) # low
709
        sll     $v0,$s0,2
710
        addu    $v0,$v0,$v1
711
        lw      $a0,0($v0)
712
        jal     print
713
        lui     $a0,%hi(.LC34) # high
714
        .set    noreorder
715
        .set    nomacro
716
        jal     print
717
        addiu   $a0,$a0,%lo(.LC34) # low
718
        .set    macro
719
        .set    reorder
720
 
721
        sll     $v0,$s0,5
722
        subu    $v0,$v0,$s0
723
        sll     $v0,$v0,2
724
        addu    $v0,$v0,$s0
725
        sll     $v0,$v0,3
726
        subu    $s1,$s1,$v0
727
        sltu    $v0,$s1,100
728
.L50:
729
        .set    noreorder
730
        .set    nomacro
731
        bne     $v0,$zero,.L51
732
        sltu    $v0,$s1,20
733
        .set    macro
734
        .set    reorder
735
 
736
        li      $v0,1374355456                  # 0x51eb0000
737
        ori     $v0,$v0,0x851f
738
        multu   $s1,$v0
739
        mfhi    $a1
740
        srl     $s0,$a1,5
741
        lui     $v1,%hi(name) # high
742
        addiu   $v1,$v1,%lo(name) # low
743
        sll     $v0,$s0,2
744
        addu    $v0,$v0,$v1
745
        lw      $a0,0($v0)
746
        jal     print
747
        lui     $a0,%hi(.LC30) # high
748
        .set    noreorder
749
        .set    nomacro
750
        jal     print
751
        addiu   $a0,$a0,%lo(.LC30) # low
752
        .set    macro
753
        .set    reorder
754
 
755
        sll     $v0,$s0,1
756
        addu    $v0,$v0,$s0
757
        sll     $v0,$v0,3
758
        addu    $v0,$v0,$s0
759
        sll     $v0,$v0,2
760
        subu    $s1,$s1,$v0
761
        sltu    $v0,$s1,20
762
.L51:
763
        .set    noreorder
764
        .set    nomacro
765
        bne     $v0,$zero,.L52
766
        lui     $v1,%hi(name) # high
767
        .set    macro
768
        .set    reorder
769
 
770
        li      $v0,-858993459                  # 0xcccccccd
771
        multu   $s1,$v0
772
        mfhi    $a1
773
        srl     $s0,$a1,3
774
        addiu   $v1,$v1,%lo(name) # low
775
        addu    $v0,$s0,20
776
        sll     $v0,$v0,2
777
        addu    $v0,$v0,$v1
778
        lw      $a0,0($v0)
779
        jal     print
780
        .set    noreorder
781
        .set    nomacro
782
        jal     print_char
783
        li      $a0,32                  # 0x00000020
784
        .set    macro
785
        .set    reorder
786
 
787
        sll     $v0,$s0,2
788
        addu    $v0,$v0,$s0
789
        sll     $v0,$v0,1
790
        subu    $s1,$s1,$v0
791
        lui     $v1,%hi(name) # high
792
.L52:
793
        addiu   $v1,$v1,%lo(name) # low
794
        sll     $v0,$s1,2
795
        addu    $v0,$v0,$v1
796
        lw      $a0,0($v0)
797
        jal     print
798
        .set    noreorder
799
        .set    nomacro
800
        jal     print_char
801
        li      $a0,13                  # 0x0000000d
802
        .set    macro
803
        .set    reorder
804
 
805
        .set    noreorder
806
        .set    nomacro
807
        jal     print_char
808
        li      $a0,10                  # 0x0000000a
809
        .set    macro
810
        .set    reorder
811
 
812
        lw      $ra,24($sp)
813
        lw      $s1,20($sp)
814
        lw      $s0,16($sp)
815
        .set    noreorder
816
        .set    nomacro
817
        j       $ra
818
        addu    $sp,$sp,32
819
        .set    macro
820
        .set    reorder
821
 
822
        .end    number_text
823
        .size   number_text,.-number_text
824
        .text
825
        .align  2
826
        .globl  main2
827
        .ent    main2
828
main2:
829
        .frame  $sp,40,$ra              # vars= 0, regs= 6/0, args= 16, extra= 0
830
        .mask   0x801f0000,-4
831
        .fmask  0x00000000,0
832
        subu    $sp,$sp,40
833
        sw      $ra,36($sp)
834
        sw      $s4,32($sp)
835
        sw      $s3,28($sp)
836
        sw      $s2,24($sp)
837
        sw      $s1,20($sp)
838
        sw      $s0,16($sp)
839
        lui     $a0,%hi(.LC35) # high
840
        .set    noreorder
841
        .set    nomacro
842
        jal     print
843
        addiu   $a0,$a0,%lo(.LC35) # low
844
        .set    macro
845
        .set    reorder
846
 
847
        lui     $a0,%hi(.LC36) # high
848
        .set    noreorder
849
        .set    nomacro
850
        jal     print
851
        addiu   $a0,$a0,%lo(.LC36) # low
852
        .set    macro
853
        .set    reorder
854
 
855
        move    $s0,$zero
856
        lui     $s1,%hi(.LC37) # high
857
.L57:
858
        .set    noreorder
859
        .set    nomacro
860
        jal     print_uart
861
        addiu   $a0,$s1,%lo(.LC37) # low
862
        .set    macro
863
        .set    reorder
864
 
865
        addu    $s0,$s0,1
866
        sltu    $v0,$s0,3
867
        .set    noreorder
868
        .set    nomacro
869
        bne     $v0,$zero,.L57
870
        li      $s4,18                  # 0x00000012
871
        .set    macro
872
        .set    reorder
873
 
874
        li      $s1,3                   # 0x00000003
875
        move    $s0,$zero
876
        lui     $s3,%hi(.LC38) # high
877
        lui     $s2,%hi(.LC39) # high
878
.L59:
879
        .set    noreorder
880
        .set    nomacro
881
        jal     number_text
882
        move    $a0,$s1
883
        .set    macro
884
        .set    reorder
885
 
886
        sll     $v0,$s1,1
887
        .set    noreorder
888
        .set    nomacro
889
        bne     $s0,$s4,.L61
890
        addu    $s1,$s1,$v0
891
        .set    macro
892
        .set    reorder
893
 
894
        .set    noreorder
895
        .set    nomacro
896
        jal     print
897
        addiu   $a0,$s3,%lo(.LC38) # low
898
        .set    macro
899
        .set    reorder
900
 
901
        .set    noreorder
902
        .set    nomacro
903
        jal     print
904
        addiu   $a0,$s2,%lo(.LC39) # low
905
        .set    macro
906
        .set    reorder
907
 
908
.L61:
909
        .set    noreorder
910
        .set    nomacro
911
        b       .L59
912
        addu    $s0,$s0,1
913
        .set    macro
914
        .set    reorder
915
 
916
        .end    main2
917
        .size   main2,.-main2

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.