1
0
mirror of https://gitlab.com/camelot/kickc.git synced 2024-09-09 08:54:40 +00:00
kickc/src/test/ref/no-recursion-heavy.cfg

411 lines
15 KiB
INI

@begin: scope:[] from
[0] phi()
to:@1
@1: scope:[] from @begin
[1] phi()
[2] call main
to:@end
@end: scope:[] from @1
[3] phi()
(void()) main()
main: scope:[main] from @1
[4] phi()
to:main::@1
main::@1: scope:[main] from main main::@3
[5] (byte) ba#17 ← phi( main/(byte) 0 main::@3/(byte) ba#1 )
[5] (byte) bd#2 ← phi( main/(byte) 0 main::@3/(byte) bd#13 )
[5] (byte) bc#2 ← phi( main/(byte) 0 main::@3/(byte) bc#13 )
[5] (byte) bb#16 ← phi( main/(byte) 0 main::@3/(byte) bb#13 )
to:main::@2
main::@2: scope:[main] from main::@1
[6] phi()
[7] call f0
to:main::@3
main::@3: scope:[main] from main::@2
[8] (byte) ba#1 ← ++ (byte) ba#17
to:main::@1
(void()) f0()
f0: scope:[f0] from main::@2
[9] if((byte) ba#17!=(byte) 0) goto f0::@1
to:f0::@10
f0::@10: scope:[f0] from f0
[10] (byte) bb#3 ← ++ (byte) bb#16
[11] (byte) bb#100 ← (byte) bb#3
[12] call fa
to:f0::@1
f0::@1: scope:[f0] from f0 f0::@10
[13] (byte) bd#129 ← phi( f0/(byte) bd#2 f0::@10/(byte) bd#24 )
[13] (byte) bc#63 ← phi( f0/(byte) bc#2 f0::@10/(byte) bc#24 )
[13] (byte) bb#18 ← phi( f0/(byte) bb#16 f0::@10/(byte) bb#3 )
[14] if((byte) ba#17!=(byte) 1) goto f0::@2
to:f0::@11
f0::@11: scope:[f0] from f0::@1
[15] (byte) bb#4 ← ++ (byte) bb#18
[16] (byte) bb#101 ← (byte) bb#4
[17] call fa
to:f0::@2
f0::@2: scope:[f0] from f0::@1 f0::@11
[18] (byte) bd#130 ← phi( f0::@1/(byte) bd#129 f0::@11/(byte) bd#24 )
[18] (byte) bc#64 ← phi( f0::@1/(byte) bc#63 f0::@11/(byte) bc#24 )
[18] (byte) bb#19 ← phi( f0::@1/(byte) bb#18 f0::@11/(byte) bb#4 )
[19] if((byte) ba#17!=(byte) 2) goto f0::@3
to:f0::@12
f0::@12: scope:[f0] from f0::@2
[20] (byte) bb#5 ← ++ (byte) bb#19
[21] (byte) bb#102 ← (byte) bb#5
[22] call fa
to:f0::@3
f0::@3: scope:[f0] from f0::@12 f0::@2
[23] (byte) bd#131 ← phi( f0::@2/(byte) bd#130 f0::@12/(byte) bd#24 )
[23] (byte) bc#65 ← phi( f0::@2/(byte) bc#64 f0::@12/(byte) bc#24 )
[23] (byte) bb#20 ← phi( f0::@2/(byte) bb#19 f0::@12/(byte) bb#5 )
[24] if((byte) ba#17!=(byte) 3) goto f0::@4
to:f0::@13
f0::@13: scope:[f0] from f0::@3
[25] (byte) bb#6 ← ++ (byte) bb#20
[26] (byte) bb#103 ← (byte) bb#6
[27] call fa
to:f0::@4
f0::@4: scope:[f0] from f0::@13 f0::@3
[28] (byte) bd#132 ← phi( f0::@13/(byte) bd#24 f0::@3/(byte) bd#131 )
[28] (byte) bc#66 ← phi( f0::@13/(byte) bc#24 f0::@3/(byte) bc#65 )
[28] (byte) bb#21 ← phi( f0::@13/(byte) bb#6 f0::@3/(byte) bb#20 )
[29] if((byte) ba#17!=(byte) 4) goto f0::@5
to:f0::@14
f0::@14: scope:[f0] from f0::@4
[30] (byte) bb#66 ← ++ (byte) bb#21
[31] (byte) bb#104 ← (byte) bb#66
[32] call fa
to:f0::@5
f0::@5: scope:[f0] from f0::@14 f0::@4
[33] (byte) bd#133 ← phi( f0::@14/(byte) bd#24 f0::@4/(byte) bd#132 )
[33] (byte) bc#100 ← phi( f0::@14/(byte) bc#24 f0::@4/(byte) bc#66 )
[33] (byte) bb#22 ← phi( f0::@14/(byte) bb#66 f0::@4/(byte) bb#21 )
[34] if((byte) ba#17!=(byte) 5) goto f0::@6
to:f0::@15
f0::@15: scope:[f0] from f0::@5
[35] (byte) bb#67 ← ++ (byte) bb#22
[36] (byte) bb#105 ← (byte) bb#67
[37] call fa
to:f0::@6
f0::@6: scope:[f0] from f0::@15 f0::@5
[38] (byte) bd#134 ← phi( f0::@15/(byte) bd#24 f0::@5/(byte) bd#133 )
[38] (byte) bc#101 ← phi( f0::@15/(byte) bc#24 f0::@5/(byte) bc#100 )
[38] (byte) bb#23 ← phi( f0::@15/(byte) bb#67 f0::@5/(byte) bb#22 )
[39] if((byte) ba#17!=(byte) 6) goto f0::@7
to:f0::@16
f0::@16: scope:[f0] from f0::@6
[40] (byte) bb#68 ← ++ (byte) bb#23
[41] (byte) bb#106 ← (byte) bb#68
[42] call fa
to:f0::@7
f0::@7: scope:[f0] from f0::@16 f0::@6
[43] (byte) bd#135 ← phi( f0::@16/(byte) bd#24 f0::@6/(byte) bd#134 )
[43] (byte) bc#102 ← phi( f0::@16/(byte) bc#24 f0::@6/(byte) bc#101 )
[43] (byte) bb#24 ← phi( f0::@16/(byte) bb#68 f0::@6/(byte) bb#23 )
[44] if((byte) ba#17!=(byte) 7) goto f0::@8
to:f0::@17
f0::@17: scope:[f0] from f0::@7
[45] (byte) bb#10 ← ++ (byte) bb#24
[46] (byte) bb#107 ← (byte) bb#10
[47] call fa
to:f0::@8
f0::@8: scope:[f0] from f0::@17 f0::@7
[48] (byte) bd#136 ← phi( f0::@17/(byte) bd#24 f0::@7/(byte) bd#135 )
[48] (byte) bc#103 ← phi( f0::@17/(byte) bc#24 f0::@7/(byte) bc#102 )
[48] (byte) bb#25 ← phi( f0::@17/(byte) bb#10 f0::@7/(byte) bb#24 )
[49] if((byte) ba#17!=(byte) 8) goto f0::@9
to:f0::@18
f0::@18: scope:[f0] from f0::@8
[50] (byte) bb#11 ← ++ (byte) bb#25
[51] (byte) bb#108 ← (byte) bb#11
[52] call fa
to:f0::@9
f0::@9: scope:[f0] from f0::@18 f0::@8
[53] (byte) bd#93 ← phi( f0::@18/(byte) bd#24 f0::@8/(byte) bd#136 )
[53] (byte) bc#71 ← phi( f0::@18/(byte) bc#24 f0::@8/(byte) bc#103 )
[53] (byte) bb#50 ← phi( f0::@18/(byte) bb#11 f0::@8/(byte) bb#25 )
[54] if((byte) ba#17!=(byte) 9) goto f0::@return
to:f0::@19
f0::@19: scope:[f0] from f0::@9
[55] phi()
[56] call fa
to:f0::@return
f0::@return: scope:[f0] from f0::@19 f0::@9
[57] (byte) bd#13 ← phi( f0::@19/(byte) bd#24 f0::@9/(byte) bd#93 )
[57] (byte) bc#13 ← phi( f0::@19/(byte) bc#24 f0::@9/(byte) bc#71 )
[57] (byte) bb#13 ← phi( f0::@19/(byte) 0 f0::@9/(byte) bb#50 )
[58] return
to:@return
(void()) fa()
fa: scope:[fa] from f0::@10 f0::@11 f0::@12 f0::@13 f0::@14 f0::@15 f0::@16 f0::@17 f0::@18 f0::@19
[59] (byte) bd#137 ← phi( f0::@10/(byte) bd#2 f0::@11/(byte) bd#129 f0::@12/(byte) bd#130 f0::@13/(byte) bd#131 f0::@14/(byte) bd#132 f0::@15/(byte) bd#133 f0::@16/(byte) bd#134 f0::@17/(byte) bd#135 f0::@18/(byte) bd#136 f0::@19/(byte) bd#93 )
[59] (byte) bc#39 ← phi( f0::@10/(byte) bc#2 f0::@11/(byte) bc#63 f0::@12/(byte) bc#64 f0::@13/(byte) bc#65 f0::@14/(byte) bc#66 f0::@15/(byte) bc#100 f0::@16/(byte) bc#101 f0::@17/(byte) bc#102 f0::@18/(byte) bc#103 f0::@19/(byte) bc#71 )
[59] (byte) bb#27 ← phi( f0::@10/(byte) bb#100 f0::@11/(byte) bb#101 f0::@12/(byte) bb#102 f0::@13/(byte) bb#103 f0::@14/(byte) bb#104 f0::@15/(byte) bb#105 f0::@16/(byte) bb#106 f0::@17/(byte) bb#107 f0::@18/(byte) bb#108 f0::@19/(byte) 0 )
[60] if((byte) bb#27!=(byte) 0) goto fa::@1
to:fa::@10
fa::@10: scope:[fa] from fa
[61] (byte) bc#104 ← ++ (byte) bc#39
[62] (byte) bc#172 ← (byte) bc#104
[63] call fb
to:fa::@1
fa::@1: scope:[fa] from fa fa::@10
[64] (byte) bd#138 ← phi( fa/(byte) bd#137 fa::@10/(byte) bd#35 )
[64] (byte) bc#40 ← phi( fa/(byte) bc#39 fa::@10/(byte) bc#104 )
[65] if((byte) bb#27!=(byte) 1) goto fa::@2
to:fa::@11
fa::@11: scope:[fa] from fa::@1
[66] (byte) bc#105 ← ++ (byte) bc#40
[67] (byte) bc#173 ← (byte) bc#105
[68] call fb
to:fa::@2
fa::@2: scope:[fa] from fa::@1 fa::@11
[69] (byte) bd#139 ← phi( fa::@1/(byte) bd#138 fa::@11/(byte) bd#35 )
[69] (byte) bc#41 ← phi( fa::@1/(byte) bc#40 fa::@11/(byte) bc#105 )
[70] if((byte) bb#27!=(byte) 2) goto fa::@3
to:fa::@12
fa::@12: scope:[fa] from fa::@2
[71] (byte) bc#106 ← ++ (byte) bc#41
[72] (byte) bc#174 ← (byte) bc#106
[73] call fb
to:fa::@3
fa::@3: scope:[fa] from fa::@12 fa::@2
[74] (byte) bd#140 ← phi( fa::@2/(byte) bd#139 fa::@12/(byte) bd#35 )
[74] (byte) bc#42 ← phi( fa::@2/(byte) bc#41 fa::@12/(byte) bc#106 )
[75] if((byte) bb#27!=(byte) 3) goto fa::@4
to:fa::@13
fa::@13: scope:[fa] from fa::@3
[76] (byte) bc#107 ← ++ (byte) bc#42
[77] (byte) bc#175 ← (byte) bc#107
[78] call fb
to:fa::@4
fa::@4: scope:[fa] from fa::@13 fa::@3
[79] (byte) bd#141 ← phi( fa::@13/(byte) bd#35 fa::@3/(byte) bd#140 )
[79] (byte) bc#43 ← phi( fa::@13/(byte) bc#107 fa::@3/(byte) bc#42 )
[80] if((byte) bb#27!=(byte) 4) goto fa::@5
to:fa::@14
fa::@14: scope:[fa] from fa::@4
[81] (byte) bc#108 ← ++ (byte) bc#43
[82] (byte) bc#176 ← (byte) bc#108
[83] call fb
to:fa::@5
fa::@5: scope:[fa] from fa::@14 fa::@4
[84] (byte) bd#100 ← phi( fa::@14/(byte) bd#35 fa::@4/(byte) bd#141 )
[84] (byte) bc#44 ← phi( fa::@14/(byte) bc#108 fa::@4/(byte) bc#43 )
[85] if((byte) bb#27!=(byte) 5) goto fa::@6
to:fa::@15
fa::@15: scope:[fa] from fa::@5
[86] (byte) bc#109 ← ++ (byte) bc#44
[87] (byte) bc#177 ← (byte) bc#109
[88] call fb
to:fa::@6
fa::@6: scope:[fa] from fa::@15 fa::@5
[89] (byte) bd#101 ← phi( fa::@15/(byte) bd#35 fa::@5/(byte) bd#100 )
[89] (byte) bc#45 ← phi( fa::@15/(byte) bc#109 fa::@5/(byte) bc#44 )
[90] if((byte) bb#27!=(byte) 6) goto fa::@7
to:fa::@16
fa::@16: scope:[fa] from fa::@6
[91] (byte) bc#110 ← ++ (byte) bc#45
[92] (byte) bc#178 ← (byte) bc#110
[93] call fb
to:fa::@7
fa::@7: scope:[fa] from fa::@16 fa::@6
[94] (byte) bd#102 ← phi( fa::@16/(byte) bd#35 fa::@6/(byte) bd#101 )
[94] (byte) bc#46 ← phi( fa::@16/(byte) bc#110 fa::@6/(byte) bc#45 )
[95] if((byte) bb#27!=(byte) 7) goto fa::@8
to:fa::@17
fa::@17: scope:[fa] from fa::@7
[96] (byte) bc#111 ← ++ (byte) bc#46
[97] (byte) bc#179 ← (byte) bc#111
[98] call fb
to:fa::@8
fa::@8: scope:[fa] from fa::@17 fa::@7
[99] (byte) bd#103 ← phi( fa::@17/(byte) bd#35 fa::@7/(byte) bd#102 )
[99] (byte) bc#47 ← phi( fa::@17/(byte) bc#111 fa::@7/(byte) bc#46 )
[100] if((byte) bb#27!=(byte) 8) goto fa::@9
to:fa::@18
fa::@18: scope:[fa] from fa::@8
[101] (byte) bc#112 ← ++ (byte) bc#47
[102] (byte) bc#180 ← (byte) bc#112
[103] call fb
to:fa::@9
fa::@9: scope:[fa] from fa::@18 fa::@8
[104] (byte) bd#104 ← phi( fa::@18/(byte) bd#35 fa::@8/(byte) bd#103 )
[104] (byte) bc#83 ← phi( fa::@18/(byte) bc#112 fa::@8/(byte) bc#47 )
[105] if((byte) bb#27!=(byte) 9) goto fa::@return
to:fa::@19
fa::@19: scope:[fa] from fa::@9
[106] phi()
[107] call fb
to:fa::@return
fa::@return: scope:[fa] from fa::@19 fa::@9
[108] (byte) bd#24 ← phi( fa::@19/(byte) bd#35 fa::@9/(byte) bd#104 )
[108] (byte) bc#24 ← phi( fa::@19/(byte) 0 fa::@9/(byte) bc#83 )
[109] return
to:@return
(void()) fb()
fb: scope:[fb] from fa::@10 fa::@11 fa::@12 fa::@13 fa::@14 fa::@15 fa::@16 fa::@17 fa::@18 fa::@19
[110] (byte) bd#106 ← phi( fa::@10/(byte) bd#137 fa::@11/(byte) bd#138 fa::@12/(byte) bd#139 fa::@13/(byte) bd#140 fa::@14/(byte) bd#141 fa::@15/(byte) bd#100 fa::@16/(byte) bd#101 fa::@17/(byte) bd#102 fa::@18/(byte) bd#103 fa::@19/(byte) bd#104 )
[110] (byte) bc#113 ← phi( fa::@10/(byte) bc#172 fa::@11/(byte) bc#173 fa::@12/(byte) bc#174 fa::@13/(byte) bc#175 fa::@14/(byte) bc#176 fa::@15/(byte) bc#177 fa::@16/(byte) bc#178 fa::@17/(byte) bc#179 fa::@18/(byte) bc#180 fa::@19/(byte) 0 )
[111] if((byte) bc#113!=(byte) 0) goto fb::@1
to:fb::@10
fb::@10: scope:[fb] from fb
[112] (byte) bd#146 ← ++ (byte) bd#106
[113] (byte) bd#235 ← (byte) bd#146
[114] call fc
to:fb::@1
fb::@1: scope:[fb] from fb fb::@10
[115] (byte) bd#107 ← phi( fb/(byte) bd#106 fb::@10/(byte) bd#146 )
[116] if((byte) bc#113!=(byte) 1) goto fb::@2
to:fb::@11
fb::@11: scope:[fb] from fb::@1
[117] (byte) bd#147 ← ++ (byte) bd#107
[118] (byte) bd#236 ← (byte) bd#147
[119] call fc
to:fb::@2
fb::@2: scope:[fb] from fb::@1 fb::@11
[120] (byte) bd#108 ← phi( fb::@1/(byte) bd#107 fb::@11/(byte) bd#147 )
[121] if((byte) bc#113!=(byte) 2) goto fb::@3
to:fb::@12
fb::@12: scope:[fb] from fb::@2
[122] (byte) bd#148 ← ++ (byte) bd#108
[123] (byte) bd#237 ← (byte) bd#148
[124] call fc
to:fb::@3
fb::@3: scope:[fb] from fb::@12 fb::@2
[125] (byte) bd#109 ← phi( fb::@2/(byte) bd#108 fb::@12/(byte) bd#148 )
[126] if((byte) bc#113!=(byte) 3) goto fb::@4
to:fb::@13
fb::@13: scope:[fb] from fb::@3
[127] (byte) bd#149 ← ++ (byte) bd#109
[128] (byte) bd#238 ← (byte) bd#149
[129] call fc
to:fb::@4
fb::@4: scope:[fb] from fb::@13 fb::@3
[130] (byte) bd#110 ← phi( fb::@13/(byte) bd#149 fb::@3/(byte) bd#109 )
[131] if((byte) bc#113!=(byte) 4) goto fb::@5
to:fb::@14
fb::@14: scope:[fb] from fb::@4
[132] (byte) bd#150 ← ++ (byte) bd#110
[133] (byte) bd#239 ← (byte) bd#150
[134] call fc
to:fb::@5
fb::@5: scope:[fb] from fb::@14 fb::@4
[135] (byte) bd#111 ← phi( fb::@14/(byte) bd#150 fb::@4/(byte) bd#110 )
[136] if((byte) bc#113!=(byte) 5) goto fb::@6
to:fb::@15
fb::@15: scope:[fb] from fb::@5
[137] (byte) bd#151 ← ++ (byte) bd#111
[138] (byte) bd#240 ← (byte) bd#151
[139] call fc
to:fb::@6
fb::@6: scope:[fb] from fb::@15 fb::@5
[140] (byte) bd#112 ← phi( fb::@15/(byte) bd#151 fb::@5/(byte) bd#111 )
[141] if((byte) bc#113!=(byte) 6) goto fb::@7
to:fb::@16
fb::@16: scope:[fb] from fb::@6
[142] (byte) bd#152 ← ++ (byte) bd#112
[143] (byte) bd#241 ← (byte) bd#152
[144] call fc
to:fb::@7
fb::@7: scope:[fb] from fb::@16 fb::@6
[145] (byte) bd#113 ← phi( fb::@16/(byte) bd#152 fb::@6/(byte) bd#112 )
[146] if((byte) bc#113!=(byte) 7) goto fb::@8
to:fb::@17
fb::@17: scope:[fb] from fb::@7
[147] (byte) bd#153 ← ++ (byte) bd#113
[148] (byte) bd#242 ← (byte) bd#153
[149] call fc
to:fb::@8
fb::@8: scope:[fb] from fb::@17 fb::@7
[150] (byte) bd#114 ← phi( fb::@17/(byte) bd#153 fb::@7/(byte) bd#113 )
[151] if((byte) bc#113!=(byte) 8) goto fb::@9
to:fb::@18
fb::@18: scope:[fb] from fb::@8
[152] (byte) bd#154 ← ++ (byte) bd#114
[153] (byte) bd#243 ← (byte) bd#154
[154] call fc
to:fb::@9
fb::@9: scope:[fb] from fb::@18 fb::@8
[155] (byte) bd#116 ← phi( fb::@18/(byte) bd#154 fb::@8/(byte) bd#114 )
[156] if((byte) bc#113!=(byte) 9) goto fb::@return
to:fb::@19
fb::@19: scope:[fb] from fb::@9
[157] phi()
[158] call fc
to:fb::@return
fb::@return: scope:[fb] from fb::@19 fb::@9
[159] (byte) bd#35 ← phi( fb::@19/(byte) 0 fb::@9/(byte) bd#116 )
[160] return
to:@return
(void()) fc()
fc: scope:[fc] from fb::@10 fb::@11 fb::@12 fb::@13 fb::@14 fb::@15 fb::@16 fb::@17 fb::@18 fb::@19
[161] (byte) bd#117 ← phi( fb::@10/(byte) bd#235 fb::@11/(byte) bd#236 fb::@12/(byte) bd#237 fb::@13/(byte) bd#238 fb::@14/(byte) bd#239 fb::@15/(byte) bd#240 fb::@16/(byte) bd#241 fb::@17/(byte) bd#242 fb::@18/(byte) bd#243 fb::@19/(byte) 0 )
[162] if((byte) bd#117!=(byte) 0) goto fc::@1
to:fc::@10
fc::@10: scope:[fc] from fc
[163] phi()
to:fc::@1
fc::@1: scope:[fc] from fc fc::@10
[164] if((byte) bd#117!=(byte) 1) goto fc::@2
to:fc::@11
fc::@11: scope:[fc] from fc::@1
[165] phi()
to:fc::@2
fc::@2: scope:[fc] from fc::@1 fc::@11
[166] if((byte) bd#117!=(byte) 2) goto fc::@3
to:fc::@12
fc::@12: scope:[fc] from fc::@2
[167] phi()
to:fc::@3
fc::@3: scope:[fc] from fc::@12 fc::@2
[168] if((byte) bd#117!=(byte) 3) goto fc::@4
to:fc::@13
fc::@13: scope:[fc] from fc::@3
[169] phi()
to:fc::@4
fc::@4: scope:[fc] from fc::@13 fc::@3
[170] if((byte) bd#117!=(byte) 4) goto fc::@5
to:fc::@14
fc::@14: scope:[fc] from fc::@4
[171] phi()
to:fc::@5
fc::@5: scope:[fc] from fc::@14 fc::@4
[172] if((byte) bd#117!=(byte) 5) goto fc::@6
to:fc::@15
fc::@15: scope:[fc] from fc::@5
[173] phi()
to:fc::@6
fc::@6: scope:[fc] from fc::@15 fc::@5
[174] if((byte) bd#117!=(byte) 6) goto fc::@7
to:fc::@16
fc::@16: scope:[fc] from fc::@6
[175] phi()
to:fc::@7
fc::@7: scope:[fc] from fc::@16 fc::@6
[176] if((byte) bd#117!=(byte) 7) goto fc::@8
to:fc::@17
fc::@17: scope:[fc] from fc::@7
[177] phi()
to:fc::@8
fc::@8: scope:[fc] from fc::@17 fc::@7
[178] if((byte) bd#117!=(byte) 8) goto fc::@9
to:fc::@18
fc::@18: scope:[fc] from fc::@8
[179] phi()
to:fc::@9
fc::@9: scope:[fc] from fc::@18 fc::@8
[180] if((byte) bd#117!=(byte) 9) goto fc::@return
to:fc::@19
fc::@19: scope:[fc] from fc::@9
[181] phi()
to:fc::@return
fc::@return: scope:[fc] from fc::@19 fc::@9
[182] return
to:@return