
void main()
main: scope:[main]  from
  [0] phi()
  [1] call printf_str
  to:main::@1
main::@1: scope:[main]  from main
  [2] phi()
  [3] call printf_uint
  to:main::@2
main::@2: scope:[main]  from main::@1
  [4] phi()
  [5] call printf_str
  to:main::@return
main::@return: scope:[main]  from main::@2
  [6] return 
  to:@return

void printf_str(void (*putc)(char) , char *str)
printf_str: scope:[printf_str]  from main main::@2
  [7] screen#27 = phi( main/(char *) 1024, main::@2/screen#17 )
  [7] printf_str::str#5 = phi( main/main::str, main::@2/main::str1 )
  to:printf_str::@1
printf_str::@1: scope:[printf_str]  from printf_str printf_str::@2
  [8] screen#1 = phi( printf_str/screen#27, printf_str::@2/screen#0 )
  [8] printf_str::str#3 = phi( printf_str/printf_str::str#5, printf_str::@2/printf_str::str#0 )
  [9] if(0!=*printf_str::str#3) goto printf_str::@2
  to:printf_str::@return
printf_str::@return: scope:[printf_str]  from printf_str::@1
  [10] return 
  to:@return
printf_str::@2: scope:[printf_str]  from printf_str::@1
  [11] *screen#1 = *printf_str::str#3
  [12] screen#0 = ++ screen#1
  [13] printf_str::str#0 = ++ printf_str::str#3
  to:printf_str::@1

void printf_uint(void (*putc)(char) , unsigned int uvalue , char format_min_length , char format_justify_left , char format_sign_always , char format_zero_padding , char format_upper_case , char format_radix)
printf_uint: scope:[printf_uint]  from main::@1
  [14] *screen#1 = *printf_hextab
  [15] screen#2 = ++ screen#1
  [16] *screen#2 = *(printf_hextab+byte1 main::pct&$f)
  [17] screen#3 = ++ screen#2
  [18] *screen#3 = *(printf_hextab+byte0 main::pct>>4)
  [19] screen#4 = ++ screen#3
  [20] *screen#4 = *(printf_hextab+byte0 main::pct&$f)
  [21] screen#17 = ++ screen#4
  to:printf_uint::@return
printf_uint::@return: scope:[printf_uint]  from printf_uint
  [22] return 
  to:@return
