
void main()
main: scope:[main]  from
  [0] phi()
  [1] call cls
  to:main::@1
main::@1: scope:[main]  from main
  [2] utoa16w::dst = (char *) 1024
  [3] call utoa16w
  to:main::@2
main::@2: scope:[main]  from main::@1
  [4] utoa16w::dst = (char *) 1024+$28
  [5] call utoa16w
  to:main::@3
main::@3: scope:[main]  from main::@2
  [6] utoa16w::dst = (char *) 1024+$28+$28
  [7] call utoa16w
  to:main::@4
main::@4: scope:[main]  from main::@3
  [8] utoa16w::dst = (char *) 1024+$28+$28+$28
  [9] call utoa16w
  to:main::@5
main::@5: scope:[main]  from main::@4
  [10] utoa16w::dst = (char *) 1024+$28+$28+$28+$28
  [11] call utoa16w
  to:main::@return
main::@return: scope:[main]  from main::@5
  [12] return 
  to:@return

void cls()
cls: scope:[cls]  from main
  [13] phi()
  to:cls::@1
cls::@1: scope:[cls]  from cls cls::@1
  [14] cls::sc#2 = phi( cls/cls::screen, cls::@1/cls::sc#1 )
  [15] *cls::sc#2 = ' '
  [16] cls::sc#1 = ++ cls::sc#2
  [17] if(cls::sc#1!=cls::screen+$3e7+1) goto cls::@1
  to:cls::@return
cls::@return: scope:[cls]  from cls::@1
  [18] return 
  to:@return

void utoa16w(unsigned int value , char * volatile dst)
utoa16w: scope:[utoa16w]  from main::@1 main::@2 main::@3 main::@4 main::@5
  [19] utoa16w::value#5 = phi( main::@1/0, main::@2/$4d2, main::@3/$162e, main::@4/$270f, main::@5/$e608 )
  [20] utoa16w::$0 = byte1  utoa16w::value#5
  [21] utoa16n::nybble#0 = utoa16w::$0 >> 4
  [22] call utoa16n
  [23] utoa16n::return#0 = utoa16n::return#4
  to:utoa16w::@1
utoa16w::@1: scope:[utoa16w]  from utoa16w
  [24] utoa16w::started#1 = utoa16n::return#0
  [25] utoa16w::$3 = byte1  utoa16w::value#5
  [26] utoa16n::nybble#1 = utoa16w::$3 & $f
  [27] utoa16n::started#1 = utoa16w::started#1
  [28] call utoa16n
  [29] utoa16n::return#1 = utoa16n::return#4
  to:utoa16w::@2
utoa16w::@2: scope:[utoa16w]  from utoa16w::@1
  [30] utoa16w::started#2 = utoa16n::return#1
  [31] utoa16w::$6 = byte0  utoa16w::value#5
  [32] utoa16n::nybble#2 = utoa16w::$6 >> 4
  [33] utoa16n::started#2 = utoa16w::started#2
  [34] call utoa16n
  to:utoa16w::@3
utoa16w::@3: scope:[utoa16w]  from utoa16w::@2
  [35] utoa16w::$9 = byte0  utoa16w::value#5
  [36] utoa16n::nybble#3 = utoa16w::$9 & $f
  [37] call utoa16n
  to:utoa16w::@4
utoa16w::@4: scope:[utoa16w]  from utoa16w::@3
  [38] *utoa16w::dst = 0
  to:utoa16w::@return
utoa16w::@return: scope:[utoa16w]  from utoa16w::@4
  [39] return 
  to:@return

char utoa16n(char nybble , unsigned int **dst , char started)
utoa16n: scope:[utoa16n]  from utoa16w utoa16w::@1 utoa16w::@2 utoa16w::@3
  [40] utoa16n::started#7 = phi( utoa16w/0, utoa16w::@1/utoa16n::started#1, utoa16w::@2/utoa16n::started#2, utoa16w::@3/1 )
  [40] utoa16n::nybble#4 = phi( utoa16w/utoa16n::nybble#0, utoa16w::@1/utoa16n::nybble#1, utoa16w::@2/utoa16n::nybble#2, utoa16w::@3/utoa16n::nybble#3 )
  [41] if(utoa16n::nybble#4==0) goto utoa16n::@3
  to:utoa16n::@1
utoa16n::@3: scope:[utoa16n]  from utoa16n
  [42] phi()
  to:utoa16n::@1
utoa16n::@1: scope:[utoa16n]  from utoa16n utoa16n::@3
  [43] utoa16n::return#4 = phi( utoa16n::@3/utoa16n::started#7, utoa16n/1 )
  [44] if(utoa16n::return#4==0) goto utoa16n::@return
  to:utoa16n::@2
utoa16n::@2: scope:[utoa16n]  from utoa16n::@1
  [45] *(*(&utoa16w::dst)) = DIGITS[utoa16n::nybble#4]
  [46] *(&utoa16w::dst) = ++ *(&utoa16w::dst)
  to:utoa16n::@return
utoa16n::@return: scope:[utoa16n]  from utoa16n::@1 utoa16n::@2
  [47] return 
  to:@return
