1
0
mirror of https://gitlab.com/camelot/kickc.git synced 2024-09-29 03:56:15 +00:00
kickc/src/test/ref/printf-13.cfg
2021-08-13 21:22:17 +02:00

931 lines
38 KiB
INI

void __start()
__start: scope:[__start] from
[0] phi()
to:__start::__init1
__start::__init1: scope:[__start] from __start
[1] conio_cursor_x = 0
[2] conio_cursor_y = 0
[3] conio_line_text = DEFAULT_SCREEN
[4] conio_line_color = COLORRAM
[5] call conio_c64_init
to:__start::@1
__start::@1: scope:[__start] from __start::__init1
[6] phi()
[7] call main
to:__start::@return
__start::@return: scope:[__start] from __start::@1
[8] return
to:@return
void conio_c64_init()
conio_c64_init: scope:[conio_c64_init] from __start::__init1
[9] conio_c64_init::line#0 = *conio_c64_init::BASIC_CURSOR_LINE
[10] if(conio_c64_init::line#0<$19) goto conio_c64_init::@2
to:conio_c64_init::@1
conio_c64_init::@2: scope:[conio_c64_init] from conio_c64_init
[11] phi()
to:conio_c64_init::@1
conio_c64_init::@1: scope:[conio_c64_init] from conio_c64_init conio_c64_init::@2
[12] conio_c64_init::line#2 = phi( conio_c64_init::@2/conio_c64_init::line#0, conio_c64_init/$19-1 )
[13] gotoxy::y#2 = conio_c64_init::line#2
[14] call gotoxy
to:conio_c64_init::@return
conio_c64_init::@return: scope:[conio_c64_init] from conio_c64_init::@1
[15] return
to:@return
__stackcall void cputc(char c)
cputc: scope:[cputc] from printf_number_buffer::@9 printf_padding::@2 printf_str::@2
[16] cputc::c#0 = stackidx(char,cputc::OFFSET_STACK_C)
[17] if(cputc::c#0=='
') goto cputc::@1
to:cputc::@2
cputc::@2: scope:[cputc] from cputc
[18] conio_line_text[conio_cursor_x] = cputc::c#0
[19] conio_line_color[conio_cursor_x] = LIGHT_BLUE
[20] conio_cursor_x = ++ conio_cursor_x
[21] if(conio_cursor_x!=$28) goto cputc::@return
to:cputc::@3
cputc::@3: scope:[cputc] from cputc::@2
[22] phi()
[23] call cputln
to:cputc::@return
cputc::@return: scope:[cputc] from cputc::@1 cputc::@2 cputc::@3
[24] return
to:@return
cputc::@1: scope:[cputc] from cputc
[25] phi()
[26] call cputln
to:cputc::@return
void main()
main: scope:[main] from __start::@1
[27] phi()
[28] call clrscr
to:main::@1
main::@1: scope:[main] from main
[29] stackpush(char) = '%'
[30] callexecute cputc
sideeffect stackpullbytes(1)
[32] call printf_str
to:main::@2
main::@2: scope:[main] from main::@1
[33] phi()
[34] call printf_string
to:main::@3
main::@3: scope:[main] from main::@2
[35] phi()
[36] call printf_str
to:main::@4
main::@4: scope:[main] from main::@3
[37] phi()
[38] call printf_string
to:main::@5
main::@5: scope:[main] from main::@4
[39] phi()
[40] call printf_str
to:main::@6
main::@6: scope:[main] from main::@5
[41] phi()
[42] call printf_string
to:main::@7
main::@7: scope:[main] from main::@6
[43] phi()
[44] call printf_str
to:main::@8
main::@8: scope:[main] from main::@7
[45] phi()
[46] call printf_string
to:main::@9
main::@9: scope:[main] from main::@8
[47] phi()
[48] call printf_str
to:main::@10
main::@10: scope:[main] from main::@9
[49] stackpush(char) = '%'
[50] callexecute cputc
sideeffect stackpullbytes(1)
[52] call printf_str
to:main::@11
main::@11: scope:[main] from main::@10
[53] phi()
[54] call printf_string
to:main::@12
main::@12: scope:[main] from main::@11
[55] phi()
[56] call printf_str
to:main::@13
main::@13: scope:[main] from main::@12
[57] phi()
[58] call printf_string
to:main::@14
main::@14: scope:[main] from main::@13
[59] phi()
[60] call printf_str
to:main::@15
main::@15: scope:[main] from main::@14
[61] phi()
[62] call printf_string
to:main::@16
main::@16: scope:[main] from main::@15
[63] phi()
[64] call printf_str
to:main::@17
main::@17: scope:[main] from main::@16
[65] phi()
[66] call printf_string
to:main::@18
main::@18: scope:[main] from main::@17
[67] phi()
[68] call printf_str
to:main::@19
main::@19: scope:[main] from main::@18
[69] stackpush(char) = '%'
[70] callexecute cputc
sideeffect stackpullbytes(1)
[72] call printf_str
to:main::@20
main::@20: scope:[main] from main::@19
[73] phi()
[74] call printf_sint
to:main::@21
main::@21: scope:[main] from main::@20
[75] phi()
[76] call printf_str
to:main::@22
main::@22: scope:[main] from main::@21
[77] phi()
[78] call printf_sint
to:main::@23
main::@23: scope:[main] from main::@22
[79] phi()
[80] call printf_str
to:main::@24
main::@24: scope:[main] from main::@23
[81] phi()
[82] call printf_sint
to:main::@25
main::@25: scope:[main] from main::@24
[83] phi()
[84] call printf_str
to:main::@26
main::@26: scope:[main] from main::@25
[85] phi()
[86] call printf_sint
to:main::@27
main::@27: scope:[main] from main::@26
[87] phi()
[88] call printf_str
to:main::@28
main::@28: scope:[main] from main::@27
[89] stackpush(char) = '%'
[90] callexecute cputc
sideeffect stackpullbytes(1)
[92] call printf_str
to:main::@29
main::@29: scope:[main] from main::@28
[93] phi()
[94] call printf_sint
to:main::@30
main::@30: scope:[main] from main::@29
[95] phi()
[96] call printf_str
to:main::@31
main::@31: scope:[main] from main::@30
[97] phi()
[98] call printf_sint
to:main::@32
main::@32: scope:[main] from main::@31
[99] phi()
[100] call printf_str
to:main::@33
main::@33: scope:[main] from main::@32
[101] phi()
[102] call printf_sint
to:main::@34
main::@34: scope:[main] from main::@33
[103] phi()
[104] call printf_str
to:main::@35
main::@35: scope:[main] from main::@34
[105] phi()
[106] call printf_sint
to:main::@36
main::@36: scope:[main] from main::@35
[107] phi()
[108] call printf_str
to:main::@37
main::@37: scope:[main] from main::@36
[109] stackpush(char) = '%'
[110] callexecute cputc
sideeffect stackpullbytes(1)
[112] call printf_str
to:main::@38
main::@38: scope:[main] from main::@37
[113] phi()
[114] call printf_sint
to:main::@39
main::@39: scope:[main] from main::@38
[115] phi()
[116] call printf_str
to:main::@40
main::@40: scope:[main] from main::@39
[117] phi()
[118] call printf_sint
to:main::@41
main::@41: scope:[main] from main::@40
[119] phi()
[120] call printf_str
to:main::@42
main::@42: scope:[main] from main::@41
[121] phi()
[122] call printf_sint
to:main::@43
main::@43: scope:[main] from main::@42
[123] phi()
[124] call printf_str
to:main::@44
main::@44: scope:[main] from main::@43
[125] phi()
[126] call printf_sint
to:main::@45
main::@45: scope:[main] from main::@44
[127] phi()
[128] call printf_str
to:main::@46
main::@46: scope:[main] from main::@45
[129] stackpush(char) = '%'
[130] callexecute cputc
sideeffect stackpullbytes(1)
[132] call printf_str
to:main::@47
main::@47: scope:[main] from main::@46
[133] phi()
[134] call printf_sint
to:main::@48
main::@48: scope:[main] from main::@47
[135] phi()
[136] call printf_str
to:main::@49
main::@49: scope:[main] from main::@48
[137] phi()
[138] call printf_sint
to:main::@50
main::@50: scope:[main] from main::@49
[139] phi()
[140] call printf_str
to:main::@51
main::@51: scope:[main] from main::@50
[141] phi()
[142] call printf_sint
to:main::@52
main::@52: scope:[main] from main::@51
[143] phi()
[144] call printf_str
to:main::@53
main::@53: scope:[main] from main::@52
[145] phi()
[146] call printf_sint
to:main::@54
main::@54: scope:[main] from main::@53
[147] phi()
[148] call printf_str
to:main::@55
main::@55: scope:[main] from main::@54
[149] stackpush(char) = '%'
[150] callexecute cputc
sideeffect stackpullbytes(1)
[152] call printf_str
to:main::@56
main::@56: scope:[main] from main::@55
[153] phi()
[154] call printf_uint
to:main::@57
main::@57: scope:[main] from main::@56
[155] phi()
[156] call printf_str
to:main::@58
main::@58: scope:[main] from main::@57
[157] phi()
[158] call printf_uint
to:main::@59
main::@59: scope:[main] from main::@58
[159] phi()
[160] call printf_str
to:main::@60
main::@60: scope:[main] from main::@59
[161] phi()
[162] call printf_uint
to:main::@61
main::@61: scope:[main] from main::@60
[163] phi()
[164] call printf_str
to:main::@62
main::@62: scope:[main] from main::@61
[165] phi()
[166] call printf_uint
to:main::@63
main::@63: scope:[main] from main::@62
[167] phi()
[168] call printf_str
to:main::@64
main::@64: scope:[main] from main::@63
[169] stackpush(char) = '%'
[170] callexecute cputc
sideeffect stackpullbytes(1)
[172] call printf_str
to:main::@65
main::@65: scope:[main] from main::@64
[173] phi()
[174] call printf_uint
to:main::@66
main::@66: scope:[main] from main::@65
[175] phi()
[176] call printf_str
to:main::@67
main::@67: scope:[main] from main::@66
[177] phi()
[178] call printf_uint
to:main::@68
main::@68: scope:[main] from main::@67
[179] phi()
[180] call printf_str
to:main::@69
main::@69: scope:[main] from main::@68
[181] phi()
[182] call printf_uint
to:main::@70
main::@70: scope:[main] from main::@69
[183] phi()
[184] call printf_str
to:main::@71
main::@71: scope:[main] from main::@70
[185] phi()
[186] call printf_uint
to:main::@72
main::@72: scope:[main] from main::@71
[187] phi()
[188] call printf_str
to:main::@73
main::@73: scope:[main] from main::@72
[189] stackpush(char) = '%'
[190] callexecute cputc
sideeffect stackpullbytes(1)
[192] call printf_str
to:main::@74
main::@74: scope:[main] from main::@73
[193] phi()
[194] call printf_uint
to:main::@75
main::@75: scope:[main] from main::@74
[195] phi()
[196] call printf_str
to:main::@76
main::@76: scope:[main] from main::@75
[197] phi()
[198] call printf_uint
to:main::@77
main::@77: scope:[main] from main::@76
[199] phi()
[200] call printf_str
to:main::@78
main::@78: scope:[main] from main::@77
[201] phi()
[202] call printf_uint
to:main::@79
main::@79: scope:[main] from main::@78
[203] phi()
[204] call printf_str
to:main::@80
main::@80: scope:[main] from main::@79
[205] phi()
[206] call printf_uint
to:main::@81
main::@81: scope:[main] from main::@80
[207] phi()
[208] call printf_str
to:main::@return
main::@return: scope:[main] from main::@81
[209] return
to:@return
void gotoxy(char x , char y)
gotoxy: scope:[gotoxy] from conio_c64_init::@1
[210] if(gotoxy::y#2<$19+1) goto gotoxy::@3
to:gotoxy::@1
gotoxy::@3: scope:[gotoxy] from gotoxy
[211] phi()
to:gotoxy::@1
gotoxy::@1: scope:[gotoxy] from gotoxy gotoxy::@3
[212] gotoxy::y#4 = phi( gotoxy::@3/gotoxy::y#2, gotoxy/0 )
to:gotoxy::@2
gotoxy::@2: scope:[gotoxy] from gotoxy::@1
[213] conio_cursor_x = gotoxy::x#2
[214] conio_cursor_y = gotoxy::y#4
[215] gotoxy::$7 = (unsigned int)gotoxy::y#4
[216] gotoxy::$8 = gotoxy::$7 << 2
[217] gotoxy::$9 = gotoxy::$8 + gotoxy::$7
[218] gotoxy::line_offset#0 = gotoxy::$9 << 3
[219] gotoxy::$5 = DEFAULT_SCREEN + gotoxy::line_offset#0
[220] conio_line_text = gotoxy::$5
[221] gotoxy::$6 = COLORRAM + gotoxy::line_offset#0
[222] conio_line_color = gotoxy::$6
to:gotoxy::@return
gotoxy::@return: scope:[gotoxy] from gotoxy::@2
[223] return
to:@return
void cputln()
cputln: scope:[cputln] from cputc::@1 cputc::@3
[224] conio_line_text = conio_line_text + $28
[225] conio_line_color = conio_line_color + $28
[226] conio_cursor_x = 0
[227] conio_cursor_y = ++ conio_cursor_y
[228] call cscroll
to:cputln::@return
cputln::@return: scope:[cputln] from cputln
[229] return
to:@return
void clrscr()
clrscr: scope:[clrscr] from main
[230] phi()
to:clrscr::@1
clrscr::@1: scope:[clrscr] from clrscr clrscr::@5
[231] clrscr::line_cols#5 = phi( clrscr/COLORRAM, clrscr::@5/clrscr::line_cols#1 )
[231] clrscr::line_text#5 = phi( clrscr/DEFAULT_SCREEN, clrscr::@5/clrscr::line_text#1 )
[231] clrscr::l#2 = phi( clrscr/0, clrscr::@5/clrscr::l#1 )
[232] if(clrscr::l#2<$19) goto clrscr::@3
to:clrscr::@2
clrscr::@2: scope:[clrscr] from clrscr::@1
[233] conio_cursor_x = 0
[234] conio_cursor_y = 0
[235] conio_line_text = DEFAULT_SCREEN
[236] conio_line_color = COLORRAM
to:clrscr::@return
clrscr::@return: scope:[clrscr] from clrscr::@2
[237] return
to:@return
clrscr::@3: scope:[clrscr] from clrscr::@1 clrscr::@4
[238] clrscr::c#2 = phi( clrscr::@1/0, clrscr::@4/clrscr::c#1 )
[239] if(clrscr::c#2<$28) goto clrscr::@4
to:clrscr::@5
clrscr::@5: scope:[clrscr] from clrscr::@3
[240] clrscr::line_text#1 = clrscr::line_text#5 + $28
[241] clrscr::line_cols#1 = clrscr::line_cols#5 + $28
[242] clrscr::l#1 = ++ clrscr::l#2
to:clrscr::@1
clrscr::@4: scope:[clrscr] from clrscr::@3
[243] clrscr::line_text#5[clrscr::c#2] = ' '
[244] clrscr::line_cols#5[clrscr::c#2] = LIGHT_BLUE
[245] clrscr::c#1 = ++ clrscr::c#2
to:clrscr::@3
void printf_str(void (*putc)(char) , const char *s)
printf_str: scope:[printf_str] from main::@1 main::@10 main::@12 main::@14 main::@16 main::@18 main::@19 main::@21 main::@23 main::@25 main::@27 main::@28 main::@3 main::@30 main::@32 main::@34 main::@36 main::@37 main::@39 main::@41 main::@43 main::@45 main::@46 main::@48 main::@5 main::@50 main::@52 main::@54 main::@55 main::@57 main::@59 main::@61 main::@63 main::@64 main::@66 main::@68 main::@7 main::@70 main::@72 main::@73 main::@75 main::@77 main::@79 main::@81 main::@9 printf_number_buffer::@5 printf_string::@2
[246] printf_str::s#49 = phi( main::@1/main::s, main::@10/main::s5, main::@12/main::s1, main::@14/main::s1, main::@16/main::s1, main::@18/main::s4, main::@19/main::s10, main::@21/main::s1, main::@23/main::s1, main::@25/main::s1, main::@27/main::s4, main::@28/main::s15, main::@3/main::s1, main::@30/main::s1, main::@32/main::s1, main::@34/main::s1, main::@36/main::s4, main::@37/main::s20, main::@39/main::s1, main::@41/main::s1, main::@43/main::s1, main::@45/main::s4, main::@46/main::s25, main::@48/main::s1, main::@5/main::s1, main::@50/main::s1, main::@52/main::s1, main::@54/main::s4, main::@55/main::s30, main::@57/main::s1, main::@59/main::s1, main::@61/main::s1, main::@63/main::s4, main::@64/main::s35, main::@66/main::s1, main::@68/main::s1, main::@7/main::s1, main::@70/main::s1, main::@72/main::s4, main::@73/main::s40, main::@75/main::s1, main::@77/main::s1, main::@79/main::s1, main::@81/main::s4, main::@9/main::s4, printf_number_buffer::@5/(char *)&printf_buffer+OFFSET_STRUCT_PRINTF_BUFFER_NUMBER_DIGITS, printf_string::@2/printf_str::s#2 )
to:printf_str::@1
printf_str::@1: scope:[printf_str] from printf_str printf_str::@2
[247] printf_str::s#48 = phi( printf_str/printf_str::s#49, printf_str::@2/printf_str::s#0 )
[248] printf_str::c#1 = *printf_str::s#48
[249] printf_str::s#0 = ++ printf_str::s#48
[250] if(0!=printf_str::c#1) goto printf_str::@2
to:printf_str::@return
printf_str::@return: scope:[printf_str] from printf_str::@1
[251] return
to:@return
printf_str::@2: scope:[printf_str] from printf_str::@1
[252] stackpush(char) = printf_str::c#1
[253] callexecute cputc
sideeffect stackpullbytes(1)
to:printf_str::@1
void printf_string(void (*putc)(char) , char *str , char format_min_length , char format_justify_left)
printf_string: scope:[printf_string] from main::@11 main::@13 main::@15 main::@17 main::@2 main::@4 main::@6 main::@8
[255] printf_string::str#10 = phi( main::@11/main::str, main::@13/main::str1, main::@15/main::str2, main::@17/main::str3, main::@2/main::str, main::@4/main::str1, main::@6/main::str2, main::@8/main::str3 )
[255] printf_string::format_justify_left#10 = phi( main::@11/1, main::@13/1, main::@15/1, main::@17/1, main::@2/0, main::@4/0, main::@6/0, main::@8/0 )
to:printf_string::@3
printf_string::@3: scope:[printf_string] from printf_string
[256] strlen::str#2 = printf_string::str#10
[257] call strlen
[258] strlen::return#3 = strlen::len#2
to:printf_string::@6
printf_string::@6: scope:[printf_string] from printf_string::@3
[259] printf_string::$9 = strlen::return#3
[260] printf_string::len#0 = (signed char)printf_string::$9
[261] printf_string::padding#1 = 3 - printf_string::len#0
[262] if(printf_string::padding#1>=0) goto printf_string::@10
to:printf_string::@1
printf_string::@10: scope:[printf_string] from printf_string::@6
[263] phi()
to:printf_string::@1
printf_string::@1: scope:[printf_string] from printf_string::@10 printf_string::@6
[264] printf_string::padding#3 = phi( printf_string::@6/0, printf_string::@10/printf_string::padding#1 )
[265] if(0!=printf_string::format_justify_left#10) goto printf_string::@2
to:printf_string::@8
printf_string::@8: scope:[printf_string] from printf_string::@1
[266] if(0!=printf_string::padding#3) goto printf_string::@4
to:printf_string::@2
printf_string::@4: scope:[printf_string] from printf_string::@8
[267] printf_padding::length#3 = (char)printf_string::padding#3
[268] call printf_padding
to:printf_string::@2
printf_string::@2: scope:[printf_string] from printf_string::@1 printf_string::@4 printf_string::@8
[269] printf_str::s#2 = printf_string::str#10
[270] call printf_str
to:printf_string::@7
printf_string::@7: scope:[printf_string] from printf_string::@2
[271] if(0==printf_string::format_justify_left#10) goto printf_string::@return
to:printf_string::@9
printf_string::@9: scope:[printf_string] from printf_string::@7
[272] if(0!=printf_string::padding#3) goto printf_string::@5
to:printf_string::@return
printf_string::@5: scope:[printf_string] from printf_string::@9
[273] printf_padding::length#4 = (char)printf_string::padding#3
[274] call printf_padding
to:printf_string::@return
printf_string::@return: scope:[printf_string] from printf_string::@5 printf_string::@7 printf_string::@9
[275] return
to:@return
void printf_sint(void (*putc)(char) , int value , char format_min_length , char format_justify_left , char format_sign_always , char format_zero_padding , char format_upper_case , char format_radix)
printf_sint: scope:[printf_sint] from main::@20 main::@22 main::@24 main::@26 main::@29 main::@31 main::@33 main::@35 main::@38 main::@40 main::@42 main::@44 main::@47 main::@49 main::@51 main::@53
[276] printf_sint::format_zero_padding#16 = phi( main::@20/0, main::@22/0, main::@24/0, main::@26/0, main::@29/0, main::@31/0, main::@33/0, main::@35/0, main::@38/0, main::@40/0, main::@42/0, main::@44/0, main::@47/1, main::@49/1, main::@51/1, main::@53/0 )
[276] printf_sint::format_justify_left#16 = phi( main::@20/0, main::@22/0, main::@24/0, main::@26/0, main::@29/1, main::@31/1, main::@33/1, main::@35/1, main::@38/0, main::@40/0, main::@42/0, main::@44/0, main::@47/0, main::@49/0, main::@51/0, main::@53/0 )
[276] printf_sint::format_sign_always#16 = phi( main::@20/0, main::@22/0, main::@24/0, main::@26/0, main::@29/0, main::@31/0, main::@33/0, main::@35/0, main::@38/1, main::@40/1, main::@42/1, main::@44/1, main::@47/0, main::@49/0, main::@51/0, main::@53/0 )
[276] printf_sint::value#17 = phi( main::@20/1, main::@22/$b, main::@24/$6f, main::@26/$457, main::@29/-2, main::@31/-$16, main::@33/-$de, main::@35/-$8ae, main::@38/3, main::@40/-$2c, main::@42/$22b, main::@44/-$1a0a, main::@47/1, main::@49/$b, main::@51/$6f, main::@53/$457 )
[277] *((char *)&printf_buffer) = 0
[278] if(printf_sint::value#17<0) goto printf_sint::@1
to:printf_sint::@3
printf_sint::@3: scope:[printf_sint] from printf_sint
[279] if(0==printf_sint::format_sign_always#16) goto printf_sint::@2
to:printf_sint::@4
printf_sint::@4: scope:[printf_sint] from printf_sint::@3
[280] *((char *)&printf_buffer) = '+'
to:printf_sint::@2
printf_sint::@2: scope:[printf_sint] from printf_sint::@1 printf_sint::@3 printf_sint::@4
[281] printf_sint::value#19 = phi( printf_sint::@1/printf_sint::value#0, printf_sint::@3/printf_sint::value#17, printf_sint::@4/printf_sint::value#17 )
[282] utoa::value#1 = (unsigned int)printf_sint::value#19
[283] call utoa
to:printf_sint::@5
printf_sint::@5: scope:[printf_sint] from printf_sint::@2
[284] printf_number_buffer::buffer_sign#0 = *((char *)&printf_buffer)
[285] printf_number_buffer::format_justify_left#0 = printf_sint::format_justify_left#16
[286] printf_number_buffer::format_zero_padding#0 = printf_sint::format_zero_padding#16
[287] call printf_number_buffer
to:printf_sint::@return
printf_sint::@return: scope:[printf_sint] from printf_sint::@5
[288] return
to:@return
printf_sint::@1: scope:[printf_sint] from printf_sint
[289] printf_sint::value#0 = - printf_sint::value#17
[290] *((char *)&printf_buffer) = '-'
to:printf_sint::@2
void printf_uint(void (*putc)(char) , unsigned int uvalue , char format_min_length , char format_justify_left , char format_sign_always , char format_zero_padding , char format_upper_case , char format_radix)
printf_uint: scope:[printf_uint] from main::@56 main::@58 main::@60 main::@62 main::@65 main::@67 main::@69 main::@71 main::@74 main::@76 main::@78 main::@80
[291] printf_uint::format_upper_case#12 = phi( main::@56/0, main::@58/0, main::@60/0, main::@62/0, main::@65/0, main::@67/0, main::@69/0, main::@71/0, main::@74/1, main::@76/1, main::@78/1, main::@80/1 )
[291] printf_uint::format_radix#12 = phi( main::@56/OCTAL, main::@58/OCTAL, main::@60/OCTAL, main::@62/OCTAL, main::@65/HEXADECIMAL, main::@67/HEXADECIMAL, main::@69/HEXADECIMAL, main::@71/HEXADECIMAL, main::@74/HEXADECIMAL, main::@76/HEXADECIMAL, main::@78/HEXADECIMAL, main::@80/HEXADECIMAL )
[291] printf_uint::uvalue#12 = phi( main::@56/1, main::@58/$b, main::@60/$6f, main::@62/$457, main::@65/1, main::@67/$b, main::@69/$6f, main::@71/$457, main::@74/1, main::@76/$b, main::@78/$6f, main::@80/$457 )
to:printf_uint::@1
printf_uint::@1: scope:[printf_uint] from printf_uint
[292] *((char *)&printf_buffer) = 0
[293] utoa::value#2 = printf_uint::uvalue#12
[294] utoa::radix#1 = printf_uint::format_radix#12
[295] call utoa
to:printf_uint::@2
printf_uint::@2: scope:[printf_uint] from printf_uint::@1
[296] printf_number_buffer::buffer_sign#1 = *((char *)&printf_buffer)
[297] printf_number_buffer::format_upper_case#1 = printf_uint::format_upper_case#12
[298] call printf_number_buffer
to:printf_uint::@return
printf_uint::@return: scope:[printf_uint] from printf_uint::@2
[299] return
to:@return
void cscroll()
cscroll: scope:[cscroll] from cputln
[300] if(conio_cursor_y!=$19) goto cscroll::@return
to:cscroll::@1
cscroll::@1: scope:[cscroll] from cscroll
[301] phi()
[302] call memcpy
to:cscroll::@2
cscroll::@2: scope:[cscroll] from cscroll::@1
[303] phi()
[304] call memcpy
to:cscroll::@3
cscroll::@3: scope:[cscroll] from cscroll::@2
[305] phi()
[306] call memset
to:cscroll::@4
cscroll::@4: scope:[cscroll] from cscroll::@3
[307] phi()
[308] call memset
to:cscroll::@5
cscroll::@5: scope:[cscroll] from cscroll::@4
[309] conio_line_text = conio_line_text - $28
[310] conio_line_color = conio_line_color - $28
[311] conio_cursor_y = -- conio_cursor_y
to:cscroll::@return
cscroll::@return: scope:[cscroll] from cscroll cscroll::@5
[312] return
to:@return
unsigned int strlen(char *str)
strlen: scope:[strlen] from printf_number_buffer::@6 printf_string::@3
[313] strlen::str#5 = phi( printf_number_buffer::@6/(char *)&printf_buffer+OFFSET_STRUCT_PRINTF_BUFFER_NUMBER_DIGITS, printf_string::@3/strlen::str#2 )
to:strlen::@1
strlen::@1: scope:[strlen] from strlen strlen::@2
[314] strlen::len#2 = phi( strlen/0, strlen::@2/strlen::len#1 )
[314] strlen::str#3 = phi( strlen/strlen::str#5, strlen::@2/strlen::str#0 )
[315] if(0!=*strlen::str#3) goto strlen::@2
to:strlen::@return
strlen::@return: scope:[strlen] from strlen::@1
[316] return
to:@return
strlen::@2: scope:[strlen] from strlen::@1
[317] strlen::len#1 = ++ strlen::len#2
[318] strlen::str#0 = ++ strlen::str#3
to:strlen::@1
void printf_padding(void (*putc)(char) , char pad , char length)
printf_padding: scope:[printf_padding] from printf_number_buffer::@10 printf_number_buffer::@12 printf_number_buffer::@8 printf_string::@4 printf_string::@5
[319] printf_padding::pad#7 = phi( printf_number_buffer::@10/'0', printf_number_buffer::@12/' ', printf_number_buffer::@8/' ', printf_string::@4/' ', printf_string::@5/' ' )
[319] printf_padding::length#6 = phi( printf_number_buffer::@10/printf_padding::length#1, printf_number_buffer::@12/printf_padding::length#2, printf_number_buffer::@8/printf_padding::length#0, printf_string::@4/printf_padding::length#3, printf_string::@5/printf_padding::length#4 )
to:printf_padding::@1
printf_padding::@1: scope:[printf_padding] from printf_padding printf_padding::@3
[320] printf_padding::i#2 = phi( printf_padding/0, printf_padding::@3/printf_padding::i#1 )
[321] if(printf_padding::i#2<printf_padding::length#6) goto printf_padding::@2
to:printf_padding::@return
printf_padding::@return: scope:[printf_padding] from printf_padding::@1
[322] return
to:@return
printf_padding::@2: scope:[printf_padding] from printf_padding::@1
[323] stackpush(char) = printf_padding::pad#7
[324] callexecute cputc
sideeffect stackpullbytes(1)
to:printf_padding::@3
printf_padding::@3: scope:[printf_padding] from printf_padding::@2
[326] printf_padding::i#1 = ++ printf_padding::i#2
to:printf_padding::@1
void utoa(unsigned int value , char *buffer , char radix)
utoa: scope:[utoa] from printf_sint::@2 printf_uint::@1
[327] utoa::value#10 = phi( printf_sint::@2/utoa::value#1, printf_uint::@1/utoa::value#2 )
[327] utoa::radix#2 = phi( printf_sint::@2/DECIMAL, printf_uint::@1/utoa::radix#1 )
[328] if(utoa::radix#2==DECIMAL) goto utoa::@1
to:utoa::@2
utoa::@2: scope:[utoa] from utoa
[329] if(utoa::radix#2==HEXADECIMAL) goto utoa::@1
to:utoa::@3
utoa::@3: scope:[utoa] from utoa::@2
[330] if(utoa::radix#2==OCTAL) goto utoa::@1
to:utoa::@4
utoa::@4: scope:[utoa] from utoa::@3
[331] if(utoa::radix#2==BINARY) goto utoa::@1
to:utoa::@5
utoa::@5: scope:[utoa] from utoa::@4
[332] *((char *)&printf_buffer+OFFSET_STRUCT_PRINTF_BUFFER_NUMBER_DIGITS) = 'e'
[333] *((char *)&printf_buffer+OFFSET_STRUCT_PRINTF_BUFFER_NUMBER_DIGITS+1) = 'r'
[334] *((char *)&printf_buffer+OFFSET_STRUCT_PRINTF_BUFFER_NUMBER_DIGITS+2) = 'r'
[335] *((char *)&printf_buffer+OFFSET_STRUCT_PRINTF_BUFFER_NUMBER_DIGITS+3) = 0
to:utoa::@return
utoa::@return: scope:[utoa] from utoa::@5 utoa::@8
[336] return
to:@return
utoa::@1: scope:[utoa] from utoa utoa::@2 utoa::@3 utoa::@4
[337] utoa::digit_values#8 = phi( utoa/RADIX_DECIMAL_VALUES, utoa::@2/RADIX_HEXADECIMAL_VALUES, utoa::@3/RADIX_OCTAL_VALUES, utoa::@4/RADIX_BINARY_VALUES )
[337] utoa::max_digits#7 = phi( utoa/5, utoa::@2/4, utoa::@3/6, utoa::@4/$10 )
to:utoa::@6
utoa::@6: scope:[utoa] from utoa::@1 utoa::@9
[338] utoa::buffer#10 = phi( utoa::@9/utoa::buffer#15, utoa::@1/(char *)&printf_buffer+OFFSET_STRUCT_PRINTF_BUFFER_NUMBER_DIGITS )
[338] utoa::started#2 = phi( utoa::@9/utoa::started#4, utoa::@1/0 )
[338] utoa::value#3 = phi( utoa::@9/utoa::value#7, utoa::@1/utoa::value#10 )
[338] utoa::digit#2 = phi( utoa::@9/utoa::digit#1, utoa::@1/0 )
[339] utoa::$4 = utoa::max_digits#7 - 1
[340] if(utoa::digit#2<utoa::$4) goto utoa::@7
to:utoa::@8
utoa::@8: scope:[utoa] from utoa::@6
[341] utoa::$11 = (char)utoa::value#3
[342] *utoa::buffer#10 = DIGITS[utoa::$11]
[343] utoa::buffer#3 = ++ utoa::buffer#10
[344] *utoa::buffer#3 = 0
to:utoa::@return
utoa::@7: scope:[utoa] from utoa::@6
[345] utoa::$10 = utoa::digit#2 << 1
[346] utoa::digit_value#0 = utoa::digit_values#8[utoa::$10]
[347] if(0!=utoa::started#2) goto utoa::@10
to:utoa::@12
utoa::@12: scope:[utoa] from utoa::@7
[348] if(utoa::value#3>=utoa::digit_value#0) goto utoa::@10
to:utoa::@9
utoa::@9: scope:[utoa] from utoa::@11 utoa::@12
[349] utoa::buffer#15 = phi( utoa::@12/utoa::buffer#10, utoa::@11/utoa::buffer#4 )
[349] utoa::started#4 = phi( utoa::@12/utoa::started#2, utoa::@11/1 )
[349] utoa::value#7 = phi( utoa::@12/utoa::value#3, utoa::@11/utoa::value#0 )
[350] utoa::digit#1 = ++ utoa::digit#2
to:utoa::@6
utoa::@10: scope:[utoa] from utoa::@12 utoa::@7
[351] utoa_append::buffer#0 = utoa::buffer#10
[352] utoa_append::value#0 = utoa::value#3
[353] utoa_append::sub#0 = utoa::digit_value#0
[354] call utoa_append
[355] utoa_append::return#0 = utoa_append::value#2
to:utoa::@11
utoa::@11: scope:[utoa] from utoa::@10
[356] utoa::value#0 = utoa_append::return#0
[357] utoa::buffer#4 = ++ utoa::buffer#10
to:utoa::@9
void printf_number_buffer(void (*putc)(char) , char buffer_sign , char *buffer_digits , char format_min_length , char format_justify_left , char format_sign_always , char format_zero_padding , char format_upper_case , char format_radix)
printf_number_buffer: scope:[printf_number_buffer] from printf_sint::@5 printf_uint::@2
[358] printf_number_buffer::format_upper_case#10 = phi( printf_sint::@5/0, printf_uint::@2/printf_number_buffer::format_upper_case#1 )
[358] printf_number_buffer::buffer_sign#10 = phi( printf_sint::@5/printf_number_buffer::buffer_sign#0, printf_uint::@2/printf_number_buffer::buffer_sign#1 )
[358] printf_number_buffer::format_zero_padding#10 = phi( printf_sint::@5/printf_number_buffer::format_zero_padding#0, printf_uint::@2/0 )
[358] printf_number_buffer::format_justify_left#10 = phi( printf_sint::@5/printf_number_buffer::format_justify_left#0, printf_uint::@2/0 )
[358] printf_number_buffer::format_min_length#2 = phi( printf_sint::@5/3, printf_uint::@2/0 )
[359] if(0==printf_number_buffer::format_min_length#2) goto printf_number_buffer::@1
to:printf_number_buffer::@6
printf_number_buffer::@6: scope:[printf_number_buffer] from printf_number_buffer
[360] phi()
[361] call strlen
[362] strlen::return#2 = strlen::len#2
to:printf_number_buffer::@14
printf_number_buffer::@14: scope:[printf_number_buffer] from printf_number_buffer::@6
[363] printf_number_buffer::$19 = strlen::return#2
[364] printf_number_buffer::len#0 = (signed char)printf_number_buffer::$19
[365] if(0==printf_number_buffer::buffer_sign#10) goto printf_number_buffer::@13
to:printf_number_buffer::@7
printf_number_buffer::@7: scope:[printf_number_buffer] from printf_number_buffer::@14
[366] printf_number_buffer::len#1 = ++ printf_number_buffer::len#0
to:printf_number_buffer::@13
printf_number_buffer::@13: scope:[printf_number_buffer] from printf_number_buffer::@14 printf_number_buffer::@7
[367] printf_number_buffer::len#2 = phi( printf_number_buffer::@14/printf_number_buffer::len#0, printf_number_buffer::@7/printf_number_buffer::len#1 )
[368] printf_number_buffer::padding#1 = (signed char)printf_number_buffer::format_min_length#2 - printf_number_buffer::len#2
[369] if(printf_number_buffer::padding#1>=0) goto printf_number_buffer::@21
to:printf_number_buffer::@1
printf_number_buffer::@21: scope:[printf_number_buffer] from printf_number_buffer::@13
[370] phi()
to:printf_number_buffer::@1
printf_number_buffer::@1: scope:[printf_number_buffer] from printf_number_buffer printf_number_buffer::@13 printf_number_buffer::@21
[371] printf_number_buffer::padding#10 = phi( printf_number_buffer/0, printf_number_buffer::@21/printf_number_buffer::padding#1, printf_number_buffer::@13/0 )
[372] if(0!=printf_number_buffer::format_justify_left#10) goto printf_number_buffer::@2
to:printf_number_buffer::@17
printf_number_buffer::@17: scope:[printf_number_buffer] from printf_number_buffer::@1
[373] if(0!=printf_number_buffer::format_zero_padding#10) goto printf_number_buffer::@2
to:printf_number_buffer::@16
printf_number_buffer::@16: scope:[printf_number_buffer] from printf_number_buffer::@17
[374] if(0!=printf_number_buffer::padding#10) goto printf_number_buffer::@8
to:printf_number_buffer::@2
printf_number_buffer::@8: scope:[printf_number_buffer] from printf_number_buffer::@16
[375] printf_padding::length#0 = (char)printf_number_buffer::padding#10
[376] call printf_padding
to:printf_number_buffer::@2
printf_number_buffer::@2: scope:[printf_number_buffer] from printf_number_buffer::@1 printf_number_buffer::@16 printf_number_buffer::@17 printf_number_buffer::@8
[377] if(0==printf_number_buffer::buffer_sign#10) goto printf_number_buffer::@3
to:printf_number_buffer::@9
printf_number_buffer::@9: scope:[printf_number_buffer] from printf_number_buffer::@2
[378] stackpush(char) = printf_number_buffer::buffer_sign#10
[379] callexecute cputc
sideeffect stackpullbytes(1)
to:printf_number_buffer::@3
printf_number_buffer::@3: scope:[printf_number_buffer] from printf_number_buffer::@2 printf_number_buffer::@9
[381] if(0==printf_number_buffer::format_zero_padding#10) goto printf_number_buffer::@4
to:printf_number_buffer::@18
printf_number_buffer::@18: scope:[printf_number_buffer] from printf_number_buffer::@3
[382] if(0!=printf_number_buffer::padding#10) goto printf_number_buffer::@10
to:printf_number_buffer::@4
printf_number_buffer::@10: scope:[printf_number_buffer] from printf_number_buffer::@18
[383] printf_padding::length#1 = (char)printf_number_buffer::padding#10
[384] call printf_padding
to:printf_number_buffer::@4
printf_number_buffer::@4: scope:[printf_number_buffer] from printf_number_buffer::@10 printf_number_buffer::@18 printf_number_buffer::@3
[385] if(0==printf_number_buffer::format_upper_case#10) goto printf_number_buffer::@5
to:printf_number_buffer::@11
printf_number_buffer::@11: scope:[printf_number_buffer] from printf_number_buffer::@4
[386] phi()
[387] call strupr
to:printf_number_buffer::@5
printf_number_buffer::@5: scope:[printf_number_buffer] from printf_number_buffer::@11 printf_number_buffer::@4
[388] phi()
[389] call printf_str
to:printf_number_buffer::@15
printf_number_buffer::@15: scope:[printf_number_buffer] from printf_number_buffer::@5
[390] if(0==printf_number_buffer::format_justify_left#10) goto printf_number_buffer::@return
to:printf_number_buffer::@20
printf_number_buffer::@20: scope:[printf_number_buffer] from printf_number_buffer::@15
[391] if(0!=printf_number_buffer::format_zero_padding#10) goto printf_number_buffer::@return
to:printf_number_buffer::@19
printf_number_buffer::@19: scope:[printf_number_buffer] from printf_number_buffer::@20
[392] if(0!=printf_number_buffer::padding#10) goto printf_number_buffer::@12
to:printf_number_buffer::@return
printf_number_buffer::@12: scope:[printf_number_buffer] from printf_number_buffer::@19
[393] printf_padding::length#2 = (char)printf_number_buffer::padding#10
[394] call printf_padding
to:printf_number_buffer::@return
printf_number_buffer::@return: scope:[printf_number_buffer] from printf_number_buffer::@12 printf_number_buffer::@15 printf_number_buffer::@19 printf_number_buffer::@20
[395] return
to:@return
void * memcpy(void *destination , void *source , unsigned int num)
memcpy: scope:[memcpy] from cscroll::@1 cscroll::@2
[396] memcpy::destination#2 = phi( cscroll::@1/(void *)DEFAULT_SCREEN, cscroll::@2/(void *)COLORRAM )
[396] memcpy::source#2 = phi( cscroll::@1/(void *)DEFAULT_SCREEN+$28, cscroll::@2/(void *)COLORRAM+$28 )
[397] memcpy::src_end#0 = (char *)memcpy::source#2 + (unsigned int)$19*$28-$28
[398] memcpy::src#4 = (char *)memcpy::source#2
[399] memcpy::dst#4 = (char *)memcpy::destination#2
to:memcpy::@1
memcpy::@1: scope:[memcpy] from memcpy memcpy::@2
[400] memcpy::dst#2 = phi( memcpy/memcpy::dst#4, memcpy::@2/memcpy::dst#1 )
[400] memcpy::src#2 = phi( memcpy/memcpy::src#4, memcpy::@2/memcpy::src#1 )
[401] if(memcpy::src#2!=memcpy::src_end#0) goto memcpy::@2
to:memcpy::@return
memcpy::@return: scope:[memcpy] from memcpy::@1
[402] return
to:@return
memcpy::@2: scope:[memcpy] from memcpy::@1
[403] *memcpy::dst#2 = *memcpy::src#2
[404] memcpy::dst#1 = ++ memcpy::dst#2
[405] memcpy::src#1 = ++ memcpy::src#2
to:memcpy::@1
void * memset(void *str , char c , unsigned int num)
memset: scope:[memset] from cscroll::@3 cscroll::@4
[406] memset::c#4 = phi( cscroll::@3/' ', cscroll::@4/LIGHT_BLUE )
[406] memset::str#3 = phi( cscroll::@3/(void *)DEFAULT_SCREEN+(unsigned int)$19*$28-$28, cscroll::@4/(void *)COLORRAM+(unsigned int)$19*$28-$28 )
to:memset::@1
memset::@1: scope:[memset] from memset
[407] memset::end#0 = (char *)memset::str#3 + $28
[408] memset::dst#4 = (char *)memset::str#3
to:memset::@2
memset::@2: scope:[memset] from memset::@1 memset::@3
[409] memset::dst#2 = phi( memset::@1/memset::dst#4, memset::@3/memset::dst#1 )
[410] if(memset::dst#2!=memset::end#0) goto memset::@3
to:memset::@return
memset::@return: scope:[memset] from memset::@2
[411] return
to:@return
memset::@3: scope:[memset] from memset::@2
[412] *memset::dst#2 = memset::c#4
[413] memset::dst#1 = ++ memset::dst#2
to:memset::@2
unsigned int utoa_append(char *buffer , unsigned int value , unsigned int sub)
utoa_append: scope:[utoa_append] from utoa::@10
[414] phi()
to:utoa_append::@1
utoa_append::@1: scope:[utoa_append] from utoa_append utoa_append::@2
[415] utoa_append::digit#2 = phi( utoa_append/0, utoa_append::@2/utoa_append::digit#1 )
[415] utoa_append::value#2 = phi( utoa_append/utoa_append::value#0, utoa_append::@2/utoa_append::value#1 )
[416] if(utoa_append::value#2>=utoa_append::sub#0) goto utoa_append::@2
to:utoa_append::@3
utoa_append::@3: scope:[utoa_append] from utoa_append::@1
[417] *utoa_append::buffer#0 = DIGITS[utoa_append::digit#2]
to:utoa_append::@return
utoa_append::@return: scope:[utoa_append] from utoa_append::@3
[418] return
to:@return
utoa_append::@2: scope:[utoa_append] from utoa_append::@1
[419] utoa_append::digit#1 = ++ utoa_append::digit#2
[420] utoa_append::value#1 = utoa_append::value#2 - utoa_append::sub#0
to:utoa_append::@1
char * strupr(char *str)
strupr: scope:[strupr] from printf_number_buffer::@11
[421] phi()
to:strupr::@1
strupr::@1: scope:[strupr] from strupr strupr::@3
[422] strupr::src#2 = phi( strupr/strupr::str#0, strupr::@3/strupr::src#1 )
[423] if(0!=*strupr::src#2) goto strupr::@2
to:strupr::@return
strupr::@return: scope:[strupr] from strupr::@1
[424] return
to:@return
strupr::@2: scope:[strupr] from strupr::@1
[425] toupper::ch#0 = *strupr::src#2
[426] call toupper
[427] toupper::return#3 = toupper::return#2
to:strupr::@3
strupr::@3: scope:[strupr] from strupr::@2
[428] strupr::$0 = toupper::return#3
[429] *strupr::src#2 = strupr::$0
[430] strupr::src#1 = ++ strupr::src#2
to:strupr::@1
char toupper(char ch)
toupper: scope:[toupper] from strupr::@2
[431] if(toupper::ch#0<'a') goto toupper::@return
to:toupper::@2
toupper::@2: scope:[toupper] from toupper
[432] if(toupper::ch#0<='z') goto toupper::@1
to:toupper::@return
toupper::@1: scope:[toupper] from toupper::@2
[433] toupper::return#0 = toupper::ch#0 + 'A'-'a'
to:toupper::@return
toupper::@return: scope:[toupper] from toupper toupper::@1 toupper::@2
[434] toupper::return#2 = phi( toupper::@1/toupper::return#0, toupper/toupper::ch#0, toupper::@2/toupper::ch#0 )
[435] return
to:@return