1
0
mirror of https://gitlab.com/camelot/kickc.git synced 2024-11-16 21:07:56 +00:00
kickc/src/test/ref/test-signed-word-minus-byte.cfg
jespergravgaard 6253bdce28 Improved out
2020-10-05 22:58:02 +02:00

143 lines
5.1 KiB
INI

void main()
main: scope:[main] from
[0] phi()
[1] call print_cls
to:main::@1
main::@1: scope:[main] from main main::@6
[2] main::i#2 = phi( main/0, main::@6/main::i#1 )
[2] print_line_cursor#21 = phi( main/print_screen#0, main::@6/print_line_cursor#0 )
[2] print_char_cursor#55 = phi( main/print_screen#0, main::@6/print_char_cursor#65 )
[2] main::w1#2 = phi( main/$4d2, main::@6/main::w1#1 )
[3] main::w2#0 = main::w1#2 - $5b
[4] main::w1#1 = main::w2#0 - $29
[5] print_sint::w#1 = main::w1#1
[6] call print_sint
to:main::@2
main::@2: scope:[main] from main::@1
[7] phi()
[8] call print_char
to:main::@3
main::@3: scope:[main] from main::@2
[9] print_sint::w#2 = main::w2#0
[10] call print_sint
to:main::@4
main::@4: scope:[main] from main::@3
[11] phi()
[12] call print_ln
to:main::@5
main::@5: scope:[main] from main::@4
[13] main::i#1 = ++ main::i#2
[14] if(main::i#1!=$b) goto main::@6
to:main::@return
main::@return: scope:[main] from main::@5
[15] return
to:@return
main::@6: scope:[main] from main::@5
[16] print_char_cursor#65 = print_line_cursor#0
to:main::@1
void print_cls()
print_cls: scope:[print_cls] from main
[17] phi()
[18] call memset
to:print_cls::@return
print_cls::@return: scope:[print_cls] from print_cls
[19] return
to:@return
void print_sint(signed word print_sint::w)
print_sint: scope:[print_sint] from main::@1 main::@3
[20] print_char_cursor#49 = phi( main::@1/print_char_cursor#55, main::@3/print_char_cursor#12 )
[20] print_sint::w#3 = phi( main::@1/print_sint::w#1, main::@3/print_sint::w#2 )
[21] if(print_sint::w#3<0) goto print_sint::@1
to:print_sint::@3
print_sint::@3: scope:[print_sint] from print_sint
[22] phi()
[23] call print_char
to:print_sint::@2
print_sint::@2: scope:[print_sint] from print_sint::@3 print_sint::@4
[24] print_sint::w#5 = phi( print_sint::@4/print_sint::w#0, print_sint::@3/print_sint::w#3 )
[25] print_uint::w#0 = (word)print_sint::w#5
[26] call print_uint
to:print_sint::@return
print_sint::@return: scope:[print_sint] from print_sint::@2
[27] return
to:@return
print_sint::@1: scope:[print_sint] from print_sint
[28] phi()
[29] call print_char
to:print_sint::@4
print_sint::@4: scope:[print_sint] from print_sint::@1
[30] print_sint::w#0 = - print_sint::w#3
to:print_sint::@2
void print_char(byte print_char::ch)
print_char: scope:[print_char] from main::@2 print_sint::@1 print_sint::@3 print_uchar print_uchar::@1
[31] print_char_cursor#37 = phi( main::@2/print_char_cursor#12, print_sint::@1/print_char_cursor#49, print_sint::@3/print_char_cursor#49, print_uchar/print_char_cursor#12, print_uchar::@1/print_char_cursor#12 )
[31] print_char::ch#5 = phi( main::@2/' ', print_sint::@1/'-', print_sint::@3/' ', print_uchar/print_char::ch#2, print_uchar::@1/print_char::ch#3 )
[32] *print_char_cursor#37 = print_char::ch#5
[33] print_char_cursor#12 = ++ print_char_cursor#37
to:print_char::@return
print_char::@return: scope:[print_char] from print_char
[34] return
to:@return
void print_ln()
print_ln: scope:[print_ln] from main::@4
[35] phi()
to:print_ln::@1
print_ln::@1: scope:[print_ln] from print_ln print_ln::@1
[36] print_line_cursor#10 = phi( print_ln/print_line_cursor#21, print_ln::@1/print_line_cursor#0 )
[37] print_line_cursor#0 = print_line_cursor#10 + $28
[38] if(print_line_cursor#0<print_char_cursor#12) goto print_ln::@1
to:print_ln::@return
print_ln::@return: scope:[print_ln] from print_ln::@1
[39] return
to:@return
void* memset(void* memset::str , byte memset::c , word memset::num)
memset: scope:[memset] from print_cls
[40] phi()
to:memset::@1
memset::@1: scope:[memset] from memset memset::@2
[41] memset::dst#2 = phi( memset/(byte*)memset::str#0, memset::@2/memset::dst#1 )
[42] if(memset::dst#2!=memset::end#0) goto memset::@2
to:memset::@return
memset::@return: scope:[memset] from memset::@1
[43] return
to:@return
memset::@2: scope:[memset] from memset::@1
[44] *memset::dst#2 = memset::c#0
[45] memset::dst#1 = ++ memset::dst#2
to:memset::@1
void print_uint(word print_uint::w)
print_uint: scope:[print_uint] from print_sint::@2
[46] print_uchar::b#0 = > print_uint::w#0
[47] call print_uchar
to:print_uint::@1
print_uint::@1: scope:[print_uint] from print_uint
[48] print_uchar::b#1 = < print_uint::w#0
[49] call print_uchar
to:print_uint::@return
print_uint::@return: scope:[print_uint] from print_uint::@1
[50] return
to:@return
void print_uchar(byte print_uchar::b)
print_uchar: scope:[print_uchar] from print_uint print_uint::@1
[51] print_uchar::b#2 = phi( print_uint/print_uchar::b#0, print_uint::@1/print_uchar::b#1 )
[52] print_uchar::$0 = print_uchar::b#2 >> 4
[53] print_char::ch#2 = print_hextab[print_uchar::$0]
[54] call print_char
to:print_uchar::@1
print_uchar::@1: scope:[print_uchar] from print_uchar
[55] print_uchar::$2 = print_uchar::b#2 & $f
[56] print_char::ch#3 = print_hextab[print_uchar::$2]
[57] call print_char
to:print_uchar::@return
print_uchar::@return: scope:[print_uchar] from print_uchar::@1
[58] return
to:@return