
void main()
main: scope:[main]  from
  [0] phi()
  to:main::@1
main::@1: scope:[main]  from main main::@3
  [1] main::screen#1 = phi( main/(char *) 1024, main::@3/main::screen#2 )
  [1] main::y#2 = phi( main/0, main::@3/main::y#1 )
  [2] mul8u::a#1 = main::y#2
  [3] call mul8u
  [4] mul8u::return#2 = mul8u::res#2
  to:main::@2
main::@2: scope:[main]  from main::@1
  [5] main::z1#0 = mul8u::return#2
  [6] *main::screen#1 = main::z1#0
  [7] mul8u::a#2 = main::y#2
  [8] call mul8u
  [9] mul8u::return#3 = mul8u::res#2
  to:main::@3
main::@3: scope:[main]  from main::@2
  [10] main::z2#0 = mul8u::return#3
  [11] main::screen#1[SIZEOF_UNSIGNED_INT] = main::z2#0
  [12] main::screen#2 = main::screen#1 + SIZEOF_UNSIGNED_INT+SIZEOF_UNSIGNED_INT
  [13] main::y#1 = ++ main::y#2
  [14] if(main::y#1!=6) goto main::@1
  to:main::@return
main::@return: scope:[main]  from main::@3
  [15] return 
  to:@return

unsigned int mul8u(char a , char b)
mul8u: scope:[mul8u]  from main::@1 main::@2
  [16] mul8u::a#6 = phi( main::@1/mul8u::a#1, main::@2/mul8u::a#2 )
  to:mul8u::@1
mul8u::@1: scope:[mul8u]  from mul8u mul8u::@3
  [17] mul8u::mb#2 = phi( mul8u/$28, mul8u::@3/mul8u::mb#1 )
  [17] mul8u::res#2 = phi( mul8u/0, mul8u::@3/mul8u::res#6 )
  [17] mul8u::a#3 = phi( mul8u/mul8u::a#6, mul8u::@3/mul8u::a#0 )
  [18] if(mul8u::a#3!=0) goto mul8u::@2
  to:mul8u::@return
mul8u::@return: scope:[mul8u]  from mul8u::@1
  [19] return 
  to:@return
mul8u::@2: scope:[mul8u]  from mul8u::@1
  [20] mul8u::$1 = mul8u::a#3 & 1
  [21] if(mul8u::$1==0) goto mul8u::@3
  to:mul8u::@4
mul8u::@4: scope:[mul8u]  from mul8u::@2
  [22] mul8u::res#1 = mul8u::res#2 + mul8u::mb#2
  to:mul8u::@3
mul8u::@3: scope:[mul8u]  from mul8u::@2 mul8u::@4
  [23] mul8u::res#6 = phi( mul8u::@2/mul8u::res#2, mul8u::@4/mul8u::res#1 )
  [24] mul8u::a#0 = mul8u::a#3 >> 1
  [25] mul8u::mb#1 = mul8u::mb#2 << 1
  to:mul8u::@1
