Inlined call call __init Eliminating unused variable with no statement memset::$2 CONTROL FLOW GRAPH SSA void print_str(char *str) print_str: scope:[print_str] from testChar testInt testLong testShort print_char_cursor#159 = phi( testChar/print_char_cursor#154, testInt/print_char_cursor#156, testLong/print_char_cursor#157, testShort/print_char_cursor#155 ) print_str::str#8 = phi( testChar/print_str::str#1, testInt/print_str::str#3, testLong/print_str::str#4, testShort/print_str::str#2 ) to:print_str::@1 print_str::@1: scope:[print_str] from print_str print_str::@3 print_char_cursor#139 = phi( print_str/print_char_cursor#159, print_str::@3/print_char_cursor#0 ) print_str::str#5 = phi( print_str/print_str::str#8, print_str::@3/print_str::str#0 ) print_str::$1 = 0 != *print_str::str#5 if(print_str::$1) goto print_str::@2 to:print_str::@return print_str::@2: scope:[print_str] from print_str::@1 print_char_cursor#138 = phi( print_str::@1/print_char_cursor#139 ) print_str::str#6 = phi( print_str::@1/print_str::str#5 ) print_char::ch#0 = *print_str::str#6 call print_char to:print_str::@3 print_str::@3: scope:[print_str] from print_str::@2 print_str::str#7 = phi( print_str::@2/print_str::str#6 ) print_char_cursor#70 = phi( print_str::@2/print_char_cursor#26 ) print_char_cursor#0 = print_char_cursor#70 print_str::str#0 = ++ print_str::str#7 to:print_str::@1 print_str::@return: scope:[print_str] from print_str::@1 print_char_cursor#71 = phi( print_str::@1/print_char_cursor#139 ) print_char_cursor#1 = print_char_cursor#71 return to:@return void print_ln() print_ln: scope:[print_ln] from testChar::@6 testInt::@6 testLong::@6 testShort::@6 print_char_cursor#140 = phi( testChar::@6/print_char_cursor#40, testInt::@6/print_char_cursor#56, testLong::@6/print_char_cursor#64, testShort::@6/print_char_cursor#48 ) print_line_cursor#41 = phi( testChar::@6/print_line_cursor#43, testInt::@6/print_line_cursor#45, testLong::@6/print_line_cursor#46, testShort::@6/print_line_cursor#44 ) to:print_ln::@1 print_ln::@1: scope:[print_ln] from print_ln print_ln::@1 print_char_cursor#72 = phi( print_ln/print_char_cursor#140, print_ln::@1/print_char_cursor#72 ) print_line_cursor#21 = phi( print_ln/print_line_cursor#41, print_ln::@1/print_line_cursor#0 ) print_ln::$0 = print_line_cursor#21 + $28 print_line_cursor#0 = print_ln::$0 print_ln::$1 = print_line_cursor#0 < print_char_cursor#72 if(print_ln::$1) goto print_ln::@1 to:print_ln::@2 print_ln::@2: scope:[print_ln] from print_ln::@1 print_line_cursor#22 = phi( print_ln::@1/print_line_cursor#0 ) print_char_cursor#2 = print_line_cursor#22 to:print_ln::@return print_ln::@return: scope:[print_ln] from print_ln::@2 print_char_cursor#73 = phi( print_ln::@2/print_char_cursor#2 ) print_line_cursor#23 = phi( print_ln::@2/print_line_cursor#22 ) print_line_cursor#1 = print_line_cursor#23 print_char_cursor#3 = print_char_cursor#73 return to:@return void print_sint(int w) print_sint: scope:[print_sint] from testInt::@3 testInt::@5 testShort::@3 testShort::@5 print_char_cursor#160 = phi( testInt::@3/print_char_cursor#53, testInt::@5/print_char_cursor#55, testShort::@3/print_char_cursor#45, testShort::@5/print_char_cursor#47 ) print_sint::w#5 = phi( testInt::@3/print_sint::w#3, testInt::@5/print_sint::w#4, testShort::@3/print_sint::w#1, testShort::@5/print_sint::w#2 ) print_sint::$0 = print_sint::w#5 < 0 if(print_sint::$0) goto print_sint::@1 to:print_sint::@3 print_sint::@1: scope:[print_sint] from print_sint print_sint::w#8 = phi( print_sint/print_sint::w#5 ) print_char_cursor#141 = phi( print_sint/print_char_cursor#160 ) print_char::ch#1 = '-' call print_char to:print_sint::@4 print_sint::@4: scope:[print_sint] from print_sint::@1 print_sint::w#6 = phi( print_sint::@1/print_sint::w#8 ) print_char_cursor#74 = phi( print_sint::@1/print_char_cursor#26 ) print_char_cursor#4 = print_char_cursor#74 print_sint::$4 = - print_sint::w#6 print_sint::w#0 = print_sint::$4 to:print_sint::@2 print_sint::@3: scope:[print_sint] from print_sint print_sint::w#10 = phi( print_sint/print_sint::w#5 ) print_char_cursor#142 = phi( print_sint/print_char_cursor#160 ) print_char::ch#2 = ' ' call print_char to:print_sint::@5 print_sint::@5: scope:[print_sint] from print_sint::@3 print_sint::w#9 = phi( print_sint::@3/print_sint::w#10 ) print_char_cursor#75 = phi( print_sint::@3/print_char_cursor#26 ) print_char_cursor#5 = print_char_cursor#75 to:print_sint::@2 print_sint::@2: scope:[print_sint] from print_sint::@4 print_sint::@5 print_char_cursor#143 = phi( print_sint::@4/print_char_cursor#4, print_sint::@5/print_char_cursor#5 ) print_sint::w#7 = phi( print_sint::@4/print_sint::w#0, print_sint::@5/print_sint::w#9 ) print_uint::w#0 = (unsigned int)print_sint::w#7 call print_uint to:print_sint::@6 print_sint::@6: scope:[print_sint] from print_sint::@2 print_char_cursor#76 = phi( print_sint::@2/print_char_cursor#14 ) print_char_cursor#6 = print_char_cursor#76 to:print_sint::@return print_sint::@return: scope:[print_sint] from print_sint::@6 print_char_cursor#77 = phi( print_sint::@6/print_char_cursor#6 ) print_char_cursor#7 = print_char_cursor#77 return to:@return void print_schar(signed char b) print_schar: scope:[print_schar] from testChar::@5 print_char_cursor#161 = phi( testChar::@5/print_char_cursor#39 ) print_schar::b#2 = phi( testChar::@5/print_schar::b#1 ) print_schar::$0 = print_schar::b#2 < 0 if(print_schar::$0) goto print_schar::@1 to:print_schar::@3 print_schar::@1: scope:[print_schar] from print_schar print_schar::b#5 = phi( print_schar/print_schar::b#2 ) print_char_cursor#144 = phi( print_schar/print_char_cursor#161 ) print_char::ch#3 = '-' call print_char to:print_schar::@4 print_schar::@4: scope:[print_schar] from print_schar::@1 print_schar::b#3 = phi( print_schar::@1/print_schar::b#5 ) print_char_cursor#78 = phi( print_schar::@1/print_char_cursor#26 ) print_char_cursor#8 = print_char_cursor#78 print_schar::$4 = - print_schar::b#3 print_schar::b#0 = print_schar::$4 to:print_schar::@2 print_schar::@3: scope:[print_schar] from print_schar print_schar::b#7 = phi( print_schar/print_schar::b#2 ) print_char_cursor#145 = phi( print_schar/print_char_cursor#161 ) print_char::ch#4 = ' ' call print_char to:print_schar::@5 print_schar::@5: scope:[print_schar] from print_schar::@3 print_schar::b#6 = phi( print_schar::@3/print_schar::b#7 ) print_char_cursor#79 = phi( print_schar::@3/print_char_cursor#26 ) print_char_cursor#9 = print_char_cursor#79 to:print_schar::@2 print_schar::@2: scope:[print_schar] from print_schar::@4 print_schar::@5 print_char_cursor#146 = phi( print_schar::@4/print_char_cursor#8, print_schar::@5/print_char_cursor#9 ) print_schar::b#4 = phi( print_schar::@4/print_schar::b#0, print_schar::@5/print_schar::b#6 ) print_uchar::b#0 = (char)print_schar::b#4 call print_uchar to:print_schar::@6 print_schar::@6: scope:[print_schar] from print_schar::@2 print_char_cursor#80 = phi( print_schar::@2/print_char_cursor#24 ) print_char_cursor#10 = print_char_cursor#80 to:print_schar::@return print_schar::@return: scope:[print_schar] from print_schar::@6 print_char_cursor#81 = phi( print_schar::@6/print_char_cursor#10 ) print_char_cursor#11 = print_char_cursor#81 return to:@return void print_uint(unsigned int w) print_uint: scope:[print_uint] from print_sint::@2 print_ulong print_ulong::@1 testInt::@1 testShort::@1 print_char_cursor#147 = phi( print_sint::@2/print_char_cursor#143, print_ulong/print_char_cursor#148, print_ulong::@1/print_char_cursor#15, testInt::@1/print_char_cursor#51, testShort::@1/print_char_cursor#43 ) print_uint::w#5 = phi( print_sint::@2/print_uint::w#0, print_ulong/print_uint::w#1, print_ulong::@1/print_uint::w#2, testInt::@1/print_uint::w#4, testShort::@1/print_uint::w#3 ) print_uint::$0 = byte1 print_uint::w#5 print_uchar::b#1 = print_uint::$0 call print_uchar to:print_uint::@1 print_uint::@1: scope:[print_uint] from print_uint print_uint::w#6 = phi( print_uint/print_uint::w#5 ) print_char_cursor#82 = phi( print_uint/print_char_cursor#24 ) print_char_cursor#12 = print_char_cursor#82 print_uint::$2 = byte0 print_uint::w#6 print_uchar::b#2 = print_uint::$2 call print_uchar to:print_uint::@2 print_uint::@2: scope:[print_uint] from print_uint::@1 print_char_cursor#83 = phi( print_uint::@1/print_char_cursor#24 ) print_char_cursor#13 = print_char_cursor#83 to:print_uint::@return print_uint::@return: scope:[print_uint] from print_uint::@2 print_char_cursor#84 = phi( print_uint::@2/print_char_cursor#13 ) print_char_cursor#14 = print_char_cursor#84 return to:@return void print_ulong(unsigned long dw) print_ulong: scope:[print_ulong] from print_slong::@2 testLong::@1 print_char_cursor#148 = phi( print_slong::@2/print_char_cursor#151, testLong::@1/print_char_cursor#59 ) print_ulong::dw#2 = phi( print_slong::@2/print_ulong::dw#0, testLong::@1/print_ulong::dw#1 ) print_ulong::$0 = word1 print_ulong::dw#2 print_uint::w#1 = print_ulong::$0 call print_uint to:print_ulong::@1 print_ulong::@1: scope:[print_ulong] from print_ulong print_ulong::dw#3 = phi( print_ulong/print_ulong::dw#2 ) print_char_cursor#85 = phi( print_ulong/print_char_cursor#14 ) print_char_cursor#15 = print_char_cursor#85 print_ulong::$2 = word0 print_ulong::dw#3 print_uint::w#2 = print_ulong::$2 call print_uint to:print_ulong::@2 print_ulong::@2: scope:[print_ulong] from print_ulong::@1 print_char_cursor#86 = phi( print_ulong::@1/print_char_cursor#14 ) print_char_cursor#16 = print_char_cursor#86 to:print_ulong::@return print_ulong::@return: scope:[print_ulong] from print_ulong::@2 print_char_cursor#87 = phi( print_ulong::@2/print_char_cursor#16 ) print_char_cursor#17 = print_char_cursor#87 return to:@return void print_slong(long dw) print_slong: scope:[print_slong] from testLong::@3 testLong::@5 print_char_cursor#162 = phi( testLong::@3/print_char_cursor#61, testLong::@5/print_char_cursor#63 ) print_slong::dw#3 = phi( testLong::@3/print_slong::dw#1, testLong::@5/print_slong::dw#2 ) print_slong::$0 = print_slong::dw#3 < 0 if(print_slong::$0) goto print_slong::@1 to:print_slong::@3 print_slong::@1: scope:[print_slong] from print_slong print_slong::dw#6 = phi( print_slong/print_slong::dw#3 ) print_char_cursor#149 = phi( print_slong/print_char_cursor#162 ) print_char::ch#5 = '-' call print_char to:print_slong::@4 print_slong::@4: scope:[print_slong] from print_slong::@1 print_slong::dw#4 = phi( print_slong::@1/print_slong::dw#6 ) print_char_cursor#88 = phi( print_slong::@1/print_char_cursor#26 ) print_char_cursor#18 = print_char_cursor#88 print_slong::$4 = - print_slong::dw#4 print_slong::dw#0 = print_slong::$4 to:print_slong::@2 print_slong::@3: scope:[print_slong] from print_slong print_slong::dw#8 = phi( print_slong/print_slong::dw#3 ) print_char_cursor#150 = phi( print_slong/print_char_cursor#162 ) print_char::ch#6 = ' ' call print_char to:print_slong::@5 print_slong::@5: scope:[print_slong] from print_slong::@3 print_slong::dw#7 = phi( print_slong::@3/print_slong::dw#8 ) print_char_cursor#89 = phi( print_slong::@3/print_char_cursor#26 ) print_char_cursor#19 = print_char_cursor#89 to:print_slong::@2 print_slong::@2: scope:[print_slong] from print_slong::@4 print_slong::@5 print_char_cursor#151 = phi( print_slong::@4/print_char_cursor#18, print_slong::@5/print_char_cursor#19 ) print_slong::dw#5 = phi( print_slong::@4/print_slong::dw#0, print_slong::@5/print_slong::dw#7 ) print_ulong::dw#0 = (unsigned long)print_slong::dw#5 call print_ulong to:print_slong::@6 print_slong::@6: scope:[print_slong] from print_slong::@2 print_char_cursor#90 = phi( print_slong::@2/print_char_cursor#17 ) print_char_cursor#20 = print_char_cursor#90 to:print_slong::@return print_slong::@return: scope:[print_slong] from print_slong::@6 print_char_cursor#91 = phi( print_slong::@6/print_char_cursor#20 ) print_char_cursor#21 = print_char_cursor#91 return to:@return void print_uchar(char b) print_uchar: scope:[print_uchar] from print_schar::@2 print_uint print_uint::@1 testChar::@1 testChar::@3 print_char_cursor#152 = phi( print_schar::@2/print_char_cursor#146, print_uint/print_char_cursor#147, print_uint::@1/print_char_cursor#12, testChar::@1/print_char_cursor#35, testChar::@3/print_char_cursor#37 ) print_uchar::b#5 = phi( print_schar::@2/print_uchar::b#0, print_uint/print_uchar::b#1, print_uint::@1/print_uchar::b#2, testChar::@1/print_uchar::b#3, testChar::@3/print_uchar::b#4 ) print_uchar::$0 = print_uchar::b#5 >> 4 print_char::ch#7 = print_hextab[print_uchar::$0] call print_char to:print_uchar::@1 print_uchar::@1: scope:[print_uchar] from print_uchar print_uchar::b#6 = phi( print_uchar/print_uchar::b#5 ) print_char_cursor#92 = phi( print_uchar/print_char_cursor#26 ) print_char_cursor#22 = print_char_cursor#92 print_uchar::$2 = print_uchar::b#6 & $f print_char::ch#8 = print_hextab[print_uchar::$2] call print_char to:print_uchar::@2 print_uchar::@2: scope:[print_uchar] from print_uchar::@1 print_char_cursor#93 = phi( print_uchar::@1/print_char_cursor#26 ) print_char_cursor#23 = print_char_cursor#93 to:print_uchar::@return print_uchar::@return: scope:[print_uchar] from print_uchar::@2 print_char_cursor#94 = phi( print_uchar::@2/print_char_cursor#23 ) print_char_cursor#24 = print_char_cursor#94 return to:@return void print_char(char ch) print_char: scope:[print_char] from print_schar::@1 print_schar::@3 print_sint::@1 print_sint::@3 print_slong::@1 print_slong::@3 print_str::@2 print_uchar print_uchar::@1 testChar::@2 testChar::@4 testInt::@2 testInt::@4 testLong::@2 testLong::@4 testShort::@2 testShort::@4 print_char_cursor#95 = phi( print_schar::@1/print_char_cursor#144, print_schar::@3/print_char_cursor#145, print_sint::@1/print_char_cursor#141, print_sint::@3/print_char_cursor#142, print_slong::@1/print_char_cursor#149, print_slong::@3/print_char_cursor#150, print_str::@2/print_char_cursor#138, print_uchar/print_char_cursor#152, print_uchar::@1/print_char_cursor#22, testChar::@2/print_char_cursor#36, testChar::@4/print_char_cursor#38, testInt::@2/print_char_cursor#52, testInt::@4/print_char_cursor#54, testLong::@2/print_char_cursor#60, testLong::@4/print_char_cursor#62, testShort::@2/print_char_cursor#44, testShort::@4/print_char_cursor#46 ) print_char::ch#17 = phi( print_schar::@1/print_char::ch#3, print_schar::@3/print_char::ch#4, print_sint::@1/print_char::ch#1, print_sint::@3/print_char::ch#2, print_slong::@1/print_char::ch#5, print_slong::@3/print_char::ch#6, print_str::@2/print_char::ch#0, print_uchar/print_char::ch#7, print_uchar::@1/print_char::ch#8, testChar::@2/print_char::ch#9, testChar::@4/print_char::ch#10, testInt::@2/print_char::ch#13, testInt::@4/print_char::ch#14, testLong::@2/print_char::ch#15, testLong::@4/print_char::ch#16, testShort::@2/print_char::ch#11, testShort::@4/print_char::ch#12 ) *print_char_cursor#95 = print_char::ch#17 print_char_cursor#25 = ++ print_char_cursor#95 to:print_char::@return print_char::@return: scope:[print_char] from print_char print_char_cursor#96 = phi( print_char/print_char_cursor#25 ) print_char_cursor#26 = print_char_cursor#96 return to:@return void print_cls() print_cls: scope:[print_cls] from main print_screen#2 = phi( main/print_screen#5 ) memset::str#0 = (void *)print_screen#2 memset::c#0 = ' ' memset::num#0 = $3e8 call memset memset::return#0 = memset::return#2 to:print_cls::@1 print_cls::@1: scope:[print_cls] from print_cls print_screen#3 = phi( print_cls/print_screen#2 ) print_line_cursor#2 = print_screen#3 print_char_cursor#27 = print_line_cursor#2 to:print_cls::@return print_cls::@return: scope:[print_cls] from print_cls::@1 print_char_cursor#97 = phi( print_cls::@1/print_char_cursor#27 ) print_line_cursor#24 = phi( print_cls::@1/print_line_cursor#2 ) print_line_cursor#3 = print_line_cursor#24 print_char_cursor#28 = print_char_cursor#97 return to:@return void * memset(void *str , char c , unsigned int num) memset: scope:[memset] from print_cls memset::c#4 = phi( print_cls/memset::c#0 ) memset::str#3 = phi( print_cls/memset::str#0 ) memset::num#1 = phi( print_cls/memset::num#0 ) memset::$0 = memset::num#1 > 0 memset::$1 = ! memset::$0 if(memset::$1) goto memset::@1 to:memset::@2 memset::@1: scope:[memset] from memset memset::@3 memset::str#1 = phi( memset/memset::str#3, memset::@3/memset::str#4 ) memset::return#1 = memset::str#1 to:memset::@return memset::@2: scope:[memset] from memset memset::c#3 = phi( memset/memset::c#4 ) memset::num#2 = phi( memset/memset::num#1 ) memset::str#2 = phi( memset/memset::str#3 ) memset::$4 = (char *)memset::str#2 memset::end#0 = memset::$4 + memset::num#2 memset::dst#0 = ((char *)) memset::str#2 to:memset::@3 memset::@3: scope:[memset] from memset::@2 memset::@4 memset::c#2 = phi( memset::@2/memset::c#3, memset::@4/memset::c#1 ) memset::str#4 = phi( memset::@2/memset::str#2, memset::@4/memset::str#5 ) memset::end#1 = phi( memset::@2/memset::end#0, memset::@4/memset::end#2 ) memset::dst#2 = phi( memset::@2/memset::dst#0, memset::@4/memset::dst#1 ) memset::$3 = memset::dst#2 != memset::end#1 if(memset::$3) goto memset::@4 to:memset::@1 memset::@4: scope:[memset] from memset::@3 memset::str#5 = phi( memset::@3/memset::str#4 ) memset::end#2 = phi( memset::@3/memset::end#1 ) memset::dst#3 = phi( memset::@3/memset::dst#2 ) memset::c#1 = phi( memset::@3/memset::c#2 ) *memset::dst#3 = memset::c#1 memset::dst#1 = ++ memset::dst#3 to:memset::@3 memset::@return: scope:[memset] from memset::@1 memset::return#3 = phi( memset::@1/memset::return#1 ) memset::return#2 = memset::return#3 return to:@return void main() main: scope:[main] from __start::@1 print_char_cursor#153 = phi( __start::@1/print_char_cursor#158 ) print_line_cursor#42 = phi( __start::@1/print_line_cursor#47 ) print_screen#5 = phi( __start::@1/print_screen#7 ) call print_cls to:main::@1 main::@1: scope:[main] from main print_char_cursor#98 = phi( main/print_char_cursor#28 ) print_line_cursor#25 = phi( main/print_line_cursor#3 ) print_line_cursor#4 = print_line_cursor#25 print_char_cursor#29 = print_char_cursor#98 call testChar to:main::@2 main::@2: scope:[main] from main::@1 print_line_cursor#26 = phi( main::@1/print_line_cursor#11 ) print_char_cursor#99 = phi( main::@1/print_char_cursor#42 ) print_char_cursor#30 = print_char_cursor#99 print_line_cursor#5 = print_line_cursor#26 call testShort to:main::@3 main::@3: scope:[main] from main::@2 print_line_cursor#27 = phi( main::@2/print_line_cursor#13 ) print_char_cursor#100 = phi( main::@2/print_char_cursor#50 ) print_char_cursor#31 = print_char_cursor#100 print_line_cursor#6 = print_line_cursor#27 call testInt to:main::@4 main::@4: scope:[main] from main::@3 print_line_cursor#28 = phi( main::@3/print_line_cursor#15 ) print_char_cursor#101 = phi( main::@3/print_char_cursor#58 ) print_char_cursor#32 = print_char_cursor#101 print_line_cursor#7 = print_line_cursor#28 call testLong to:main::@5 main::@5: scope:[main] from main::@4 print_line_cursor#29 = phi( main::@4/print_line_cursor#17 ) print_char_cursor#102 = phi( main::@4/print_char_cursor#66 ) print_char_cursor#33 = print_char_cursor#102 print_line_cursor#8 = print_line_cursor#29 to:main::@return main::@return: scope:[main] from main::@5 print_char_cursor#103 = phi( main::@5/print_char_cursor#33 ) print_line_cursor#30 = phi( main::@5/print_line_cursor#8 ) print_line_cursor#9 = print_line_cursor#30 print_char_cursor#34 = print_char_cursor#103 return to:@return void testChar() testChar: scope:[testChar] from main::@1 print_line_cursor#68 = phi( main::@1/print_line_cursor#4 ) print_char_cursor#154 = phi( main::@1/print_char_cursor#29 ) print_str::str#1 = testChar::str call print_str to:testChar::@1 testChar::@1: scope:[testChar] from testChar print_line_cursor#64 = phi( testChar/print_line_cursor#68 ) print_char_cursor#104 = phi( testChar/print_char_cursor#1 ) print_char_cursor#35 = print_char_cursor#104 print_uchar::b#3 = testChar::u call print_uchar to:testChar::@2 testChar::@2: scope:[testChar] from testChar::@1 print_line_cursor#60 = phi( testChar::@1/print_line_cursor#64 ) print_char_cursor#105 = phi( testChar::@1/print_char_cursor#24 ) print_char_cursor#36 = print_char_cursor#105 print_char::ch#9 = ' ' call print_char to:testChar::@3 testChar::@3: scope:[testChar] from testChar::@2 print_line_cursor#56 = phi( testChar::@2/print_line_cursor#60 ) print_char_cursor#106 = phi( testChar::@2/print_char_cursor#26 ) print_char_cursor#37 = print_char_cursor#106 print_uchar::b#4 = testChar::n call print_uchar to:testChar::@4 testChar::@4: scope:[testChar] from testChar::@3 print_line_cursor#52 = phi( testChar::@3/print_line_cursor#56 ) print_char_cursor#107 = phi( testChar::@3/print_char_cursor#24 ) print_char_cursor#38 = print_char_cursor#107 print_char::ch#10 = ' ' call print_char to:testChar::@5 testChar::@5: scope:[testChar] from testChar::@4 print_line_cursor#48 = phi( testChar::@4/print_line_cursor#52 ) print_char_cursor#108 = phi( testChar::@4/print_char_cursor#26 ) print_char_cursor#39 = print_char_cursor#108 print_schar::b#1 = testChar::s call print_schar to:testChar::@6 testChar::@6: scope:[testChar] from testChar::@5 print_line_cursor#43 = phi( testChar::@5/print_line_cursor#48 ) print_char_cursor#109 = phi( testChar::@5/print_char_cursor#11 ) print_char_cursor#40 = print_char_cursor#109 call print_ln to:testChar::@7 testChar::@7: scope:[testChar] from testChar::@6 print_char_cursor#110 = phi( testChar::@6/print_char_cursor#3 ) print_line_cursor#31 = phi( testChar::@6/print_line_cursor#1 ) print_line_cursor#10 = print_line_cursor#31 print_char_cursor#41 = print_char_cursor#110 to:testChar::@return testChar::@return: scope:[testChar] from testChar::@7 print_line_cursor#32 = phi( testChar::@7/print_line_cursor#10 ) print_char_cursor#111 = phi( testChar::@7/print_char_cursor#41 ) print_char_cursor#42 = print_char_cursor#111 print_line_cursor#11 = print_line_cursor#32 return to:@return void testShort() testShort: scope:[testShort] from main::@2 print_line_cursor#69 = phi( main::@2/print_line_cursor#5 ) print_char_cursor#155 = phi( main::@2/print_char_cursor#30 ) print_str::str#2 = testShort::str call print_str to:testShort::@1 testShort::@1: scope:[testShort] from testShort print_line_cursor#65 = phi( testShort/print_line_cursor#69 ) print_char_cursor#112 = phi( testShort/print_char_cursor#1 ) print_char_cursor#43 = print_char_cursor#112 print_uint::w#3 = testShort::u call print_uint to:testShort::@2 testShort::@2: scope:[testShort] from testShort::@1 print_line_cursor#61 = phi( testShort::@1/print_line_cursor#65 ) print_char_cursor#113 = phi( testShort::@1/print_char_cursor#14 ) print_char_cursor#44 = print_char_cursor#113 print_char::ch#11 = ' ' call print_char to:testShort::@3 testShort::@3: scope:[testShort] from testShort::@2 print_line_cursor#57 = phi( testShort::@2/print_line_cursor#61 ) print_char_cursor#114 = phi( testShort::@2/print_char_cursor#26 ) print_char_cursor#45 = print_char_cursor#114 print_sint::w#1 = testShort::n call print_sint to:testShort::@4 testShort::@4: scope:[testShort] from testShort::@3 print_line_cursor#53 = phi( testShort::@3/print_line_cursor#57 ) print_char_cursor#115 = phi( testShort::@3/print_char_cursor#7 ) print_char_cursor#46 = print_char_cursor#115 print_char::ch#12 = ' ' call print_char to:testShort::@5 testShort::@5: scope:[testShort] from testShort::@4 print_line_cursor#49 = phi( testShort::@4/print_line_cursor#53 ) print_char_cursor#116 = phi( testShort::@4/print_char_cursor#26 ) print_char_cursor#47 = print_char_cursor#116 print_sint::w#2 = testShort::s call print_sint to:testShort::@6 testShort::@6: scope:[testShort] from testShort::@5 print_line_cursor#44 = phi( testShort::@5/print_line_cursor#49 ) print_char_cursor#117 = phi( testShort::@5/print_char_cursor#7 ) print_char_cursor#48 = print_char_cursor#117 call print_ln to:testShort::@7 testShort::@7: scope:[testShort] from testShort::@6 print_char_cursor#118 = phi( testShort::@6/print_char_cursor#3 ) print_line_cursor#33 = phi( testShort::@6/print_line_cursor#1 ) print_line_cursor#12 = print_line_cursor#33 print_char_cursor#49 = print_char_cursor#118 to:testShort::@return testShort::@return: scope:[testShort] from testShort::@7 print_line_cursor#34 = phi( testShort::@7/print_line_cursor#12 ) print_char_cursor#119 = phi( testShort::@7/print_char_cursor#49 ) print_char_cursor#50 = print_char_cursor#119 print_line_cursor#13 = print_line_cursor#34 return to:@return void testInt() testInt: scope:[testInt] from main::@3 print_line_cursor#70 = phi( main::@3/print_line_cursor#6 ) print_char_cursor#156 = phi( main::@3/print_char_cursor#31 ) print_str::str#3 = testInt::str call print_str to:testInt::@1 testInt::@1: scope:[testInt] from testInt print_line_cursor#66 = phi( testInt/print_line_cursor#70 ) print_char_cursor#120 = phi( testInt/print_char_cursor#1 ) print_char_cursor#51 = print_char_cursor#120 print_uint::w#4 = testInt::u call print_uint to:testInt::@2 testInt::@2: scope:[testInt] from testInt::@1 print_line_cursor#62 = phi( testInt::@1/print_line_cursor#66 ) print_char_cursor#121 = phi( testInt::@1/print_char_cursor#14 ) print_char_cursor#52 = print_char_cursor#121 print_char::ch#13 = ' ' call print_char to:testInt::@3 testInt::@3: scope:[testInt] from testInt::@2 print_line_cursor#58 = phi( testInt::@2/print_line_cursor#62 ) print_char_cursor#122 = phi( testInt::@2/print_char_cursor#26 ) print_char_cursor#53 = print_char_cursor#122 print_sint::w#3 = testInt::n call print_sint to:testInt::@4 testInt::@4: scope:[testInt] from testInt::@3 print_line_cursor#54 = phi( testInt::@3/print_line_cursor#58 ) print_char_cursor#123 = phi( testInt::@3/print_char_cursor#7 ) print_char_cursor#54 = print_char_cursor#123 print_char::ch#14 = ' ' call print_char to:testInt::@5 testInt::@5: scope:[testInt] from testInt::@4 print_line_cursor#50 = phi( testInt::@4/print_line_cursor#54 ) print_char_cursor#124 = phi( testInt::@4/print_char_cursor#26 ) print_char_cursor#55 = print_char_cursor#124 print_sint::w#4 = testInt::s call print_sint to:testInt::@6 testInt::@6: scope:[testInt] from testInt::@5 print_line_cursor#45 = phi( testInt::@5/print_line_cursor#50 ) print_char_cursor#125 = phi( testInt::@5/print_char_cursor#7 ) print_char_cursor#56 = print_char_cursor#125 call print_ln to:testInt::@7 testInt::@7: scope:[testInt] from testInt::@6 print_char_cursor#126 = phi( testInt::@6/print_char_cursor#3 ) print_line_cursor#35 = phi( testInt::@6/print_line_cursor#1 ) print_line_cursor#14 = print_line_cursor#35 print_char_cursor#57 = print_char_cursor#126 to:testInt::@return testInt::@return: scope:[testInt] from testInt::@7 print_line_cursor#36 = phi( testInt::@7/print_line_cursor#14 ) print_char_cursor#127 = phi( testInt::@7/print_char_cursor#57 ) print_char_cursor#58 = print_char_cursor#127 print_line_cursor#15 = print_line_cursor#36 return to:@return void testLong() testLong: scope:[testLong] from main::@4 print_line_cursor#71 = phi( main::@4/print_line_cursor#7 ) print_char_cursor#157 = phi( main::@4/print_char_cursor#32 ) print_str::str#4 = testLong::str call print_str to:testLong::@1 testLong::@1: scope:[testLong] from testLong print_line_cursor#67 = phi( testLong/print_line_cursor#71 ) print_char_cursor#128 = phi( testLong/print_char_cursor#1 ) print_char_cursor#59 = print_char_cursor#128 print_ulong::dw#1 = testLong::u call print_ulong to:testLong::@2 testLong::@2: scope:[testLong] from testLong::@1 print_line_cursor#63 = phi( testLong::@1/print_line_cursor#67 ) print_char_cursor#129 = phi( testLong::@1/print_char_cursor#17 ) print_char_cursor#60 = print_char_cursor#129 print_char::ch#15 = ' ' call print_char to:testLong::@3 testLong::@3: scope:[testLong] from testLong::@2 print_line_cursor#59 = phi( testLong::@2/print_line_cursor#63 ) print_char_cursor#130 = phi( testLong::@2/print_char_cursor#26 ) print_char_cursor#61 = print_char_cursor#130 print_slong::dw#1 = testLong::n call print_slong to:testLong::@4 testLong::@4: scope:[testLong] from testLong::@3 print_line_cursor#55 = phi( testLong::@3/print_line_cursor#59 ) print_char_cursor#131 = phi( testLong::@3/print_char_cursor#21 ) print_char_cursor#62 = print_char_cursor#131 print_char::ch#16 = ' ' call print_char to:testLong::@5 testLong::@5: scope:[testLong] from testLong::@4 print_line_cursor#51 = phi( testLong::@4/print_line_cursor#55 ) print_char_cursor#132 = phi( testLong::@4/print_char_cursor#26 ) print_char_cursor#63 = print_char_cursor#132 print_slong::dw#2 = testLong::s call print_slong to:testLong::@6 testLong::@6: scope:[testLong] from testLong::@5 print_line_cursor#46 = phi( testLong::@5/print_line_cursor#51 ) print_char_cursor#133 = phi( testLong::@5/print_char_cursor#21 ) print_char_cursor#64 = print_char_cursor#133 call print_ln to:testLong::@7 testLong::@7: scope:[testLong] from testLong::@6 print_char_cursor#134 = phi( testLong::@6/print_char_cursor#3 ) print_line_cursor#37 = phi( testLong::@6/print_line_cursor#1 ) print_line_cursor#16 = print_line_cursor#37 print_char_cursor#65 = print_char_cursor#134 to:testLong::@return testLong::@return: scope:[testLong] from testLong::@7 print_line_cursor#38 = phi( testLong::@7/print_line_cursor#16 ) print_char_cursor#135 = phi( testLong::@7/print_char_cursor#65 ) print_char_cursor#66 = print_char_cursor#135 print_line_cursor#17 = print_line_cursor#38 return to:@return void __start() __start: scope:[__start] from to:__start::__init1 __start::__init1: scope:[__start] from __start print_screen#0 = (char *)$400 print_line_cursor#18 = print_screen#0 print_char_cursor#67 = print_line_cursor#18 to:__start::@1 __start::@1: scope:[__start] from __start::__init1 print_screen#7 = phi( __start::__init1/print_screen#0 ) print_char_cursor#158 = phi( __start::__init1/print_char_cursor#67 ) print_line_cursor#47 = phi( __start::__init1/print_line_cursor#18 ) call main to:__start::@2 __start::@2: scope:[__start] from __start::@1 print_screen#6 = phi( __start::@1/print_screen#7 ) print_char_cursor#136 = phi( __start::@1/print_char_cursor#34 ) print_line_cursor#39 = phi( __start::@1/print_line_cursor#9 ) print_line_cursor#19 = print_line_cursor#39 print_char_cursor#68 = print_char_cursor#136 to:__start::@return __start::@return: scope:[__start] from __start::@2 print_char_cursor#137 = phi( __start::@2/print_char_cursor#68 ) print_line_cursor#40 = phi( __start::@2/print_line_cursor#19 ) print_screen#4 = phi( __start::@2/print_screen#6 ) print_screen#1 = print_screen#4 print_line_cursor#20 = print_line_cursor#40 print_char_cursor#69 = print_char_cursor#137 return to:@return SYMBOL TABLE SSA __constant char RADIX::BINARY = 2 __constant char RADIX::DECIMAL = $a __constant char RADIX::HEXADECIMAL = $10 __constant char RADIX::OCTAL = 8 void __start() void main() void * memset(void *str , char c , unsigned int num) bool memset::$0 bool memset::$1 bool memset::$3 char *memset::$4 char memset::c char memset::c#0 char memset::c#1 char memset::c#2 char memset::c#3 char memset::c#4 char *memset::dst char *memset::dst#0 char *memset::dst#1 char *memset::dst#2 char *memset::dst#3 char *memset::end char *memset::end#0 char *memset::end#1 char *memset::end#2 unsigned int memset::num unsigned int memset::num#0 unsigned int memset::num#1 unsigned int memset::num#2 void *memset::return void *memset::return#0 void *memset::return#1 void *memset::return#2 void *memset::return#3 void *memset::str void *memset::str#0 void *memset::str#1 void *memset::str#2 void *memset::str#3 void *memset::str#4 void *memset::str#5 void print_char(char ch) char print_char::ch char print_char::ch#0 char print_char::ch#1 char print_char::ch#10 char print_char::ch#11 char print_char::ch#12 char print_char::ch#13 char print_char::ch#14 char print_char::ch#15 char print_char::ch#16 char print_char::ch#17 char print_char::ch#2 char print_char::ch#3 char print_char::ch#4 char print_char::ch#5 char print_char::ch#6 char print_char::ch#7 char print_char::ch#8 char print_char::ch#9 char *print_char_cursor char *print_char_cursor#0 char *print_char_cursor#1 char *print_char_cursor#10 char *print_char_cursor#100 char *print_char_cursor#101 char *print_char_cursor#102 char *print_char_cursor#103 char *print_char_cursor#104 char *print_char_cursor#105 char *print_char_cursor#106 char *print_char_cursor#107 char *print_char_cursor#108 char *print_char_cursor#109 char *print_char_cursor#11 char *print_char_cursor#110 char *print_char_cursor#111 char *print_char_cursor#112 char *print_char_cursor#113 char *print_char_cursor#114 char *print_char_cursor#115 char *print_char_cursor#116 char *print_char_cursor#117 char *print_char_cursor#118 char *print_char_cursor#119 char *print_char_cursor#12 char *print_char_cursor#120 char *print_char_cursor#121 char *print_char_cursor#122 char *print_char_cursor#123 char *print_char_cursor#124 char *print_char_cursor#125 char *print_char_cursor#126 char *print_char_cursor#127 char *print_char_cursor#128 char *print_char_cursor#129 char *print_char_cursor#13 char *print_char_cursor#130 char *print_char_cursor#131 char *print_char_cursor#132 char *print_char_cursor#133 char *print_char_cursor#134 char *print_char_cursor#135 char *print_char_cursor#136 char *print_char_cursor#137 char *print_char_cursor#138 char *print_char_cursor#139 char *print_char_cursor#14 char *print_char_cursor#140 char *print_char_cursor#141 char *print_char_cursor#142 char *print_char_cursor#143 char *print_char_cursor#144 char *print_char_cursor#145 char *print_char_cursor#146 char *print_char_cursor#147 char *print_char_cursor#148 char *print_char_cursor#149 char *print_char_cursor#15 char *print_char_cursor#150 char *print_char_cursor#151 char *print_char_cursor#152 char *print_char_cursor#153 char *print_char_cursor#154 char *print_char_cursor#155 char *print_char_cursor#156 char *print_char_cursor#157 char *print_char_cursor#158 char *print_char_cursor#159 char *print_char_cursor#16 char *print_char_cursor#160 char *print_char_cursor#161 char *print_char_cursor#162 char *print_char_cursor#17 char *print_char_cursor#18 char *print_char_cursor#19 char *print_char_cursor#2 char *print_char_cursor#20 char *print_char_cursor#21 char *print_char_cursor#22 char *print_char_cursor#23 char *print_char_cursor#24 char *print_char_cursor#25 char *print_char_cursor#26 char *print_char_cursor#27 char *print_char_cursor#28 char *print_char_cursor#29 char *print_char_cursor#3 char *print_char_cursor#30 char *print_char_cursor#31 char *print_char_cursor#32 char *print_char_cursor#33 char *print_char_cursor#34 char *print_char_cursor#35 char *print_char_cursor#36 char *print_char_cursor#37 char *print_char_cursor#38 char *print_char_cursor#39 char *print_char_cursor#4 char *print_char_cursor#40 char *print_char_cursor#41 char *print_char_cursor#42 char *print_char_cursor#43 char *print_char_cursor#44 char *print_char_cursor#45 char *print_char_cursor#46 char *print_char_cursor#47 char *print_char_cursor#48 char *print_char_cursor#49 char *print_char_cursor#5 char *print_char_cursor#50 char *print_char_cursor#51 char *print_char_cursor#52 char *print_char_cursor#53 char *print_char_cursor#54 char *print_char_cursor#55 char *print_char_cursor#56 char *print_char_cursor#57 char *print_char_cursor#58 char *print_char_cursor#59 char *print_char_cursor#6 char *print_char_cursor#60 char *print_char_cursor#61 char *print_char_cursor#62 char *print_char_cursor#63 char *print_char_cursor#64 char *print_char_cursor#65 char *print_char_cursor#66 char *print_char_cursor#67 char *print_char_cursor#68 char *print_char_cursor#69 char *print_char_cursor#7 char *print_char_cursor#70 char *print_char_cursor#71 char *print_char_cursor#72 char *print_char_cursor#73 char *print_char_cursor#74 char *print_char_cursor#75 char *print_char_cursor#76 char *print_char_cursor#77 char *print_char_cursor#78 char *print_char_cursor#79 char *print_char_cursor#8 char *print_char_cursor#80 char *print_char_cursor#81 char *print_char_cursor#82 char *print_char_cursor#83 char *print_char_cursor#84 char *print_char_cursor#85 char *print_char_cursor#86 char *print_char_cursor#87 char *print_char_cursor#88 char *print_char_cursor#89 char *print_char_cursor#9 char *print_char_cursor#90 char *print_char_cursor#91 char *print_char_cursor#92 char *print_char_cursor#93 char *print_char_cursor#94 char *print_char_cursor#95 char *print_char_cursor#96 char *print_char_cursor#97 char *print_char_cursor#98 char *print_char_cursor#99 void print_cls() __constant const char print_hextab[] = "0123456789abcdef"z char *print_line_cursor char *print_line_cursor#0 char *print_line_cursor#1 char *print_line_cursor#10 char *print_line_cursor#11 char *print_line_cursor#12 char *print_line_cursor#13 char *print_line_cursor#14 char *print_line_cursor#15 char *print_line_cursor#16 char *print_line_cursor#17 char *print_line_cursor#18 char *print_line_cursor#19 char *print_line_cursor#2 char *print_line_cursor#20 char *print_line_cursor#21 char *print_line_cursor#22 char *print_line_cursor#23 char *print_line_cursor#24 char *print_line_cursor#25 char *print_line_cursor#26 char *print_line_cursor#27 char *print_line_cursor#28 char *print_line_cursor#29 char *print_line_cursor#3 char *print_line_cursor#30 char *print_line_cursor#31 char *print_line_cursor#32 char *print_line_cursor#33 char *print_line_cursor#34 char *print_line_cursor#35 char *print_line_cursor#36 char *print_line_cursor#37 char *print_line_cursor#38 char *print_line_cursor#39 char *print_line_cursor#4 char *print_line_cursor#40 char *print_line_cursor#41 char *print_line_cursor#42 char *print_line_cursor#43 char *print_line_cursor#44 char *print_line_cursor#45 char *print_line_cursor#46 char *print_line_cursor#47 char *print_line_cursor#48 char *print_line_cursor#49 char *print_line_cursor#5 char *print_line_cursor#50 char *print_line_cursor#51 char *print_line_cursor#52 char *print_line_cursor#53 char *print_line_cursor#54 char *print_line_cursor#55 char *print_line_cursor#56 char *print_line_cursor#57 char *print_line_cursor#58 char *print_line_cursor#59 char *print_line_cursor#6 char *print_line_cursor#60 char *print_line_cursor#61 char *print_line_cursor#62 char *print_line_cursor#63 char *print_line_cursor#64 char *print_line_cursor#65 char *print_line_cursor#66 char *print_line_cursor#67 char *print_line_cursor#68 char *print_line_cursor#69 char *print_line_cursor#7 char *print_line_cursor#70 char *print_line_cursor#71 char *print_line_cursor#8 char *print_line_cursor#9 void print_ln() char *print_ln::$0 bool print_ln::$1 void print_schar(signed char b) bool print_schar::$0 signed char print_schar::$4 signed char print_schar::b signed char print_schar::b#0 signed char print_schar::b#1 signed char print_schar::b#2 signed char print_schar::b#3 signed char print_schar::b#4 signed char print_schar::b#5 signed char print_schar::b#6 signed char print_schar::b#7 char *print_screen char *print_screen#0 char *print_screen#1 char *print_screen#2 char *print_screen#3 char *print_screen#4 char *print_screen#5 char *print_screen#6 char *print_screen#7 void print_sint(int w) bool print_sint::$0 int print_sint::$4 int print_sint::w int print_sint::w#0 int print_sint::w#1 int print_sint::w#10 int print_sint::w#2 int print_sint::w#3 int print_sint::w#4 int print_sint::w#5 int print_sint::w#6 int print_sint::w#7 int print_sint::w#8 int print_sint::w#9 void print_slong(long dw) bool print_slong::$0 long print_slong::$4 long print_slong::dw long print_slong::dw#0 long print_slong::dw#1 long print_slong::dw#2 long print_slong::dw#3 long print_slong::dw#4 long print_slong::dw#5 long print_slong::dw#6 long print_slong::dw#7 long print_slong::dw#8 void print_str(char *str) bool print_str::$1 char *print_str::str char *print_str::str#0 char *print_str::str#1 char *print_str::str#2 char *print_str::str#3 char *print_str::str#4 char *print_str::str#5 char *print_str::str#6 char *print_str::str#7 char *print_str::str#8 void print_uchar(char b) char print_uchar::$0 number print_uchar::$2 char print_uchar::b char print_uchar::b#0 char print_uchar::b#1 char print_uchar::b#2 char print_uchar::b#3 char print_uchar::b#4 char print_uchar::b#5 char print_uchar::b#6 void print_uint(unsigned int w) char print_uint::$0 char print_uint::$2 unsigned int print_uint::w unsigned int print_uint::w#0 unsigned int print_uint::w#1 unsigned int print_uint::w#2 unsigned int print_uint::w#3 unsigned int print_uint::w#4 unsigned int print_uint::w#5 unsigned int print_uint::w#6 void print_ulong(unsigned long dw) unsigned int print_ulong::$0 unsigned int print_ulong::$2 unsigned long print_ulong::dw unsigned long print_ulong::dw#0 unsigned long print_ulong::dw#1 unsigned long print_ulong::dw#2 unsigned long print_ulong::dw#3 void testChar() __constant char testChar::n = $e __constant signed char testChar::s = -$e __constant char testChar::str[7] = "char: " __constant char testChar::u = $e void testInt() __constant int testInt::n = -$578 __constant int testInt::s = -$578 __constant char testInt::str[6] = "int: " __constant unsigned int testInt::u = $578 void testLong() __constant long testLong::n = -$222e0 __constant long testLong::s = -$222e0 __constant char testLong::str[7] = "long: " __constant unsigned long testLong::u = $222e0 void testShort() __constant int testShort::n = -$578 __constant int testShort::s = -$578 __constant char testShort::str[8] = "short: " __constant unsigned int testShort::u = $578 Adding number conversion cast (unumber) 0 in print_str::$1 = 0 != *print_str::str#5 Adding number conversion cast (unumber) $28 in print_ln::$0 = print_line_cursor#21 + $28 Adding number conversion cast (snumber) 0 in print_sint::$0 = print_sint::w#5 < 0 Adding number conversion cast (snumber) 0 in print_schar::$0 = print_schar::b#2 < 0 Adding number conversion cast (snumber) 0 in print_slong::$0 = print_slong::dw#3 < 0 Adding number conversion cast (unumber) 4 in print_uchar::$0 = print_uchar::b#5 >> 4 Adding number conversion cast (unumber) $f in print_uchar::$2 = print_uchar::b#6 & $f Adding number conversion cast (unumber) print_uchar::$2 in print_uchar::$2 = print_uchar::b#6 & (unumber)$f Adding number conversion cast (unumber) $3e8 in memset::num#0 = $3e8 Adding number conversion cast (unumber) 0 in memset::$0 = memset::num#1 > 0 Successful SSA optimization PassNAddNumberTypeConversions Inlining cast memset::num#0 = (unumber)$3e8 Inlining cast memset::dst#0 = (char *)memset::str#2 Successful SSA optimization Pass2InlineCast Simplifying constant integer cast 0 Simplifying constant integer cast $28 Simplifying constant integer cast 0 Simplifying constant integer cast 0 Simplifying constant integer cast 0 Simplifying constant integer cast 4 Simplifying constant integer cast $f Simplifying constant integer cast $3e8 Simplifying constant integer cast 0 Simplifying constant pointer cast (char *) 1024 Successful SSA optimization PassNCastSimplification Finalized unsigned number type (char) 0 Finalized unsigned number type (char) $28 Finalized signed number type (signed char) 0 Finalized signed number type (signed char) 0 Finalized signed number type (signed char) 0 Finalized unsigned number type (char) 4 Finalized unsigned number type (char) $f Finalized unsigned number type (unsigned int) $3e8 Finalized unsigned number type (char) 0 Successful SSA optimization PassNFinalizeNumberTypeConversions Inferred type updated to char in print_uchar::$2 = print_uchar::b#6 & $f Inversing boolean not [157] memset::$1 = memset::num#1 <= 0 from [156] memset::$0 = memset::num#1 > 0 Successful SSA optimization Pass2UnaryNotSimplification Alias print_str::str#5 = print_str::str#6 print_str::str#7 Alias print_char_cursor#1 = print_char_cursor#138 print_char_cursor#139 print_char_cursor#71 Alias print_char_cursor#0 = print_char_cursor#70 Alias print_line_cursor#0 = print_ln::$0 print_line_cursor#22 print_char_cursor#2 print_line_cursor#23 print_char_cursor#73 print_line_cursor#1 print_char_cursor#3 Alias print_char_cursor#141 = print_char_cursor#160 print_char_cursor#142 Alias print_sint::w#10 = print_sint::w#8 print_sint::w#5 print_sint::w#6 print_sint::w#9 Alias print_char_cursor#4 = print_char_cursor#74 Alias print_sint::w#0 = print_sint::$4 Alias print_char_cursor#5 = print_char_cursor#75 Alias print_char_cursor#6 = print_char_cursor#76 print_char_cursor#77 print_char_cursor#7 Alias print_char_cursor#144 = print_char_cursor#161 print_char_cursor#145 Alias print_schar::b#2 = print_schar::b#5 print_schar::b#3 print_schar::b#7 print_schar::b#6 Alias print_char_cursor#78 = print_char_cursor#8 Alias print_schar::b#0 = print_schar::$4 Alias print_char_cursor#79 = print_char_cursor#9 Alias print_char_cursor#10 = print_char_cursor#80 print_char_cursor#81 print_char_cursor#11 Alias print_uchar::b#1 = print_uint::$0 Alias print_uint::w#5 = print_uint::w#6 Alias print_char_cursor#12 = print_char_cursor#82 Alias print_uchar::b#2 = print_uint::$2 Alias print_char_cursor#13 = print_char_cursor#83 print_char_cursor#84 print_char_cursor#14 Alias print_uint::w#1 = print_ulong::$0 Alias print_ulong::dw#2 = print_ulong::dw#3 Alias print_char_cursor#15 = print_char_cursor#85 Alias print_uint::w#2 = print_ulong::$2 Alias print_char_cursor#16 = print_char_cursor#86 print_char_cursor#87 print_char_cursor#17 Alias print_char_cursor#149 = print_char_cursor#162 print_char_cursor#150 Alias print_slong::dw#3 = print_slong::dw#6 print_slong::dw#4 print_slong::dw#8 print_slong::dw#7 Alias print_char_cursor#18 = print_char_cursor#88 Alias print_slong::dw#0 = print_slong::$4 Alias print_char_cursor#19 = print_char_cursor#89 Alias print_char_cursor#20 = print_char_cursor#90 print_char_cursor#91 print_char_cursor#21 Alias print_uchar::b#5 = print_uchar::b#6 Alias print_char_cursor#22 = print_char_cursor#92 Alias print_char_cursor#23 = print_char_cursor#93 print_char_cursor#94 print_char_cursor#24 Alias print_char_cursor#25 = print_char_cursor#96 print_char_cursor#26 Alias print_line_cursor#2 = print_screen#3 print_screen#2 print_char_cursor#27 print_line_cursor#24 print_char_cursor#97 print_line_cursor#3 print_char_cursor#28 Alias memset::return#1 = memset::str#1 memset::return#3 memset::return#2 Alias memset::str#2 = memset::str#3 Alias memset::num#1 = memset::num#2 Alias memset::c#3 = memset::c#4 Alias memset::c#1 = memset::c#2 Alias memset::dst#2 = memset::dst#3 Alias memset::end#1 = memset::end#2 Alias memset::str#4 = memset::str#5 Alias print_line_cursor#25 = print_line_cursor#4 Alias print_char_cursor#29 = print_char_cursor#98 Alias print_char_cursor#30 = print_char_cursor#99 Alias print_line_cursor#26 = print_line_cursor#5 Alias print_char_cursor#100 = print_char_cursor#31 Alias print_line_cursor#27 = print_line_cursor#6 Alias print_char_cursor#101 = print_char_cursor#32 Alias print_line_cursor#28 = print_line_cursor#7 Alias print_char_cursor#102 = print_char_cursor#33 print_char_cursor#103 print_char_cursor#34 Alias print_line_cursor#29 = print_line_cursor#8 print_line_cursor#30 print_line_cursor#9 Alias print_line_cursor#43 = print_line_cursor#64 print_line_cursor#68 print_line_cursor#60 print_line_cursor#56 print_line_cursor#52 print_line_cursor#48 Alias print_char_cursor#104 = print_char_cursor#35 Alias print_char_cursor#105 = print_char_cursor#36 Alias print_char_cursor#106 = print_char_cursor#37 Alias print_char_cursor#107 = print_char_cursor#38 Alias print_char_cursor#108 = print_char_cursor#39 Alias print_char_cursor#109 = print_char_cursor#40 Alias print_line_cursor#10 = print_line_cursor#31 print_line_cursor#32 print_line_cursor#11 Alias print_char_cursor#110 = print_char_cursor#41 print_char_cursor#111 print_char_cursor#42 Alias print_line_cursor#44 = print_line_cursor#65 print_line_cursor#69 print_line_cursor#61 print_line_cursor#57 print_line_cursor#53 print_line_cursor#49 Alias print_char_cursor#112 = print_char_cursor#43 Alias print_char_cursor#113 = print_char_cursor#44 Alias print_char_cursor#114 = print_char_cursor#45 Alias print_char_cursor#115 = print_char_cursor#46 Alias print_char_cursor#116 = print_char_cursor#47 Alias print_char_cursor#117 = print_char_cursor#48 Alias print_line_cursor#12 = print_line_cursor#33 print_line_cursor#34 print_line_cursor#13 Alias print_char_cursor#118 = print_char_cursor#49 print_char_cursor#119 print_char_cursor#50 Alias print_line_cursor#45 = print_line_cursor#66 print_line_cursor#70 print_line_cursor#62 print_line_cursor#58 print_line_cursor#54 print_line_cursor#50 Alias print_char_cursor#120 = print_char_cursor#51 Alias print_char_cursor#121 = print_char_cursor#52 Alias print_char_cursor#122 = print_char_cursor#53 Alias print_char_cursor#123 = print_char_cursor#54 Alias print_char_cursor#124 = print_char_cursor#55 Alias print_char_cursor#125 = print_char_cursor#56 Alias print_line_cursor#14 = print_line_cursor#35 print_line_cursor#36 print_line_cursor#15 Alias print_char_cursor#126 = print_char_cursor#57 print_char_cursor#127 print_char_cursor#58 Alias print_line_cursor#46 = print_line_cursor#67 print_line_cursor#71 print_line_cursor#63 print_line_cursor#59 print_line_cursor#55 print_line_cursor#51 Alias print_char_cursor#128 = print_char_cursor#59 Alias print_char_cursor#129 = print_char_cursor#60 Alias print_char_cursor#130 = print_char_cursor#61 Alias print_char_cursor#131 = print_char_cursor#62 Alias print_char_cursor#132 = print_char_cursor#63 Alias print_char_cursor#133 = print_char_cursor#64 Alias print_line_cursor#16 = print_line_cursor#37 print_line_cursor#38 print_line_cursor#17 Alias print_char_cursor#134 = print_char_cursor#65 print_char_cursor#135 print_char_cursor#66 Alias print_screen#0 = print_line_cursor#18 print_char_cursor#67 print_line_cursor#47 print_char_cursor#158 print_screen#7 print_screen#6 print_screen#4 print_screen#1 Alias print_line_cursor#19 = print_line_cursor#39 print_line_cursor#40 print_line_cursor#20 Alias print_char_cursor#136 = print_char_cursor#68 print_char_cursor#137 print_char_cursor#69 Successful SSA optimization Pass2AliasElimination Identical Phi Values print_char_cursor#0 print_char_cursor#25 Identical Phi Values print_char_cursor#72 print_char_cursor#140 Identical Phi Values print_char_cursor#4 print_char_cursor#25 Identical Phi Values print_char_cursor#5 print_char_cursor#25 Identical Phi Values print_char_cursor#6 print_char_cursor#13 Identical Phi Values print_schar::b#2 print_schar::b#1 Identical Phi Values print_char_cursor#144 print_char_cursor#108 Identical Phi Values print_char_cursor#78 print_char_cursor#25 Identical Phi Values print_char_cursor#79 print_char_cursor#25 Identical Phi Values print_char_cursor#10 print_char_cursor#23 Identical Phi Values print_char_cursor#12 print_char_cursor#23 Identical Phi Values print_char_cursor#13 print_char_cursor#23 Identical Phi Values print_char_cursor#15 print_char_cursor#13 Identical Phi Values print_char_cursor#16 print_char_cursor#13 Identical Phi Values print_char_cursor#18 print_char_cursor#25 Identical Phi Values print_char_cursor#19 print_char_cursor#25 Identical Phi Values print_char_cursor#20 print_char_cursor#16 Identical Phi Values print_char_cursor#22 print_char_cursor#25 Identical Phi Values print_char_cursor#23 print_char_cursor#25 Identical Phi Values print_line_cursor#2 print_screen#5 Identical Phi Values memset::num#1 memset::num#0 Identical Phi Values memset::str#2 memset::str#0 Identical Phi Values memset::c#3 memset::c#0 Identical Phi Values memset::end#1 memset::end#0 Identical Phi Values memset::str#4 memset::str#2 Identical Phi Values memset::c#1 memset::c#3 Identical Phi Values print_screen#5 print_screen#0 Identical Phi Values print_line_cursor#42 print_screen#0 Identical Phi Values print_char_cursor#153 print_screen#0 Identical Phi Values print_line_cursor#25 print_line_cursor#2 Identical Phi Values print_char_cursor#29 print_line_cursor#2 Identical Phi Values print_char_cursor#30 print_char_cursor#110 Identical Phi Values print_line_cursor#26 print_line_cursor#10 Identical Phi Values print_char_cursor#100 print_char_cursor#118 Identical Phi Values print_line_cursor#27 print_line_cursor#12 Identical Phi Values print_char_cursor#101 print_char_cursor#126 Identical Phi Values print_line_cursor#28 print_line_cursor#14 Identical Phi Values print_char_cursor#102 print_char_cursor#134 Identical Phi Values print_line_cursor#29 print_line_cursor#16 Identical Phi Values print_char_cursor#154 print_char_cursor#29 Identical Phi Values print_line_cursor#43 print_line_cursor#25 Identical Phi Values print_char_cursor#104 print_char_cursor#1 Identical Phi Values print_char_cursor#105 print_char_cursor#23 Identical Phi Values print_char_cursor#106 print_char_cursor#25 Identical Phi Values print_char_cursor#107 print_char_cursor#23 Identical Phi Values print_char_cursor#108 print_char_cursor#25 Identical Phi Values print_char_cursor#109 print_char_cursor#10 Identical Phi Values print_line_cursor#10 print_line_cursor#0 Identical Phi Values print_char_cursor#110 print_line_cursor#0 Identical Phi Values print_char_cursor#155 print_char_cursor#30 Identical Phi Values print_line_cursor#44 print_line_cursor#26 Identical Phi Values print_char_cursor#112 print_char_cursor#1 Identical Phi Values print_char_cursor#113 print_char_cursor#13 Identical Phi Values print_char_cursor#114 print_char_cursor#25 Identical Phi Values print_char_cursor#115 print_char_cursor#6 Identical Phi Values print_char_cursor#116 print_char_cursor#25 Identical Phi Values print_char_cursor#117 print_char_cursor#6 Identical Phi Values print_line_cursor#12 print_line_cursor#0 Identical Phi Values print_char_cursor#118 print_line_cursor#0 Identical Phi Values print_char_cursor#156 print_char_cursor#100 Identical Phi Values print_line_cursor#45 print_line_cursor#27 Identical Phi Values print_char_cursor#120 print_char_cursor#1 Identical Phi Values print_char_cursor#121 print_char_cursor#13 Identical Phi Values print_char_cursor#122 print_char_cursor#25 Identical Phi Values print_char_cursor#123 print_char_cursor#6 Identical Phi Values print_char_cursor#124 print_char_cursor#25 Identical Phi Values print_char_cursor#125 print_char_cursor#6 Identical Phi Values print_line_cursor#14 print_line_cursor#0 Identical Phi Values print_char_cursor#126 print_line_cursor#0 Identical Phi Values print_char_cursor#157 print_char_cursor#101 Identical Phi Values print_line_cursor#46 print_line_cursor#28 Identical Phi Values print_char_cursor#128 print_char_cursor#1 Identical Phi Values print_char_cursor#129 print_char_cursor#16 Identical Phi Values print_char_cursor#130 print_char_cursor#25 Identical Phi Values print_char_cursor#131 print_char_cursor#20 Identical Phi Values print_char_cursor#132 print_char_cursor#25 Identical Phi Values print_char_cursor#133 print_char_cursor#20 Identical Phi Values print_line_cursor#16 print_line_cursor#0 Identical Phi Values print_char_cursor#134 print_line_cursor#0 Identical Phi Values print_line_cursor#19 print_line_cursor#29 Identical Phi Values print_char_cursor#136 print_char_cursor#102 Successful SSA optimization Pass2IdenticalPhiElimination Identical Phi Values print_char_cursor#140 print_char_cursor#25 Identical Phi Values print_char_cursor#141 print_char_cursor#25 Identical Phi Values print_char_cursor#143 print_char_cursor#25 Identical Phi Values print_char_cursor#146 print_char_cursor#25 Identical Phi Values print_char_cursor#149 print_char_cursor#25 Identical Phi Values print_char_cursor#151 print_char_cursor#25 Identical Phi Values memset::return#1 memset::str#0 Successful SSA optimization Pass2IdenticalPhiElimination Simple Condition print_str::$1 [3] if(0!=*print_str::str#5) goto print_str::@2 Simple Condition print_ln::$1 [13] if(print_line_cursor#0> 4 [89] print_char::ch#7 = print_hextab[print_uchar::$0] [90] call print_char to:print_uchar::@1 print_uchar::@1: scope:[print_uchar] from print_uchar [91] print_uchar::$2 = print_uchar::b#5 & $f [92] print_char::ch#8 = print_hextab[print_uchar::$2] [93] call print_char to:print_uchar::@return print_uchar::@return: scope:[print_uchar] from print_uchar::@1 [94] return to:@return void print_char(char ch) print_char: scope:[print_char] from print_schar::@1 print_sint::@1 print_sint::@3 print_slong::@1 print_slong::@3 print_str::@2 print_uchar print_uchar::@1 testChar::@2 testChar::@4 testInt::@2 testInt::@4 testLong::@2 testLong::@4 testShort::@2 testShort::@4 [95] print_char_cursor#95 = phi( print_schar::@1/print_char_cursor#25, print_sint::@1/print_char_cursor#25, print_sint::@3/print_char_cursor#25, print_slong::@1/print_char_cursor#25, print_slong::@3/print_char_cursor#25, print_str::@2/print_char_cursor#1, print_uchar/print_char_cursor#152, print_uchar::@1/print_char_cursor#25, testChar::@2/print_char_cursor#25, testChar::@4/print_char_cursor#25, testInt::@2/print_char_cursor#25, testInt::@4/print_char_cursor#25, testLong::@2/print_char_cursor#25, testLong::@4/print_char_cursor#25, testShort::@2/print_char_cursor#25, testShort::@4/print_char_cursor#25 ) [95] print_char::ch#17 = phi( print_schar::@1/'-', print_sint::@1/'-', print_sint::@3/' ', print_slong::@1/'-', print_slong::@3/' ', print_str::@2/print_char::ch#0, print_uchar/print_char::ch#7, print_uchar::@1/print_char::ch#8, testChar::@2/' ', testChar::@4/' ', testInt::@2/' ', testInt::@4/' ', testLong::@2/' ', testLong::@4/' ', testShort::@2/' ', testShort::@4/' ' ) [96] *print_char_cursor#95 = print_char::ch#17 [97] print_char_cursor#25 = ++ print_char_cursor#95 to:print_char::@return print_char::@return: scope:[print_char] from print_char [98] return to:@return void print_schar(signed char b) print_schar: scope:[print_schar] from testChar::@5 [99] phi() to:print_schar::@1 print_schar::@1: scope:[print_schar] from print_schar [100] phi() [101] call print_char to:print_schar::@2 print_schar::@2: scope:[print_schar] from print_schar::@1 [102] phi() [103] call print_uchar to:print_schar::@return print_schar::@return: scope:[print_schar] from print_schar::@2 [104] return to:@return void print_ln() print_ln: scope:[print_ln] from testChar::@6 testInt::@6 testLong::@6 testShort::@6 [105] print_line_cursor#41 = phi( testChar::@6/print_screen#0, testInt::@6/print_line_cursor#0, testLong::@6/print_line_cursor#0, testShort::@6/print_line_cursor#0 ) to:print_ln::@1 print_ln::@1: scope:[print_ln] from print_ln print_ln::@1 [106] print_line_cursor#21 = phi( print_ln/print_line_cursor#41, print_ln::@1/print_line_cursor#0 ) [107] print_line_cursor#0 = print_line_cursor#21 + $28 [108] if(print_line_cursor#0> 4 [ print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] ( testChar:3::print_uchar:17 [ print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_char_cursor#1 = print_char_cursor#152 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#7 } } testChar:3::print_uchar:21 [ print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_char_cursor#152 = print_char_cursor#25 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#7 } } testChar:3::print_schar:25::print_uchar:103 [ print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_char_cursor#152 = print_char_cursor#25 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#7 } } testShort:5::print_uint:32::print_uchar:112 [ print_line_cursor#0 print_uint::w#5 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_char_cursor#1 = print_char_cursor#147 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testInt:7::print_uint:47::print_uchar:112 [ print_line_cursor#0 print_uint::w#5 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_char_cursor#1 = print_char_cursor#147 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testShort:5::print_sint:36::print_uint:122::print_uchar:112 [ print_line_cursor#0 print_uint::w#5 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testShort:5::print_sint:40::print_uint:122::print_uchar:112 [ print_line_cursor#0 print_uint::w#5 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testInt:7::print_sint:51::print_uint:122::print_uchar:112 [ print_line_cursor#0 print_uint::w#5 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testInt:7::print_sint:55::print_uint:122::print_uchar:112 [ print_line_cursor#0 print_uint::w#5 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_ulong:62::print_uint:129::print_uchar:112 [ print_line_cursor#0 print_ulong::dw#2 print_uint::w#5 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_char_cursor#1 = print_char_cursor#148 print_char_cursor#147 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_slong:66::print_ulong:139::print_uint:129::print_uchar:112 [ print_line_cursor#0 print_ulong::dw#2 print_uint::w#5 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_slong:70::print_ulong:139::print_uint:129::print_uchar:112 [ print_line_cursor#0 print_ulong::dw#2 print_uint::w#5 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_ulong:62::print_uint:131::print_uchar:112 [ print_line_cursor#0 print_uint::w#5 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_char_cursor#1 = print_char_cursor#148 } { print_uint::w#2 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_slong:66::print_ulong:139::print_uint:131::print_uchar:112 [ print_line_cursor#0 print_uint::w#5 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#2 = print_uint::w#5 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_slong:70::print_ulong:139::print_uint:131::print_uchar:112 [ print_line_cursor#0 print_uint::w#5 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#2 = print_uint::w#5 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testShort:5::print_uint:32::print_uchar:114 [ print_line_cursor#0 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_char_cursor#1 = print_char_cursor#147 } { print_uchar::b#2 = print_uchar::b#5 } { print_char_cursor#152 = print_char_cursor#25 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#7 } } testInt:7::print_uint:47::print_uchar:114 [ print_line_cursor#0 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_char_cursor#1 = print_char_cursor#147 } { print_uchar::b#2 = print_uchar::b#5 } { print_char_cursor#152 = print_char_cursor#25 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#7 } } testShort:5::print_sint:36::print_uint:122::print_uchar:114 [ print_line_cursor#0 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testShort:5::print_sint:40::print_uint:122::print_uchar:114 [ print_line_cursor#0 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testInt:7::print_sint:51::print_uint:122::print_uchar:114 [ print_line_cursor#0 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testInt:7::print_sint:55::print_uint:122::print_uchar:114 [ print_line_cursor#0 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_ulong:62::print_uint:129::print_uchar:114 [ print_line_cursor#0 print_ulong::dw#2 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_char_cursor#1 = print_char_cursor#148 print_char_cursor#147 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#2 = print_uchar::b#5 } { print_char_cursor#152 = print_char_cursor#25 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_slong:66::print_ulong:139::print_uint:129::print_uchar:114 [ print_line_cursor#0 print_ulong::dw#2 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_slong:70::print_ulong:139::print_uint:129::print_uchar:114 [ print_line_cursor#0 print_ulong::dw#2 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_ulong:62::print_uint:131::print_uchar:114 [ print_line_cursor#0 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_char_cursor#1 = print_char_cursor#148 } { print_uint::w#2 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_slong:66::print_ulong:139::print_uint:131::print_uchar:114 [ print_line_cursor#0 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#2 = print_uint::w#5 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_slong:70::print_ulong:139::print_uint:131::print_uchar:114 [ print_line_cursor#0 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#2 = print_uint::w#5 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp[1]:7 [ print_uchar::b#5 print_uchar::b#1 print_uchar::b#2 ] Statement [91] print_uchar::$2 = print_uchar::b#5 & $f [ print_char_cursor#25 print_uchar::$2 ] ( testChar:3::print_uchar:17 [ print_char_cursor#25 print_uchar::$2 ] { { print_char_cursor#1 = print_char_cursor#152 } { print_char::ch#17 = print_char::ch#8 } { print_char_cursor#25 = print_char_cursor#95 } } testChar:3::print_uchar:21 [ print_char_cursor#25 print_uchar::$2 ] { { print_char_cursor#152 = print_char_cursor#25 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#8 } } testChar:3::print_schar:25::print_uchar:103 [ print_char_cursor#25 print_uchar::$2 ] { { print_char_cursor#152 = print_char_cursor#25 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#8 } } testShort:5::print_uint:32::print_uchar:112 [ print_line_cursor#0 print_uint::w#5 print_char_cursor#25 print_uchar::$2 ] { { print_char_cursor#1 = print_char_cursor#147 print_char_cursor#152 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } { print_char_cursor#25 = print_char_cursor#95 } } testInt:7::print_uint:47::print_uchar:112 [ print_line_cursor#0 print_uint::w#5 print_char_cursor#25 print_uchar::$2 ] { { print_char_cursor#1 = print_char_cursor#147 print_char_cursor#152 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } { print_char_cursor#25 = print_char_cursor#95 } } testShort:5::print_sint:36::print_uint:122::print_uchar:112 [ print_line_cursor#0 print_uint::w#5 print_char_cursor#25 print_uchar::$2 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testShort:5::print_sint:40::print_uint:122::print_uchar:112 [ print_line_cursor#0 print_uint::w#5 print_char_cursor#25 print_uchar::$2 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testInt:7::print_sint:51::print_uint:122::print_uchar:112 [ print_line_cursor#0 print_uint::w#5 print_char_cursor#25 print_uchar::$2 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testInt:7::print_sint:55::print_uint:122::print_uchar:112 [ print_line_cursor#0 print_uint::w#5 print_char_cursor#25 print_uchar::$2 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_ulong:62::print_uint:129::print_uchar:112 [ print_line_cursor#0 print_ulong::dw#2 print_uint::w#5 print_char_cursor#25 print_uchar::$2 ] { { print_char_cursor#1 = print_char_cursor#148 print_char_cursor#147 print_char_cursor#152 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } { print_char_cursor#25 = print_char_cursor#95 } } testLong:9::print_slong:66::print_ulong:139::print_uint:129::print_uchar:112 [ print_line_cursor#0 print_ulong::dw#2 print_uint::w#5 print_char_cursor#25 print_uchar::$2 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_slong:70::print_ulong:139::print_uint:129::print_uchar:112 [ print_line_cursor#0 print_ulong::dw#2 print_uint::w#5 print_char_cursor#25 print_uchar::$2 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_ulong:62::print_uint:131::print_uchar:112 [ print_line_cursor#0 print_uint::w#5 print_char_cursor#25 print_uchar::$2 ] { { print_char_cursor#1 = print_char_cursor#148 } { print_uint::w#2 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_slong:66::print_ulong:139::print_uint:131::print_uchar:112 [ print_line_cursor#0 print_uint::w#5 print_char_cursor#25 print_uchar::$2 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#2 = print_uint::w#5 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_slong:70::print_ulong:139::print_uint:131::print_uchar:112 [ print_line_cursor#0 print_uint::w#5 print_char_cursor#25 print_uchar::$2 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#2 = print_uint::w#5 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testShort:5::print_uint:32::print_uchar:114 [ print_line_cursor#0 print_char_cursor#25 print_uchar::$2 ] { { print_char_cursor#1 = print_char_cursor#147 } { print_uchar::b#2 = print_uchar::b#5 } { print_char_cursor#152 = print_char_cursor#25 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#8 } } testInt:7::print_uint:47::print_uchar:114 [ print_line_cursor#0 print_char_cursor#25 print_uchar::$2 ] { { print_char_cursor#1 = print_char_cursor#147 } { print_uchar::b#2 = print_uchar::b#5 } { print_char_cursor#152 = print_char_cursor#25 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#8 } } testShort:5::print_sint:36::print_uint:122::print_uchar:114 [ print_line_cursor#0 print_char_cursor#25 print_uchar::$2 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testShort:5::print_sint:40::print_uint:122::print_uchar:114 [ print_line_cursor#0 print_char_cursor#25 print_uchar::$2 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testInt:7::print_sint:51::print_uint:122::print_uchar:114 [ print_line_cursor#0 print_char_cursor#25 print_uchar::$2 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testInt:7::print_sint:55::print_uint:122::print_uchar:114 [ print_line_cursor#0 print_char_cursor#25 print_uchar::$2 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_ulong:62::print_uint:129::print_uchar:114 [ print_line_cursor#0 print_ulong::dw#2 print_char_cursor#25 print_uchar::$2 ] { { print_char_cursor#1 = print_char_cursor#148 print_char_cursor#147 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#2 = print_uchar::b#5 } { print_char_cursor#152 = print_char_cursor#25 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_slong:66::print_ulong:139::print_uint:129::print_uchar:114 [ print_line_cursor#0 print_ulong::dw#2 print_char_cursor#25 print_uchar::$2 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_slong:70::print_ulong:139::print_uint:129::print_uchar:114 [ print_line_cursor#0 print_ulong::dw#2 print_char_cursor#25 print_uchar::$2 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_ulong:62::print_uint:131::print_uchar:114 [ print_line_cursor#0 print_char_cursor#25 print_uchar::$2 ] { { print_char_cursor#1 = print_char_cursor#148 } { print_uint::w#2 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_slong:66::print_ulong:139::print_uint:131::print_uchar:114 [ print_line_cursor#0 print_char_cursor#25 print_uchar::$2 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#2 = print_uint::w#5 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_slong:70::print_ulong:139::print_uint:131::print_uchar:114 [ print_line_cursor#0 print_char_cursor#25 print_uchar::$2 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#2 = print_uint::w#5 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } ) always clobbers reg byte a Statement [96] *print_char_cursor#95 = print_char::ch#17 [ print_char_cursor#95 ] ( testChar:3::print_char:19 [ print_char_cursor#95 ] { { print_char_cursor#25 = print_char_cursor#95 } } testChar:3::print_char:23 [ print_char_cursor#95 ] { { print_char_cursor#25 = print_char_cursor#95 } } testShort:5::print_char:34 [ print_line_cursor#0 print_char_cursor#95 ] { { print_char_cursor#25 = print_char_cursor#95 } } testShort:5::print_char:38 [ print_line_cursor#0 print_char_cursor#95 ] { { print_char_cursor#25 = print_char_cursor#95 } } testInt:7::print_char:49 [ print_line_cursor#0 print_char_cursor#95 ] { { print_char_cursor#25 = print_char_cursor#95 } } testInt:7::print_char:53 [ print_line_cursor#0 print_char_cursor#95 ] { { print_char_cursor#25 = print_char_cursor#95 } } testLong:9::print_char:64 [ print_line_cursor#0 print_char_cursor#95 ] { { print_char_cursor#25 = print_char_cursor#95 } } testLong:9::print_char:68 [ print_line_cursor#0 print_char_cursor#95 ] { { print_char_cursor#25 = print_char_cursor#95 } } testChar:3::print_str:15::print_char:85 [ print_str::str#5 print_char_cursor#95 ] { { print_char::ch#0 = print_char::ch#17 } { print_char_cursor#1 = print_char_cursor#95 } } testShort:5::print_str:30::print_char:85 [ print_line_cursor#0 print_str::str#5 print_char_cursor#95 ] { { print_char_cursor#159 = print_char_cursor#165 } { print_char::ch#0 = print_char::ch#17 } { print_char_cursor#1 = print_char_cursor#95 } } testInt:7::print_str:45::print_char:85 [ print_line_cursor#0 print_str::str#5 print_char_cursor#95 ] { { print_char_cursor#159 = print_char_cursor#163 } { print_char::ch#0 = print_char::ch#17 } { print_char_cursor#1 = print_char_cursor#95 } } testLong:9::print_str:60::print_char:85 [ print_line_cursor#0 print_str::str#5 print_char_cursor#95 ] { { print_char_cursor#159 = print_char_cursor#164 } { print_char::ch#0 = print_char::ch#17 } { print_char_cursor#1 = print_char_cursor#95 } } testChar:3::print_uchar:17::print_char:90 [ print_uchar::b#5 print_char_cursor#95 ] { { print_char_cursor#1 = print_char_cursor#152 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#7 } } testChar:3::print_uchar:21::print_char:90 [ print_uchar::b#5 print_char_cursor#95 ] { { print_char_cursor#152 = print_char_cursor#25 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#7 } } testChar:3::print_schar:25::print_uchar:103::print_char:90 [ print_uchar::b#5 print_char_cursor#95 ] { { print_char_cursor#152 = print_char_cursor#25 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#7 } } testShort:5::print_uint:32::print_uchar:112::print_char:90 [ print_line_cursor#0 print_uint::w#5 print_uchar::b#5 print_char_cursor#95 ] { { print_char_cursor#1 = print_char_cursor#147 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testInt:7::print_uint:47::print_uchar:112::print_char:90 [ print_line_cursor#0 print_uint::w#5 print_uchar::b#5 print_char_cursor#95 ] { { print_char_cursor#1 = print_char_cursor#147 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testShort:5::print_sint:36::print_uint:122::print_uchar:112::print_char:90 [ print_line_cursor#0 print_uint::w#5 print_uchar::b#5 print_char_cursor#95 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testShort:5::print_sint:40::print_uint:122::print_uchar:112::print_char:90 [ print_line_cursor#0 print_uint::w#5 print_uchar::b#5 print_char_cursor#95 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testInt:7::print_sint:51::print_uint:122::print_uchar:112::print_char:90 [ print_line_cursor#0 print_uint::w#5 print_uchar::b#5 print_char_cursor#95 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testInt:7::print_sint:55::print_uint:122::print_uchar:112::print_char:90 [ print_line_cursor#0 print_uint::w#5 print_uchar::b#5 print_char_cursor#95 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_ulong:62::print_uint:129::print_uchar:112::print_char:90 [ print_line_cursor#0 print_ulong::dw#2 print_uint::w#5 print_uchar::b#5 print_char_cursor#95 ] { { print_char_cursor#1 = print_char_cursor#148 print_char_cursor#147 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_slong:66::print_ulong:139::print_uint:129::print_uchar:112::print_char:90 [ print_line_cursor#0 print_ulong::dw#2 print_uint::w#5 print_uchar::b#5 print_char_cursor#95 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_slong:70::print_ulong:139::print_uint:129::print_uchar:112::print_char:90 [ print_line_cursor#0 print_ulong::dw#2 print_uint::w#5 print_uchar::b#5 print_char_cursor#95 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_ulong:62::print_uint:131::print_uchar:112::print_char:90 [ print_line_cursor#0 print_uint::w#5 print_uchar::b#5 print_char_cursor#95 ] { { print_char_cursor#1 = print_char_cursor#148 } { print_uint::w#2 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_slong:66::print_ulong:139::print_uint:131::print_uchar:112::print_char:90 [ print_line_cursor#0 print_uint::w#5 print_uchar::b#5 print_char_cursor#95 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#2 = print_uint::w#5 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_slong:70::print_ulong:139::print_uint:131::print_uchar:112::print_char:90 [ print_line_cursor#0 print_uint::w#5 print_uchar::b#5 print_char_cursor#95 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#2 = print_uint::w#5 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testShort:5::print_uint:32::print_uchar:114::print_char:90 [ print_line_cursor#0 print_uchar::b#5 print_char_cursor#95 ] { { print_char_cursor#1 = print_char_cursor#147 } { print_uchar::b#2 = print_uchar::b#5 } { print_char_cursor#152 = print_char_cursor#25 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#7 } } testInt:7::print_uint:47::print_uchar:114::print_char:90 [ print_line_cursor#0 print_uchar::b#5 print_char_cursor#95 ] { { print_char_cursor#1 = print_char_cursor#147 } { print_uchar::b#2 = print_uchar::b#5 } { print_char_cursor#152 = print_char_cursor#25 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#7 } } testShort:5::print_sint:36::print_uint:122::print_uchar:114::print_char:90 [ print_line_cursor#0 print_uchar::b#5 print_char_cursor#95 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testShort:5::print_sint:40::print_uint:122::print_uchar:114::print_char:90 [ print_line_cursor#0 print_uchar::b#5 print_char_cursor#95 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testInt:7::print_sint:51::print_uint:122::print_uchar:114::print_char:90 [ print_line_cursor#0 print_uchar::b#5 print_char_cursor#95 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testInt:7::print_sint:55::print_uint:122::print_uchar:114::print_char:90 [ print_line_cursor#0 print_uchar::b#5 print_char_cursor#95 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_ulong:62::print_uint:129::print_uchar:114::print_char:90 [ print_line_cursor#0 print_ulong::dw#2 print_uchar::b#5 print_char_cursor#95 ] { { print_char_cursor#1 = print_char_cursor#148 print_char_cursor#147 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#2 = print_uchar::b#5 } { print_char_cursor#152 = print_char_cursor#25 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_slong:66::print_ulong:139::print_uint:129::print_uchar:114::print_char:90 [ print_line_cursor#0 print_ulong::dw#2 print_uchar::b#5 print_char_cursor#95 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_slong:70::print_ulong:139::print_uint:129::print_uchar:114::print_char:90 [ print_line_cursor#0 print_ulong::dw#2 print_uchar::b#5 print_char_cursor#95 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_ulong:62::print_uint:131::print_uchar:114::print_char:90 [ print_line_cursor#0 print_uchar::b#5 print_char_cursor#95 ] { { print_char_cursor#1 = print_char_cursor#148 } { print_uint::w#2 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_slong:66::print_ulong:139::print_uint:131::print_uchar:114::print_char:90 [ print_line_cursor#0 print_uchar::b#5 print_char_cursor#95 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#2 = print_uint::w#5 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_slong:70::print_ulong:139::print_uint:131::print_uchar:114::print_char:90 [ print_line_cursor#0 print_uchar::b#5 print_char_cursor#95 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#2 = print_uint::w#5 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testChar:3::print_uchar:17::print_char:93 [ print_char_cursor#95 ] { { print_char_cursor#1 = print_char_cursor#152 } { print_char::ch#17 = print_char::ch#8 } { print_char_cursor#25 = print_char_cursor#95 } } testChar:3::print_uchar:21::print_char:93 [ print_char_cursor#95 ] { { print_char_cursor#152 = print_char_cursor#25 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#8 } } testChar:3::print_schar:25::print_uchar:103::print_char:93 [ print_char_cursor#95 ] { { print_char_cursor#152 = print_char_cursor#25 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#8 } } testShort:5::print_uint:32::print_uchar:112::print_char:93 [ print_line_cursor#0 print_uint::w#5 print_char_cursor#95 ] { { print_char_cursor#1 = print_char_cursor#147 print_char_cursor#152 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } { print_char_cursor#25 = print_char_cursor#95 } } testInt:7::print_uint:47::print_uchar:112::print_char:93 [ print_line_cursor#0 print_uint::w#5 print_char_cursor#95 ] { { print_char_cursor#1 = print_char_cursor#147 print_char_cursor#152 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } { print_char_cursor#25 = print_char_cursor#95 } } testShort:5::print_sint:36::print_uint:122::print_uchar:112::print_char:93 [ print_line_cursor#0 print_uint::w#5 print_char_cursor#95 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testShort:5::print_sint:40::print_uint:122::print_uchar:112::print_char:93 [ print_line_cursor#0 print_uint::w#5 print_char_cursor#95 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testInt:7::print_sint:51::print_uint:122::print_uchar:112::print_char:93 [ print_line_cursor#0 print_uint::w#5 print_char_cursor#95 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testInt:7::print_sint:55::print_uint:122::print_uchar:112::print_char:93 [ print_line_cursor#0 print_uint::w#5 print_char_cursor#95 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_ulong:62::print_uint:129::print_uchar:112::print_char:93 [ print_line_cursor#0 print_ulong::dw#2 print_uint::w#5 print_char_cursor#95 ] { { print_char_cursor#1 = print_char_cursor#148 print_char_cursor#147 print_char_cursor#152 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } { print_char_cursor#25 = print_char_cursor#95 } } testLong:9::print_slong:66::print_ulong:139::print_uint:129::print_uchar:112::print_char:93 [ print_line_cursor#0 print_ulong::dw#2 print_uint::w#5 print_char_cursor#95 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_slong:70::print_ulong:139::print_uint:129::print_uchar:112::print_char:93 [ print_line_cursor#0 print_ulong::dw#2 print_uint::w#5 print_char_cursor#95 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_ulong:62::print_uint:131::print_uchar:112::print_char:93 [ print_line_cursor#0 print_uint::w#5 print_char_cursor#95 ] { { print_char_cursor#1 = print_char_cursor#148 } { print_uint::w#2 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_slong:66::print_ulong:139::print_uint:131::print_uchar:112::print_char:93 [ print_line_cursor#0 print_uint::w#5 print_char_cursor#95 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#2 = print_uint::w#5 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_slong:70::print_ulong:139::print_uint:131::print_uchar:112::print_char:93 [ print_line_cursor#0 print_uint::w#5 print_char_cursor#95 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#2 = print_uint::w#5 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testShort:5::print_uint:32::print_uchar:114::print_char:93 [ print_line_cursor#0 print_char_cursor#95 ] { { print_char_cursor#1 = print_char_cursor#147 } { print_uchar::b#2 = print_uchar::b#5 } { print_char_cursor#152 = print_char_cursor#25 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#8 } } testInt:7::print_uint:47::print_uchar:114::print_char:93 [ print_line_cursor#0 print_char_cursor#95 ] { { print_char_cursor#1 = print_char_cursor#147 } { print_uchar::b#2 = print_uchar::b#5 } { print_char_cursor#152 = print_char_cursor#25 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#8 } } testShort:5::print_sint:36::print_uint:122::print_uchar:114::print_char:93 [ print_line_cursor#0 print_char_cursor#95 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testShort:5::print_sint:40::print_uint:122::print_uchar:114::print_char:93 [ print_line_cursor#0 print_char_cursor#95 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testInt:7::print_sint:51::print_uint:122::print_uchar:114::print_char:93 [ print_line_cursor#0 print_char_cursor#95 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testInt:7::print_sint:55::print_uint:122::print_uchar:114::print_char:93 [ print_line_cursor#0 print_char_cursor#95 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_ulong:62::print_uint:129::print_uchar:114::print_char:93 [ print_line_cursor#0 print_ulong::dw#2 print_char_cursor#95 ] { { print_char_cursor#1 = print_char_cursor#148 print_char_cursor#147 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#2 = print_uchar::b#5 } { print_char_cursor#152 = print_char_cursor#25 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_slong:66::print_ulong:139::print_uint:129::print_uchar:114::print_char:93 [ print_line_cursor#0 print_ulong::dw#2 print_char_cursor#95 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_slong:70::print_ulong:139::print_uint:129::print_uchar:114::print_char:93 [ print_line_cursor#0 print_ulong::dw#2 print_char_cursor#95 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_ulong:62::print_uint:131::print_uchar:114::print_char:93 [ print_line_cursor#0 print_char_cursor#95 ] { { print_char_cursor#1 = print_char_cursor#148 } { print_uint::w#2 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_slong:66::print_ulong:139::print_uint:131::print_uchar:114::print_char:93 [ print_line_cursor#0 print_char_cursor#95 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#2 = print_uint::w#5 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_slong:70::print_ulong:139::print_uint:131::print_uchar:114::print_char:93 [ print_line_cursor#0 print_char_cursor#95 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#2 = print_uint::w#5 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testChar:3::print_schar:25::print_char:101 [ print_char_cursor#95 ] { { print_char_cursor#25 = print_char_cursor#95 } } testShort:5::print_sint:36::print_char:119 [ print_line_cursor#0 print_sint::w#10 print_char_cursor#95 ] { { print_char_cursor#25 = print_char_cursor#95 } } testShort:5::print_sint:40::print_char:119 [ print_line_cursor#0 print_sint::w#10 print_char_cursor#95 ] { { print_char_cursor#25 = print_char_cursor#95 } } testInt:7::print_sint:51::print_char:119 [ print_line_cursor#0 print_sint::w#10 print_char_cursor#95 ] { { print_char_cursor#25 = print_char_cursor#95 } } testInt:7::print_sint:55::print_char:119 [ print_line_cursor#0 print_sint::w#10 print_char_cursor#95 ] { { print_char_cursor#25 = print_char_cursor#95 } } testShort:5::print_sint:36::print_char:125 [ print_line_cursor#0 print_sint::w#10 print_char_cursor#95 ] { { print_char_cursor#25 = print_char_cursor#95 } } testShort:5::print_sint:40::print_char:125 [ print_line_cursor#0 print_sint::w#10 print_char_cursor#95 ] { { print_char_cursor#25 = print_char_cursor#95 } } testInt:7::print_sint:51::print_char:125 [ print_line_cursor#0 print_sint::w#10 print_char_cursor#95 ] { { print_char_cursor#25 = print_char_cursor#95 } } testInt:7::print_sint:55::print_char:125 [ print_line_cursor#0 print_sint::w#10 print_char_cursor#95 ] { { print_char_cursor#25 = print_char_cursor#95 } } testLong:9::print_slong:66::print_char:136 [ print_line_cursor#0 print_slong::dw#3 print_char_cursor#95 ] { { print_char_cursor#25 = print_char_cursor#95 } } testLong:9::print_slong:70::print_char:136 [ print_line_cursor#0 print_slong::dw#3 print_char_cursor#95 ] { { print_char_cursor#25 = print_char_cursor#95 } } testLong:9::print_slong:66::print_char:142 [ print_line_cursor#0 print_slong::dw#3 print_char_cursor#95 ] { { print_char_cursor#25 = print_char_cursor#95 } } testLong:9::print_slong:70::print_char:142 [ print_line_cursor#0 print_slong::dw#3 print_char_cursor#95 ] { { print_char_cursor#25 = print_char_cursor#95 } } ) always clobbers reg byte y Removing always clobbered register reg byte y as potential for zp[1]:7 [ print_uchar::b#5 print_uchar::b#1 print_uchar::b#2 ] Statement [107] print_line_cursor#0 = print_line_cursor#21 + $28 [ print_line_cursor#0 print_char_cursor#25 ] ( testChar:3::print_ln:27 [ print_line_cursor#0 print_char_cursor#25 ] { } testShort:5::print_ln:42 [ print_line_cursor#0 print_char_cursor#25 ] { { print_line_cursor#0 = print_line_cursor#41 } } testInt:7::print_ln:57 [ print_line_cursor#0 print_char_cursor#25 ] { { print_line_cursor#0 = print_line_cursor#41 } } testLong:9::print_ln:72 [ print_line_cursor#0 print_char_cursor#25 ] { { print_line_cursor#0 = print_line_cursor#41 } } ) always clobbers reg byte a Statement [108] if(print_line_cursor#0> 4 [ print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] ( testChar:3::print_uchar:17 [ print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_char_cursor#1 = print_char_cursor#152 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#7 } } testChar:3::print_uchar:21 [ print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_char_cursor#152 = print_char_cursor#25 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#7 } } testChar:3::print_schar:25::print_uchar:103 [ print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_char_cursor#152 = print_char_cursor#25 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#7 } } testShort:5::print_uint:32::print_uchar:112 [ print_line_cursor#0 print_uint::w#5 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_char_cursor#1 = print_char_cursor#147 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testInt:7::print_uint:47::print_uchar:112 [ print_line_cursor#0 print_uint::w#5 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_char_cursor#1 = print_char_cursor#147 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testShort:5::print_sint:36::print_uint:122::print_uchar:112 [ print_line_cursor#0 print_uint::w#5 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testShort:5::print_sint:40::print_uint:122::print_uchar:112 [ print_line_cursor#0 print_uint::w#5 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testInt:7::print_sint:51::print_uint:122::print_uchar:112 [ print_line_cursor#0 print_uint::w#5 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testInt:7::print_sint:55::print_uint:122::print_uchar:112 [ print_line_cursor#0 print_uint::w#5 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_ulong:62::print_uint:129::print_uchar:112 [ print_line_cursor#0 print_ulong::dw#2 print_uint::w#5 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_char_cursor#1 = print_char_cursor#148 print_char_cursor#147 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_slong:66::print_ulong:139::print_uint:129::print_uchar:112 [ print_line_cursor#0 print_ulong::dw#2 print_uint::w#5 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_slong:70::print_ulong:139::print_uint:129::print_uchar:112 [ print_line_cursor#0 print_ulong::dw#2 print_uint::w#5 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_ulong:62::print_uint:131::print_uchar:112 [ print_line_cursor#0 print_uint::w#5 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_char_cursor#1 = print_char_cursor#148 } { print_uint::w#2 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_slong:66::print_ulong:139::print_uint:131::print_uchar:112 [ print_line_cursor#0 print_uint::w#5 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#2 = print_uint::w#5 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_slong:70::print_ulong:139::print_uint:131::print_uchar:112 [ print_line_cursor#0 print_uint::w#5 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#2 = print_uint::w#5 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testShort:5::print_uint:32::print_uchar:114 [ print_line_cursor#0 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_char_cursor#1 = print_char_cursor#147 } { print_uchar::b#2 = print_uchar::b#5 } { print_char_cursor#152 = print_char_cursor#25 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#7 } } testInt:7::print_uint:47::print_uchar:114 [ print_line_cursor#0 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_char_cursor#1 = print_char_cursor#147 } { print_uchar::b#2 = print_uchar::b#5 } { print_char_cursor#152 = print_char_cursor#25 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#7 } } testShort:5::print_sint:36::print_uint:122::print_uchar:114 [ print_line_cursor#0 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testShort:5::print_sint:40::print_uint:122::print_uchar:114 [ print_line_cursor#0 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testInt:7::print_sint:51::print_uint:122::print_uchar:114 [ print_line_cursor#0 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testInt:7::print_sint:55::print_uint:122::print_uchar:114 [ print_line_cursor#0 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_ulong:62::print_uint:129::print_uchar:114 [ print_line_cursor#0 print_ulong::dw#2 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_char_cursor#1 = print_char_cursor#148 print_char_cursor#147 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#2 = print_uchar::b#5 } { print_char_cursor#152 = print_char_cursor#25 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_slong:66::print_ulong:139::print_uint:129::print_uchar:114 [ print_line_cursor#0 print_ulong::dw#2 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_slong:70::print_ulong:139::print_uint:129::print_uchar:114 [ print_line_cursor#0 print_ulong::dw#2 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_ulong:62::print_uint:131::print_uchar:114 [ print_line_cursor#0 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_char_cursor#1 = print_char_cursor#148 } { print_uint::w#2 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_slong:66::print_ulong:139::print_uint:131::print_uchar:114 [ print_line_cursor#0 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#2 = print_uint::w#5 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_slong:70::print_ulong:139::print_uint:131::print_uchar:114 [ print_line_cursor#0 print_uchar::b#5 print_char_cursor#152 print_uchar::$0 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#2 = print_uint::w#5 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } ) always clobbers reg byte a Statement [91] print_uchar::$2 = print_uchar::b#5 & $f [ print_char_cursor#25 print_uchar::$2 ] ( testChar:3::print_uchar:17 [ print_char_cursor#25 print_uchar::$2 ] { { print_char_cursor#1 = print_char_cursor#152 } { print_char::ch#17 = print_char::ch#8 } { print_char_cursor#25 = print_char_cursor#95 } } testChar:3::print_uchar:21 [ print_char_cursor#25 print_uchar::$2 ] { { print_char_cursor#152 = print_char_cursor#25 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#8 } } testChar:3::print_schar:25::print_uchar:103 [ print_char_cursor#25 print_uchar::$2 ] { { print_char_cursor#152 = print_char_cursor#25 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#8 } } testShort:5::print_uint:32::print_uchar:112 [ print_line_cursor#0 print_uint::w#5 print_char_cursor#25 print_uchar::$2 ] { { print_char_cursor#1 = print_char_cursor#147 print_char_cursor#152 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } { print_char_cursor#25 = print_char_cursor#95 } } testInt:7::print_uint:47::print_uchar:112 [ print_line_cursor#0 print_uint::w#5 print_char_cursor#25 print_uchar::$2 ] { { print_char_cursor#1 = print_char_cursor#147 print_char_cursor#152 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } { print_char_cursor#25 = print_char_cursor#95 } } testShort:5::print_sint:36::print_uint:122::print_uchar:112 [ print_line_cursor#0 print_uint::w#5 print_char_cursor#25 print_uchar::$2 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testShort:5::print_sint:40::print_uint:122::print_uchar:112 [ print_line_cursor#0 print_uint::w#5 print_char_cursor#25 print_uchar::$2 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testInt:7::print_sint:51::print_uint:122::print_uchar:112 [ print_line_cursor#0 print_uint::w#5 print_char_cursor#25 print_uchar::$2 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testInt:7::print_sint:55::print_uint:122::print_uchar:112 [ print_line_cursor#0 print_uint::w#5 print_char_cursor#25 print_uchar::$2 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_ulong:62::print_uint:129::print_uchar:112 [ print_line_cursor#0 print_ulong::dw#2 print_uint::w#5 print_char_cursor#25 print_uchar::$2 ] { { print_char_cursor#1 = print_char_cursor#148 print_char_cursor#147 print_char_cursor#152 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } { print_char_cursor#25 = print_char_cursor#95 } } testLong:9::print_slong:66::print_ulong:139::print_uint:129::print_uchar:112 [ print_line_cursor#0 print_ulong::dw#2 print_uint::w#5 print_char_cursor#25 print_uchar::$2 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_slong:70::print_ulong:139::print_uint:129::print_uchar:112 [ print_line_cursor#0 print_ulong::dw#2 print_uint::w#5 print_char_cursor#25 print_uchar::$2 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_ulong:62::print_uint:131::print_uchar:112 [ print_line_cursor#0 print_uint::w#5 print_char_cursor#25 print_uchar::$2 ] { { print_char_cursor#1 = print_char_cursor#148 } { print_uint::w#2 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_slong:66::print_ulong:139::print_uint:131::print_uchar:112 [ print_line_cursor#0 print_uint::w#5 print_char_cursor#25 print_uchar::$2 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#2 = print_uint::w#5 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_slong:70::print_ulong:139::print_uint:131::print_uchar:112 [ print_line_cursor#0 print_uint::w#5 print_char_cursor#25 print_uchar::$2 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#2 = print_uint::w#5 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testShort:5::print_uint:32::print_uchar:114 [ print_line_cursor#0 print_char_cursor#25 print_uchar::$2 ] { { print_char_cursor#1 = print_char_cursor#147 } { print_uchar::b#2 = print_uchar::b#5 } { print_char_cursor#152 = print_char_cursor#25 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#8 } } testInt:7::print_uint:47::print_uchar:114 [ print_line_cursor#0 print_char_cursor#25 print_uchar::$2 ] { { print_char_cursor#1 = print_char_cursor#147 } { print_uchar::b#2 = print_uchar::b#5 } { print_char_cursor#152 = print_char_cursor#25 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#8 } } testShort:5::print_sint:36::print_uint:122::print_uchar:114 [ print_line_cursor#0 print_char_cursor#25 print_uchar::$2 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testShort:5::print_sint:40::print_uint:122::print_uchar:114 [ print_line_cursor#0 print_char_cursor#25 print_uchar::$2 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testInt:7::print_sint:51::print_uint:122::print_uchar:114 [ print_line_cursor#0 print_char_cursor#25 print_uchar::$2 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testInt:7::print_sint:55::print_uint:122::print_uchar:114 [ print_line_cursor#0 print_char_cursor#25 print_uchar::$2 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_ulong:62::print_uint:129::print_uchar:114 [ print_line_cursor#0 print_ulong::dw#2 print_char_cursor#25 print_uchar::$2 ] { { print_char_cursor#1 = print_char_cursor#148 print_char_cursor#147 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#2 = print_uchar::b#5 } { print_char_cursor#152 = print_char_cursor#25 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_slong:66::print_ulong:139::print_uint:129::print_uchar:114 [ print_line_cursor#0 print_ulong::dw#2 print_char_cursor#25 print_uchar::$2 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_slong:70::print_ulong:139::print_uint:129::print_uchar:114 [ print_line_cursor#0 print_ulong::dw#2 print_char_cursor#25 print_uchar::$2 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_ulong:62::print_uint:131::print_uchar:114 [ print_line_cursor#0 print_char_cursor#25 print_uchar::$2 ] { { print_char_cursor#1 = print_char_cursor#148 } { print_uint::w#2 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_slong:66::print_ulong:139::print_uint:131::print_uchar:114 [ print_line_cursor#0 print_char_cursor#25 print_uchar::$2 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#2 = print_uint::w#5 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_slong:70::print_ulong:139::print_uint:131::print_uchar:114 [ print_line_cursor#0 print_char_cursor#25 print_uchar::$2 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#2 = print_uint::w#5 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } ) always clobbers reg byte a Statement [96] *print_char_cursor#95 = print_char::ch#17 [ print_char_cursor#95 ] ( testChar:3::print_char:19 [ print_char_cursor#95 ] { { print_char_cursor#25 = print_char_cursor#95 } } testChar:3::print_char:23 [ print_char_cursor#95 ] { { print_char_cursor#25 = print_char_cursor#95 } } testShort:5::print_char:34 [ print_line_cursor#0 print_char_cursor#95 ] { { print_char_cursor#25 = print_char_cursor#95 } } testShort:5::print_char:38 [ print_line_cursor#0 print_char_cursor#95 ] { { print_char_cursor#25 = print_char_cursor#95 } } testInt:7::print_char:49 [ print_line_cursor#0 print_char_cursor#95 ] { { print_char_cursor#25 = print_char_cursor#95 } } testInt:7::print_char:53 [ print_line_cursor#0 print_char_cursor#95 ] { { print_char_cursor#25 = print_char_cursor#95 } } testLong:9::print_char:64 [ print_line_cursor#0 print_char_cursor#95 ] { { print_char_cursor#25 = print_char_cursor#95 } } testLong:9::print_char:68 [ print_line_cursor#0 print_char_cursor#95 ] { { print_char_cursor#25 = print_char_cursor#95 } } testChar:3::print_str:15::print_char:85 [ print_str::str#5 print_char_cursor#95 ] { { print_char::ch#0 = print_char::ch#17 } { print_char_cursor#1 = print_char_cursor#95 } } testShort:5::print_str:30::print_char:85 [ print_line_cursor#0 print_str::str#5 print_char_cursor#95 ] { { print_char_cursor#159 = print_char_cursor#165 } { print_char::ch#0 = print_char::ch#17 } { print_char_cursor#1 = print_char_cursor#95 } } testInt:7::print_str:45::print_char:85 [ print_line_cursor#0 print_str::str#5 print_char_cursor#95 ] { { print_char_cursor#159 = print_char_cursor#163 } { print_char::ch#0 = print_char::ch#17 } { print_char_cursor#1 = print_char_cursor#95 } } testLong:9::print_str:60::print_char:85 [ print_line_cursor#0 print_str::str#5 print_char_cursor#95 ] { { print_char_cursor#159 = print_char_cursor#164 } { print_char::ch#0 = print_char::ch#17 } { print_char_cursor#1 = print_char_cursor#95 } } testChar:3::print_uchar:17::print_char:90 [ print_uchar::b#5 print_char_cursor#95 ] { { print_char_cursor#1 = print_char_cursor#152 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#7 } } testChar:3::print_uchar:21::print_char:90 [ print_uchar::b#5 print_char_cursor#95 ] { { print_char_cursor#152 = print_char_cursor#25 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#7 } } testChar:3::print_schar:25::print_uchar:103::print_char:90 [ print_uchar::b#5 print_char_cursor#95 ] { { print_char_cursor#152 = print_char_cursor#25 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#7 } } testShort:5::print_uint:32::print_uchar:112::print_char:90 [ print_line_cursor#0 print_uint::w#5 print_uchar::b#5 print_char_cursor#95 ] { { print_char_cursor#1 = print_char_cursor#147 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testInt:7::print_uint:47::print_uchar:112::print_char:90 [ print_line_cursor#0 print_uint::w#5 print_uchar::b#5 print_char_cursor#95 ] { { print_char_cursor#1 = print_char_cursor#147 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testShort:5::print_sint:36::print_uint:122::print_uchar:112::print_char:90 [ print_line_cursor#0 print_uint::w#5 print_uchar::b#5 print_char_cursor#95 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testShort:5::print_sint:40::print_uint:122::print_uchar:112::print_char:90 [ print_line_cursor#0 print_uint::w#5 print_uchar::b#5 print_char_cursor#95 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testInt:7::print_sint:51::print_uint:122::print_uchar:112::print_char:90 [ print_line_cursor#0 print_uint::w#5 print_uchar::b#5 print_char_cursor#95 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testInt:7::print_sint:55::print_uint:122::print_uchar:112::print_char:90 [ print_line_cursor#0 print_uint::w#5 print_uchar::b#5 print_char_cursor#95 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_ulong:62::print_uint:129::print_uchar:112::print_char:90 [ print_line_cursor#0 print_ulong::dw#2 print_uint::w#5 print_uchar::b#5 print_char_cursor#95 ] { { print_char_cursor#1 = print_char_cursor#148 print_char_cursor#147 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_slong:66::print_ulong:139::print_uint:129::print_uchar:112::print_char:90 [ print_line_cursor#0 print_ulong::dw#2 print_uint::w#5 print_uchar::b#5 print_char_cursor#95 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_slong:70::print_ulong:139::print_uint:129::print_uchar:112::print_char:90 [ print_line_cursor#0 print_ulong::dw#2 print_uint::w#5 print_uchar::b#5 print_char_cursor#95 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_ulong:62::print_uint:131::print_uchar:112::print_char:90 [ print_line_cursor#0 print_uint::w#5 print_uchar::b#5 print_char_cursor#95 ] { { print_char_cursor#1 = print_char_cursor#148 } { print_uint::w#2 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_slong:66::print_ulong:139::print_uint:131::print_uchar:112::print_char:90 [ print_line_cursor#0 print_uint::w#5 print_uchar::b#5 print_char_cursor#95 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#2 = print_uint::w#5 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_slong:70::print_ulong:139::print_uint:131::print_uchar:112::print_char:90 [ print_line_cursor#0 print_uint::w#5 print_uchar::b#5 print_char_cursor#95 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#2 = print_uint::w#5 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testShort:5::print_uint:32::print_uchar:114::print_char:90 [ print_line_cursor#0 print_uchar::b#5 print_char_cursor#95 ] { { print_char_cursor#1 = print_char_cursor#147 } { print_uchar::b#2 = print_uchar::b#5 } { print_char_cursor#152 = print_char_cursor#25 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#7 } } testInt:7::print_uint:47::print_uchar:114::print_char:90 [ print_line_cursor#0 print_uchar::b#5 print_char_cursor#95 ] { { print_char_cursor#1 = print_char_cursor#147 } { print_uchar::b#2 = print_uchar::b#5 } { print_char_cursor#152 = print_char_cursor#25 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#7 } } testShort:5::print_sint:36::print_uint:122::print_uchar:114::print_char:90 [ print_line_cursor#0 print_uchar::b#5 print_char_cursor#95 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testShort:5::print_sint:40::print_uint:122::print_uchar:114::print_char:90 [ print_line_cursor#0 print_uchar::b#5 print_char_cursor#95 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testInt:7::print_sint:51::print_uint:122::print_uchar:114::print_char:90 [ print_line_cursor#0 print_uchar::b#5 print_char_cursor#95 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testInt:7::print_sint:55::print_uint:122::print_uchar:114::print_char:90 [ print_line_cursor#0 print_uchar::b#5 print_char_cursor#95 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_ulong:62::print_uint:129::print_uchar:114::print_char:90 [ print_line_cursor#0 print_ulong::dw#2 print_uchar::b#5 print_char_cursor#95 ] { { print_char_cursor#1 = print_char_cursor#148 print_char_cursor#147 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#2 = print_uchar::b#5 } { print_char_cursor#152 = print_char_cursor#25 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_slong:66::print_ulong:139::print_uint:129::print_uchar:114::print_char:90 [ print_line_cursor#0 print_ulong::dw#2 print_uchar::b#5 print_char_cursor#95 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_slong:70::print_ulong:139::print_uint:129::print_uchar:114::print_char:90 [ print_line_cursor#0 print_ulong::dw#2 print_uchar::b#5 print_char_cursor#95 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_ulong:62::print_uint:131::print_uchar:114::print_char:90 [ print_line_cursor#0 print_uchar::b#5 print_char_cursor#95 ] { { print_char_cursor#1 = print_char_cursor#148 } { print_uint::w#2 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_slong:66::print_ulong:139::print_uint:131::print_uchar:114::print_char:90 [ print_line_cursor#0 print_uchar::b#5 print_char_cursor#95 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#2 = print_uint::w#5 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testLong:9::print_slong:70::print_ulong:139::print_uint:131::print_uchar:114::print_char:90 [ print_line_cursor#0 print_uchar::b#5 print_char_cursor#95 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#2 = print_uint::w#5 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#7 } } testChar:3::print_uchar:17::print_char:93 [ print_char_cursor#95 ] { { print_char_cursor#1 = print_char_cursor#152 } { print_char::ch#17 = print_char::ch#8 } { print_char_cursor#25 = print_char_cursor#95 } } testChar:3::print_uchar:21::print_char:93 [ print_char_cursor#95 ] { { print_char_cursor#152 = print_char_cursor#25 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#8 } } testChar:3::print_schar:25::print_uchar:103::print_char:93 [ print_char_cursor#95 ] { { print_char_cursor#152 = print_char_cursor#25 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#8 } } testShort:5::print_uint:32::print_uchar:112::print_char:93 [ print_line_cursor#0 print_uint::w#5 print_char_cursor#95 ] { { print_char_cursor#1 = print_char_cursor#147 print_char_cursor#152 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } { print_char_cursor#25 = print_char_cursor#95 } } testInt:7::print_uint:47::print_uchar:112::print_char:93 [ print_line_cursor#0 print_uint::w#5 print_char_cursor#95 ] { { print_char_cursor#1 = print_char_cursor#147 print_char_cursor#152 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } { print_char_cursor#25 = print_char_cursor#95 } } testShort:5::print_sint:36::print_uint:122::print_uchar:112::print_char:93 [ print_line_cursor#0 print_uint::w#5 print_char_cursor#95 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testShort:5::print_sint:40::print_uint:122::print_uchar:112::print_char:93 [ print_line_cursor#0 print_uint::w#5 print_char_cursor#95 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testInt:7::print_sint:51::print_uint:122::print_uchar:112::print_char:93 [ print_line_cursor#0 print_uint::w#5 print_char_cursor#95 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testInt:7::print_sint:55::print_uint:122::print_uchar:112::print_char:93 [ print_line_cursor#0 print_uint::w#5 print_char_cursor#95 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_ulong:62::print_uint:129::print_uchar:112::print_char:93 [ print_line_cursor#0 print_ulong::dw#2 print_uint::w#5 print_char_cursor#95 ] { { print_char_cursor#1 = print_char_cursor#148 print_char_cursor#147 print_char_cursor#152 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } { print_char_cursor#25 = print_char_cursor#95 } } testLong:9::print_slong:66::print_ulong:139::print_uint:129::print_uchar:112::print_char:93 [ print_line_cursor#0 print_ulong::dw#2 print_uint::w#5 print_char_cursor#95 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_slong:70::print_ulong:139::print_uint:129::print_uchar:112::print_char:93 [ print_line_cursor#0 print_ulong::dw#2 print_uint::w#5 print_char_cursor#95 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_ulong:62::print_uint:131::print_uchar:112::print_char:93 [ print_line_cursor#0 print_uint::w#5 print_char_cursor#95 ] { { print_char_cursor#1 = print_char_cursor#148 } { print_uint::w#2 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_slong:66::print_ulong:139::print_uint:131::print_uchar:112::print_char:93 [ print_line_cursor#0 print_uint::w#5 print_char_cursor#95 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#2 = print_uint::w#5 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_slong:70::print_ulong:139::print_uint:131::print_uchar:112::print_char:93 [ print_line_cursor#0 print_uint::w#5 print_char_cursor#95 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#2 = print_uint::w#5 } { print_uchar::b#1 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testShort:5::print_uint:32::print_uchar:114::print_char:93 [ print_line_cursor#0 print_char_cursor#95 ] { { print_char_cursor#1 = print_char_cursor#147 } { print_uchar::b#2 = print_uchar::b#5 } { print_char_cursor#152 = print_char_cursor#25 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#8 } } testInt:7::print_uint:47::print_uchar:114::print_char:93 [ print_line_cursor#0 print_char_cursor#95 ] { { print_char_cursor#1 = print_char_cursor#147 } { print_uchar::b#2 = print_uchar::b#5 } { print_char_cursor#152 = print_char_cursor#25 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#8 } } testShort:5::print_sint:36::print_uint:122::print_uchar:114::print_char:93 [ print_line_cursor#0 print_char_cursor#95 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testShort:5::print_sint:40::print_uint:122::print_uchar:114::print_char:93 [ print_line_cursor#0 print_char_cursor#95 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testInt:7::print_sint:51::print_uint:122::print_uchar:114::print_char:93 [ print_line_cursor#0 print_char_cursor#95 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testInt:7::print_sint:55::print_uint:122::print_uchar:114::print_char:93 [ print_line_cursor#0 print_char_cursor#95 ] { { print_uint::w#0 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_ulong:62::print_uint:129::print_uchar:114::print_char:93 [ print_line_cursor#0 print_ulong::dw#2 print_char_cursor#95 ] { { print_char_cursor#1 = print_char_cursor#148 print_char_cursor#147 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#2 = print_uchar::b#5 } { print_char_cursor#152 = print_char_cursor#25 print_char_cursor#95 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_slong:66::print_ulong:139::print_uint:129::print_uchar:114::print_char:93 [ print_line_cursor#0 print_ulong::dw#2 print_char_cursor#95 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_slong:70::print_ulong:139::print_uint:129::print_uchar:114::print_char:93 [ print_line_cursor#0 print_ulong::dw#2 print_char_cursor#95 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#1 = print_uint::w#5 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_ulong:62::print_uint:131::print_uchar:114::print_char:93 [ print_line_cursor#0 print_char_cursor#95 ] { { print_char_cursor#1 = print_char_cursor#148 } { print_uint::w#2 = print_uint::w#5 } { print_char_cursor#147 = print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_slong:66::print_ulong:139::print_uint:131::print_uchar:114::print_char:93 [ print_line_cursor#0 print_char_cursor#95 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#2 = print_uint::w#5 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testLong:9::print_slong:70::print_ulong:139::print_uint:131::print_uchar:114::print_char:93 [ print_line_cursor#0 print_char_cursor#95 ] { { print_ulong::dw#0 = print_ulong::dw#2 } { print_char_cursor#147 = print_char_cursor#148 print_char_cursor#25 print_char_cursor#152 print_char_cursor#95 } { print_uint::w#2 = print_uint::w#5 } { print_uchar::b#2 = print_uchar::b#5 } { print_char::ch#17 = print_char::ch#8 } } testChar:3::print_schar:25::print_char:101 [ print_char_cursor#95 ] { { print_char_cursor#25 = print_char_cursor#95 } } testShort:5::print_sint:36::print_char:119 [ print_line_cursor#0 print_sint::w#10 print_char_cursor#95 ] { { print_char_cursor#25 = print_char_cursor#95 } } testShort:5::print_sint:40::print_char:119 [ print_line_cursor#0 print_sint::w#10 print_char_cursor#95 ] { { print_char_cursor#25 = print_char_cursor#95 } } testInt:7::print_sint:51::print_char:119 [ print_line_cursor#0 print_sint::w#10 print_char_cursor#95 ] { { print_char_cursor#25 = print_char_cursor#95 } } testInt:7::print_sint:55::print_char:119 [ print_line_cursor#0 print_sint::w#10 print_char_cursor#95 ] { { print_char_cursor#25 = print_char_cursor#95 } } testShort:5::print_sint:36::print_char:125 [ print_line_cursor#0 print_sint::w#10 print_char_cursor#95 ] { { print_char_cursor#25 = print_char_cursor#95 } } testShort:5::print_sint:40::print_char:125 [ print_line_cursor#0 print_sint::w#10 print_char_cursor#95 ] { { print_char_cursor#25 = print_char_cursor#95 } } testInt:7::print_sint:51::print_char:125 [ print_line_cursor#0 print_sint::w#10 print_char_cursor#95 ] { { print_char_cursor#25 = print_char_cursor#95 } } testInt:7::print_sint:55::print_char:125 [ print_line_cursor#0 print_sint::w#10 print_char_cursor#95 ] { { print_char_cursor#25 = print_char_cursor#95 } } testLong:9::print_slong:66::print_char:136 [ print_line_cursor#0 print_slong::dw#3 print_char_cursor#95 ] { { print_char_cursor#25 = print_char_cursor#95 } } testLong:9::print_slong:70::print_char:136 [ print_line_cursor#0 print_slong::dw#3 print_char_cursor#95 ] { { print_char_cursor#25 = print_char_cursor#95 } } testLong:9::print_slong:66::print_char:142 [ print_line_cursor#0 print_slong::dw#3 print_char_cursor#95 ] { { print_char_cursor#25 = print_char_cursor#95 } } testLong:9::print_slong:70::print_char:142 [ print_line_cursor#0 print_slong::dw#3 print_char_cursor#95 ] { { print_char_cursor#25 = print_char_cursor#95 } } ) always clobbers reg byte y Statement [107] print_line_cursor#0 = print_line_cursor#21 + $28 [ print_line_cursor#0 print_char_cursor#25 ] ( testChar:3::print_ln:27 [ print_line_cursor#0 print_char_cursor#25 ] { } testShort:5::print_ln:42 [ print_line_cursor#0 print_char_cursor#25 ] { { print_line_cursor#0 = print_line_cursor#41 } } testInt:7::print_ln:57 [ print_line_cursor#0 print_char_cursor#25 ] { { print_line_cursor#0 = print_line_cursor#41 } } testLong:9::print_ln:72 [ print_line_cursor#0 print_char_cursor#25 ] { { print_line_cursor#0 = print_line_cursor#41 } } ) always clobbers reg byte a Statement [108] if(print_line_cursor#0print_cls] print_cls_from_main: jsr print_cls // [2] phi from main to main::@1 [phi:main->main::@1] __b1_from_main: jmp __b1 // main::@1 __b1: // [3] call testChar // [14] phi from main::@1 to testChar [phi:main::@1->testChar] testChar_from___b1: jsr testChar // [4] phi from main::@1 to main::@2 [phi:main::@1->main::@2] __b2_from___b1: jmp __b2 // main::@2 __b2: // [5] call testShort jsr testShort // [6] phi from main::@2 to main::@3 [phi:main::@2->main::@3] __b3_from___b2: jmp __b3 // main::@3 __b3: // [7] call testInt jsr testInt // [8] phi from main::@3 to main::@4 [phi:main::@3->main::@4] __b4_from___b3: jmp __b4 // main::@4 __b4: // [9] call testLong jsr testLong jmp __breturn // main::@return __breturn: // [10] return rts } // print_cls // Clear the screen. Also resets current line/char cursor. print_cls: { // [12] call memset // [74] phi from print_cls to memset [phi:print_cls->memset] memset_from_print_cls: jsr memset jmp __breturn // print_cls::@return __breturn: // [13] return rts } // testChar testChar: { .const u = $e .const n = $e .label s = -$e // [15] call print_str // [80] phi from testChar to print_str [phi:testChar->print_str] print_str_from_testChar: // [80] phi print_char_cursor#159 = print_screen#0 [phi:testChar->print_str#0] -- pbuz1=pbuc1 lda #print_screen sta.z print_char_cursor+1 // [80] phi print_str::str#8 = testChar::str [phi:testChar->print_str#1] -- pbuz1=pbuc1 lda #str sta.z print_str.str+1 jsr print_str // [16] phi from testChar to testChar::@1 [phi:testChar->testChar::@1] __b1_from_testChar: jmp __b1 // testChar::@1 __b1: // [17] call print_uchar // [87] phi from testChar::@1 to print_uchar [phi:testChar::@1->print_uchar] print_uchar_from___b1: // [87] phi print_char_cursor#152 = print_char_cursor#1 [phi:testChar::@1->print_uchar#0] -- register_copy // [87] phi print_uchar::b#5 = testChar::u [phi:testChar::@1->print_uchar#1] -- vbuxx=vbuc1 ldx #u jsr print_uchar // [18] phi from testChar::@1 to testChar::@2 [phi:testChar::@1->testChar::@2] __b2_from___b1: jmp __b2 // testChar::@2 __b2: // [19] call print_char // [95] phi from testChar::@2 to print_char [phi:testChar::@2->print_char] print_char_from___b2: // [95] phi print_char_cursor#95 = print_char_cursor#25 [phi:testChar::@2->print_char#0] -- register_copy // [95] phi print_char::ch#17 = ' ' [phi:testChar::@2->print_char#1] -- vbuaa=vbuc1 lda #' ' jsr print_char // [20] phi from testChar::@2 to testChar::@3 [phi:testChar::@2->testChar::@3] __b3_from___b2: jmp __b3 // testChar::@3 __b3: // [21] call print_uchar // [87] phi from testChar::@3 to print_uchar [phi:testChar::@3->print_uchar] print_uchar_from___b3: // [87] phi print_char_cursor#152 = print_char_cursor#25 [phi:testChar::@3->print_uchar#0] -- register_copy // [87] phi print_uchar::b#5 = testChar::n [phi:testChar::@3->print_uchar#1] -- vbuxx=vbuc1 ldx #n jsr print_uchar // [22] phi from testChar::@3 to testChar::@4 [phi:testChar::@3->testChar::@4] __b4_from___b3: jmp __b4 // testChar::@4 __b4: // [23] call print_char // [95] phi from testChar::@4 to print_char [phi:testChar::@4->print_char] print_char_from___b4: // [95] phi print_char_cursor#95 = print_char_cursor#25 [phi:testChar::@4->print_char#0] -- register_copy // [95] phi print_char::ch#17 = ' ' [phi:testChar::@4->print_char#1] -- vbuaa=vbuc1 lda #' ' jsr print_char // [24] phi from testChar::@4 to testChar::@5 [phi:testChar::@4->testChar::@5] __b5_from___b4: jmp __b5 // testChar::@5 __b5: // [25] call print_schar // [99] phi from testChar::@5 to print_schar [phi:testChar::@5->print_schar] print_schar_from___b5: jsr print_schar // [26] phi from testChar::@5 to testChar::@6 [phi:testChar::@5->testChar::@6] __b6_from___b5: jmp __b6 // testChar::@6 __b6: // [27] call print_ln // [105] phi from testChar::@6 to print_ln [phi:testChar::@6->print_ln] print_ln_from___b6: // [105] phi print_line_cursor#41 = print_screen#0 [phi:testChar::@6->print_ln#0] -- pbuz1=pbuc1 lda #print_screen sta.z print_line_cursor+1 jsr print_ln jmp __breturn // testChar::@return __breturn: // [28] return rts .segment Data str: .text "char: " .byte 0 } .segment Code // testShort testShort: { .const u = $578 .const n = -$578 .const s = -$578 // [29] print_char_cursor#165 = print_line_cursor#0 -- pbuz1=pbuz2 lda.z print_line_cursor sta.z print_char_cursor lda.z print_line_cursor+1 sta.z print_char_cursor+1 // [30] call print_str // [80] phi from testShort to print_str [phi:testShort->print_str] print_str_from_testShort: // [80] phi print_char_cursor#159 = print_char_cursor#165 [phi:testShort->print_str#0] -- register_copy // [80] phi print_str::str#8 = testShort::str [phi:testShort->print_str#1] -- pbuz1=pbuc1 lda #str sta.z print_str.str+1 jsr print_str // [31] phi from testShort to testShort::@1 [phi:testShort->testShort::@1] __b1_from_testShort: jmp __b1 // testShort::@1 __b1: // [32] call print_uint // [110] phi from testShort::@1 to print_uint [phi:testShort::@1->print_uint] print_uint_from___b1: // [110] phi print_char_cursor#147 = print_char_cursor#1 [phi:testShort::@1->print_uint#0] -- register_copy // [110] phi print_uint::w#5 = testShort::u [phi:testShort::@1->print_uint#1] -- vwuz1=vwuc1 lda #u sta.z print_uint.w+1 jsr print_uint // [33] phi from testShort::@1 to testShort::@2 [phi:testShort::@1->testShort::@2] __b2_from___b1: jmp __b2 // testShort::@2 __b2: // [34] call print_char // [95] phi from testShort::@2 to print_char [phi:testShort::@2->print_char] print_char_from___b2: // [95] phi print_char_cursor#95 = print_char_cursor#25 [phi:testShort::@2->print_char#0] -- register_copy // [95] phi print_char::ch#17 = ' ' [phi:testShort::@2->print_char#1] -- vbuaa=vbuc1 lda #' ' jsr print_char // [35] phi from testShort::@2 to testShort::@3 [phi:testShort::@2->testShort::@3] __b3_from___b2: jmp __b3 // testShort::@3 __b3: // [36] call print_sint // [116] phi from testShort::@3 to print_sint [phi:testShort::@3->print_sint] print_sint_from___b3: // [116] phi print_sint::w#10 = testShort::n [phi:testShort::@3->print_sint#0] -- vwsz1=vwsc1 lda #n sta.z print_sint.w+1 jsr print_sint // [37] phi from testShort::@3 to testShort::@4 [phi:testShort::@3->testShort::@4] __b4_from___b3: jmp __b4 // testShort::@4 __b4: // [38] call print_char // [95] phi from testShort::@4 to print_char [phi:testShort::@4->print_char] print_char_from___b4: // [95] phi print_char_cursor#95 = print_char_cursor#25 [phi:testShort::@4->print_char#0] -- register_copy // [95] phi print_char::ch#17 = ' ' [phi:testShort::@4->print_char#1] -- vbuaa=vbuc1 lda #' ' jsr print_char // [39] phi from testShort::@4 to testShort::@5 [phi:testShort::@4->testShort::@5] __b5_from___b4: jmp __b5 // testShort::@5 __b5: // [40] call print_sint // [116] phi from testShort::@5 to print_sint [phi:testShort::@5->print_sint] print_sint_from___b5: // [116] phi print_sint::w#10 = testShort::s [phi:testShort::@5->print_sint#0] -- vwsz1=vwsc1 lda #s sta.z print_sint.w+1 jsr print_sint // [41] phi from testShort::@5 to testShort::@6 [phi:testShort::@5->testShort::@6] __b6_from___b5: jmp __b6 // testShort::@6 __b6: // [42] call print_ln // [105] phi from testShort::@6 to print_ln [phi:testShort::@6->print_ln] print_ln_from___b6: // [105] phi print_line_cursor#41 = print_line_cursor#0 [phi:testShort::@6->print_ln#0] -- register_copy jsr print_ln jmp __breturn // testShort::@return __breturn: // [43] return rts .segment Data str: .text "short: " .byte 0 } .segment Code // testInt testInt: { .const u = $578 .const n = -$578 .const s = -$578 // [44] print_char_cursor#163 = print_line_cursor#0 -- pbuz1=pbuz2 lda.z print_line_cursor sta.z print_char_cursor lda.z print_line_cursor+1 sta.z print_char_cursor+1 // [45] call print_str // [80] phi from testInt to print_str [phi:testInt->print_str] print_str_from_testInt: // [80] phi print_char_cursor#159 = print_char_cursor#163 [phi:testInt->print_str#0] -- register_copy // [80] phi print_str::str#8 = testInt::str [phi:testInt->print_str#1] -- pbuz1=pbuc1 lda #str sta.z print_str.str+1 jsr print_str // [46] phi from testInt to testInt::@1 [phi:testInt->testInt::@1] __b1_from_testInt: jmp __b1 // testInt::@1 __b1: // [47] call print_uint // [110] phi from testInt::@1 to print_uint [phi:testInt::@1->print_uint] print_uint_from___b1: // [110] phi print_char_cursor#147 = print_char_cursor#1 [phi:testInt::@1->print_uint#0] -- register_copy // [110] phi print_uint::w#5 = testInt::u [phi:testInt::@1->print_uint#1] -- vwuz1=vwuc1 lda #u sta.z print_uint.w+1 jsr print_uint // [48] phi from testInt::@1 to testInt::@2 [phi:testInt::@1->testInt::@2] __b2_from___b1: jmp __b2 // testInt::@2 __b2: // [49] call print_char // [95] phi from testInt::@2 to print_char [phi:testInt::@2->print_char] print_char_from___b2: // [95] phi print_char_cursor#95 = print_char_cursor#25 [phi:testInt::@2->print_char#0] -- register_copy // [95] phi print_char::ch#17 = ' ' [phi:testInt::@2->print_char#1] -- vbuaa=vbuc1 lda #' ' jsr print_char // [50] phi from testInt::@2 to testInt::@3 [phi:testInt::@2->testInt::@3] __b3_from___b2: jmp __b3 // testInt::@3 __b3: // [51] call print_sint // [116] phi from testInt::@3 to print_sint [phi:testInt::@3->print_sint] print_sint_from___b3: // [116] phi print_sint::w#10 = testInt::n [phi:testInt::@3->print_sint#0] -- vwsz1=vwsc1 lda #n sta.z print_sint.w+1 jsr print_sint // [52] phi from testInt::@3 to testInt::@4 [phi:testInt::@3->testInt::@4] __b4_from___b3: jmp __b4 // testInt::@4 __b4: // [53] call print_char // [95] phi from testInt::@4 to print_char [phi:testInt::@4->print_char] print_char_from___b4: // [95] phi print_char_cursor#95 = print_char_cursor#25 [phi:testInt::@4->print_char#0] -- register_copy // [95] phi print_char::ch#17 = ' ' [phi:testInt::@4->print_char#1] -- vbuaa=vbuc1 lda #' ' jsr print_char // [54] phi from testInt::@4 to testInt::@5 [phi:testInt::@4->testInt::@5] __b5_from___b4: jmp __b5 // testInt::@5 __b5: // [55] call print_sint // [116] phi from testInt::@5 to print_sint [phi:testInt::@5->print_sint] print_sint_from___b5: // [116] phi print_sint::w#10 = testInt::s [phi:testInt::@5->print_sint#0] -- vwsz1=vwsc1 lda #s sta.z print_sint.w+1 jsr print_sint // [56] phi from testInt::@5 to testInt::@6 [phi:testInt::@5->testInt::@6] __b6_from___b5: jmp __b6 // testInt::@6 __b6: // [57] call print_ln // [105] phi from testInt::@6 to print_ln [phi:testInt::@6->print_ln] print_ln_from___b6: // [105] phi print_line_cursor#41 = print_line_cursor#0 [phi:testInt::@6->print_ln#0] -- register_copy jsr print_ln jmp __breturn // testInt::@return __breturn: // [58] return rts .segment Data str: .text "int: " .byte 0 } .segment Code // testLong testLong: { .const u = $222e0 .const n = -$222e0 .const s = -$222e0 // [59] print_char_cursor#164 = print_line_cursor#0 -- pbuz1=pbuz2 lda.z print_line_cursor sta.z print_char_cursor lda.z print_line_cursor+1 sta.z print_char_cursor+1 // [60] call print_str // [80] phi from testLong to print_str [phi:testLong->print_str] print_str_from_testLong: // [80] phi print_char_cursor#159 = print_char_cursor#164 [phi:testLong->print_str#0] -- register_copy // [80] phi print_str::str#8 = testLong::str [phi:testLong->print_str#1] -- pbuz1=pbuc1 lda #str sta.z print_str.str+1 jsr print_str // [61] phi from testLong to testLong::@1 [phi:testLong->testLong::@1] __b1_from_testLong: jmp __b1 // testLong::@1 __b1: // [62] call print_ulong // [127] phi from testLong::@1 to print_ulong [phi:testLong::@1->print_ulong] print_ulong_from___b1: // [127] phi print_char_cursor#148 = print_char_cursor#1 [phi:testLong::@1->print_ulong#0] -- register_copy // [127] phi print_ulong::dw#2 = testLong::u [phi:testLong::@1->print_ulong#1] -- vduz1=vduc1 lda #u sta.z print_ulong.dw+1 lda #>$10 sta.z print_ulong.dw+2 lda #>u>>$10 sta.z print_ulong.dw+3 jsr print_ulong // [63] phi from testLong::@1 to testLong::@2 [phi:testLong::@1->testLong::@2] __b2_from___b1: jmp __b2 // testLong::@2 __b2: // [64] call print_char // [95] phi from testLong::@2 to print_char [phi:testLong::@2->print_char] print_char_from___b2: // [95] phi print_char_cursor#95 = print_char_cursor#25 [phi:testLong::@2->print_char#0] -- register_copy // [95] phi print_char::ch#17 = ' ' [phi:testLong::@2->print_char#1] -- vbuaa=vbuc1 lda #' ' jsr print_char // [65] phi from testLong::@2 to testLong::@3 [phi:testLong::@2->testLong::@3] __b3_from___b2: jmp __b3 // testLong::@3 __b3: // [66] call print_slong // [133] phi from testLong::@3 to print_slong [phi:testLong::@3->print_slong] print_slong_from___b3: // [133] phi print_slong::dw#3 = testLong::n [phi:testLong::@3->print_slong#0] -- vdsz1=vdsc1 lda #n sta.z print_slong.dw+1 lda #>$10 sta.z print_slong.dw+2 lda #>n>>$10 sta.z print_slong.dw+3 jsr print_slong // [67] phi from testLong::@3 to testLong::@4 [phi:testLong::@3->testLong::@4] __b4_from___b3: jmp __b4 // testLong::@4 __b4: // [68] call print_char // [95] phi from testLong::@4 to print_char [phi:testLong::@4->print_char] print_char_from___b4: // [95] phi print_char_cursor#95 = print_char_cursor#25 [phi:testLong::@4->print_char#0] -- register_copy // [95] phi print_char::ch#17 = ' ' [phi:testLong::@4->print_char#1] -- vbuaa=vbuc1 lda #' ' jsr print_char // [69] phi from testLong::@4 to testLong::@5 [phi:testLong::@4->testLong::@5] __b5_from___b4: jmp __b5 // testLong::@5 __b5: // [70] call print_slong // [133] phi from testLong::@5 to print_slong [phi:testLong::@5->print_slong] print_slong_from___b5: // [133] phi print_slong::dw#3 = testLong::s [phi:testLong::@5->print_slong#0] -- vdsz1=vdsc1 lda #s sta.z print_slong.dw+1 lda #>$10 sta.z print_slong.dw+2 lda #>s>>$10 sta.z print_slong.dw+3 jsr print_slong // [71] phi from testLong::@5 to testLong::@6 [phi:testLong::@5->testLong::@6] __b6_from___b5: jmp __b6 // testLong::@6 __b6: // [72] call print_ln // [105] phi from testLong::@6 to print_ln [phi:testLong::@6->print_ln] print_ln_from___b6: // [105] phi print_line_cursor#41 = print_line_cursor#0 [phi:testLong::@6->print_ln#0] -- register_copy jsr print_ln jmp __breturn // testLong::@return __breturn: // [73] return rts .segment Data str: .text "long: " .byte 0 } .segment Code // memset // Copies the character c (an unsigned char) to the first num characters of the object pointed to by the argument str. // void * memset(void *str, char c, unsigned int num) memset: { .const c = ' ' .const num = $3e8 .label str = print_screen .label end = str+num .label dst = 4 // [75] phi from memset to memset::@1 [phi:memset->memset::@1] __b1_from_memset: // [75] phi memset::dst#2 = (char *)memset::str#0 [phi:memset->memset::@1#0] -- pbuz1=pbuc1 lda #str sta.z dst+1 jmp __b1 // memset::@1 __b1: // [76] if(memset::dst#2!=memset::end#0) goto memset::@2 -- pbuz1_neq_pbuc1_then_la1 lda.z dst+1 cmp #>end bne __b2 lda.z dst cmp #memset::@1] __b1_from___b2: // [75] phi memset::dst#2 = memset::dst#1 [phi:memset::@2->memset::@1#0] -- register_copy jmp __b1 } // print_str // Print a zero-terminated string // void print_str(__zp(4) char *str) print_str: { .label str = 4 // [81] phi from print_str print_str::@3 to print_str::@1 [phi:print_str/print_str::@3->print_str::@1] __b1_from_print_str: __b1_from___b3: // [81] phi print_char_cursor#1 = print_char_cursor#159 [phi:print_str/print_str::@3->print_str::@1#0] -- register_copy // [81] phi print_str::str#5 = print_str::str#8 [phi:print_str/print_str::@3->print_str::@1#1] -- register_copy jmp __b1 // print_str::@1 __b1: // [82] if(0!=*print_str::str#5) goto print_str::@2 -- 0_neq__deref_pbuz1_then_la1 ldy #0 lda (str),y cmp #0 bne __b2 jmp __breturn // print_str::@return __breturn: // [83] return rts // print_str::@2 __b2: // [84] print_char::ch#0 = *print_str::str#5 -- vbuaa=_deref_pbuz1 ldy #0 lda (str),y // [85] call print_char // [95] phi from print_str::@2 to print_char [phi:print_str::@2->print_char] print_char_from___b2: // [95] phi print_char_cursor#95 = print_char_cursor#1 [phi:print_str::@2->print_char#0] -- register_copy // [95] phi print_char::ch#17 = print_char::ch#0 [phi:print_str::@2->print_char#1] -- register_copy jsr print_char jmp __b3 // print_str::@3 __b3: // [86] print_str::str#0 = ++ print_str::str#5 -- pbuz1=_inc_pbuz1 inc.z str bne !+ inc.z str+1 !: jmp __b1_from___b3 } // print_uchar // Print a char as HEX // void print_uchar(__register(X) char b) print_uchar: { // [88] print_uchar::$0 = print_uchar::b#5 >> 4 -- vbuaa=vbuxx_ror_4 txa lsr lsr lsr lsr // [89] print_char::ch#7 = print_hextab[print_uchar::$0] -- vbuaa=pbuc1_derefidx_vbuaa tay lda print_hextab,y // [90] call print_char // Table of hexadecimal digits // [95] phi from print_uchar to print_char [phi:print_uchar->print_char] print_char_from_print_uchar: // [95] phi print_char_cursor#95 = print_char_cursor#152 [phi:print_uchar->print_char#0] -- register_copy // [95] phi print_char::ch#17 = print_char::ch#7 [phi:print_uchar->print_char#1] -- register_copy jsr print_char jmp __b1 // print_uchar::@1 __b1: // [91] print_uchar::$2 = print_uchar::b#5 & $f -- vbuxx=vbuxx_band_vbuc1 lda #$f axs #0 // [92] print_char::ch#8 = print_hextab[print_uchar::$2] -- vbuaa=pbuc1_derefidx_vbuxx lda print_hextab,x // [93] call print_char // [95] phi from print_uchar::@1 to print_char [phi:print_uchar::@1->print_char] print_char_from___b1: // [95] phi print_char_cursor#95 = print_char_cursor#25 [phi:print_uchar::@1->print_char#0] -- register_copy // [95] phi print_char::ch#17 = print_char::ch#8 [phi:print_uchar::@1->print_char#1] -- register_copy jsr print_char jmp __breturn // print_uchar::@return __breturn: // [94] return rts } // print_char // Print a single char // void print_char(__register(A) char ch) print_char: { // [96] *print_char_cursor#95 = print_char::ch#17 -- _deref_pbuz1=vbuaa ldy #0 sta (print_char_cursor),y // [97] print_char_cursor#25 = ++ print_char_cursor#95 -- pbuz1=_inc_pbuz1 inc.z print_char_cursor bne !+ inc.z print_char_cursor+1 !: jmp __breturn // print_char::@return __breturn: // [98] return rts } // print_schar // Print a signed char as HEX // void print_schar(signed char b) print_schar: { .const b = -testChar.s // [100] phi from print_schar to print_schar::@1 [phi:print_schar->print_schar::@1] __b1_from_print_schar: jmp __b1 // print_schar::@1 __b1: // [101] call print_char // [95] phi from print_schar::@1 to print_char [phi:print_schar::@1->print_char] print_char_from___b1: // [95] phi print_char_cursor#95 = print_char_cursor#25 [phi:print_schar::@1->print_char#0] -- register_copy // [95] phi print_char::ch#17 = '-' [phi:print_schar::@1->print_char#1] -- vbuaa=vbuc1 lda #'-' jsr print_char // [102] phi from print_schar::@1 to print_schar::@2 [phi:print_schar::@1->print_schar::@2] __b2_from___b1: jmp __b2 // print_schar::@2 __b2: // [103] call print_uchar // [87] phi from print_schar::@2 to print_uchar [phi:print_schar::@2->print_uchar] print_uchar_from___b2: // [87] phi print_char_cursor#152 = print_char_cursor#25 [phi:print_schar::@2->print_uchar#0] -- register_copy // [87] phi print_uchar::b#5 = (char)print_schar::b#0 [phi:print_schar::@2->print_uchar#1] -- vbuxx=vbuc1 ldx #b jsr print_uchar jmp __breturn // print_schar::@return __breturn: // [104] return rts } // print_ln // Print a newline print_ln: { // [106] phi from print_ln print_ln::@1 to print_ln::@1 [phi:print_ln/print_ln::@1->print_ln::@1] __b1_from_print_ln: __b1_from___b1: // [106] phi print_line_cursor#21 = print_line_cursor#41 [phi:print_ln/print_ln::@1->print_ln::@1#0] -- register_copy jmp __b1 // print_ln::@1 __b1: // [107] print_line_cursor#0 = print_line_cursor#21 + $28 -- pbuz1=pbuz1_plus_vbuc1 lda #$28 clc adc.z print_line_cursor sta.z print_line_cursor bcc !+ inc.z print_line_cursor+1 !: // [108] if(print_line_cursor#0print_uchar] print_uchar_from_print_uint: // [87] phi print_char_cursor#152 = print_char_cursor#147 [phi:print_uint->print_uchar#0] -- register_copy // [87] phi print_uchar::b#5 = print_uchar::b#1 [phi:print_uint->print_uchar#1] -- register_copy jsr print_uchar jmp __b1 // print_uint::@1 __b1: // [113] print_uchar::b#2 = byte0 print_uint::w#5 -- vbuxx=_byte0_vwuz1 ldx.z w // [114] call print_uchar // [87] phi from print_uint::@1 to print_uchar [phi:print_uint::@1->print_uchar] print_uchar_from___b1: // [87] phi print_char_cursor#152 = print_char_cursor#25 [phi:print_uint::@1->print_uchar#0] -- register_copy // [87] phi print_uchar::b#5 = print_uchar::b#2 [phi:print_uint::@1->print_uchar#1] -- register_copy jsr print_uchar jmp __breturn // print_uint::@return __breturn: // [115] return rts } // print_sint // Print a signed int as HEX // void print_sint(__zp(4) int w) print_sint: { .label w = 4 // [117] if(print_sint::w#10<0) goto print_sint::@1 -- vwsz1_lt_0_then_la1 lda.z w+1 bmi __b1_from_print_sint // [118] phi from print_sint to print_sint::@3 [phi:print_sint->print_sint::@3] __b3_from_print_sint: jmp __b3 // print_sint::@3 __b3: // [119] call print_char // [95] phi from print_sint::@3 to print_char [phi:print_sint::@3->print_char] print_char_from___b3: // [95] phi print_char_cursor#95 = print_char_cursor#25 [phi:print_sint::@3->print_char#0] -- register_copy // [95] phi print_char::ch#17 = ' ' [phi:print_sint::@3->print_char#1] -- vbuaa=vbuc1 lda #' ' jsr print_char // [120] phi from print_sint::@3 print_sint::@4 to print_sint::@2 [phi:print_sint::@3/print_sint::@4->print_sint::@2] __b2_from___b3: __b2_from___b4: // [120] phi print_sint::w#7 = print_sint::w#10 [phi:print_sint::@3/print_sint::@4->print_sint::@2#0] -- register_copy jmp __b2 // print_sint::@2 __b2: // [121] print_uint::w#0 = (unsigned int)print_sint::w#7 // [122] call print_uint // [110] phi from print_sint::@2 to print_uint [phi:print_sint::@2->print_uint] print_uint_from___b2: // [110] phi print_char_cursor#147 = print_char_cursor#25 [phi:print_sint::@2->print_uint#0] -- register_copy // [110] phi print_uint::w#5 = print_uint::w#0 [phi:print_sint::@2->print_uint#1] -- register_copy jsr print_uint jmp __breturn // print_sint::@return __breturn: // [123] return rts // [124] phi from print_sint to print_sint::@1 [phi:print_sint->print_sint::@1] __b1_from_print_sint: jmp __b1 // print_sint::@1 __b1: // [125] call print_char // [95] phi from print_sint::@1 to print_char [phi:print_sint::@1->print_char] print_char_from___b1: // [95] phi print_char_cursor#95 = print_char_cursor#25 [phi:print_sint::@1->print_char#0] -- register_copy // [95] phi print_char::ch#17 = '-' [phi:print_sint::@1->print_char#1] -- vbuaa=vbuc1 lda #'-' jsr print_char jmp __b4 // print_sint::@4 __b4: // [126] print_sint::w#0 = - print_sint::w#10 -- vwsz1=_neg_vwsz1 lda #0 sec sbc.z w sta.z w lda #0 sbc.z w+1 sta.z w+1 jmp __b2_from___b4 } // print_ulong // Print a unsigned long as HEX // void print_ulong(__zp(8) unsigned long dw) print_ulong: { .label dw = 8 // [128] print_uint::w#1 = word1 print_ulong::dw#2 -- vwuz1=_word1_vduz2 lda.z dw+2 sta.z print_uint.w lda.z dw+3 sta.z print_uint.w+1 // [129] call print_uint // [110] phi from print_ulong to print_uint [phi:print_ulong->print_uint] print_uint_from_print_ulong: // [110] phi print_char_cursor#147 = print_char_cursor#148 [phi:print_ulong->print_uint#0] -- register_copy // [110] phi print_uint::w#5 = print_uint::w#1 [phi:print_ulong->print_uint#1] -- register_copy jsr print_uint jmp __b1 // print_ulong::@1 __b1: // [130] print_uint::w#2 = word0 print_ulong::dw#2 -- vwuz1=_word0_vduz2 lda.z dw sta.z print_uint.w lda.z dw+1 sta.z print_uint.w+1 // [131] call print_uint // [110] phi from print_ulong::@1 to print_uint [phi:print_ulong::@1->print_uint] print_uint_from___b1: // [110] phi print_char_cursor#147 = print_char_cursor#25 [phi:print_ulong::@1->print_uint#0] -- register_copy // [110] phi print_uint::w#5 = print_uint::w#2 [phi:print_ulong::@1->print_uint#1] -- register_copy jsr print_uint jmp __breturn // print_ulong::@return __breturn: // [132] return rts } // print_slong // Print a signed long as HEX // void print_slong(__zp(8) long dw) print_slong: { .label dw = 8 // [134] if(print_slong::dw#3<0) goto print_slong::@1 -- vdsz1_lt_0_then_la1 lda.z dw+3 bmi __b1_from_print_slong // [135] phi from print_slong to print_slong::@3 [phi:print_slong->print_slong::@3] __b3_from_print_slong: jmp __b3 // print_slong::@3 __b3: // [136] call print_char // [95] phi from print_slong::@3 to print_char [phi:print_slong::@3->print_char] print_char_from___b3: // [95] phi print_char_cursor#95 = print_char_cursor#25 [phi:print_slong::@3->print_char#0] -- register_copy // [95] phi print_char::ch#17 = ' ' [phi:print_slong::@3->print_char#1] -- vbuaa=vbuc1 lda #' ' jsr print_char // [137] phi from print_slong::@3 print_slong::@4 to print_slong::@2 [phi:print_slong::@3/print_slong::@4->print_slong::@2] __b2_from___b3: __b2_from___b4: // [137] phi print_slong::dw#5 = print_slong::dw#3 [phi:print_slong::@3/print_slong::@4->print_slong::@2#0] -- register_copy jmp __b2 // print_slong::@2 __b2: // [138] print_ulong::dw#0 = (unsigned long)print_slong::dw#5 // [139] call print_ulong // [127] phi from print_slong::@2 to print_ulong [phi:print_slong::@2->print_ulong] print_ulong_from___b2: // [127] phi print_char_cursor#148 = print_char_cursor#25 [phi:print_slong::@2->print_ulong#0] -- register_copy // [127] phi print_ulong::dw#2 = print_ulong::dw#0 [phi:print_slong::@2->print_ulong#1] -- register_copy jsr print_ulong jmp __breturn // print_slong::@return __breturn: // [140] return rts // [141] phi from print_slong to print_slong::@1 [phi:print_slong->print_slong::@1] __b1_from_print_slong: jmp __b1 // print_slong::@1 __b1: // [142] call print_char // [95] phi from print_slong::@1 to print_char [phi:print_slong::@1->print_char] print_char_from___b1: // [95] phi print_char_cursor#95 = print_char_cursor#25 [phi:print_slong::@1->print_char#0] -- register_copy // [95] phi print_char::ch#17 = '-' [phi:print_slong::@1->print_char#1] -- vbuaa=vbuc1 lda #'-' jsr print_char jmp __b4 // print_slong::@4 __b4: // [143] print_slong::dw#0 = - print_slong::dw#3 -- vdsz1=_neg_vdsz1 sec lda.z dw eor #$ff adc #0 sta.z dw lda.z dw+1 eor #$ff adc #0 sta.z dw+1 lda.z dw+2 eor #$ff adc #0 sta.z dw+2 lda.z dw+3 eor #$ff adc #0 sta.z dw+3 jmp __b2_from___b4 } // File Data .segment Data print_hextab: .text "0123456789abcdef" ASSEMBLER OPTIMIZATIONS Removing instruction jmp __b1 Removing instruction jmp __b2 Removing instruction jmp __b3 Removing instruction jmp __b4 Removing instruction jmp __breturn Removing instruction jmp __breturn Removing instruction jmp __b1 Removing instruction jmp __b2 Removing instruction jmp __b3 Removing instruction jmp __b4 Removing instruction jmp __b5 Removing instruction jmp __b6 Removing instruction jmp __breturn Removing instruction jmp __b1 Removing instruction jmp __b2 Removing instruction jmp __b3 Removing instruction jmp __b4 Removing instruction jmp __b5 Removing instruction jmp __b6 Removing instruction jmp __breturn Removing instruction jmp __b1 Removing instruction jmp __b2 Removing instruction jmp __b3 Removing instruction jmp __b4 Removing instruction jmp __b5 Removing instruction jmp __b6 Removing instruction jmp __breturn Removing instruction jmp __b1 Removing instruction jmp __b2 Removing instruction jmp __b3 Removing instruction jmp __b4 Removing instruction jmp __b5 Removing instruction jmp __b6 Removing instruction jmp __breturn Removing instruction jmp __b1 Removing instruction jmp __breturn Removing instruction jmp __b1 Removing instruction jmp __breturn Removing instruction jmp __b3 Removing instruction jmp __b1 Removing instruction jmp __breturn Removing instruction jmp __breturn Removing instruction jmp __b1 Removing instruction jmp __b2 Removing instruction jmp __breturn Removing instruction jmp __b1 Removing instruction jmp __breturn Removing instruction jmp __b1 Removing instruction jmp __breturn Removing instruction jmp __b3 Removing instruction jmp __b2 Removing instruction jmp __breturn Removing instruction jmp __b1 Removing instruction jmp __b4 Removing instruction jmp __b1 Removing instruction jmp __breturn Removing instruction jmp __b3 Removing instruction jmp __b2 Removing instruction jmp __breturn Removing instruction jmp __b1 Removing instruction jmp __b4 Succesful ASM optimization Pass5NextJumpElimination Replacing label __b1_from___b3 with __b1 Replacing label __b1_from___b1 with __b1 Replacing label __b1_from___b1 with __b1 Replacing label __b1_from_print_sint with __b1 Replacing label __b2_from___b4 with __b2 Replacing label __b1_from_print_slong with __b1 Replacing label __b2_from___b4 with __b2 Removing instruction __b1_from_main: Removing instruction testChar_from___b1: Removing instruction __b2_from___b1: Removing instruction __b3_from___b2: Removing instruction __b4_from___b3: Removing instruction __b1_from_testChar: Removing instruction print_uchar_from___b1: Removing instruction __b2_from___b1: Removing instruction print_char_from___b2: Removing instruction __b3_from___b2: Removing instruction print_uchar_from___b3: Removing instruction __b4_from___b3: Removing instruction print_char_from___b4: Removing instruction __b5_from___b4: Removing instruction print_schar_from___b5: Removing instruction __b6_from___b5: Removing instruction print_ln_from___b6: Removing instruction __b1_from_testShort: Removing instruction print_uint_from___b1: Removing instruction __b2_from___b1: Removing instruction print_char_from___b2: Removing instruction __b3_from___b2: Removing instruction print_sint_from___b3: Removing instruction __b4_from___b3: Removing instruction print_char_from___b4: Removing instruction __b5_from___b4: Removing instruction print_sint_from___b5: Removing instruction __b6_from___b5: Removing instruction print_ln_from___b6: Removing instruction __b1_from_testInt: Removing instruction print_uint_from___b1: Removing instruction __b2_from___b1: Removing instruction print_char_from___b2: Removing instruction __b3_from___b2: Removing instruction print_sint_from___b3: Removing instruction __b4_from___b3: Removing instruction print_char_from___b4: Removing instruction __b5_from___b4: Removing instruction print_sint_from___b5: Removing instruction __b6_from___b5: Removing instruction print_ln_from___b6: Removing instruction __b1_from_testLong: Removing instruction print_ulong_from___b1: Removing instruction __b2_from___b1: Removing instruction print_char_from___b2: Removing instruction __b3_from___b2: Removing instruction print_slong_from___b3: Removing instruction __b4_from___b3: Removing instruction print_char_from___b4: Removing instruction __b5_from___b4: Removing instruction print_slong_from___b5: Removing instruction __b6_from___b5: Removing instruction print_ln_from___b6: Removing instruction __b1_from_print_str: Removing instruction __b1_from___b3: Removing instruction __b1_from_print_schar: Removing instruction print_char_from___b1: Removing instruction __b2_from___b1: Removing instruction print_uchar_from___b2: Removing instruction __b1_from_print_ln: Removing instruction __b1_from___b1: Removing instruction __b3_from_print_sint: Removing instruction print_char_from___b3: Removing instruction __b2_from___b3: Removing instruction __b2_from___b4: Removing instruction print_uint_from___b2: Removing instruction __b1_from_print_sint: Removing instruction print_char_from___b1: Removing instruction __b3_from_print_slong: Removing instruction print_char_from___b3: Removing instruction __b2_from___b3: Removing instruction __b2_from___b4: Removing instruction print_ulong_from___b2: Removing instruction __b1_from_print_slong: Removing instruction print_char_from___b1: Succesful ASM optimization Pass5RedundantLabelElimination Removing instruction print_cls_from_main: Removing instruction __b1: Removing instruction __b2: Removing instruction __b3: Removing instruction __b4: Removing instruction __breturn: Removing instruction memset_from_print_cls: Removing instruction __breturn: Removing instruction print_str_from_testChar: Removing instruction __b1: Removing instruction __b2: Removing instruction __b3: Removing instruction __b4: Removing instruction __b5: Removing instruction __b6: Removing instruction __breturn: Removing instruction print_str_from_testShort: Removing instruction __b1: Removing instruction __b2: Removing instruction __b3: Removing instruction __b4: Removing instruction __b5: Removing instruction __b6: Removing instruction __breturn: Removing instruction print_str_from_testInt: Removing instruction __b1: Removing instruction __b2: Removing instruction __b3: Removing instruction __b4: Removing instruction __b5: Removing instruction __b6: Removing instruction __breturn: Removing instruction print_str_from_testLong: Removing instruction __b1: Removing instruction __b2: Removing instruction __b3: Removing instruction __b4: Removing instruction __b5: Removing instruction __b6: Removing instruction __breturn: Removing instruction __b1_from_memset: Removing instruction __breturn: Removing instruction __b1_from___b2: Removing instruction __breturn: Removing instruction print_char_from___b2: Removing instruction __b3: Removing instruction print_char_from_print_uchar: Removing instruction __b1: Removing instruction print_char_from___b1: Removing instruction __breturn: Removing instruction __breturn: Removing instruction __b1: Removing instruction __b2: Removing instruction __breturn: Removing instruction __breturn: Removing instruction print_uchar_from_print_uint: Removing instruction __b1: Removing instruction print_uchar_from___b1: Removing instruction __breturn: Removing instruction __b3: Removing instruction __breturn: Removing instruction __b4: Removing instruction print_uint_from_print_ulong: Removing instruction __b1: Removing instruction print_uint_from___b1: Removing instruction __breturn: Removing instruction __b3: Removing instruction __breturn: Removing instruction __b4: Succesful ASM optimization Pass5UnusedLabelElimination FINAL SYMBOL TABLE __constant char RADIX::BINARY = 2 __constant char RADIX::DECIMAL = $a __constant char RADIX::HEXADECIMAL = $10 __constant char RADIX::OCTAL = 8 void main() void * memset(void *str , char c , unsigned int num) char memset::c __constant char memset::c#0 = ' ' // c char *memset::dst char *memset::dst#1 // dst zp[2]:4 2002.0 char *memset::dst#2 // dst zp[2]:4 1334.6666666666667 char *memset::end __constant char *memset::end#0 = (char *)memset::str#0+memset::num#0 // end unsigned int memset::num __constant unsigned int memset::num#0 = $3e8 // num void *memset::return void *memset::str __constant void *memset::str#0 = (void *)print_screen#0 // str void print_char(char ch) char print_char::ch char print_char::ch#0 // reg byte a 2002.0 char print_char::ch#17 // reg byte a 1201004.0 char print_char::ch#7 // reg byte a 200002.0 char print_char::ch#8 // reg byte a 200002.0 char *print_char_cursor char *print_char_cursor#1 // print_char_cursor zp[2]:2 178.91666666666666 char *print_char_cursor#147 // print_char_cursor zp[2]:2 6063.0 char *print_char_cursor#148 // print_char_cursor zp[2]:2 556.5 char *print_char_cursor#152 // print_char_cursor zp[2]:2 40042.0 char *print_char_cursor#159 // print_char_cursor zp[2]:2 134.0 char *print_char_cursor#163 // print_char_cursor zp[2]:2 22.0 char *print_char_cursor#164 // print_char_cursor zp[2]:2 22.0 char *print_char_cursor#165 // print_char_cursor zp[2]:2 22.0 char *print_char_cursor#25 // print_char_cursor zp[2]:2 12515.876404494384 char *print_char_cursor#95 // print_char_cursor zp[2]:2 1100799.0 void print_cls() __constant const char print_hextab[] = "0123456789abcdef"z char *print_line_cursor char *print_line_cursor#0 // print_line_cursor zp[2]:6 56.833333333333336 char *print_line_cursor#21 // print_line_cursor zp[2]:6 2103.0 char *print_line_cursor#41 // print_line_cursor zp[2]:6 134.0 void print_ln() void print_schar(signed char b) signed char print_schar::b __constant signed char print_schar::b#0 = -testChar::s // b char *print_screen __constant char *print_screen#0 = (char *) 1024 // print_screen void print_sint(int w) int print_sint::w int print_sint::w#0 // w zp[2]:4 202.0 int print_sint::w#10 // w zp[2]:4 50.5 int print_sint::w#7 // w zp[2]:4 202.0 void print_slong(long dw) long print_slong::dw long print_slong::dw#0 // dw zp[4]:8 202.0 long print_slong::dw#3 // dw zp[4]:8 50.5 long print_slong::dw#5 // dw zp[4]:8 202.0 void print_str(char *str) char *print_str::str char *print_str::str#0 // str zp[2]:4 2002.0 char *print_str::str#5 // str zp[2]:4 1026.25 char *print_str::str#8 // str zp[2]:4 101.0 void print_uchar(char b) char print_uchar::$0 // reg byte a 200002.0 char print_uchar::$2 // reg byte x 200002.0 char print_uchar::b char print_uchar::b#1 // reg byte x 20002.0 char print_uchar::b#2 // reg byte x 20002.0 char print_uchar::b#5 // reg byte x 55001.0 void print_uint(unsigned int w) unsigned int print_uint::w unsigned int print_uint::w#0 // w zp[2]:4 202.0 unsigned int print_uint::w#1 // w zp[2]:4 2002.0 unsigned int print_uint::w#2 // w zp[2]:4 2002.0 unsigned int print_uint::w#5 // w zp[2]:4 7368.333333333333 void print_ulong(unsigned long dw) unsigned long print_ulong::dw unsigned long print_ulong::dw#0 // dw zp[4]:8 202.0 unsigned long print_ulong::dw#2 // dw zp[4]:8 701.0 void testChar() __constant char testChar::n = $e __constant signed char testChar::s = -$e __constant char testChar::str[7] = "char: " __constant char testChar::u = $e void testInt() __constant int testInt::n = -$578 __constant int testInt::s = -$578 __constant char testInt::str[6] = "int: " __constant unsigned int testInt::u = $578 void testLong() __constant long testLong::n = -$222e0 __constant long testLong::s = -$222e0 __constant char testLong::str[7] = "long: " __constant unsigned long testLong::u = $222e0 void testShort() __constant int testShort::n = -$578 __constant int testShort::s = -$578 __constant char testShort::str[8] = "short: " __constant unsigned int testShort::u = $578 reg byte x [ print_uchar::b#5 print_uchar::b#1 print_uchar::b#2 ] reg byte a [ print_char::ch#17 print_char::ch#0 print_char::ch#7 print_char::ch#8 ] zp[2]:2 [ print_char_cursor#95 print_char_cursor#152 print_char_cursor#1 print_char_cursor#159 print_char_cursor#163 print_char_cursor#164 print_char_cursor#165 print_char_cursor#25 print_char_cursor#147 print_char_cursor#148 ] zp[2]:6 [ print_line_cursor#21 print_line_cursor#41 print_line_cursor#0 ] zp[2]:4 [ print_uint::w#5 print_uint::w#0 print_uint::w#1 print_uint::w#2 print_sint::w#7 print_sint::w#0 print_sint::w#10 print_str::str#5 print_str::str#8 print_str::str#0 memset::dst#2 memset::dst#1 ] zp[4]:8 [ print_ulong::dw#2 print_ulong::dw#0 print_slong::dw#5 print_slong::dw#0 print_slong::dw#3 ] reg byte a [ print_uchar::$0 ] reg byte x [ print_uchar::$2 ] FINAL ASSEMBLER Score: 2013 // File Comments // Tests the different standard C types // Upstart // Commodore 64 PRG executable file .file [name="c-types.prg", type="prg", segments="Program"] .segmentdef Program [segments="Basic, Code, Data"] .segmentdef Basic [start=$0801] .segmentdef Code [start=$80d] .segmentdef Data [startAfter="Code"] .segment Basic :BasicUpstart(main) // Global Constants & labels .label print_screen = $400 .label print_char_cursor = 2 .label print_line_cursor = 6 .segment Code // main main: { // print_cls() // [1] call print_cls // [11] phi from main to print_cls [phi:main->print_cls] jsr print_cls // [2] phi from main to main::@1 [phi:main->main::@1] // main::@1 // testChar() // [3] call testChar // [14] phi from main::@1 to testChar [phi:main::@1->testChar] jsr testChar // [4] phi from main::@1 to main::@2 [phi:main::@1->main::@2] // main::@2 // testShort() // [5] call testShort jsr testShort // [6] phi from main::@2 to main::@3 [phi:main::@2->main::@3] // main::@3 // testInt() // [7] call testInt jsr testInt // [8] phi from main::@3 to main::@4 [phi:main::@3->main::@4] // main::@4 // testLong() // [9] call testLong jsr testLong // main::@return // } // [10] return rts } // print_cls // Clear the screen. Also resets current line/char cursor. print_cls: { // memset(print_screen, ' ', 1000) // [12] call memset // [74] phi from print_cls to memset [phi:print_cls->memset] jsr memset // print_cls::@return // } // [13] return rts } // testChar testChar: { .const u = $e .const n = $e .label s = -$e // print_str("char: ") // [15] call print_str // [80] phi from testChar to print_str [phi:testChar->print_str] // [80] phi print_char_cursor#159 = print_screen#0 [phi:testChar->print_str#0] -- pbuz1=pbuc1 lda #print_screen sta.z print_char_cursor+1 // [80] phi print_str::str#8 = testChar::str [phi:testChar->print_str#1] -- pbuz1=pbuc1 lda #str sta.z print_str.str+1 jsr print_str // [16] phi from testChar to testChar::@1 [phi:testChar->testChar::@1] // testChar::@1 // print_uchar(u) // [17] call print_uchar // [87] phi from testChar::@1 to print_uchar [phi:testChar::@1->print_uchar] // [87] phi print_char_cursor#152 = print_char_cursor#1 [phi:testChar::@1->print_uchar#0] -- register_copy // [87] phi print_uchar::b#5 = testChar::u [phi:testChar::@1->print_uchar#1] -- vbuxx=vbuc1 ldx #u jsr print_uchar // [18] phi from testChar::@1 to testChar::@2 [phi:testChar::@1->testChar::@2] // testChar::@2 // print_char(' ') // [19] call print_char // [95] phi from testChar::@2 to print_char [phi:testChar::@2->print_char] // [95] phi print_char_cursor#95 = print_char_cursor#25 [phi:testChar::@2->print_char#0] -- register_copy // [95] phi print_char::ch#17 = ' ' [phi:testChar::@2->print_char#1] -- vbuaa=vbuc1 lda #' ' jsr print_char // [20] phi from testChar::@2 to testChar::@3 [phi:testChar::@2->testChar::@3] // testChar::@3 // print_uchar(n) // [21] call print_uchar // [87] phi from testChar::@3 to print_uchar [phi:testChar::@3->print_uchar] // [87] phi print_char_cursor#152 = print_char_cursor#25 [phi:testChar::@3->print_uchar#0] -- register_copy // [87] phi print_uchar::b#5 = testChar::n [phi:testChar::@3->print_uchar#1] -- vbuxx=vbuc1 ldx #n jsr print_uchar // [22] phi from testChar::@3 to testChar::@4 [phi:testChar::@3->testChar::@4] // testChar::@4 // print_char(' ') // [23] call print_char // [95] phi from testChar::@4 to print_char [phi:testChar::@4->print_char] // [95] phi print_char_cursor#95 = print_char_cursor#25 [phi:testChar::@4->print_char#0] -- register_copy // [95] phi print_char::ch#17 = ' ' [phi:testChar::@4->print_char#1] -- vbuaa=vbuc1 lda #' ' jsr print_char // [24] phi from testChar::@4 to testChar::@5 [phi:testChar::@4->testChar::@5] // testChar::@5 // print_schar(s) // [25] call print_schar // [99] phi from testChar::@5 to print_schar [phi:testChar::@5->print_schar] jsr print_schar // [26] phi from testChar::@5 to testChar::@6 [phi:testChar::@5->testChar::@6] // testChar::@6 // print_ln() // [27] call print_ln // [105] phi from testChar::@6 to print_ln [phi:testChar::@6->print_ln] // [105] phi print_line_cursor#41 = print_screen#0 [phi:testChar::@6->print_ln#0] -- pbuz1=pbuc1 lda #print_screen sta.z print_line_cursor+1 jsr print_ln // testChar::@return // } // [28] return rts .segment Data str: .text "char: " .byte 0 } .segment Code // testShort testShort: { .const u = $578 .const n = -$578 .const s = -$578 // [29] print_char_cursor#165 = print_line_cursor#0 -- pbuz1=pbuz2 lda.z print_line_cursor sta.z print_char_cursor lda.z print_line_cursor+1 sta.z print_char_cursor+1 // print_str("short: ") // [30] call print_str // [80] phi from testShort to print_str [phi:testShort->print_str] // [80] phi print_char_cursor#159 = print_char_cursor#165 [phi:testShort->print_str#0] -- register_copy // [80] phi print_str::str#8 = testShort::str [phi:testShort->print_str#1] -- pbuz1=pbuc1 lda #str sta.z print_str.str+1 jsr print_str // [31] phi from testShort to testShort::@1 [phi:testShort->testShort::@1] // testShort::@1 // print_uint(u) // [32] call print_uint // [110] phi from testShort::@1 to print_uint [phi:testShort::@1->print_uint] // [110] phi print_char_cursor#147 = print_char_cursor#1 [phi:testShort::@1->print_uint#0] -- register_copy // [110] phi print_uint::w#5 = testShort::u [phi:testShort::@1->print_uint#1] -- vwuz1=vwuc1 lda #u sta.z print_uint.w+1 jsr print_uint // [33] phi from testShort::@1 to testShort::@2 [phi:testShort::@1->testShort::@2] // testShort::@2 // print_char(' ') // [34] call print_char // [95] phi from testShort::@2 to print_char [phi:testShort::@2->print_char] // [95] phi print_char_cursor#95 = print_char_cursor#25 [phi:testShort::@2->print_char#0] -- register_copy // [95] phi print_char::ch#17 = ' ' [phi:testShort::@2->print_char#1] -- vbuaa=vbuc1 lda #' ' jsr print_char // [35] phi from testShort::@2 to testShort::@3 [phi:testShort::@2->testShort::@3] // testShort::@3 // print_sint(n) // [36] call print_sint // [116] phi from testShort::@3 to print_sint [phi:testShort::@3->print_sint] // [116] phi print_sint::w#10 = testShort::n [phi:testShort::@3->print_sint#0] -- vwsz1=vwsc1 lda #n sta.z print_sint.w+1 jsr print_sint // [37] phi from testShort::@3 to testShort::@4 [phi:testShort::@3->testShort::@4] // testShort::@4 // print_char(' ') // [38] call print_char // [95] phi from testShort::@4 to print_char [phi:testShort::@4->print_char] // [95] phi print_char_cursor#95 = print_char_cursor#25 [phi:testShort::@4->print_char#0] -- register_copy // [95] phi print_char::ch#17 = ' ' [phi:testShort::@4->print_char#1] -- vbuaa=vbuc1 lda #' ' jsr print_char // [39] phi from testShort::@4 to testShort::@5 [phi:testShort::@4->testShort::@5] // testShort::@5 // print_sint(s) // [40] call print_sint // [116] phi from testShort::@5 to print_sint [phi:testShort::@5->print_sint] // [116] phi print_sint::w#10 = testShort::s [phi:testShort::@5->print_sint#0] -- vwsz1=vwsc1 lda #s sta.z print_sint.w+1 jsr print_sint // [41] phi from testShort::@5 to testShort::@6 [phi:testShort::@5->testShort::@6] // testShort::@6 // print_ln() // [42] call print_ln // [105] phi from testShort::@6 to print_ln [phi:testShort::@6->print_ln] // [105] phi print_line_cursor#41 = print_line_cursor#0 [phi:testShort::@6->print_ln#0] -- register_copy jsr print_ln // testShort::@return // } // [43] return rts .segment Data str: .text "short: " .byte 0 } .segment Code // testInt testInt: { .const u = $578 .const n = -$578 .const s = -$578 // [44] print_char_cursor#163 = print_line_cursor#0 -- pbuz1=pbuz2 lda.z print_line_cursor sta.z print_char_cursor lda.z print_line_cursor+1 sta.z print_char_cursor+1 // print_str("int: ") // [45] call print_str // [80] phi from testInt to print_str [phi:testInt->print_str] // [80] phi print_char_cursor#159 = print_char_cursor#163 [phi:testInt->print_str#0] -- register_copy // [80] phi print_str::str#8 = testInt::str [phi:testInt->print_str#1] -- pbuz1=pbuc1 lda #str sta.z print_str.str+1 jsr print_str // [46] phi from testInt to testInt::@1 [phi:testInt->testInt::@1] // testInt::@1 // print_uint(u) // [47] call print_uint // [110] phi from testInt::@1 to print_uint [phi:testInt::@1->print_uint] // [110] phi print_char_cursor#147 = print_char_cursor#1 [phi:testInt::@1->print_uint#0] -- register_copy // [110] phi print_uint::w#5 = testInt::u [phi:testInt::@1->print_uint#1] -- vwuz1=vwuc1 lda #u sta.z print_uint.w+1 jsr print_uint // [48] phi from testInt::@1 to testInt::@2 [phi:testInt::@1->testInt::@2] // testInt::@2 // print_char(' ') // [49] call print_char // [95] phi from testInt::@2 to print_char [phi:testInt::@2->print_char] // [95] phi print_char_cursor#95 = print_char_cursor#25 [phi:testInt::@2->print_char#0] -- register_copy // [95] phi print_char::ch#17 = ' ' [phi:testInt::@2->print_char#1] -- vbuaa=vbuc1 lda #' ' jsr print_char // [50] phi from testInt::@2 to testInt::@3 [phi:testInt::@2->testInt::@3] // testInt::@3 // print_sint(n) // [51] call print_sint // [116] phi from testInt::@3 to print_sint [phi:testInt::@3->print_sint] // [116] phi print_sint::w#10 = testInt::n [phi:testInt::@3->print_sint#0] -- vwsz1=vwsc1 lda #n sta.z print_sint.w+1 jsr print_sint // [52] phi from testInt::@3 to testInt::@4 [phi:testInt::@3->testInt::@4] // testInt::@4 // print_char(' ') // [53] call print_char // [95] phi from testInt::@4 to print_char [phi:testInt::@4->print_char] // [95] phi print_char_cursor#95 = print_char_cursor#25 [phi:testInt::@4->print_char#0] -- register_copy // [95] phi print_char::ch#17 = ' ' [phi:testInt::@4->print_char#1] -- vbuaa=vbuc1 lda #' ' jsr print_char // [54] phi from testInt::@4 to testInt::@5 [phi:testInt::@4->testInt::@5] // testInt::@5 // print_sint(s) // [55] call print_sint // [116] phi from testInt::@5 to print_sint [phi:testInt::@5->print_sint] // [116] phi print_sint::w#10 = testInt::s [phi:testInt::@5->print_sint#0] -- vwsz1=vwsc1 lda #s sta.z print_sint.w+1 jsr print_sint // [56] phi from testInt::@5 to testInt::@6 [phi:testInt::@5->testInt::@6] // testInt::@6 // print_ln() // [57] call print_ln // [105] phi from testInt::@6 to print_ln [phi:testInt::@6->print_ln] // [105] phi print_line_cursor#41 = print_line_cursor#0 [phi:testInt::@6->print_ln#0] -- register_copy jsr print_ln // testInt::@return // } // [58] return rts .segment Data str: .text "int: " .byte 0 } .segment Code // testLong testLong: { .const u = $222e0 .const n = -$222e0 .const s = -$222e0 // [59] print_char_cursor#164 = print_line_cursor#0 -- pbuz1=pbuz2 lda.z print_line_cursor sta.z print_char_cursor lda.z print_line_cursor+1 sta.z print_char_cursor+1 // print_str("long: ") // [60] call print_str // [80] phi from testLong to print_str [phi:testLong->print_str] // [80] phi print_char_cursor#159 = print_char_cursor#164 [phi:testLong->print_str#0] -- register_copy // [80] phi print_str::str#8 = testLong::str [phi:testLong->print_str#1] -- pbuz1=pbuc1 lda #str sta.z print_str.str+1 jsr print_str // [61] phi from testLong to testLong::@1 [phi:testLong->testLong::@1] // testLong::@1 // print_ulong(u) // [62] call print_ulong // [127] phi from testLong::@1 to print_ulong [phi:testLong::@1->print_ulong] // [127] phi print_char_cursor#148 = print_char_cursor#1 [phi:testLong::@1->print_ulong#0] -- register_copy // [127] phi print_ulong::dw#2 = testLong::u [phi:testLong::@1->print_ulong#1] -- vduz1=vduc1 lda #u sta.z print_ulong.dw+1 lda #>$10 sta.z print_ulong.dw+2 lda #>u>>$10 sta.z print_ulong.dw+3 jsr print_ulong // [63] phi from testLong::@1 to testLong::@2 [phi:testLong::@1->testLong::@2] // testLong::@2 // print_char(' ') // [64] call print_char // [95] phi from testLong::@2 to print_char [phi:testLong::@2->print_char] // [95] phi print_char_cursor#95 = print_char_cursor#25 [phi:testLong::@2->print_char#0] -- register_copy // [95] phi print_char::ch#17 = ' ' [phi:testLong::@2->print_char#1] -- vbuaa=vbuc1 lda #' ' jsr print_char // [65] phi from testLong::@2 to testLong::@3 [phi:testLong::@2->testLong::@3] // testLong::@3 // print_slong(n) // [66] call print_slong // [133] phi from testLong::@3 to print_slong [phi:testLong::@3->print_slong] // [133] phi print_slong::dw#3 = testLong::n [phi:testLong::@3->print_slong#0] -- vdsz1=vdsc1 lda #n sta.z print_slong.dw+1 lda #>$10 sta.z print_slong.dw+2 lda #>n>>$10 sta.z print_slong.dw+3 jsr print_slong // [67] phi from testLong::@3 to testLong::@4 [phi:testLong::@3->testLong::@4] // testLong::@4 // print_char(' ') // [68] call print_char // [95] phi from testLong::@4 to print_char [phi:testLong::@4->print_char] // [95] phi print_char_cursor#95 = print_char_cursor#25 [phi:testLong::@4->print_char#0] -- register_copy // [95] phi print_char::ch#17 = ' ' [phi:testLong::@4->print_char#1] -- vbuaa=vbuc1 lda #' ' jsr print_char // [69] phi from testLong::@4 to testLong::@5 [phi:testLong::@4->testLong::@5] // testLong::@5 // print_slong(s) // [70] call print_slong // [133] phi from testLong::@5 to print_slong [phi:testLong::@5->print_slong] // [133] phi print_slong::dw#3 = testLong::s [phi:testLong::@5->print_slong#0] -- vdsz1=vdsc1 lda #s sta.z print_slong.dw+1 lda #>$10 sta.z print_slong.dw+2 lda #>s>>$10 sta.z print_slong.dw+3 jsr print_slong // [71] phi from testLong::@5 to testLong::@6 [phi:testLong::@5->testLong::@6] // testLong::@6 // print_ln() // [72] call print_ln // [105] phi from testLong::@6 to print_ln [phi:testLong::@6->print_ln] // [105] phi print_line_cursor#41 = print_line_cursor#0 [phi:testLong::@6->print_ln#0] -- register_copy jsr print_ln // testLong::@return // } // [73] return rts .segment Data str: .text "long: " .byte 0 } .segment Code // memset // Copies the character c (an unsigned char) to the first num characters of the object pointed to by the argument str. // void * memset(void *str, char c, unsigned int num) memset: { .const c = ' ' .const num = $3e8 .label str = print_screen .label end = str+num .label dst = 4 // [75] phi from memset to memset::@1 [phi:memset->memset::@1] // [75] phi memset::dst#2 = (char *)memset::str#0 [phi:memset->memset::@1#0] -- pbuz1=pbuc1 lda #str sta.z dst+1 // memset::@1 __b1: // for(char* dst = str; dst!=end; dst++) // [76] if(memset::dst#2!=memset::end#0) goto memset::@2 -- pbuz1_neq_pbuc1_then_la1 lda.z dst+1 cmp #>end bne __b2 lda.z dst cmp #memset::@1] // [75] phi memset::dst#2 = memset::dst#1 [phi:memset::@2->memset::@1#0] -- register_copy jmp __b1 } // print_str // Print a zero-terminated string // void print_str(__zp(4) char *str) print_str: { .label str = 4 // [81] phi from print_str print_str::@3 to print_str::@1 [phi:print_str/print_str::@3->print_str::@1] // [81] phi print_char_cursor#1 = print_char_cursor#159 [phi:print_str/print_str::@3->print_str::@1#0] -- register_copy // [81] phi print_str::str#5 = print_str::str#8 [phi:print_str/print_str::@3->print_str::@1#1] -- register_copy // print_str::@1 __b1: // while(*str) // [82] if(0!=*print_str::str#5) goto print_str::@2 -- 0_neq__deref_pbuz1_then_la1 ldy #0 lda (str),y cmp #0 bne __b2 // print_str::@return // } // [83] return rts // print_str::@2 __b2: // print_char(*(str++)) // [84] print_char::ch#0 = *print_str::str#5 -- vbuaa=_deref_pbuz1 ldy #0 lda (str),y // [85] call print_char // [95] phi from print_str::@2 to print_char [phi:print_str::@2->print_char] // [95] phi print_char_cursor#95 = print_char_cursor#1 [phi:print_str::@2->print_char#0] -- register_copy // [95] phi print_char::ch#17 = print_char::ch#0 [phi:print_str::@2->print_char#1] -- register_copy jsr print_char // print_str::@3 // print_char(*(str++)); // [86] print_str::str#0 = ++ print_str::str#5 -- pbuz1=_inc_pbuz1 inc.z str bne !+ inc.z str+1 !: jmp __b1 } // print_uchar // Print a char as HEX // void print_uchar(__register(X) char b) print_uchar: { // b>>4 // [88] print_uchar::$0 = print_uchar::b#5 >> 4 -- vbuaa=vbuxx_ror_4 txa lsr lsr lsr lsr // print_char(print_hextab[b>>4]) // [89] print_char::ch#7 = print_hextab[print_uchar::$0] -- vbuaa=pbuc1_derefidx_vbuaa tay lda print_hextab,y // [90] call print_char // Table of hexadecimal digits // [95] phi from print_uchar to print_char [phi:print_uchar->print_char] // [95] phi print_char_cursor#95 = print_char_cursor#152 [phi:print_uchar->print_char#0] -- register_copy // [95] phi print_char::ch#17 = print_char::ch#7 [phi:print_uchar->print_char#1] -- register_copy jsr print_char // print_uchar::@1 // b&0xf // [91] print_uchar::$2 = print_uchar::b#5 & $f -- vbuxx=vbuxx_band_vbuc1 lda #$f axs #0 // print_char(print_hextab[b&0xf]) // [92] print_char::ch#8 = print_hextab[print_uchar::$2] -- vbuaa=pbuc1_derefidx_vbuxx lda print_hextab,x // [93] call print_char // [95] phi from print_uchar::@1 to print_char [phi:print_uchar::@1->print_char] // [95] phi print_char_cursor#95 = print_char_cursor#25 [phi:print_uchar::@1->print_char#0] -- register_copy // [95] phi print_char::ch#17 = print_char::ch#8 [phi:print_uchar::@1->print_char#1] -- register_copy jsr print_char // print_uchar::@return // } // [94] return rts } // print_char // Print a single char // void print_char(__register(A) char ch) print_char: { // *(print_char_cursor++) = ch // [96] *print_char_cursor#95 = print_char::ch#17 -- _deref_pbuz1=vbuaa ldy #0 sta (print_char_cursor),y // *(print_char_cursor++) = ch; // [97] print_char_cursor#25 = ++ print_char_cursor#95 -- pbuz1=_inc_pbuz1 inc.z print_char_cursor bne !+ inc.z print_char_cursor+1 !: // print_char::@return // } // [98] return rts } // print_schar // Print a signed char as HEX // void print_schar(signed char b) print_schar: { .const b = -testChar.s // [100] phi from print_schar to print_schar::@1 [phi:print_schar->print_schar::@1] // print_schar::@1 // print_char('-') // [101] call print_char // [95] phi from print_schar::@1 to print_char [phi:print_schar::@1->print_char] // [95] phi print_char_cursor#95 = print_char_cursor#25 [phi:print_schar::@1->print_char#0] -- register_copy // [95] phi print_char::ch#17 = '-' [phi:print_schar::@1->print_char#1] -- vbuaa=vbuc1 lda #'-' jsr print_char // [102] phi from print_schar::@1 to print_schar::@2 [phi:print_schar::@1->print_schar::@2] // print_schar::@2 // print_uchar((char)b) // [103] call print_uchar // [87] phi from print_schar::@2 to print_uchar [phi:print_schar::@2->print_uchar] // [87] phi print_char_cursor#152 = print_char_cursor#25 [phi:print_schar::@2->print_uchar#0] -- register_copy // [87] phi print_uchar::b#5 = (char)print_schar::b#0 [phi:print_schar::@2->print_uchar#1] -- vbuxx=vbuc1 ldx #b jsr print_uchar // print_schar::@return // } // [104] return rts } // print_ln // Print a newline print_ln: { // [106] phi from print_ln print_ln::@1 to print_ln::@1 [phi:print_ln/print_ln::@1->print_ln::@1] // [106] phi print_line_cursor#21 = print_line_cursor#41 [phi:print_ln/print_ln::@1->print_ln::@1#0] -- register_copy // print_ln::@1 __b1: // print_line_cursor + 0x28 // [107] print_line_cursor#0 = print_line_cursor#21 + $28 -- pbuz1=pbuz1_plus_vbuc1 lda #$28 clc adc.z print_line_cursor sta.z print_line_cursor bcc !+ inc.z print_line_cursor+1 !: // while (print_line_cursorprint_uchar] // [87] phi print_char_cursor#152 = print_char_cursor#147 [phi:print_uint->print_uchar#0] -- register_copy // [87] phi print_uchar::b#5 = print_uchar::b#1 [phi:print_uint->print_uchar#1] -- register_copy jsr print_uchar // print_uint::@1 // print_uchar(BYTE0(w)) // [113] print_uchar::b#2 = byte0 print_uint::w#5 -- vbuxx=_byte0_vwuz1 ldx.z w // [114] call print_uchar // [87] phi from print_uint::@1 to print_uchar [phi:print_uint::@1->print_uchar] // [87] phi print_char_cursor#152 = print_char_cursor#25 [phi:print_uint::@1->print_uchar#0] -- register_copy // [87] phi print_uchar::b#5 = print_uchar::b#2 [phi:print_uint::@1->print_uchar#1] -- register_copy jsr print_uchar // print_uint::@return // } // [115] return rts } // print_sint // Print a signed int as HEX // void print_sint(__zp(4) int w) print_sint: { .label w = 4 // if(w<0) // [117] if(print_sint::w#10<0) goto print_sint::@1 -- vwsz1_lt_0_then_la1 lda.z w+1 bmi __b1 // [118] phi from print_sint to print_sint::@3 [phi:print_sint->print_sint::@3] // print_sint::@3 // print_char(' ') // [119] call print_char // [95] phi from print_sint::@3 to print_char [phi:print_sint::@3->print_char] // [95] phi print_char_cursor#95 = print_char_cursor#25 [phi:print_sint::@3->print_char#0] -- register_copy // [95] phi print_char::ch#17 = ' ' [phi:print_sint::@3->print_char#1] -- vbuaa=vbuc1 lda #' ' jsr print_char // [120] phi from print_sint::@3 print_sint::@4 to print_sint::@2 [phi:print_sint::@3/print_sint::@4->print_sint::@2] // [120] phi print_sint::w#7 = print_sint::w#10 [phi:print_sint::@3/print_sint::@4->print_sint::@2#0] -- register_copy // print_sint::@2 __b2: // print_uint((unsigned int)w) // [121] print_uint::w#0 = (unsigned int)print_sint::w#7 // [122] call print_uint // [110] phi from print_sint::@2 to print_uint [phi:print_sint::@2->print_uint] // [110] phi print_char_cursor#147 = print_char_cursor#25 [phi:print_sint::@2->print_uint#0] -- register_copy // [110] phi print_uint::w#5 = print_uint::w#0 [phi:print_sint::@2->print_uint#1] -- register_copy jsr print_uint // print_sint::@return // } // [123] return rts // [124] phi from print_sint to print_sint::@1 [phi:print_sint->print_sint::@1] // print_sint::@1 __b1: // print_char('-') // [125] call print_char // [95] phi from print_sint::@1 to print_char [phi:print_sint::@1->print_char] // [95] phi print_char_cursor#95 = print_char_cursor#25 [phi:print_sint::@1->print_char#0] -- register_copy // [95] phi print_char::ch#17 = '-' [phi:print_sint::@1->print_char#1] -- vbuaa=vbuc1 lda #'-' jsr print_char // print_sint::@4 // w = -w // [126] print_sint::w#0 = - print_sint::w#10 -- vwsz1=_neg_vwsz1 lda #0 sec sbc.z w sta.z w lda #0 sbc.z w+1 sta.z w+1 jmp __b2 } // print_ulong // Print a unsigned long as HEX // void print_ulong(__zp(8) unsigned long dw) print_ulong: { .label dw = 8 // print_uint(WORD1(dw)) // [128] print_uint::w#1 = word1 print_ulong::dw#2 -- vwuz1=_word1_vduz2 lda.z dw+2 sta.z print_uint.w lda.z dw+3 sta.z print_uint.w+1 // [129] call print_uint // [110] phi from print_ulong to print_uint [phi:print_ulong->print_uint] // [110] phi print_char_cursor#147 = print_char_cursor#148 [phi:print_ulong->print_uint#0] -- register_copy // [110] phi print_uint::w#5 = print_uint::w#1 [phi:print_ulong->print_uint#1] -- register_copy jsr print_uint // print_ulong::@1 // print_uint(WORD0(dw)) // [130] print_uint::w#2 = word0 print_ulong::dw#2 -- vwuz1=_word0_vduz2 lda.z dw sta.z print_uint.w lda.z dw+1 sta.z print_uint.w+1 // [131] call print_uint // [110] phi from print_ulong::@1 to print_uint [phi:print_ulong::@1->print_uint] // [110] phi print_char_cursor#147 = print_char_cursor#25 [phi:print_ulong::@1->print_uint#0] -- register_copy // [110] phi print_uint::w#5 = print_uint::w#2 [phi:print_ulong::@1->print_uint#1] -- register_copy jsr print_uint // print_ulong::@return // } // [132] return rts } // print_slong // Print a signed long as HEX // void print_slong(__zp(8) long dw) print_slong: { .label dw = 8 // if(dw<0) // [134] if(print_slong::dw#3<0) goto print_slong::@1 -- vdsz1_lt_0_then_la1 lda.z dw+3 bmi __b1 // [135] phi from print_slong to print_slong::@3 [phi:print_slong->print_slong::@3] // print_slong::@3 // print_char(' ') // [136] call print_char // [95] phi from print_slong::@3 to print_char [phi:print_slong::@3->print_char] // [95] phi print_char_cursor#95 = print_char_cursor#25 [phi:print_slong::@3->print_char#0] -- register_copy // [95] phi print_char::ch#17 = ' ' [phi:print_slong::@3->print_char#1] -- vbuaa=vbuc1 lda #' ' jsr print_char // [137] phi from print_slong::@3 print_slong::@4 to print_slong::@2 [phi:print_slong::@3/print_slong::@4->print_slong::@2] // [137] phi print_slong::dw#5 = print_slong::dw#3 [phi:print_slong::@3/print_slong::@4->print_slong::@2#0] -- register_copy // print_slong::@2 __b2: // print_ulong((unsigned long)dw) // [138] print_ulong::dw#0 = (unsigned long)print_slong::dw#5 // [139] call print_ulong // [127] phi from print_slong::@2 to print_ulong [phi:print_slong::@2->print_ulong] // [127] phi print_char_cursor#148 = print_char_cursor#25 [phi:print_slong::@2->print_ulong#0] -- register_copy // [127] phi print_ulong::dw#2 = print_ulong::dw#0 [phi:print_slong::@2->print_ulong#1] -- register_copy jsr print_ulong // print_slong::@return // } // [140] return rts // [141] phi from print_slong to print_slong::@1 [phi:print_slong->print_slong::@1] // print_slong::@1 __b1: // print_char('-') // [142] call print_char // [95] phi from print_slong::@1 to print_char [phi:print_slong::@1->print_char] // [95] phi print_char_cursor#95 = print_char_cursor#25 [phi:print_slong::@1->print_char#0] -- register_copy // [95] phi print_char::ch#17 = '-' [phi:print_slong::@1->print_char#1] -- vbuaa=vbuc1 lda #'-' jsr print_char // print_slong::@4 // dw = -dw // [143] print_slong::dw#0 = - print_slong::dw#3 -- vdsz1=_neg_vdsz1 sec lda.z dw eor #$ff adc #0 sta.z dw lda.z dw+1 eor #$ff adc #0 sta.z dw+1 lda.z dw+2 eor #$ff adc #0 sta.z dw+2 lda.z dw+3 eor #$ff adc #0 sta.z dw+3 jmp __b2 } // File Data .segment Data print_hextab: .text "0123456789abcdef"