]> matita.cs.unibo.it Git - pkg-cerco/acc.git/blob - tests/clight/testTB_boucle.ERTL.expected
Package description and copyright added.
[pkg-cerco/acc.git] / tests / clight / testTB_boucle.ERTL.expected
1 program
2
3 globals 40
4
5 procedure _main(0)
6 stacksize 20
7 var %0, %1, %2, %3, %4, %5, %6, 
8     %7, %8, %9, %10, %11, %12, %13, 
9     %14, %15, %16, %17, %18, %19, %20, 
10     %21, %22, %23, %24, %25, %26, %27, 
11     %28, %29, %30, %31, %32, %33, %34, 
12     %35, %36, %37, %38, %39, %40, %41, 
13     %42, %43, %44, %45, %46, %47, %48, 
14     %49, %50, %51, %52, %53, %54, %55, 
15     %56, %57, %58, %59, %60, %61, %62, 
16     %63, %64, %65, %66, %67, %68, %69, 
17     %70
18 entry main155
19 main155: newframe              --> main154
20 main154: move  %70, $ra        --> main153
21 main153: move  %69, $s7        --> main152
22 main152: move  %68, $s6        --> main151
23 main151: move  %67, $s5        --> main150
24 main150: move  %66, $s4        --> main149
25 main149: move  %65, $s3        --> main148
26 main148: move  %64, $s2        --> main147
27 main147: move  %63, $s1        --> main146
28 main146: move  %62, $s0        --> main145
29 main145: li    %1, 0           --> main144
30 main144: li    %2, 0           --> main143
31 main143: li    %3, 0           --> main142
32 main142: li    %4, 0           --> main141
33 main141: li    %5, 0           --> main140
34 main140: li    %6, 0           --> main139
35 main139: li    %7, 0           --> main138
36 main138: li    %8, 0           --> main137
37 main137: li    %9, 0           --> main136
38 main136: li    %10, 0          --> main135
39 main135: li    %11, 0          --> main134
40 main134: li    %12, 0          --> main133
41 main133: li    %13, 0          --> main132
42 main132: li    %14, 0          --> main131
43 main131: li    %15, 0          --> main130
44 main130: li    %16, 0          --> main129
45 main129: li    %17, 0          --> main128
46 main128: li    %18, 0          --> main127
47 main127: li    %19, 0          --> main126
48 main126: li    %20, 0          --> main125
49 main125: li    %21, 0          --> main124
50 main124: li    %22, 0          --> main123
51 main123: li    %23, 0          --> main122
52 main122: li    %24, 0          --> main121
53 main121: li    %25, 0          --> main120
54 main120: li    %26, 0          --> main119
55 main119: li    %27, 0          --> main118
56 main118: li    %28, 0          --> main117
57 main117: li    %29, 0          --> main116
58 main116: li    %30, 0          --> main115
59 main115: li    %31, 0          --> main114
60 main114: li    %32, 0          --> main113
61 main113: li    %33, 0          --> main112
62 main112: li    %34, 0          --> main111
63 main111: li    %35, 0          --> main110
64 main110: li    %36, 0          --> main109
65 main109: li    %37, 0          --> main108
66 main108: li    %38, 0          --> main107
67 main107: li    %39, 0          --> main106
68 main106: li    %40, 0          --> main105
69 main105: li    %41, 0          --> main104
70 main104: li    %42, 0          --> main103
71 main103: li    %43, 0          --> main102
72 main102: li    %44, 0          --> main101
73 main101: li    %45, 0          --> main100
74 main100: li    %46, 0          --> main99 
75 main99 : li    %47, 0          --> main98 
76 main98 : li    %48, 0          --> main97 
77 main97 : li    %49, 0          --> main96 
78 main96 : li    %50, 0          --> main95 
79 main95 : li    %51, 0          --> main94 
80 main94 : li    %52, 0          --> main93 
81 main93 : li    %53, 0          --> main92 
82 main92 : li    %54, 0          --> main91 
83 main91 : li    %55, 0          --> main90 
84 main90 : li    %56, 0          --> main89 
85 main89 : li    %57, 0          --> main88 
86 main88 : li    %58, 0          --> main87 
87 main87 : li    %59, 0          --> main86 
88 main86 : li    %60, 0          --> main85 
89 main85 : li    %61, 0          --> main67 
90 main67 : li    %44, 1          --> main66 
91 main66 : move  %60, $gp        --> main185
92 main185: move    %60, %60      --> main83 
93 main83 : sw    %44, 0(%60)     --> main65 
94 main65 : li    %43, 2          --> main64 
95 main64 : move  %59, $gp        --> main184
96 main184: move    %59, %59      --> main82 
97 main82 : sw    %43, 4(%59)     --> main63 
98 main63 : li    %42, 3          --> main62 
99 main62 : move  %58, $gp        --> main183
100 main183: move    %58, %58      --> main81 
101 main81 : sw    %42, 8(%58)     --> main61 
102 main61 : li    %41, 5          --> main60 
103 main60 : move  %57, $gp        --> main182
104 main182: move    %57, %57      --> main80 
105 main80 : sw    %41, 12(%57)    --> main59 
106 main59 : li    %40, 8          --> main58 
107 main58 : move  %56, $gp        --> main181
108 main181: move    %56, %56      --> main79 
109 main79 : sw    %40, 16(%56)    --> main57 
110 main57 : li    %39, 13         --> main56 
111 main56 : move  %55, $gp        --> main180
112 main180: move    %55, %55      --> main78 
113 main78 : sw    %39, 20(%55)    --> main55 
114 main55 : li    %38, 21         --> main54 
115 main54 : move  %54, $gp        --> main179
116 main179: move    %54, %54      --> main77 
117 main77 : sw    %38, 24(%54)    --> main53 
118 main53 : li    %37, 34         --> main52 
119 main52 : move  %53, $gp        --> main178
120 main178: move    %53, %53      --> main76 
121 main76 : sw    %37, 28(%53)    --> main51 
122 main51 : li    %36, 55         --> main50 
123 main50 : move  %52, $gp        --> main177
124 main177: move    %52, %52      --> main75 
125 main75 : sw    %36, 32(%52)    --> main49 
126 main49 : li    %35, 89         --> main48 
127 main48 : move  %51, $gp        --> main175
128 main175: move    %51, %51      --> main74 
129 main74 : sw    %35, 36(%51)    --> main47 
130 main47 : emit c11              --> main46 
131 main46 : li    %30, 0          --> main45 
132 main45 : move  %31, $sp        --> main174
133 main174: move    %31, %31      --> main44 
134 main44 : li    %33, 0          --> main43 
135 main43 : li    %34, 4          --> main42 
136 main42 : mulo    %32, %33, %34 --> main41 
137 main41 : add     %50, %31, %32 --> main73 
138 main73 : sw    %30, 0(%50)     --> main40 
139 main40 : emit c10              --> main39 
140 main39 : li    %25, 0          --> main38 
141 main38 : move  %26, $sp        --> main173
142 main173: move    %26, %26      --> main37 
143 main37 : li    %28, 1          --> main36 
144 main36 : li    %29, 4          --> main35 
145 main35 : mulo    %27, %28, %29 --> main34 
146 main34 : add     %49, %26, %27 --> main72 
147 main72 : sw    %25, 0(%49)     --> main33 
148 main33 : emit c9               --> main32 
149 main32 : li    %20, 0          --> main31 
150 main31 : move  %21, $sp        --> main172
151 main172: move    %21, %21      --> main30 
152 main30 : li    %23, 2          --> main29 
153 main29 : li    %24, 4          --> main28 
154 main28 : mulo    %22, %23, %24 --> main27 
155 main27 : add     %48, %21, %22 --> main71 
156 main71 : sw    %20, 0(%48)     --> main26 
157 main26 : emit c8               --> main25 
158 main25 : li    %15, 0          --> main24 
159 main24 : move  %16, $sp        --> main171
160 main171: move    %16, %16      --> main23 
161 main23 : li    %18, 3          --> main22 
162 main22 : li    %19, 4          --> main21 
163 main21 : mulo    %17, %18, %19 --> main20 
164 main20 : add     %47, %16, %17 --> main70 
165 main70 : sw    %15, 0(%47)     --> main19 
166 main19 : emit c7               --> main18 
167 main18 : li    %10, 0          --> main17 
168 main17 : move  %11, $sp        --> main170
169 main170: move    %11, %11      --> main16 
170 main16 : li    %13, 4          --> main15 
171 main15 : li    %14, 4          --> main14 
172 main14 : mulo    %12, %13, %14 --> main13 
173 main13 : add     %46, %11, %12 --> main69 
174 main69 : sw    %10, 0(%46)     --> main12 
175 main12 : emit c6               --> main11 
176 main11 : move  %5, $gp         --> main169
177 main169: move    %5, %5        --> main10 
178 main10 : move  %6, $gp         --> main168
179 main168: addi    %6, %6, 20    --> main9  
180 main9  : move  %7, $sp         --> main192
181 main192: move    %7, %7        --> main8  
182 main8  : li    %8, 5           --> main7  
183 main7  : la    %61, TB_Boucle  --> main84 
184 main84 : j                     --> main191
185 main191: move  $a0, %5         --> main190
186 main190: move  $a1, %6         --> main189
187 main189: move  $a2, %7         --> main188
188 main188: move  $a3, %8         --> main187
189 main187: call  %61(4)          --> main186
190 main186: move  %9, $v0         --> main6  
191 main6  : emit c5               --> main5  
192 main5  : move  %1, $sp         --> main176
193 main176: move    %1, %1        --> main4  
194 main4  : li    %3, 4           --> main3  
195 main3  : li    %4, 4           --> main2  
196 main2  : mulo    %2, %3, %4    --> main1  
197 main1  : add     %45, %1, %2   --> main68 
198 main68 : lw    %0, 0(%45)      --> main0  
199 main0  : j                     --> main167
200 main167: move  $v0, %0         --> main166
201 main166: move  $ra, %70        --> main165
202 main165: move  $s7, %69        --> main164
203 main164: move  $s6, %68        --> main163
204 main163: move  $s5, %67        --> main162
205 main162: move  $s4, %66        --> main161
206 main161: move  $s3, %65        --> main160
207 main160: move  $s2, %64        --> main159
208 main159: move  $s1, %63        --> main158
209 main158: move  $s0, %62        --> main157
210 main157: delframe              --> main156
211 main156: jr    $ra             (xmits $v0)
212
213 __builtin_varargs_start: int -> void
214
215
216 __builtin_va_start: int -> int -> void
217
218
219 __builtin_va_end: int -> void
220
221
222 __builtin_va_copy: int -> int -> void
223
224
225 __builtin_va_arg: int -> int -> void
226
227
228 __builtin_types_compatible_p: int -> int -> int
229
230
231 __builtin_tanl: float -> float
232
233
234 __builtin_tanhl: float -> float
235
236
237 __builtin_tanhf: float -> float
238
239
240 __builtin_tanh: float -> float
241
242
243 __builtin_tanf: float -> float
244
245
246 __builtin_tan: float -> float
247
248
249 __builtin_strspn: int -> int -> int
250
251
252 __builtin_strpbrk: int -> int -> int
253
254
255 __builtin_strncpy: int -> int -> int -> int
256
257
258 __builtin_strncmp: int -> int -> int -> int
259
260
261 __builtin_strncat: int -> int -> int -> int
262
263
264 __builtin_strcspn: int -> int -> int
265
266
267 __builtin_strcpy: int -> int -> int
268
269
270 __builtin_strcmp: int -> int -> int
271
272
273 __builtin_strchr: int -> int -> int
274
275
276 __builtin_stpcpy: int -> int -> int
277
278
279 __builtin_stdarg_start: int -> void
280
281
282 __builtin_sqrtl: float -> float
283
284
285 __builtin_sqrtf: float -> float
286
287
288 __builtin_sqrt: float -> float
289
290
291 __builtin_sinl: float -> float
292
293
294 __builtin_sinhl: float -> float
295
296
297 __builtin_sinhf: float -> float
298
299
300 __builtin_sinh: float -> float
301
302
303 __builtin_sinf: float -> float
304
305
306 __builtin_sin: float -> float
307
308
309 __builtin_return_address: int -> int
310
311
312 __builtin_return: int -> void
313
314
315 __builtin_powil: float -> int -> float
316
317
318 __builtin_powif: float -> int -> float
319
320
321 __builtin_powi: float -> int -> float
322
323
324 __builtin_popcountll: int -> int
325
326
327 __builtin_popcountl: int -> int
328
329
330 __builtin_popcount: int -> int
331
332
333 __builtin_parityll: int -> int
334
335
336 __builtin_parityl: int -> int
337
338
339 __builtin_parity: int -> int
340
341
342 __builtin_object_size: int -> int -> int
343
344
345 __builtin_next_arg: int
346
347
348 __builtin_nansl: int -> float
349
350
351 __builtin_nansf: int -> float
352
353
354 __builtin_nans: int -> float
355
356
357 __builtin_nanl: int -> float
358
359
360 __builtin_nanf: int -> float
361
362
363 __builtin_nan: int -> float
364
365
366 __builtin_modfl: float -> int -> float
367
368
369 __builtin_modff: float -> int -> float
370
371
372 __builtin_mempcpy: int -> int -> int -> int
373
374
375 __builtin_memcpy: int -> int -> int -> int
376
377
378 __builtin_logl: float -> float
379
380
381 __builtin_logf: float -> float
382
383
384 __builtin_log10l: float -> float
385
386
387 __builtin_log10f: float -> float
388
389
390 __builtin_log10: float -> float
391
392
393 __builtin_log: float -> float
394
395
396 __builtin_ldexpl: float -> int -> float
397
398
399 __builtin_ldexpf: float -> int -> float
400
401
402 __builtin_ldexp: float -> int -> float
403
404
405 __builtin_infl: float
406
407
408 __builtin_inff: float
409
410
411 __builtin_inf: float
412
413
414 __builtin_huge_vall: float
415
416
417 __builtin_huge_valf: float
418
419
420 __builtin_huge_val: float
421
422
423 __builtin_frexpl: float -> int -> float
424
425
426 __builtin_frexpf: float -> int -> float
427
428
429 __builtin_frexp: float -> int -> float
430
431
432 __builtin_frame_address: int -> int
433
434
435 __builtin_fmodl: float -> float
436
437
438 __builtin_fmodf: float -> float
439
440
441 __builtin_fmod: float -> float
442
443
444 __builtin_floorl: float -> float
445
446
447 __builtin_floorf: float -> float
448
449
450 __builtin_floor: float -> float
451
452
453 __builtin_ffsll: int -> int
454
455
456 __builtin_ffsl: int -> int
457
458
459 __builtin_ffs: int -> int
460
461
462 __builtin_fabsl: float -> float
463
464
465 __builtin_fabsf: float -> float
466
467
468 __builtin_fabs: float -> float
469
470
471 __builtin_expl: float -> float
472
473
474 __builtin_expf: float -> float
475
476
477 __builtin_expect: int -> int -> int
478
479
480 __builtin_exp: float -> float
481
482
483 __builtin_ctzll: int -> int
484
485
486 __builtin_ctzl: int -> int
487
488
489 __builtin_ctz: int -> int
490
491
492 __builtin_cosl: float -> float
493
494
495 __builtin_coshl: float -> float
496
497
498 __builtin_coshf: float -> float
499
500
501 __builtin_cosh: float -> float
502
503
504 __builtin_cosf: float -> float
505
506
507 __builtin_cos: float -> float
508
509
510 __builtin_constant_p: int -> int
511
512
513 __builtin_clzll: int -> int
514
515
516 __builtin_clzl: int -> int
517
518
519 __builtin_clz: int -> int
520
521
522 __builtin_ceill: float -> float
523
524
525 __builtin_ceilf: float -> float
526
527
528 __builtin_ceil: float -> float
529
530
531 __builtin_atanl: float -> float
532
533
534 __builtin_atanf: float -> float
535
536
537 __builtin_atan2l: float -> float -> float
538
539
540 __builtin_atan2f: float -> float -> float
541
542
543 __builtin_atan2: float -> float -> float
544
545
546 __builtin_atan: float -> float
547
548
549 __builtin_asinl: float -> float
550
551
552 __builtin_asinf: float -> float
553
554
555 __builtin_asin: float -> float
556
557
558 __builtin_alloca: int -> int
559
560
561 __builtin_acosl: float -> float
562
563
564 __builtin_acosf: float -> float
565
566
567 __builtin_acos: float -> float
568
569
570 __builtin___vsprintf_chk: int -> int -> int -> int -> int -> int
571
572
573 __builtin___vsnprintf_chk: int -> int -> int -> int -> int -> int -> int
574
575
576 __builtin___vprintf_chk: int -> int -> int -> int
577
578
579 __builtin___vfprintf_chk: int -> int -> int -> int -> int
580
581
582 __builtin___strncpy_chk: int -> int -> int -> int -> int
583
584
585 __builtin___strncat_chk: int -> int -> int -> int -> int
586
587
588 __builtin___strcpy_chk: int -> int -> int -> int
589
590
591 __builtin___strcat_chk: int -> int -> int -> int
592
593
594 __builtin___stpcpy_chk: int -> int -> int -> int
595
596
597 __builtin___memset_chk: int -> int -> int -> int -> int
598
599
600 __builtin___mempcpy_chk: int -> int -> int -> int -> int
601
602
603 __builtin___memmove_chk: int -> int -> int -> int -> int
604
605
606 __builtin___memcpy_chk: int -> int -> int -> int -> int
607
608
609 procedure TB_Boucle(4)
610 stacksize 0
611 var %0, %1, %2, %3, %4, %5, %6, 
612     %7, %8, %9, %10, %11, %12, %13, 
613     %14, %15, %16, %17, %18, %19, %20, 
614     %21, %22, %23, %24, %25, %26, %27, 
615     %28, %29, %30
616 entry TB_Boucle59
617 TB_Boucle59: newframe              --> TB_Boucle58            
618 TB_Boucle58: move  %30, $ra        --> TB_Boucle57            
619 TB_Boucle57: move  %29, $s7        --> TB_Boucle56            
620 TB_Boucle56: move  %28, $s6        --> TB_Boucle55            
621 TB_Boucle55: move  %27, $s5        --> TB_Boucle54            
622 TB_Boucle54: move  %26, $s4        --> TB_Boucle53            
623 TB_Boucle53: move  %25, $s3        --> TB_Boucle52            
624 TB_Boucle52: move  %24, $s2        --> TB_Boucle51            
625 TB_Boucle51: move  %23, $s1        --> TB_Boucle50            
626 TB_Boucle50: move  %22, $s0        --> TB_Boucle49            
627 TB_Boucle49: move  %0, $a0         --> TB_Boucle48            
628 TB_Boucle48: move  %1, $a1         --> TB_Boucle47            
629 TB_Boucle47: move  %2, $a2         --> TB_Boucle46            
630 TB_Boucle46: move  %3, $a3         --> TB_Boucle45            
631 TB_Boucle45: li    %4, 0           --> TB_Boucle44            
632 TB_Boucle44: li    %5, 0           --> TB_Boucle43            
633 TB_Boucle43: li    %6, 0           --> TB_Boucle42            
634 TB_Boucle42: li    %7, 0           --> TB_Boucle41            
635 TB_Boucle41: li    %8, 0           --> TB_Boucle40            
636 TB_Boucle40: li    %9, 0           --> TB_Boucle39            
637 TB_Boucle39: li    %10, 0          --> TB_Boucle38            
638 TB_Boucle38: li    %11, 0          --> TB_Boucle37            
639 TB_Boucle37: li    %12, 0          --> TB_Boucle36            
640 TB_Boucle36: li    %13, 0          --> TB_Boucle35            
641 TB_Boucle35: li    %14, 0          --> TB_Boucle34            
642 TB_Boucle34: li    %15, 0          --> TB_Boucle33            
643 TB_Boucle33: li    %16, 0          --> TB_Boucle32            
644 TB_Boucle32: li    %17, 0          --> TB_Boucle31            
645 TB_Boucle31: li    %18, 0          --> TB_Boucle30            
646 TB_Boucle30: li    %19, 0          --> TB_Boucle29            
647 TB_Boucle29: li    %20, 0          --> TB_Boucle28            
648 TB_Boucle28: li    %21, 0          --> TB_Boucle23            
649 TB_Boucle23: emit c4               --> TB_Boucle22            
650 TB_Boucle22: emit c3               --> TB_Boucle21            
651 TB_Boucle21: li    %4, 0           --> TB_Boucle1             
652 TB_Boucle1 : j                     --> TB_Boucle20            
653 TB_Boucle20: li    %16, 0          --> TB_Boucle19            
654 TB_Boucle19: emit c2               --> TB_Boucle18            
655 TB_Boucle18: slt     %17, %4, %3   --> TB_Boucle17            
656 TB_Boucle17: li    %19, 0          --> TB_Boucle25            
657 TB_Boucle25: seq     %15, %17, %19 --> TB_Boucle16            
658 TB_Boucle16: beq     %15, %16      --> TB_Boucle15, TB_Boucle0
659 TB_Boucle0 : j                     --> TB_Boucle70            
660 TB_Boucle70: move  $ra, %30        --> TB_Boucle69            
661 TB_Boucle69: move  $s7, %29        --> TB_Boucle68            
662 TB_Boucle68: move  $s6, %28        --> TB_Boucle67            
663 TB_Boucle67: move  $s5, %27        --> TB_Boucle66            
664 TB_Boucle66: move  $s4, %26        --> TB_Boucle65            
665 TB_Boucle65: move  $s3, %25        --> TB_Boucle64            
666 TB_Boucle64: move  $s2, %24        --> TB_Boucle63            
667 TB_Boucle63: move  $s1, %23        --> TB_Boucle62            
668 TB_Boucle62: move  $s0, %22        --> TB_Boucle61            
669 TB_Boucle61: delframe              --> TB_Boucle60            
670 TB_Boucle60: jr    $ra                                        
671 TB_Boucle15: emit c0               --> TB_Boucle14            
672 TB_Boucle14: li    %14, 4          --> TB_Boucle13            
673 TB_Boucle13: mulo    %13, %4, %14  --> TB_Boucle12            
674 TB_Boucle12: add     %18, %0, %13  --> TB_Boucle24            
675 TB_Boucle24: lw    %9, 0(%18)      --> TB_Boucle11            
676 TB_Boucle11: li    %12, 4          --> TB_Boucle10            
677 TB_Boucle10: mulo    %11, %4, %12  --> TB_Boucle9             
678 TB_Boucle9 : add     %21, %1, %11  --> TB_Boucle27            
679 TB_Boucle27: lw    %10, 0(%21)     --> TB_Boucle8             
680 TB_Boucle8 : add     %6, %9, %10   --> TB_Boucle7             
681 TB_Boucle7 : li    %8, 4           --> TB_Boucle6             
682 TB_Boucle6 : mulo    %7, %4, %8    --> TB_Boucle5             
683 TB_Boucle5 : add     %20, %2, %7   --> TB_Boucle26            
684 TB_Boucle26: sw    %6, 0(%20)      --> TB_Boucle4             
685 TB_Boucle4 : emit c1               --> TB_Boucle3             
686 TB_Boucle3 : li    %5, 1           --> TB_Boucle2             
687 TB_Boucle2 : add     %4, %4, %5    --> TB_Boucle1             
688