Inlined call call __init

CONTROL FLOW GRAPH SSA

unsigned int divr16u(unsigned int dividend , unsigned int divisor , unsigned int rem)
divr16u: scope:[divr16u]  from div16u
  divr16u::divisor#5 = phi( div16u/divr16u::divisor#0 )
  divr16u::dividend#4 = phi( div16u/divr16u::dividend#1 )
  divr16u::rem#8 = phi( div16u/divr16u::rem#3 )
  divr16u::quotient#0 = 0
  divr16u::i#0 = 0
  to:divr16u::@1
divr16u::@1: scope:[divr16u]  from divr16u divr16u::@3
  divr16u::i#5 = phi( divr16u/divr16u::i#0, divr16u::@3/divr16u::i#1 )
  divr16u::divisor#3 = phi( divr16u/divr16u::divisor#5, divr16u::@3/divr16u::divisor#6 )
  divr16u::quotient#6 = phi( divr16u/divr16u::quotient#0, divr16u::@3/divr16u::quotient#8 )
  divr16u::dividend#2 = phi( divr16u/divr16u::dividend#4, divr16u::@3/divr16u::dividend#5 )
  divr16u::rem#4 = phi( divr16u/divr16u::rem#8, divr16u::@3/divr16u::rem#9 )
  divr16u::$0 = divr16u::rem#4 << 1
  divr16u::rem#0 = divr16u::$0
  divr16u::$1 = byte1  divr16u::dividend#2
  divr16u::$2 = divr16u::$1 & $80
  divr16u::$3 = divr16u::$2 != 0
  divr16u::$4 = ! divr16u::$3
  if(divr16u::$4) goto divr16u::@2
  to:divr16u::@4
divr16u::@2: scope:[divr16u]  from divr16u::@1 divr16u::@4
  divr16u::i#3 = phi( divr16u::@1/divr16u::i#5, divr16u::@4/divr16u::i#6 )
  divr16u::divisor#1 = phi( divr16u::@1/divr16u::divisor#3, divr16u::@4/divr16u::divisor#4 )
  divr16u::rem#5 = phi( divr16u::@1/divr16u::rem#0, divr16u::@4/divr16u::rem#1 )
  divr16u::quotient#3 = phi( divr16u::@1/divr16u::quotient#6, divr16u::@4/divr16u::quotient#7 )
  divr16u::dividend#3 = phi( divr16u::@1/divr16u::dividend#2, divr16u::@4/divr16u::dividend#6 )
  divr16u::$6 = divr16u::dividend#3 << 1
  divr16u::dividend#0 = divr16u::$6
  divr16u::$7 = divr16u::quotient#3 << 1
  divr16u::quotient#1 = divr16u::$7
  divr16u::$8 = divr16u::rem#5 >= divr16u::divisor#1
  divr16u::$9 = ! divr16u::$8
  if(divr16u::$9) goto divr16u::@3
  to:divr16u::@5
divr16u::@4: scope:[divr16u]  from divr16u::@1
  divr16u::i#6 = phi( divr16u::@1/divr16u::i#5 )
  divr16u::divisor#4 = phi( divr16u::@1/divr16u::divisor#3 )
  divr16u::quotient#7 = phi( divr16u::@1/divr16u::quotient#6 )
  divr16u::dividend#6 = phi( divr16u::@1/divr16u::dividend#2 )
  divr16u::rem#6 = phi( divr16u::@1/divr16u::rem#0 )
  divr16u::$5 = divr16u::rem#6 | 1
  divr16u::rem#1 = divr16u::$5
  to:divr16u::@2
divr16u::@3: scope:[divr16u]  from divr16u::@2 divr16u::@5
  divr16u::divisor#6 = phi( divr16u::@2/divr16u::divisor#1, divr16u::@5/divr16u::divisor#2 )
  divr16u::quotient#8 = phi( divr16u::@2/divr16u::quotient#1, divr16u::@5/divr16u::quotient#2 )
  divr16u::dividend#5 = phi( divr16u::@2/divr16u::dividend#0, divr16u::@5/divr16u::dividend#7 )
  divr16u::rem#9 = phi( divr16u::@2/divr16u::rem#5, divr16u::@5/divr16u::rem#2 )
  divr16u::i#2 = phi( divr16u::@2/divr16u::i#3, divr16u::@5/divr16u::i#4 )
  divr16u::i#1 = divr16u::i#2 + rangenext(0,$f)
  divr16u::$11 = divr16u::i#1 != rangelast(0,$f)
  if(divr16u::$11) goto divr16u::@1
  to:divr16u::@6
divr16u::@5: scope:[divr16u]  from divr16u::@2
  divr16u::dividend#7 = phi( divr16u::@2/divr16u::dividend#0 )
  divr16u::i#4 = phi( divr16u::@2/divr16u::i#3 )
  divr16u::divisor#2 = phi( divr16u::@2/divr16u::divisor#1 )
  divr16u::rem#7 = phi( divr16u::@2/divr16u::rem#5 )
  divr16u::quotient#4 = phi( divr16u::@2/divr16u::quotient#1 )
  divr16u::quotient#2 = ++ divr16u::quotient#4
  divr16u::$10 = divr16u::rem#7 - divr16u::divisor#2
  divr16u::rem#2 = divr16u::$10
  to:divr16u::@3
divr16u::@6: scope:[divr16u]  from divr16u::@3
  divr16u::quotient#5 = phi( divr16u::@3/divr16u::quotient#8 )
  divr16u::return#0 = divr16u::quotient#5
  to:divr16u::@return
divr16u::@return: scope:[divr16u]  from divr16u::@6
  divr16u::return#3 = phi( divr16u::@6/divr16u::return#0 )
  divr16u::return#1 = divr16u::return#3
  return 
  to:@return

unsigned int div16u(unsigned int dividend , unsigned int divisor)
div16u: scope:[div16u]  from main::@5
  div16u::divisor#1 = phi( main::@5/div16u::divisor#0 )
  div16u::dividend#1 = phi( main::@5/div16u::dividend#0 )
  divr16u::dividend#1 = div16u::dividend#1
  divr16u::divisor#0 = div16u::divisor#1
  divr16u::rem#3 = 0
  call divr16u
  divr16u::return#2 = divr16u::return#1
  to:div16u::@1
div16u::@1: scope:[div16u]  from div16u
  divr16u::return#4 = phi( div16u/divr16u::return#2 )
  div16u::$0 = divr16u::return#4
  div16u::return#0 = div16u::$0
  to:div16u::@return
div16u::@return: scope:[div16u]  from div16u::@1
  div16u::return#3 = phi( div16u::@1/div16u::return#0 )
  div16u::return#1 = div16u::return#3
  return 
  to:@return

unsigned int append(char *dst , unsigned int value , unsigned int sub)
append: scope:[append]  from utoa::@5 utoa::@6 utoa::@7 utoa::@8
  append::sub#6 = phi( utoa::@5/append::sub#0, utoa::@6/append::sub#1, utoa::@7/append::sub#2, utoa::@8/append::sub#3 )
  append::value#8 = phi( utoa::@5/append::value#1, utoa::@6/append::value#2, utoa::@7/append::value#3, utoa::@8/append::value#4 )
  append::dst#4 = phi( utoa::@5/append::dst#0, utoa::@6/append::dst#1, utoa::@7/append::dst#2, utoa::@8/append::dst#3 )
  *append::dst#4 = '0'
  to:append::@1
append::@1: scope:[append]  from append append::@2
  append::dst#6 = phi( append/append::dst#4, append::@2/append::dst#5 )
  append::sub#4 = phi( append/append::sub#6, append::@2/append::sub#5 )
  append::value#5 = phi( append/append::value#8, append::@2/append::value#0 )
  append::$0 = append::value#5 >= append::sub#4
  if(append::$0) goto append::@2
  to:append::@3
append::@2: scope:[append]  from append::@1
  append::sub#5 = phi( append::@1/append::sub#4 )
  append::value#6 = phi( append::@1/append::value#5 )
  append::dst#5 = phi( append::@1/append::dst#6 )
  *append::dst#5 = ++ *append::dst#5
  append::value#0 = append::value#6 - append::sub#5
  to:append::@1
append::@3: scope:[append]  from append::@1
  append::value#7 = phi( append::@1/append::value#5 )
  append::return#0 = append::value#7
  to:append::@return
append::@return: scope:[append]  from append::@3
  append::return#6 = phi( append::@3/append::return#0 )
  append::return#1 = append::return#6
  return 
  to:@return

void utoa(unsigned int value , char *dst)
utoa: scope:[utoa]  from myprintf::@9
  utoa::dst#15 = phi( myprintf::@9/utoa::dst#5 )
  utoa::value#5 = phi( myprintf::@9/utoa::value#4 )
  utoa::bStarted#0 = 0
  utoa::$0 = utoa::bStarted#0 == 1
  utoa::$1 = utoa::value#5 >= $2710
  utoa::$2 = utoa::$0 || utoa::$1
  utoa::$3 = ! utoa::$2
  if(utoa::$3) goto utoa::@1
  to:utoa::@5
utoa::@1: scope:[utoa]  from utoa utoa::@9
  utoa::dst#16 = phi( utoa/utoa::dst#15, utoa::@9/utoa::dst#0 )
  utoa::value#6 = phi( utoa/utoa::value#5, utoa::@9/utoa::value#0 )
  utoa::bStarted#5 = phi( utoa/utoa::bStarted#0, utoa::@9/utoa::bStarted#1 )
  utoa::$4 = utoa::bStarted#5 == 1
  utoa::$5 = utoa::value#6 >= $3e8
  utoa::$6 = utoa::$4 || utoa::$5
  utoa::$7 = ! utoa::$6
  if(utoa::$7) goto utoa::@2
  to:utoa::@6
utoa::@5: scope:[utoa]  from utoa
  utoa::value#7 = phi( utoa/utoa::value#5 )
  utoa::dst#6 = phi( utoa/utoa::dst#15 )
  append::dst#0 = utoa::dst#6
  append::value#1 = utoa::value#7
  append::sub#0 = $2710
  call append
  append::return#2 = append::return#1
  to:utoa::@9
utoa::@9: scope:[utoa]  from utoa::@5
  utoa::dst#7 = phi( utoa::@5/utoa::dst#6 )
  append::return#7 = phi( utoa::@5/append::return#2 )
  utoa::$17 = append::return#7
  utoa::value#0 = utoa::$17
  utoa::dst#0 = ++ utoa::dst#7
  utoa::bStarted#1 = 1
  to:utoa::@1
utoa::@2: scope:[utoa]  from utoa::@1 utoa::@10
  utoa::dst#17 = phi( utoa::@1/utoa::dst#16, utoa::@10/utoa::dst#1 )
  utoa::value#8 = phi( utoa::@1/utoa::value#6, utoa::@10/utoa::value#1 )
  utoa::bStarted#6 = phi( utoa::@1/utoa::bStarted#5, utoa::@10/utoa::bStarted#2 )
  utoa::$8 = utoa::bStarted#6 == 1
  utoa::$9 = utoa::value#8 >= $64
  utoa::$10 = utoa::$8 || utoa::$9
  utoa::$11 = ! utoa::$10
  if(utoa::$11) goto utoa::@3
  to:utoa::@7
utoa::@6: scope:[utoa]  from utoa::@1
  utoa::value#9 = phi( utoa::@1/utoa::value#6 )
  utoa::dst#8 = phi( utoa::@1/utoa::dst#16 )
  append::dst#1 = utoa::dst#8
  append::value#2 = utoa::value#9
  append::sub#1 = $3e8
  call append
  append::return#3 = append::return#1
  to:utoa::@10
utoa::@10: scope:[utoa]  from utoa::@6
  utoa::dst#9 = phi( utoa::@6/utoa::dst#8 )
  append::return#8 = phi( utoa::@6/append::return#3 )
  utoa::$18 = append::return#8
  utoa::value#1 = utoa::$18
  utoa::dst#1 = ++ utoa::dst#9
  utoa::bStarted#2 = 1
  to:utoa::@2
utoa::@3: scope:[utoa]  from utoa::@11 utoa::@2
  utoa::dst#18 = phi( utoa::@11/utoa::dst#2, utoa::@2/utoa::dst#17 )
  utoa::value#10 = phi( utoa::@11/utoa::value#2, utoa::@2/utoa::value#8 )
  utoa::bStarted#7 = phi( utoa::@11/utoa::bStarted#3, utoa::@2/utoa::bStarted#6 )
  utoa::$12 = utoa::bStarted#7 == 1
  utoa::$13 = utoa::value#10 >= $a
  utoa::$14 = utoa::$12 || utoa::$13
  utoa::$15 = ! utoa::$14
  if(utoa::$15) goto utoa::@4
  to:utoa::@8
utoa::@7: scope:[utoa]  from utoa::@2
  utoa::value#11 = phi( utoa::@2/utoa::value#8 )
  utoa::dst#10 = phi( utoa::@2/utoa::dst#17 )
  append::dst#2 = utoa::dst#10
  append::value#3 = utoa::value#11
  append::sub#2 = $64
  call append
  append::return#4 = append::return#1
  to:utoa::@11
utoa::@11: scope:[utoa]  from utoa::@7
  utoa::dst#11 = phi( utoa::@7/utoa::dst#10 )
  append::return#9 = phi( utoa::@7/append::return#4 )
  utoa::$19 = append::return#9
  utoa::value#2 = utoa::$19
  utoa::dst#2 = ++ utoa::dst#11
  utoa::bStarted#3 = 1
  to:utoa::@3
utoa::@4: scope:[utoa]  from utoa::@12 utoa::@3
  utoa::dst#12 = phi( utoa::@12/utoa::dst#4, utoa::@3/utoa::dst#18 )
  utoa::value#12 = phi( utoa::@12/utoa::value#3, utoa::@3/utoa::value#10 )
  utoa::$21 = (char)utoa::value#12
  utoa::$16 = '0' + utoa::$21
  *utoa::dst#12 = utoa::$16
  utoa::dst#3 = ++ utoa::dst#12
  *utoa::dst#3 = 0
  to:utoa::@return
utoa::@8: scope:[utoa]  from utoa::@3
  utoa::value#13 = phi( utoa::@3/utoa::value#10 )
  utoa::dst#13 = phi( utoa::@3/utoa::dst#18 )
  append::dst#3 = utoa::dst#13
  append::value#4 = utoa::value#13
  append::sub#3 = $a
  call append
  append::return#5 = append::return#1
  to:utoa::@12
utoa::@12: scope:[utoa]  from utoa::@8
  utoa::dst#14 = phi( utoa::@8/utoa::dst#13 )
  append::return#10 = phi( utoa::@8/append::return#5 )
  utoa::$20 = append::return#10
  utoa::value#3 = utoa::$20
  utoa::dst#4 = ++ utoa::dst#14
  utoa::bStarted#4 = 1
  to:utoa::@4
utoa::@return: scope:[utoa]  from utoa::@4
  return 
  to:@return

char myprintf(char *dst , char *str , unsigned int w1 , unsigned int w2 , unsigned int w3)
myprintf: scope:[myprintf]  from main::@12 main::@6
  myprintf::w3#8 = phi( main::@12/myprintf::w3#1, main::@6/myprintf::w3#0 )
  myprintf::w2#8 = phi( main::@12/myprintf::w2#1, main::@6/myprintf::w2#0 )
  myprintf::w1#7 = phi( main::@12/myprintf::w1#1, main::@6/myprintf::w1#0 )
  myprintf::dst#22 = phi( main::@12/myprintf::dst#1, main::@6/myprintf::dst#0 )
  myprintf::str#6 = phi( main::@12/myprintf::str#2, main::@6/myprintf::str#1 )
  myprintf::bArg#0 = 0
  myprintf::bFormat#0 = 0
  myprintf::bLen#0 = 0
  myprintf::bLeadZero#0 = 0
  myprintf::bDigits#0 = 0
  myprintf::bTrailing#0 = 0
  myprintf::b#0 = 0
  myprintf::digit#0 = 0
  myprintf::w#0 = 0
  to:myprintf::@1
myprintf::@1: scope:[myprintf]  from myprintf myprintf::@36
  myprintf::bLeadZero#19 = phi( myprintf/myprintf::bLeadZero#0, myprintf::@36/myprintf::bLeadZero#20 )
  myprintf::bDigits#27 = phi( myprintf/myprintf::bDigits#0, myprintf::@36/myprintf::bDigits#28 )
  myprintf::bTrailing#23 = phi( myprintf/myprintf::bTrailing#0, myprintf::@36/myprintf::bTrailing#24 )
  myprintf::w#17 = phi( myprintf/myprintf::w#0, myprintf::@36/myprintf::w#18 )
  myprintf::w3#7 = phi( myprintf/myprintf::w3#8, myprintf::@36/myprintf::w3#9 )
  myprintf::w2#7 = phi( myprintf/myprintf::w2#8, myprintf::@36/myprintf::w2#9 )
  myprintf::w1#6 = phi( myprintf/myprintf::w1#7, myprintf::@36/myprintf::w1#8 )
  myprintf::bArg#10 = phi( myprintf/myprintf::bArg#0, myprintf::@36/myprintf::bArg#11 )
  myprintf::bLen#16 = phi( myprintf/myprintf::bLen#0, myprintf::@36/myprintf::bLen#28 )
  myprintf::dst#10 = phi( myprintf/myprintf::dst#22, myprintf::@36/myprintf::dst#23 )
  myprintf::bFormat#4 = phi( myprintf/myprintf::bFormat#0, myprintf::@36/myprintf::bFormat#5 )
  myprintf::str#3 = phi( myprintf/myprintf::str#6, myprintf::@36/myprintf::str#0 )
  myprintf::$0 = *myprintf::str#3 != 0
  if(myprintf::$0) goto myprintf::@2
  to:myprintf::@3
myprintf::@2: scope:[myprintf]  from myprintf::@1
  myprintf::bLeadZero#18 = phi( myprintf::@1/myprintf::bLeadZero#19 )
  myprintf::bDigits#26 = phi( myprintf::@1/myprintf::bDigits#27 )
  myprintf::bTrailing#22 = phi( myprintf::@1/myprintf::bTrailing#23 )
  myprintf::w#16 = phi( myprintf::@1/myprintf::w#17 )
  myprintf::w3#6 = phi( myprintf::@1/myprintf::w3#7 )
  myprintf::w2#6 = phi( myprintf::@1/myprintf::w2#7 )
  myprintf::w1#5 = phi( myprintf::@1/myprintf::w1#6 )
  myprintf::bLen#35 = phi( myprintf::@1/myprintf::bLen#16 )
  myprintf::dst#30 = phi( myprintf::@1/myprintf::dst#10 )
  myprintf::bArg#9 = phi( myprintf::@1/myprintf::bArg#10 )
  myprintf::bFormat#3 = phi( myprintf::@1/myprintf::bFormat#4 )
  myprintf::str#4 = phi( myprintf::@1/myprintf::str#3 )
  myprintf::b#1 = *myprintf::str#4
  myprintf::$1 = myprintf::bFormat#3 != 0
  myprintf::$2 = ! myprintf::$1
  if(myprintf::$2) goto myprintf::@4
  to:myprintf::@42
myprintf::@3: scope:[myprintf]  from myprintf::@1
  myprintf::bLen#8 = phi( myprintf::@1/myprintf::bLen#16 )
  myprintf::dst#2 = phi( myprintf::@1/myprintf::dst#10 )
  myprintf::dst#2[myprintf::bLen#8] = 0
  myprintf::return#0 = myprintf::bLen#8
  to:myprintf::@return
myprintf::@4: scope:[myprintf]  from myprintf::@2
  myprintf::bLeadZero#40 = phi( myprintf::@2/myprintf::bLeadZero#18 )
  myprintf::bDigits#44 = phi( myprintf::@2/myprintf::bDigits#26 )
  myprintf::bTrailing#42 = phi( myprintf::@2/myprintf::bTrailing#22 )
  myprintf::w#34 = phi( myprintf::@2/myprintf::w#16 )
  myprintf::bFormat#19 = phi( myprintf::@2/myprintf::bFormat#3 )
  myprintf::w3#5 = phi( myprintf::@2/myprintf::w3#6 )
  myprintf::w2#5 = phi( myprintf::@2/myprintf::w2#6 )
  myprintf::str#32 = phi( myprintf::@2/myprintf::str#4 )
  myprintf::w1#4 = phi( myprintf::@2/myprintf::w1#5 )
  myprintf::bLen#34 = phi( myprintf::@2/myprintf::bLen#35 )
  myprintf::dst#29 = phi( myprintf::@2/myprintf::dst#30 )
  myprintf::bArg#5 = phi( myprintf::@2/myprintf::bArg#9 )
  myprintf::b#7 = phi( myprintf::@2/myprintf::b#1 )
  myprintf::$48 = myprintf::b#7 == '%'
  myprintf::$49 = ! myprintf::$48
  if(myprintf::$49) goto myprintf::@37
  to:myprintf::@44
myprintf::@42: scope:[myprintf]  from myprintf::@2
  myprintf::bLeadZero#17 = phi( myprintf::@2/myprintf::bLeadZero#18 )
  myprintf::w3#16 = phi( myprintf::@2/myprintf::w3#6 )
  myprintf::w2#16 = phi( myprintf::@2/myprintf::w2#6 )
  myprintf::bDigits#25 = phi( myprintf::@2/myprintf::bDigits#26 )
  myprintf::bTrailing#21 = phi( myprintf::@2/myprintf::bTrailing#22 )
  myprintf::w1#15 = phi( myprintf::@2/myprintf::w1#5 )
  myprintf::bArg#17 = phi( myprintf::@2/myprintf::bArg#9 )
  myprintf::bFormat#11 = phi( myprintf::@2/myprintf::bFormat#3 )
  myprintf::bLen#45 = phi( myprintf::@2/myprintf::bLen#35 )
  myprintf::dst#40 = phi( myprintf::@2/myprintf::dst#30 )
  myprintf::w#15 = phi( myprintf::@2/myprintf::w#16 )
  myprintf::str#13 = phi( myprintf::@2/myprintf::str#4 )
  myprintf::b#8 = phi( myprintf::@2/myprintf::b#1 )
  myprintf::$3 = myprintf::b#8 == '0'
  myprintf::$4 = ! myprintf::$3
  if(myprintf::$4) goto myprintf::@5
  to:myprintf::@43
myprintf::@5: scope:[myprintf]  from myprintf::@42
  myprintf::bLeadZero#16 = phi( myprintf::@42/myprintf::bLeadZero#17 )
  myprintf::w3#17 = phi( myprintf::@42/myprintf::w3#16 )
  myprintf::w2#17 = phi( myprintf::@42/myprintf::w2#16 )
  myprintf::w1#16 = phi( myprintf::@42/myprintf::w1#15 )
  myprintf::bDigits#24 = phi( myprintf::@42/myprintf::bDigits#25 )
  myprintf::bTrailing#20 = phi( myprintf::@42/myprintf::bTrailing#21 )
  myprintf::bArg#18 = phi( myprintf::@42/myprintf::bArg#17 )
  myprintf::bFormat#12 = phi( myprintf::@42/myprintf::bFormat#11 )
  myprintf::bLen#41 = phi( myprintf::@42/myprintf::bLen#45 )
  myprintf::dst#36 = phi( myprintf::@42/myprintf::dst#40 )
  myprintf::w#14 = phi( myprintf::@42/myprintf::w#15 )
  myprintf::str#14 = phi( myprintf::@42/myprintf::str#13 )
  myprintf::b#9 = phi( myprintf::@42/myprintf::b#8 )
  myprintf::$5 = myprintf::b#9 >= '1'
  myprintf::$6 = myprintf::b#9 <= '9'
  myprintf::$7 = myprintf::$5 && myprintf::$6
  myprintf::$8 = ! myprintf::$7
  if(myprintf::$8) goto myprintf::@6
  to:myprintf::@31
myprintf::@43: scope:[myprintf]  from myprintf::@42
  myprintf::bDigits#33 = phi( myprintf::@42/myprintf::bDigits#25 )
  myprintf::bTrailing#29 = phi( myprintf::@42/myprintf::bTrailing#21 )
  myprintf::w#24 = phi( myprintf::@42/myprintf::w#15 )
  myprintf::w3#15 = phi( myprintf::@42/myprintf::w3#16 )
  myprintf::w2#15 = phi( myprintf::@42/myprintf::w2#16 )
  myprintf::w1#14 = phi( myprintf::@42/myprintf::w1#15 )
  myprintf::bArg#16 = phi( myprintf::@42/myprintf::bArg#17 )
  myprintf::bLen#40 = phi( myprintf::@42/myprintf::bLen#45 )
  myprintf::dst#35 = phi( myprintf::@42/myprintf::dst#40 )
  myprintf::bFormat#10 = phi( myprintf::@42/myprintf::bFormat#11 )
  myprintf::str#12 = phi( myprintf::@42/myprintf::str#13 )
  myprintf::bLeadZero#1 = 1
  to:myprintf::@36
myprintf::@36: scope:[myprintf]  from myprintf::@30 myprintf::@31 myprintf::@32 myprintf::@40 myprintf::@41 myprintf::@43
  myprintf::bLeadZero#20 = phi( myprintf::@30/myprintf::bLeadZero#21, myprintf::@31/myprintf::bLeadZero#22, myprintf::@32/myprintf::bLeadZero#23, myprintf::@40/myprintf::bLeadZero#24, myprintf::@41/myprintf::bLeadZero#25, myprintf::@43/myprintf::bLeadZero#1 )
  myprintf::bDigits#28 = phi( myprintf::@30/myprintf::bDigits#29, myprintf::@31/myprintf::bDigits#1, myprintf::@32/myprintf::bDigits#30, myprintf::@40/myprintf::bDigits#31, myprintf::@41/myprintf::bDigits#32, myprintf::@43/myprintf::bDigits#33 )
  myprintf::bTrailing#24 = phi( myprintf::@30/myprintf::bTrailing#25, myprintf::@31/myprintf::bTrailing#26, myprintf::@32/myprintf::bTrailing#1, myprintf::@40/myprintf::bTrailing#27, myprintf::@41/myprintf::bTrailing#28, myprintf::@43/myprintf::bTrailing#29 )
  myprintf::w#18 = phi( myprintf::@30/myprintf::w#19, myprintf::@31/myprintf::w#20, myprintf::@32/myprintf::w#21, myprintf::@40/myprintf::w#22, myprintf::@41/myprintf::w#23, myprintf::@43/myprintf::w#24 )
  myprintf::w3#9 = phi( myprintf::@30/myprintf::w3#10, myprintf::@31/myprintf::w3#11, myprintf::@32/myprintf::w3#12, myprintf::@40/myprintf::w3#13, myprintf::@41/myprintf::w3#14, myprintf::@43/myprintf::w3#15 )
  myprintf::w2#9 = phi( myprintf::@30/myprintf::w2#10, myprintf::@31/myprintf::w2#11, myprintf::@32/myprintf::w2#12, myprintf::@40/myprintf::w2#13, myprintf::@41/myprintf::w2#14, myprintf::@43/myprintf::w2#15 )
  myprintf::w1#8 = phi( myprintf::@30/myprintf::w1#9, myprintf::@31/myprintf::w1#10, myprintf::@32/myprintf::w1#11, myprintf::@40/myprintf::w1#12, myprintf::@41/myprintf::w1#13, myprintf::@43/myprintf::w1#14 )
  myprintf::bArg#11 = phi( myprintf::@30/myprintf::bArg#12, myprintf::@31/myprintf::bArg#13, myprintf::@32/myprintf::bArg#14, myprintf::@40/myprintf::bArg#1, myprintf::@41/myprintf::bArg#15, myprintf::@43/myprintf::bArg#16 )
  myprintf::bLen#28 = phi( myprintf::@30/myprintf::bLen#36, myprintf::@31/myprintf::bLen#37, myprintf::@32/myprintf::bLen#38, myprintf::@40/myprintf::bLen#39, myprintf::@41/myprintf::bLen#7, myprintf::@43/myprintf::bLen#40 )
  myprintf::dst#23 = phi( myprintf::@30/myprintf::dst#31, myprintf::@31/myprintf::dst#32, myprintf::@32/myprintf::dst#33, myprintf::@40/myprintf::dst#34, myprintf::@41/myprintf::dst#9, myprintf::@43/myprintf::dst#35 )
  myprintf::bFormat#5 = phi( myprintf::@30/myprintf::bFormat#1, myprintf::@31/myprintf::bFormat#6, myprintf::@32/myprintf::bFormat#7, myprintf::@40/myprintf::bFormat#8, myprintf::@41/myprintf::bFormat#9, myprintf::@43/myprintf::bFormat#10 )
  myprintf::str#5 = phi( myprintf::@30/myprintf::str#7, myprintf::@31/myprintf::str#8, myprintf::@32/myprintf::str#9, myprintf::@40/myprintf::str#10, myprintf::@41/myprintf::str#11, myprintf::@43/myprintf::str#12 )
  myprintf::str#0 = ++ myprintf::str#5
  to:myprintf::@1
myprintf::@6: scope:[myprintf]  from myprintf::@5
  myprintf::w3#18 = phi( myprintf::@5/myprintf::w3#17 )
  myprintf::w2#18 = phi( myprintf::@5/myprintf::w2#17 )
  myprintf::bLeadZero#15 = phi( myprintf::@5/myprintf::bLeadZero#16 )
  myprintf::w1#17 = phi( myprintf::@5/myprintf::w1#16 )
  myprintf::bArg#19 = phi( myprintf::@5/myprintf::bArg#18 )
  myprintf::bDigits#23 = phi( myprintf::@5/myprintf::bDigits#24 )
  myprintf::bTrailing#18 = phi( myprintf::@5/myprintf::bTrailing#20 )
  myprintf::bFormat#13 = phi( myprintf::@5/myprintf::bFormat#12 )
  myprintf::str#15 = phi( myprintf::@5/myprintf::str#14 )
  myprintf::bLen#29 = phi( myprintf::@5/myprintf::bLen#41 )
  myprintf::dst#24 = phi( myprintf::@5/myprintf::dst#36 )
  myprintf::w#13 = phi( myprintf::@5/myprintf::w#14 )
  myprintf::b#10 = phi( myprintf::@5/myprintf::b#9 )
  myprintf::$10 = myprintf::b#10 == '-'
  myprintf::$11 = ! myprintf::$10
  if(myprintf::$11) goto myprintf::@7
  to:myprintf::@32
myprintf::@31: scope:[myprintf]  from myprintf::@5
  myprintf::bLeadZero#22 = phi( myprintf::@5/myprintf::bLeadZero#16 )
  myprintf::bTrailing#26 = phi( myprintf::@5/myprintf::bTrailing#20 )
  myprintf::w#20 = phi( myprintf::@5/myprintf::w#14 )
  myprintf::w3#11 = phi( myprintf::@5/myprintf::w3#17 )
  myprintf::w2#11 = phi( myprintf::@5/myprintf::w2#17 )
  myprintf::w1#10 = phi( myprintf::@5/myprintf::w1#16 )
  myprintf::bArg#13 = phi( myprintf::@5/myprintf::bArg#18 )
  myprintf::bLen#37 = phi( myprintf::@5/myprintf::bLen#41 )
  myprintf::dst#32 = phi( myprintf::@5/myprintf::dst#36 )
  myprintf::bFormat#6 = phi( myprintf::@5/myprintf::bFormat#12 )
  myprintf::str#8 = phi( myprintf::@5/myprintf::str#14 )
  myprintf::b#11 = phi( myprintf::@5/myprintf::b#9 )
  myprintf::$9 = myprintf::b#11 - '0'
  myprintf::bDigits#1 = myprintf::$9
  to:myprintf::@36
myprintf::@7: scope:[myprintf]  from myprintf::@6
  myprintf::w3#28 = phi( myprintf::@6/myprintf::w3#18 )
  myprintf::w2#28 = phi( myprintf::@6/myprintf::w2#18 )
  myprintf::w1#27 = phi( myprintf::@6/myprintf::w1#17 )
  myprintf::bLeadZero#14 = phi( myprintf::@6/myprintf::bLeadZero#15 )
  myprintf::bArg#27 = phi( myprintf::@6/myprintf::bArg#19 )
  myprintf::bDigits#22 = phi( myprintf::@6/myprintf::bDigits#23 )
  myprintf::bTrailing#15 = phi( myprintf::@6/myprintf::bTrailing#18 )
  myprintf::str#26 = phi( myprintf::@6/myprintf::str#15 )
  myprintf::bLen#17 = phi( myprintf::@6/myprintf::bLen#29 )
  myprintf::dst#11 = phi( myprintf::@6/myprintf::dst#24 )
  myprintf::w#8 = phi( myprintf::@6/myprintf::w#13 )
  myprintf::b#12 = phi( myprintf::@6/myprintf::b#10 )
  myprintf::$12 = myprintf::b#12 == 'c'
  if(myprintf::$12) goto myprintf::@8
  to:myprintf::@33
myprintf::@32: scope:[myprintf]  from myprintf::@6
  myprintf::bLeadZero#23 = phi( myprintf::@6/myprintf::bLeadZero#15 )
  myprintf::bDigits#30 = phi( myprintf::@6/myprintf::bDigits#23 )
  myprintf::w#21 = phi( myprintf::@6/myprintf::w#13 )
  myprintf::w3#12 = phi( myprintf::@6/myprintf::w3#18 )
  myprintf::w2#12 = phi( myprintf::@6/myprintf::w2#18 )
  myprintf::w1#11 = phi( myprintf::@6/myprintf::w1#17 )
  myprintf::bArg#14 = phi( myprintf::@6/myprintf::bArg#19 )
  myprintf::bLen#38 = phi( myprintf::@6/myprintf::bLen#29 )
  myprintf::dst#33 = phi( myprintf::@6/myprintf::dst#24 )
  myprintf::bFormat#7 = phi( myprintf::@6/myprintf::bFormat#13 )
  myprintf::str#9 = phi( myprintf::@6/myprintf::str#15 )
  myprintf::bTrailing#1 = 1
  to:myprintf::@36
myprintf::@8: scope:[myprintf]  from myprintf::@7
  myprintf::bLeadZero#30 = phi( myprintf::@7/myprintf::bLeadZero#14 )
  myprintf::bDigits#36 = phi( myprintf::@7/myprintf::bDigits#22 )
  myprintf::bTrailing#33 = phi( myprintf::@7/myprintf::bTrailing#15 )
  myprintf::w3#23 = phi( myprintf::@7/myprintf::w3#28 )
  myprintf::w2#23 = phi( myprintf::@7/myprintf::w2#28 )
  myprintf::w1#22 = phi( myprintf::@7/myprintf::w1#27 )
  myprintf::bArg#24 = phi( myprintf::@7/myprintf::bArg#27 )
  myprintf::str#20 = phi( myprintf::@7/myprintf::str#26 )
  myprintf::bLen#9 = phi( myprintf::@7/myprintf::bLen#17 )
  myprintf::dst#3 = phi( myprintf::@7/myprintf::dst#11 )
  myprintf::w#4 = phi( myprintf::@7/myprintf::w#8 )
  myprintf::dst#3[myprintf::bLen#9] = (char)myprintf::w#4
  myprintf::bLen#1 = ++ myprintf::bLen#9
  to:myprintf::@30
myprintf::@33: scope:[myprintf]  from myprintf::@7
  myprintf::w3#29 = phi( myprintf::@7/myprintf::w3#28 )
  myprintf::w2#29 = phi( myprintf::@7/myprintf::w2#28 )
  myprintf::w1#28 = phi( myprintf::@7/myprintf::w1#27 )
  myprintf::bArg#28 = phi( myprintf::@7/myprintf::bArg#27 )
  myprintf::bLeadZero#13 = phi( myprintf::@7/myprintf::bLeadZero#14 )
  myprintf::bLen#46 = phi( myprintf::@7/myprintf::bLen#17 )
  myprintf::dst#41 = phi( myprintf::@7/myprintf::dst#11 )
  myprintf::bDigits#21 = phi( myprintf::@7/myprintf::bDigits#22 )
  myprintf::bTrailing#13 = phi( myprintf::@7/myprintf::bTrailing#15 )
  myprintf::str#27 = phi( myprintf::@7/myprintf::str#26 )
  myprintf::w#9 = phi( myprintf::@7/myprintf::w#8 )
  myprintf::b#13 = phi( myprintf::@7/myprintf::b#12 )
  myprintf::$13 = myprintf::b#13 == 'd'
  if(myprintf::$13) goto myprintf::@9
  to:myprintf::@34
myprintf::@9: scope:[myprintf]  from myprintf::@33
  myprintf::w3#48 = phi( myprintf::@33/myprintf::w3#29 )
  myprintf::w2#48 = phi( myprintf::@33/myprintf::w2#29 )
  myprintf::w1#48 = phi( myprintf::@33/myprintf::w1#28 )
  myprintf::bArg#47 = phi( myprintf::@33/myprintf::bArg#28 )
  myprintf::str#49 = phi( myprintf::@33/myprintf::str#27 )
  myprintf::bLen#55 = phi( myprintf::@33/myprintf::bLen#46 )
  myprintf::dst#50 = phi( myprintf::@33/myprintf::dst#41 )
  myprintf::bLeadZero#12 = phi( myprintf::@33/myprintf::bLeadZero#13 )
  myprintf::bDigits#20 = phi( myprintf::@33/myprintf::bDigits#21 )
  myprintf::bTrailing#11 = phi( myprintf::@33/myprintf::bTrailing#13 )
  myprintf::w#5 = phi( myprintf::@33/myprintf::w#9 )
  utoa::value#4 = myprintf::w#5
  utoa::dst#5 = myprintf::buf6
  call utoa
  to:myprintf::@48
myprintf::@48: scope:[myprintf]  from myprintf::@9
  myprintf::w#42 = phi( myprintf::@9/myprintf::w#5 )
  myprintf::w3#45 = phi( myprintf::@9/myprintf::w3#48 )
  myprintf::w2#45 = phi( myprintf::@9/myprintf::w2#48 )
  myprintf::w1#45 = phi( myprintf::@9/myprintf::w1#48 )
  myprintf::bArg#44 = phi( myprintf::@9/myprintf::bArg#47 )
  myprintf::str#46 = phi( myprintf::@9/myprintf::str#49 )
  myprintf::bLen#52 = phi( myprintf::@9/myprintf::bLen#55 )
  myprintf::dst#47 = phi( myprintf::@9/myprintf::dst#50 )
  myprintf::bLeadZero#11 = phi( myprintf::@9/myprintf::bLeadZero#12 )
  myprintf::bDigits#16 = phi( myprintf::@9/myprintf::bDigits#20 )
  myprintf::bTrailing#8 = phi( myprintf::@9/myprintf::bTrailing#11 )
  myprintf::b#2 = 1
  to:myprintf::@16
myprintf::@34: scope:[myprintf]  from myprintf::@33
  myprintf::bLeadZero#29 = phi( myprintf::@33/myprintf::bLeadZero#13 )
  myprintf::bDigits#35 = phi( myprintf::@33/myprintf::bDigits#21 )
  myprintf::bTrailing#32 = phi( myprintf::@33/myprintf::bTrailing#13 )
  myprintf::w3#22 = phi( myprintf::@33/myprintf::w3#29 )
  myprintf::w2#22 = phi( myprintf::@33/myprintf::w2#29 )
  myprintf::w1#21 = phi( myprintf::@33/myprintf::w1#28 )
  myprintf::bArg#23 = phi( myprintf::@33/myprintf::bArg#28 )
  myprintf::bLen#42 = phi( myprintf::@33/myprintf::bLen#46 )
  myprintf::dst#37 = phi( myprintf::@33/myprintf::dst#41 )
  myprintf::str#19 = phi( myprintf::@33/myprintf::str#27 )
  myprintf::w#10 = phi( myprintf::@33/myprintf::w#9 )
  myprintf::b#14 = phi( myprintf::@33/myprintf::b#13 )
  myprintf::$14 = myprintf::b#14 == 'x'
  myprintf::$15 = myprintf::b#14 == 'X'
  myprintf::$16 = myprintf::$14 || myprintf::$15
  myprintf::$17 = ! myprintf::$16
  if(myprintf::$17) goto myprintf::@30
  to:myprintf::@35
myprintf::@35: scope:[myprintf]  from myprintf::@34
  myprintf::bLeadZero#47 = phi( myprintf::@34/myprintf::bLeadZero#29 )
  myprintf::bDigits#49 = phi( myprintf::@34/myprintf::bDigits#35 )
  myprintf::bTrailing#47 = phi( myprintf::@34/myprintf::bTrailing#32 )
  myprintf::w3#41 = phi( myprintf::@34/myprintf::w3#22 )
  myprintf::w2#41 = phi( myprintf::@34/myprintf::w2#22 )
  myprintf::w1#41 = phi( myprintf::@34/myprintf::w1#21 )
  myprintf::bArg#40 = phi( myprintf::@34/myprintf::bArg#23 )
  myprintf::str#42 = phi( myprintf::@34/myprintf::str#19 )
  myprintf::bLen#30 = phi( myprintf::@34/myprintf::bLen#42 )
  myprintf::dst#25 = phi( myprintf::@34/myprintf::dst#37 )
  myprintf::w#6 = phi( myprintf::@34/myprintf::w#10 )
  myprintf::$56 = (char)myprintf::w#6
  myprintf::$18 = myprintf::$56 >> 4
  myprintf::$19 = myprintf::$18 & $f
  myprintf::b#3 = myprintf::$19
  myprintf::$20 = myprintf::b#3 < $a
  if(myprintf::$20) goto myprintf::@10
  to:myprintf::@11
myprintf::@10: scope:[myprintf]  from myprintf::@35
  myprintf::bLeadZero#45 = phi( myprintf::@35/myprintf::bLeadZero#47 )
  myprintf::bDigits#47 = phi( myprintf::@35/myprintf::bDigits#49 )
  myprintf::bTrailing#45 = phi( myprintf::@35/myprintf::bTrailing#47 )
  myprintf::w3#37 = phi( myprintf::@35/myprintf::w3#41 )
  myprintf::w2#37 = phi( myprintf::@35/myprintf::w2#41 )
  myprintf::w1#37 = phi( myprintf::@35/myprintf::w1#41 )
  myprintf::bArg#36 = phi( myprintf::@35/myprintf::bArg#40 )
  myprintf::str#38 = phi( myprintf::@35/myprintf::str#42 )
  myprintf::w#11 = phi( myprintf::@35/myprintf::w#6 )
  myprintf::bLen#18 = phi( myprintf::@35/myprintf::bLen#30 )
  myprintf::dst#12 = phi( myprintf::@35/myprintf::dst#25 )
  myprintf::b#27 = phi( myprintf::@35/myprintf::b#3 )
  myprintf::$22 = '0'
  to:myprintf::@12
myprintf::@11: scope:[myprintf]  from myprintf::@35
  myprintf::bLeadZero#46 = phi( myprintf::@35/myprintf::bLeadZero#47 )
  myprintf::bDigits#48 = phi( myprintf::@35/myprintf::bDigits#49 )
  myprintf::bTrailing#46 = phi( myprintf::@35/myprintf::bTrailing#47 )
  myprintf::w3#38 = phi( myprintf::@35/myprintf::w3#41 )
  myprintf::w2#38 = phi( myprintf::@35/myprintf::w2#41 )
  myprintf::w1#38 = phi( myprintf::@35/myprintf::w1#41 )
  myprintf::bArg#37 = phi( myprintf::@35/myprintf::bArg#40 )
  myprintf::str#39 = phi( myprintf::@35/myprintf::str#42 )
  myprintf::w#12 = phi( myprintf::@35/myprintf::w#6 )
  myprintf::bLen#19 = phi( myprintf::@35/myprintf::bLen#30 )
  myprintf::dst#13 = phi( myprintf::@35/myprintf::dst#25 )
  myprintf::b#28 = phi( myprintf::@35/myprintf::b#3 )
  myprintf::$21 = $57
  to:myprintf::@12
myprintf::@12: scope:[myprintf]  from myprintf::@10 myprintf::@11
  myprintf::bLeadZero#42 = phi( myprintf::@10/myprintf::bLeadZero#45, myprintf::@11/myprintf::bLeadZero#46 )
  myprintf::bDigits#46 = phi( myprintf::@10/myprintf::bDigits#47, myprintf::@11/myprintf::bDigits#48 )
  myprintf::bTrailing#44 = phi( myprintf::@10/myprintf::bTrailing#45, myprintf::@11/myprintf::bTrailing#46 )
  myprintf::w3#34 = phi( myprintf::@10/myprintf::w3#37, myprintf::@11/myprintf::w3#38 )
  myprintf::w2#34 = phi( myprintf::@10/myprintf::w2#37, myprintf::@11/myprintf::w2#38 )
  myprintf::w1#34 = phi( myprintf::@10/myprintf::w1#37, myprintf::@11/myprintf::w1#38 )
  myprintf::bArg#33 = phi( myprintf::@10/myprintf::bArg#36, myprintf::@11/myprintf::bArg#37 )
  myprintf::str#35 = phi( myprintf::@10/myprintf::str#38, myprintf::@11/myprintf::str#39 )
  myprintf::w#7 = phi( myprintf::@10/myprintf::w#11, myprintf::@11/myprintf::w#12 )
  myprintf::bLen#10 = phi( myprintf::@10/myprintf::bLen#18, myprintf::@11/myprintf::bLen#19 )
  myprintf::dst#4 = phi( myprintf::@10/myprintf::dst#12, myprintf::@11/myprintf::dst#13 )
  myprintf::b#15 = phi( myprintf::@10/myprintf::b#27, myprintf::@11/myprintf::b#28 )
  myprintf::$23 = phi( myprintf::@10/myprintf::$22, myprintf::@11/myprintf::$21 )
  myprintf::$24 = myprintf::$23 + myprintf::b#15
  myprintf::dst#4[myprintf::bLen#10] = myprintf::$24
  myprintf::bLen#2 = ++ myprintf::bLen#10
  myprintf::$57 = (char)myprintf::w#7
  myprintf::$25 = myprintf::$57 & $f
  myprintf::b#4 = myprintf::$25
  myprintf::$26 = myprintf::b#4 < $a
  if(myprintf::$26) goto myprintf::@13
  to:myprintf::@14
myprintf::@13: scope:[myprintf]  from myprintf::@12
  myprintf::bLeadZero#36 = phi( myprintf::@12/myprintf::bLeadZero#42 )
  myprintf::bDigits#42 = phi( myprintf::@12/myprintf::bDigits#46 )
  myprintf::bTrailing#39 = phi( myprintf::@12/myprintf::bTrailing#44 )
  myprintf::w#30 = phi( myprintf::@12/myprintf::w#7 )
  myprintf::w3#30 = phi( myprintf::@12/myprintf::w3#34 )
  myprintf::w2#30 = phi( myprintf::@12/myprintf::w2#34 )
  myprintf::w1#29 = phi( myprintf::@12/myprintf::w1#34 )
  myprintf::bArg#29 = phi( myprintf::@12/myprintf::bArg#33 )
  myprintf::str#28 = phi( myprintf::@12/myprintf::str#35 )
  myprintf::bLen#20 = phi( myprintf::@12/myprintf::bLen#2 )
  myprintf::dst#14 = phi( myprintf::@12/myprintf::dst#4 )
  myprintf::b#29 = phi( myprintf::@12/myprintf::b#4 )
  myprintf::$28 = '0'
  to:myprintf::@15
myprintf::@14: scope:[myprintf]  from myprintf::@12
  myprintf::bLeadZero#37 = phi( myprintf::@12/myprintf::bLeadZero#42 )
  myprintf::bDigits#43 = phi( myprintf::@12/myprintf::bDigits#46 )
  myprintf::bTrailing#40 = phi( myprintf::@12/myprintf::bTrailing#44 )
  myprintf::w#31 = phi( myprintf::@12/myprintf::w#7 )
  myprintf::w3#31 = phi( myprintf::@12/myprintf::w3#34 )
  myprintf::w2#31 = phi( myprintf::@12/myprintf::w2#34 )
  myprintf::w1#30 = phi( myprintf::@12/myprintf::w1#34 )
  myprintf::bArg#30 = phi( myprintf::@12/myprintf::bArg#33 )
  myprintf::str#29 = phi( myprintf::@12/myprintf::str#35 )
  myprintf::bLen#21 = phi( myprintf::@12/myprintf::bLen#2 )
  myprintf::dst#15 = phi( myprintf::@12/myprintf::dst#4 )
  myprintf::b#30 = phi( myprintf::@12/myprintf::b#4 )
  myprintf::$27 = $57
  to:myprintf::@15
myprintf::@15: scope:[myprintf]  from myprintf::@13 myprintf::@14
  myprintf::bLeadZero#26 = phi( myprintf::@13/myprintf::bLeadZero#36, myprintf::@14/myprintf::bLeadZero#37 )
  myprintf::bDigits#34 = phi( myprintf::@13/myprintf::bDigits#42, myprintf::@14/myprintf::bDigits#43 )
  myprintf::bTrailing#30 = phi( myprintf::@13/myprintf::bTrailing#39, myprintf::@14/myprintf::bTrailing#40 )
  myprintf::w#25 = phi( myprintf::@13/myprintf::w#30, myprintf::@14/myprintf::w#31 )
  myprintf::w3#19 = phi( myprintf::@13/myprintf::w3#30, myprintf::@14/myprintf::w3#31 )
  myprintf::w2#19 = phi( myprintf::@13/myprintf::w2#30, myprintf::@14/myprintf::w2#31 )
  myprintf::w1#18 = phi( myprintf::@13/myprintf::w1#29, myprintf::@14/myprintf::w1#30 )
  myprintf::bArg#20 = phi( myprintf::@13/myprintf::bArg#29, myprintf::@14/myprintf::bArg#30 )
  myprintf::str#16 = phi( myprintf::@13/myprintf::str#28, myprintf::@14/myprintf::str#29 )
  myprintf::bLen#11 = phi( myprintf::@13/myprintf::bLen#20, myprintf::@14/myprintf::bLen#21 )
  myprintf::dst#5 = phi( myprintf::@13/myprintf::dst#14, myprintf::@14/myprintf::dst#15 )
  myprintf::b#16 = phi( myprintf::@13/myprintf::b#29, myprintf::@14/myprintf::b#30 )
  myprintf::$29 = phi( myprintf::@13/myprintf::$28, myprintf::@14/myprintf::$27 )
  myprintf::$30 = myprintf::$29 + myprintf::b#16
  myprintf::dst#5[myprintf::bLen#11] = myprintf::$30
  myprintf::bLen#3 = ++ myprintf::bLen#11
  to:myprintf::@30
myprintf::@16: scope:[myprintf]  from myprintf::@17 myprintf::@48
  myprintf::w#39 = phi( myprintf::@17/myprintf::w#41, myprintf::@48/myprintf::w#42 )
  myprintf::w3#42 = phi( myprintf::@17/myprintf::w3#44, myprintf::@48/myprintf::w3#45 )
  myprintf::w2#42 = phi( myprintf::@17/myprintf::w2#44, myprintf::@48/myprintf::w2#45 )
  myprintf::w1#42 = phi( myprintf::@17/myprintf::w1#44, myprintf::@48/myprintf::w1#45 )
  myprintf::bArg#41 = phi( myprintf::@17/myprintf::bArg#43, myprintf::@48/myprintf::bArg#44 )
  myprintf::str#43 = phi( myprintf::@17/myprintf::str#45, myprintf::@48/myprintf::str#46 )
  myprintf::bLen#47 = phi( myprintf::@17/myprintf::bLen#51, myprintf::@48/myprintf::bLen#52 )
  myprintf::dst#42 = phi( myprintf::@17/myprintf::dst#46, myprintf::@48/myprintf::dst#47 )
  myprintf::bLeadZero#7 = phi( myprintf::@17/myprintf::bLeadZero#10, myprintf::@48/myprintf::bLeadZero#11 )
  myprintf::bDigits#11 = phi( myprintf::@17/myprintf::bDigits#15, myprintf::@48/myprintf::bDigits#16 )
  myprintf::bTrailing#5 = phi( myprintf::@17/myprintf::bTrailing#7, myprintf::@48/myprintf::bTrailing#8 )
  myprintf::b#17 = phi( myprintf::@17/myprintf::b#5, myprintf::@48/myprintf::b#2 )
  myprintf::$32 = myprintf::buf6[myprintf::b#17] != 0
  if(myprintf::$32) goto myprintf::@17
  to:myprintf::@18
myprintf::@17: scope:[myprintf]  from myprintf::@16
  myprintf::w#41 = phi( myprintf::@16/myprintf::w#39 )
  myprintf::w3#44 = phi( myprintf::@16/myprintf::w3#42 )
  myprintf::w2#44 = phi( myprintf::@16/myprintf::w2#42 )
  myprintf::w1#44 = phi( myprintf::@16/myprintf::w1#42 )
  myprintf::bArg#43 = phi( myprintf::@16/myprintf::bArg#41 )
  myprintf::str#45 = phi( myprintf::@16/myprintf::str#43 )
  myprintf::bLen#51 = phi( myprintf::@16/myprintf::bLen#47 )
  myprintf::dst#46 = phi( myprintf::@16/myprintf::dst#42 )
  myprintf::bLeadZero#10 = phi( myprintf::@16/myprintf::bLeadZero#7 )
  myprintf::bDigits#15 = phi( myprintf::@16/myprintf::bDigits#11 )
  myprintf::bTrailing#7 = phi( myprintf::@16/myprintf::bTrailing#5 )
  myprintf::b#18 = phi( myprintf::@16/myprintf::b#17 )
  myprintf::b#5 = ++ myprintf::b#18
  to:myprintf::@16
myprintf::@18: scope:[myprintf]  from myprintf::@16
  myprintf::w#37 = phi( myprintf::@16/myprintf::w#39 )
  myprintf::w3#39 = phi( myprintf::@16/myprintf::w3#42 )
  myprintf::w2#39 = phi( myprintf::@16/myprintf::w2#42 )
  myprintf::w1#39 = phi( myprintf::@16/myprintf::w1#42 )
  myprintf::bArg#38 = phi( myprintf::@16/myprintf::bArg#41 )
  myprintf::str#40 = phi( myprintf::@16/myprintf::str#43 )
  myprintf::bLen#43 = phi( myprintf::@16/myprintf::bLen#47 )
  myprintf::dst#38 = phi( myprintf::@16/myprintf::dst#42 )
  myprintf::bLeadZero#5 = phi( myprintf::@16/myprintf::bLeadZero#7 )
  myprintf::b#19 = phi( myprintf::@16/myprintf::b#17 )
  myprintf::bDigits#5 = phi( myprintf::@16/myprintf::bDigits#11 )
  myprintf::bTrailing#3 = phi( myprintf::@16/myprintf::bTrailing#5 )
  myprintf::$33 = myprintf::bTrailing#3 == 0
  myprintf::$34 = myprintf::bDigits#5 > myprintf::b#19
  myprintf::$35 = myprintf::$33 && myprintf::$34
  myprintf::$36 = ! myprintf::$35
  if(myprintf::$36) goto myprintf::@19
  to:myprintf::@20
myprintf::@19: scope:[myprintf]  from myprintf::@18 myprintf::@20
  myprintf::bLeadZero#43 = phi( myprintf::@18/myprintf::bLeadZero#5, myprintf::@20/myprintf::bLeadZero#4 )
  myprintf::w#35 = phi( myprintf::@18/myprintf::w#37, myprintf::@20/myprintf::w#38 )
  myprintf::w3#35 = phi( myprintf::@18/myprintf::w3#39, myprintf::@20/myprintf::w3#40 )
  myprintf::w2#35 = phi( myprintf::@18/myprintf::w2#39, myprintf::@20/myprintf::w2#40 )
  myprintf::w1#35 = phi( myprintf::@18/myprintf::w1#39, myprintf::@20/myprintf::w1#40 )
  myprintf::bArg#34 = phi( myprintf::@18/myprintf::bArg#38, myprintf::@20/myprintf::bArg#39 )
  myprintf::str#36 = phi( myprintf::@18/myprintf::str#40, myprintf::@20/myprintf::str#41 )
  myprintf::bDigits#18 = phi( myprintf::@18/myprintf::bDigits#5, myprintf::@20/myprintf::bDigits#6 )
  myprintf::bTrailing#9 = phi( myprintf::@18/myprintf::bTrailing#3, myprintf::@20/myprintf::bTrailing#12 )
  myprintf::bLen#32 = phi( myprintf::@18/myprintf::bLen#43, myprintf::@20/myprintf::bLen#44 )
  myprintf::dst#27 = phi( myprintf::@18/myprintf::dst#38, myprintf::@20/myprintf::dst#39 )
  myprintf::b#32 = phi( myprintf::@18/myprintf::b#19, myprintf::@20/myprintf::b#20 )
  myprintf::digit#1 = 0
  to:myprintf::@25
myprintf::@20: scope:[myprintf]  from myprintf::@18 myprintf::@24
  myprintf::w#38 = phi( myprintf::@18/myprintf::w#37, myprintf::@24/myprintf::w#40 )
  myprintf::w3#40 = phi( myprintf::@18/myprintf::w3#39, myprintf::@24/myprintf::w3#43 )
  myprintf::w2#40 = phi( myprintf::@18/myprintf::w2#39, myprintf::@24/myprintf::w2#43 )
  myprintf::w1#40 = phi( myprintf::@18/myprintf::w1#39, myprintf::@24/myprintf::w1#43 )
  myprintf::bArg#39 = phi( myprintf::@18/myprintf::bArg#38, myprintf::@24/myprintf::bArg#42 )
  myprintf::str#41 = phi( myprintf::@18/myprintf::str#40, myprintf::@24/myprintf::str#44 )
  myprintf::bTrailing#12 = phi( myprintf::@18/myprintf::bTrailing#3, myprintf::@24/myprintf::bTrailing#14 )
  myprintf::bLen#44 = phi( myprintf::@18/myprintf::bLen#43, myprintf::@24/myprintf::bLen#4 )
  myprintf::dst#39 = phi( myprintf::@18/myprintf::dst#38, myprintf::@24/myprintf::dst#6 )
  myprintf::bLeadZero#4 = phi( myprintf::@18/myprintf::bLeadZero#5, myprintf::@24/myprintf::bLeadZero#6 )
  myprintf::b#20 = phi( myprintf::@18/myprintf::b#19, myprintf::@24/myprintf::b#31 )
  myprintf::bDigits#6 = phi( myprintf::@18/myprintf::bDigits#5, myprintf::@24/myprintf::bDigits#2 )
  myprintf::$37 = myprintf::bDigits#6 > myprintf::b#20
  if(myprintf::$37) goto myprintf::@21
  to:myprintf::@19
myprintf::@21: scope:[myprintf]  from myprintf::@20
  myprintf::w#45 = phi( myprintf::@20/myprintf::w#38 )
  myprintf::w3#49 = phi( myprintf::@20/myprintf::w3#40 )
  myprintf::w2#49 = phi( myprintf::@20/myprintf::w2#40 )
  myprintf::w1#49 = phi( myprintf::@20/myprintf::w1#40 )
  myprintf::bArg#48 = phi( myprintf::@20/myprintf::bArg#39 )
  myprintf::str#50 = phi( myprintf::@20/myprintf::str#41 )
  myprintf::bTrailing#19 = phi( myprintf::@20/myprintf::bTrailing#12 )
  myprintf::b#37 = phi( myprintf::@20/myprintf::b#20 )
  myprintf::bDigits#17 = phi( myprintf::@20/myprintf::bDigits#6 )
  myprintf::bLen#31 = phi( myprintf::@20/myprintf::bLen#44 )
  myprintf::dst#26 = phi( myprintf::@20/myprintf::dst#39 )
  myprintf::bLeadZero#3 = phi( myprintf::@20/myprintf::bLeadZero#4 )
  myprintf::$38 = myprintf::bLeadZero#3 == 0
  if(myprintf::$38) goto myprintf::@22
  to:myprintf::@23
myprintf::@22: scope:[myprintf]  from myprintf::@21
  myprintf::w#43 = phi( myprintf::@21/myprintf::w#45 )
  myprintf::w3#46 = phi( myprintf::@21/myprintf::w3#49 )
  myprintf::w2#46 = phi( myprintf::@21/myprintf::w2#49 )
  myprintf::w1#46 = phi( myprintf::@21/myprintf::w1#49 )
  myprintf::bArg#45 = phi( myprintf::@21/myprintf::bArg#48 )
  myprintf::str#47 = phi( myprintf::@21/myprintf::str#50 )
  myprintf::bTrailing#16 = phi( myprintf::@21/myprintf::bTrailing#19 )
  myprintf::bLeadZero#8 = phi( myprintf::@21/myprintf::bLeadZero#3 )
  myprintf::b#35 = phi( myprintf::@21/myprintf::b#37 )
  myprintf::bDigits#12 = phi( myprintf::@21/myprintf::bDigits#17 )
  myprintf::bLen#22 = phi( myprintf::@21/myprintf::bLen#31 )
  myprintf::dst#16 = phi( myprintf::@21/myprintf::dst#26 )
  myprintf::$40 = ' '
  to:myprintf::@24
myprintf::@23: scope:[myprintf]  from myprintf::@21
  myprintf::w#44 = phi( myprintf::@21/myprintf::w#45 )
  myprintf::w3#47 = phi( myprintf::@21/myprintf::w3#49 )
  myprintf::w2#47 = phi( myprintf::@21/myprintf::w2#49 )
  myprintf::w1#47 = phi( myprintf::@21/myprintf::w1#49 )
  myprintf::bArg#46 = phi( myprintf::@21/myprintf::bArg#48 )
  myprintf::str#48 = phi( myprintf::@21/myprintf::str#50 )
  myprintf::bTrailing#17 = phi( myprintf::@21/myprintf::bTrailing#19 )
  myprintf::bLeadZero#9 = phi( myprintf::@21/myprintf::bLeadZero#3 )
  myprintf::b#36 = phi( myprintf::@21/myprintf::b#37 )
  myprintf::bDigits#13 = phi( myprintf::@21/myprintf::bDigits#17 )
  myprintf::bLen#23 = phi( myprintf::@21/myprintf::bLen#31 )
  myprintf::dst#17 = phi( myprintf::@21/myprintf::dst#26 )
  myprintf::$39 = '0'
  to:myprintf::@24
myprintf::@24: scope:[myprintf]  from myprintf::@22 myprintf::@23
  myprintf::w#40 = phi( myprintf::@22/myprintf::w#43, myprintf::@23/myprintf::w#44 )
  myprintf::w3#43 = phi( myprintf::@22/myprintf::w3#46, myprintf::@23/myprintf::w3#47 )
  myprintf::w2#43 = phi( myprintf::@22/myprintf::w2#46, myprintf::@23/myprintf::w2#47 )
  myprintf::w1#43 = phi( myprintf::@22/myprintf::w1#46, myprintf::@23/myprintf::w1#47 )
  myprintf::bArg#42 = phi( myprintf::@22/myprintf::bArg#45, myprintf::@23/myprintf::bArg#46 )
  myprintf::str#44 = phi( myprintf::@22/myprintf::str#47, myprintf::@23/myprintf::str#48 )
  myprintf::bTrailing#14 = phi( myprintf::@22/myprintf::bTrailing#16, myprintf::@23/myprintf::bTrailing#17 )
  myprintf::bLeadZero#6 = phi( myprintf::@22/myprintf::bLeadZero#8, myprintf::@23/myprintf::bLeadZero#9 )
  myprintf::b#31 = phi( myprintf::@22/myprintf::b#35, myprintf::@23/myprintf::b#36 )
  myprintf::bDigits#7 = phi( myprintf::@22/myprintf::bDigits#12, myprintf::@23/myprintf::bDigits#13 )
  myprintf::bLen#12 = phi( myprintf::@22/myprintf::bLen#22, myprintf::@23/myprintf::bLen#23 )
  myprintf::dst#6 = phi( myprintf::@22/myprintf::dst#16, myprintf::@23/myprintf::dst#17 )
  myprintf::$41 = phi( myprintf::@22/myprintf::$40, myprintf::@23/myprintf::$39 )
  myprintf::dst#6[myprintf::bLen#12] = myprintf::$41
  myprintf::bLen#4 = ++ myprintf::bLen#12
  myprintf::bDigits#2 = -- myprintf::bDigits#7
  to:myprintf::@20
myprintf::@25: scope:[myprintf]  from myprintf::@19 myprintf::@26
  myprintf::bLeadZero#38 = phi( myprintf::@19/myprintf::bLeadZero#43, myprintf::@26/myprintf::bLeadZero#44 )
  myprintf::w#32 = phi( myprintf::@19/myprintf::w#35, myprintf::@26/myprintf::w#36 )
  myprintf::w3#32 = phi( myprintf::@19/myprintf::w3#35, myprintf::@26/myprintf::w3#36 )
  myprintf::w2#32 = phi( myprintf::@19/myprintf::w2#35, myprintf::@26/myprintf::w2#36 )
  myprintf::w1#31 = phi( myprintf::@19/myprintf::w1#35, myprintf::@26/myprintf::w1#36 )
  myprintf::bArg#31 = phi( myprintf::@19/myprintf::bArg#34, myprintf::@26/myprintf::bArg#35 )
  myprintf::str#30 = phi( myprintf::@19/myprintf::str#36, myprintf::@26/myprintf::str#37 )
  myprintf::bDigits#14 = phi( myprintf::@19/myprintf::bDigits#18, myprintf::@26/myprintf::bDigits#19 )
  myprintf::bTrailing#6 = phi( myprintf::@19/myprintf::bTrailing#9, myprintf::@26/myprintf::bTrailing#10 )
  myprintf::bLen#24 = phi( myprintf::@19/myprintf::bLen#32, myprintf::@26/myprintf::bLen#5 )
  myprintf::dst#18 = phi( myprintf::@19/myprintf::dst#27, myprintf::@26/myprintf::dst#7 )
  myprintf::b#21 = phi( myprintf::@19/myprintf::b#32, myprintf::@26/myprintf::b#33 )
  myprintf::digit#3 = phi( myprintf::@19/myprintf::digit#1, myprintf::@26/myprintf::digit#2 )
  myprintf::$42 = myprintf::digit#3 < myprintf::b#21
  if(myprintf::$42) goto myprintf::@26
  to:myprintf::@27
myprintf::@26: scope:[myprintf]  from myprintf::@25
  myprintf::bLeadZero#44 = phi( myprintf::@25/myprintf::bLeadZero#38 )
  myprintf::w#36 = phi( myprintf::@25/myprintf::w#32 )
  myprintf::w3#36 = phi( myprintf::@25/myprintf::w3#32 )
  myprintf::w2#36 = phi( myprintf::@25/myprintf::w2#32 )
  myprintf::w1#36 = phi( myprintf::@25/myprintf::w1#31 )
  myprintf::bArg#35 = phi( myprintf::@25/myprintf::bArg#31 )
  myprintf::str#37 = phi( myprintf::@25/myprintf::str#30 )
  myprintf::bDigits#19 = phi( myprintf::@25/myprintf::bDigits#14 )
  myprintf::bTrailing#10 = phi( myprintf::@25/myprintf::bTrailing#6 )
  myprintf::b#33 = phi( myprintf::@25/myprintf::b#21 )
  myprintf::bLen#13 = phi( myprintf::@25/myprintf::bLen#24 )
  myprintf::dst#7 = phi( myprintf::@25/myprintf::dst#18 )
  myprintf::digit#4 = phi( myprintf::@25/myprintf::digit#3 )
  myprintf::dst#7[myprintf::bLen#13] = myprintf::buf6[myprintf::digit#4]
  myprintf::bLen#5 = ++ myprintf::bLen#13
  myprintf::digit#2 = ++ myprintf::digit#4
  to:myprintf::@25
myprintf::@27: scope:[myprintf]  from myprintf::@25
  myprintf::bLeadZero#27 = phi( myprintf::@25/myprintf::bLeadZero#38 )
  myprintf::w#26 = phi( myprintf::@25/myprintf::w#32 )
  myprintf::w3#20 = phi( myprintf::@25/myprintf::w3#32 )
  myprintf::w2#20 = phi( myprintf::@25/myprintf::w2#32 )
  myprintf::w1#19 = phi( myprintf::@25/myprintf::w1#31 )
  myprintf::bArg#21 = phi( myprintf::@25/myprintf::bArg#31 )
  myprintf::str#17 = phi( myprintf::@25/myprintf::str#30 )
  myprintf::bLen#33 = phi( myprintf::@25/myprintf::bLen#24 )
  myprintf::dst#28 = phi( myprintf::@25/myprintf::dst#18 )
  myprintf::b#22 = phi( myprintf::@25/myprintf::b#21 )
  myprintf::bDigits#8 = phi( myprintf::@25/myprintf::bDigits#14 )
  myprintf::bTrailing#4 = phi( myprintf::@25/myprintf::bTrailing#6 )
  myprintf::$43 = myprintf::bTrailing#4 != 0
  myprintf::$44 = myprintf::bDigits#8 > myprintf::b#22
  myprintf::$45 = myprintf::$43 && myprintf::$44
  myprintf::$46 = ! myprintf::$45
  if(myprintf::$46) goto myprintf::@30
  to:myprintf::@28
myprintf::@28: scope:[myprintf]  from myprintf::@27 myprintf::@29
  myprintf::bLeadZero#28 = phi( myprintf::@27/myprintf::bLeadZero#27, myprintf::@29/myprintf::bLeadZero#39 )
  myprintf::bTrailing#31 = phi( myprintf::@27/myprintf::bTrailing#4, myprintf::@29/myprintf::bTrailing#41 )
  myprintf::w#27 = phi( myprintf::@27/myprintf::w#26, myprintf::@29/myprintf::w#33 )
  myprintf::w3#21 = phi( myprintf::@27/myprintf::w3#20, myprintf::@29/myprintf::w3#33 )
  myprintf::w2#21 = phi( myprintf::@27/myprintf::w2#20, myprintf::@29/myprintf::w2#33 )
  myprintf::w1#20 = phi( myprintf::@27/myprintf::w1#19, myprintf::@29/myprintf::w1#32 )
  myprintf::bArg#22 = phi( myprintf::@27/myprintf::bArg#21, myprintf::@29/myprintf::bArg#32 )
  myprintf::str#18 = phi( myprintf::@27/myprintf::str#17, myprintf::@29/myprintf::str#31 )
  myprintf::bLen#25 = phi( myprintf::@27/myprintf::bLen#33, myprintf::@29/myprintf::bLen#6 )
  myprintf::dst#19 = phi( myprintf::@27/myprintf::dst#28, myprintf::@29/myprintf::dst#8 )
  myprintf::b#23 = phi( myprintf::@27/myprintf::b#22, myprintf::@29/myprintf::b#34 )
  myprintf::bDigits#9 = phi( myprintf::@27/myprintf::bDigits#8, myprintf::@29/myprintf::bDigits#3 )
  myprintf::$47 = myprintf::bDigits#9 > myprintf::b#23
  if(myprintf::$47) goto myprintf::@29
  to:myprintf::@30
myprintf::@29: scope:[myprintf]  from myprintf::@28
  myprintf::bLeadZero#39 = phi( myprintf::@28/myprintf::bLeadZero#28 )
  myprintf::bTrailing#41 = phi( myprintf::@28/myprintf::bTrailing#31 )
  myprintf::w#33 = phi( myprintf::@28/myprintf::w#27 )
  myprintf::w3#33 = phi( myprintf::@28/myprintf::w3#21 )
  myprintf::w2#33 = phi( myprintf::@28/myprintf::w2#21 )
  myprintf::w1#32 = phi( myprintf::@28/myprintf::w1#20 )
  myprintf::bArg#32 = phi( myprintf::@28/myprintf::bArg#22 )
  myprintf::str#31 = phi( myprintf::@28/myprintf::str#18 )
  myprintf::b#34 = phi( myprintf::@28/myprintf::b#23 )
  myprintf::bDigits#10 = phi( myprintf::@28/myprintf::bDigits#9 )
  myprintf::bLen#14 = phi( myprintf::@28/myprintf::bLen#25 )
  myprintf::dst#8 = phi( myprintf::@28/myprintf::dst#19 )
  myprintf::dst#8[myprintf::bLen#14] = ' '
  myprintf::bLen#6 = ++ myprintf::bLen#14
  myprintf::bDigits#3 = -- myprintf::bDigits#10
  to:myprintf::@28
myprintf::@30: scope:[myprintf]  from myprintf::@15 myprintf::@27 myprintf::@28 myprintf::@34 myprintf::@8
  myprintf::bLeadZero#21 = phi( myprintf::@15/myprintf::bLeadZero#26, myprintf::@27/myprintf::bLeadZero#27, myprintf::@28/myprintf::bLeadZero#28, myprintf::@34/myprintf::bLeadZero#29, myprintf::@8/myprintf::bLeadZero#30 )
  myprintf::bDigits#29 = phi( myprintf::@15/myprintf::bDigits#34, myprintf::@27/myprintf::bDigits#8, myprintf::@28/myprintf::bDigits#9, myprintf::@34/myprintf::bDigits#35, myprintf::@8/myprintf::bDigits#36 )
  myprintf::bTrailing#25 = phi( myprintf::@15/myprintf::bTrailing#30, myprintf::@27/myprintf::bTrailing#4, myprintf::@28/myprintf::bTrailing#31, myprintf::@34/myprintf::bTrailing#32, myprintf::@8/myprintf::bTrailing#33 )
  myprintf::w#19 = phi( myprintf::@15/myprintf::w#25, myprintf::@27/myprintf::w#26, myprintf::@28/myprintf::w#27, myprintf::@34/myprintf::w#10, myprintf::@8/myprintf::w#4 )
  myprintf::w3#10 = phi( myprintf::@15/myprintf::w3#19, myprintf::@27/myprintf::w3#20, myprintf::@28/myprintf::w3#21, myprintf::@34/myprintf::w3#22, myprintf::@8/myprintf::w3#23 )
  myprintf::w2#10 = phi( myprintf::@15/myprintf::w2#19, myprintf::@27/myprintf::w2#20, myprintf::@28/myprintf::w2#21, myprintf::@34/myprintf::w2#22, myprintf::@8/myprintf::w2#23 )
  myprintf::w1#9 = phi( myprintf::@15/myprintf::w1#18, myprintf::@27/myprintf::w1#19, myprintf::@28/myprintf::w1#20, myprintf::@34/myprintf::w1#21, myprintf::@8/myprintf::w1#22 )
  myprintf::bArg#12 = phi( myprintf::@15/myprintf::bArg#20, myprintf::@27/myprintf::bArg#21, myprintf::@28/myprintf::bArg#22, myprintf::@34/myprintf::bArg#23, myprintf::@8/myprintf::bArg#24 )
  myprintf::bLen#36 = phi( myprintf::@15/myprintf::bLen#3, myprintf::@27/myprintf::bLen#33, myprintf::@28/myprintf::bLen#25, myprintf::@34/myprintf::bLen#42, myprintf::@8/myprintf::bLen#1 )
  myprintf::dst#31 = phi( myprintf::@15/myprintf::dst#5, myprintf::@27/myprintf::dst#28, myprintf::@28/myprintf::dst#19, myprintf::@34/myprintf::dst#37, myprintf::@8/myprintf::dst#3 )
  myprintf::str#7 = phi( myprintf::@15/myprintf::str#16, myprintf::@27/myprintf::str#17, myprintf::@28/myprintf::str#18, myprintf::@34/myprintf::str#19, myprintf::@8/myprintf::str#20 )
  myprintf::bFormat#1 = 0
  to:myprintf::@36
myprintf::@37: scope:[myprintf]  from myprintf::@4
  myprintf::bLeadZero#34 = phi( myprintf::@4/myprintf::bLeadZero#40 )
  myprintf::bDigits#40 = phi( myprintf::@4/myprintf::bDigits#44 )
  myprintf::bTrailing#37 = phi( myprintf::@4/myprintf::bTrailing#42 )
  myprintf::w#28 = phi( myprintf::@4/myprintf::w#34 )
  myprintf::w3#26 = phi( myprintf::@4/myprintf::w3#5 )
  myprintf::w2#26 = phi( myprintf::@4/myprintf::w2#5 )
  myprintf::w1#25 = phi( myprintf::@4/myprintf::w1#4 )
  myprintf::bArg#25 = phi( myprintf::@4/myprintf::bArg#5 )
  myprintf::bFormat#17 = phi( myprintf::@4/myprintf::bFormat#19 )
  myprintf::str#24 = phi( myprintf::@4/myprintf::str#32 )
  myprintf::bLen#26 = phi( myprintf::@4/myprintf::bLen#34 )
  myprintf::dst#20 = phi( myprintf::@4/myprintf::dst#29 )
  myprintf::b#24 = phi( myprintf::@4/myprintf::b#7 )
  myprintf::$52 = myprintf::b#24 >= $41
  myprintf::$53 = myprintf::b#24 <= $5a
  myprintf::$54 = myprintf::$52 && myprintf::$53
  myprintf::$55 = ! myprintf::$54
  if(myprintf::$55) goto myprintf::@41
  to:myprintf::@47
myprintf::@44: scope:[myprintf]  from myprintf::@4
  myprintf::bLen#53 = phi( myprintf::@4/myprintf::bLen#34 )
  myprintf::dst#48 = phi( myprintf::@4/myprintf::dst#29 )
  myprintf::str#33 = phi( myprintf::@4/myprintf::str#32 )
  myprintf::w3#4 = phi( myprintf::@4/myprintf::w3#5 )
  myprintf::w2#4 = phi( myprintf::@4/myprintf::w2#5 )
  myprintf::w1#3 = phi( myprintf::@4/myprintf::w1#4 )
  myprintf::bArg#2 = phi( myprintf::@4/myprintf::bArg#5 )
  myprintf::bFormat#2 = 1
  myprintf::bLeadZero#2 = 0
  myprintf::bDigits#4 = 1
  myprintf::bTrailing#2 = 0
  myprintf::$50 = myprintf::bArg#2 == 0
  if(myprintf::$50) goto myprintf::@38
  to:myprintf::@45
myprintf::@38: scope:[myprintf]  from myprintf::@44
  myprintf::bLeadZero#31 = phi( myprintf::@44/myprintf::bLeadZero#2 )
  myprintf::bDigits#37 = phi( myprintf::@44/myprintf::bDigits#4 )
  myprintf::bTrailing#34 = phi( myprintf::@44/myprintf::bTrailing#2 )
  myprintf::w3#24 = phi( myprintf::@44/myprintf::w3#4 )
  myprintf::w2#24 = phi( myprintf::@44/myprintf::w2#4 )
  myprintf::bLen#48 = phi( myprintf::@44/myprintf::bLen#53 )
  myprintf::dst#43 = phi( myprintf::@44/myprintf::dst#48 )
  myprintf::bFormat#14 = phi( myprintf::@44/myprintf::bFormat#2 )
  myprintf::str#21 = phi( myprintf::@44/myprintf::str#33 )
  myprintf::bArg#6 = phi( myprintf::@44/myprintf::bArg#2 )
  myprintf::w1#2 = phi( myprintf::@44/myprintf::w1#3 )
  myprintf::w#1 = myprintf::w1#2
  to:myprintf::@40
myprintf::@45: scope:[myprintf]  from myprintf::@44
  myprintf::bLeadZero#41 = phi( myprintf::@44/myprintf::bLeadZero#2 )
  myprintf::bDigits#45 = phi( myprintf::@44/myprintf::bDigits#4 )
  myprintf::bTrailing#43 = phi( myprintf::@44/myprintf::bTrailing#2 )
  myprintf::w1#33 = phi( myprintf::@44/myprintf::w1#3 )
  myprintf::bLen#54 = phi( myprintf::@44/myprintf::bLen#53 )
  myprintf::dst#49 = phi( myprintf::@44/myprintf::dst#48 )
  myprintf::bFormat#20 = phi( myprintf::@44/myprintf::bFormat#2 )
  myprintf::str#34 = phi( myprintf::@44/myprintf::str#33 )
  myprintf::w3#3 = phi( myprintf::@44/myprintf::w3#4 )
  myprintf::w2#3 = phi( myprintf::@44/myprintf::w2#4 )
  myprintf::bArg#3 = phi( myprintf::@44/myprintf::bArg#2 )
  myprintf::$51 = myprintf::bArg#3 == 1
  if(myprintf::$51) goto myprintf::@39
  to:myprintf::@46
myprintf::@39: scope:[myprintf]  from myprintf::@45
  myprintf::bLeadZero#32 = phi( myprintf::@45/myprintf::bLeadZero#41 )
  myprintf::bDigits#38 = phi( myprintf::@45/myprintf::bDigits#45 )
  myprintf::bTrailing#35 = phi( myprintf::@45/myprintf::bTrailing#43 )
  myprintf::w3#25 = phi( myprintf::@45/myprintf::w3#3 )
  myprintf::w1#23 = phi( myprintf::@45/myprintf::w1#33 )
  myprintf::bLen#49 = phi( myprintf::@45/myprintf::bLen#54 )
  myprintf::dst#44 = phi( myprintf::@45/myprintf::dst#49 )
  myprintf::bFormat#15 = phi( myprintf::@45/myprintf::bFormat#20 )
  myprintf::str#22 = phi( myprintf::@45/myprintf::str#34 )
  myprintf::bArg#7 = phi( myprintf::@45/myprintf::bArg#3 )
  myprintf::w2#2 = phi( myprintf::@45/myprintf::w2#3 )
  myprintf::w#2 = myprintf::w2#2
  to:myprintf::@40
myprintf::@46: scope:[myprintf]  from myprintf::@45
  myprintf::bLeadZero#33 = phi( myprintf::@45/myprintf::bLeadZero#41 )
  myprintf::bDigits#39 = phi( myprintf::@45/myprintf::bDigits#45 )
  myprintf::bTrailing#36 = phi( myprintf::@45/myprintf::bTrailing#43 )
  myprintf::w2#25 = phi( myprintf::@45/myprintf::w2#3 )
  myprintf::w1#24 = phi( myprintf::@45/myprintf::w1#33 )
  myprintf::bLen#50 = phi( myprintf::@45/myprintf::bLen#54 )
  myprintf::dst#45 = phi( myprintf::@45/myprintf::dst#49 )
  myprintf::bFormat#16 = phi( myprintf::@45/myprintf::bFormat#20 )
  myprintf::str#23 = phi( myprintf::@45/myprintf::str#34 )
  myprintf::bArg#8 = phi( myprintf::@45/myprintf::bArg#3 )
  myprintf::w3#2 = phi( myprintf::@45/myprintf::w3#3 )
  myprintf::w#3 = myprintf::w3#2
  to:myprintf::@40
myprintf::@40: scope:[myprintf]  from myprintf::@38 myprintf::@39 myprintf::@46
  myprintf::bLeadZero#24 = phi( myprintf::@38/myprintf::bLeadZero#31, myprintf::@39/myprintf::bLeadZero#32, myprintf::@46/myprintf::bLeadZero#33 )
  myprintf::bDigits#31 = phi( myprintf::@38/myprintf::bDigits#37, myprintf::@39/myprintf::bDigits#38, myprintf::@46/myprintf::bDigits#39 )
  myprintf::bTrailing#27 = phi( myprintf::@38/myprintf::bTrailing#34, myprintf::@39/myprintf::bTrailing#35, myprintf::@46/myprintf::bTrailing#36 )
  myprintf::w#22 = phi( myprintf::@38/myprintf::w#1, myprintf::@39/myprintf::w#2, myprintf::@46/myprintf::w#3 )
  myprintf::w3#13 = phi( myprintf::@38/myprintf::w3#24, myprintf::@39/myprintf::w3#25, myprintf::@46/myprintf::w3#2 )
  myprintf::w2#13 = phi( myprintf::@38/myprintf::w2#24, myprintf::@39/myprintf::w2#2, myprintf::@46/myprintf::w2#25 )
  myprintf::w1#12 = phi( myprintf::@38/myprintf::w1#2, myprintf::@39/myprintf::w1#23, myprintf::@46/myprintf::w1#24 )
  myprintf::bLen#39 = phi( myprintf::@38/myprintf::bLen#48, myprintf::@39/myprintf::bLen#49, myprintf::@46/myprintf::bLen#50 )
  myprintf::dst#34 = phi( myprintf::@38/myprintf::dst#43, myprintf::@39/myprintf::dst#44, myprintf::@46/myprintf::dst#45 )
  myprintf::bFormat#8 = phi( myprintf::@38/myprintf::bFormat#14, myprintf::@39/myprintf::bFormat#15, myprintf::@46/myprintf::bFormat#16 )
  myprintf::str#10 = phi( myprintf::@38/myprintf::str#21, myprintf::@39/myprintf::str#22, myprintf::@46/myprintf::str#23 )
  myprintf::bArg#4 = phi( myprintf::@38/myprintf::bArg#6, myprintf::@39/myprintf::bArg#7, myprintf::@46/myprintf::bArg#8 )
  myprintf::bArg#1 = ++ myprintf::bArg#4
  to:myprintf::@36
myprintf::@41: scope:[myprintf]  from myprintf::@37 myprintf::@47
  myprintf::bLeadZero#25 = phi( myprintf::@37/myprintf::bLeadZero#34, myprintf::@47/myprintf::bLeadZero#35 )
  myprintf::bDigits#32 = phi( myprintf::@37/myprintf::bDigits#40, myprintf::@47/myprintf::bDigits#41 )
  myprintf::bTrailing#28 = phi( myprintf::@37/myprintf::bTrailing#37, myprintf::@47/myprintf::bTrailing#38 )
  myprintf::w#23 = phi( myprintf::@37/myprintf::w#28, myprintf::@47/myprintf::w#29 )
  myprintf::w3#14 = phi( myprintf::@37/myprintf::w3#26, myprintf::@47/myprintf::w3#27 )
  myprintf::w2#14 = phi( myprintf::@37/myprintf::w2#26, myprintf::@47/myprintf::w2#27 )
  myprintf::w1#13 = phi( myprintf::@37/myprintf::w1#25, myprintf::@47/myprintf::w1#26 )
  myprintf::bArg#15 = phi( myprintf::@37/myprintf::bArg#25, myprintf::@47/myprintf::bArg#26 )
  myprintf::bFormat#9 = phi( myprintf::@37/myprintf::bFormat#17, myprintf::@47/myprintf::bFormat#18 )
  myprintf::str#11 = phi( myprintf::@37/myprintf::str#24, myprintf::@47/myprintf::str#25 )
  myprintf::bLen#15 = phi( myprintf::@37/myprintf::bLen#26, myprintf::@47/myprintf::bLen#27 )
  myprintf::dst#9 = phi( myprintf::@37/myprintf::dst#20, myprintf::@47/myprintf::dst#21 )
  myprintf::b#25 = phi( myprintf::@37/myprintf::b#24, myprintf::@47/myprintf::b#6 )
  myprintf::dst#9[myprintf::bLen#15] = myprintf::b#25
  myprintf::bLen#7 = ++ myprintf::bLen#15
  to:myprintf::@36
myprintf::@47: scope:[myprintf]  from myprintf::@37
  myprintf::bLeadZero#35 = phi( myprintf::@37/myprintf::bLeadZero#34 )
  myprintf::bDigits#41 = phi( myprintf::@37/myprintf::bDigits#40 )
  myprintf::bTrailing#38 = phi( myprintf::@37/myprintf::bTrailing#37 )
  myprintf::w#29 = phi( myprintf::@37/myprintf::w#28 )
  myprintf::w3#27 = phi( myprintf::@37/myprintf::w3#26 )
  myprintf::w2#27 = phi( myprintf::@37/myprintf::w2#26 )
  myprintf::w1#26 = phi( myprintf::@37/myprintf::w1#25 )
  myprintf::bArg#26 = phi( myprintf::@37/myprintf::bArg#25 )
  myprintf::bFormat#18 = phi( myprintf::@37/myprintf::bFormat#17 )
  myprintf::str#25 = phi( myprintf::@37/myprintf::str#24 )
  myprintf::bLen#27 = phi( myprintf::@37/myprintf::bLen#26 )
  myprintf::dst#21 = phi( myprintf::@37/myprintf::dst#20 )
  myprintf::b#26 = phi( myprintf::@37/myprintf::b#24 )
  myprintf::b#6 = myprintf::b#26 + $20
  to:myprintf::@41
myprintf::@return: scope:[myprintf]  from myprintf::@3
  myprintf::return#4 = phi( myprintf::@3/myprintf::return#0 )
  myprintf::return#1 = myprintf::return#4
  return 
  to:@return

void Print()
Print: scope:[Print]  from main::@14 main::@17
  asm { ldy#0 loop: ldastrTemp,y beqdone jsr$FFD2 iny jmploop done:  }
  to:Print::@return
Print::@return: scope:[Print]  from Print
  return 
  to:@return

unsigned int div10(unsigned int val)
div10: scope:[div10]  from main::@11
  div10::val#5 = phi( main::@11/div10::val#4 )
  div10::$0 = div10::val#5 >> 1
  div10::$1 = div10::$0 + 1
  div10::val#0 = div10::$1
  div10::$2 = div10::val#0 << 1
  div10::val#1 = div10::val#0 + div10::$2
  div10::$3 = div10::val#1 >> 4
  div10::val#2 = div10::val#1 + div10::$3
  div10::$4 = div10::val#2 >> 8
  div10::val#3 = div10::val#2 + div10::$4
  div10::$5 = div10::val#3 >> 4
  div10::return#0 = div10::$5
  to:div10::@return
div10::@return: scope:[div10]  from div10
  div10::return#3 = phi( div10/div10::return#0 )
  div10::return#1 = div10::return#3
  return 
  to:@return

int main()
main: scope:[main]  from __start::@1
  main::u#0 = 0
  main::v#0 = 0
  *VICBANK = $17
  main::u#1 = $6e85
  *zp1 = 0
  to:main::@1
main::@1: scope:[main]  from main main::@15
  main::v#9 = phi( main/main::v#0, main::@15/main::v#11 )
  main::u#19 = phi( main/main::u#1, main::@15/main::u#3 )
  main::$0 = *zp1 < $a
  if(main::$0) goto main::@2
  to:main::@3
main::@2: scope:[main]  from main::@1
  main::v#7 = phi( main::@1/main::v#9 )
  main::u#16 = phi( main::@1/main::u#19 )
  *TIMEHI = 0
  *TIMELO = 0
  *zp2 = 0
  to:main::@4
main::@3: scope:[main]  from main::@1
  main::v#13 = phi( main::@1/main::v#9 )
  main::u#2 = $6e85
  *zp1 = 0
  to:main::@7
main::@4: scope:[main]  from main::@13 main::@2
  main::v#5 = phi( main::@13/main::v#1, main::@2/main::v#7 )
  main::u#11 = phi( main::@13/main::u#15, main::@2/main::u#16 )
  main::$1 = *zp2 < $c8
  if(main::$1) goto main::@5
  to:main::@6
main::@5: scope:[main]  from main::@4
  main::u#5 = phi( main::@4/main::u#11 )
  div16u::dividend#0 = main::u#5
  div16u::divisor#0 = $a
  call div16u
  div16u::return#2 = div16u::return#1
  to:main::@13
main::@13: scope:[main]  from main::@5
  main::u#15 = phi( main::@5/main::u#5 )
  div16u::return#4 = phi( main::@5/div16u::return#2 )
  main::$2 = div16u::return#4
  main::v#1 = main::$2
  *zp2 = ++ *zp2
  to:main::@4
main::@6: scope:[main]  from main::@4
  main::v#3 = phi( main::@4/main::v#5 )
  main::u#6 = phi( main::@4/main::u#11 )
  main::$14 = (unsigned int)*TIMEHI
  main::$3 = main::$14 << 8
  main::$15 = (unsigned int)*TIMELO
  main::$4 = main::$3 + main::$15
  myprintf::dst#0 = strTemp
  myprintf::str#1 = main::str
  myprintf::w1#0 = main::u#6
  myprintf::w2#0 = main::v#3
  myprintf::w3#0 = main::$4
  call myprintf
  myprintf::return#2 = myprintf::return#1
  to:main::@14
main::@14: scope:[main]  from main::@6
  main::v#14 = phi( main::@6/main::v#3 )
  main::u#12 = phi( main::@6/main::u#6 )
  call Print
  to:main::@15
main::@15: scope:[main]  from main::@14
  main::v#11 = phi( main::@14/main::v#14 )
  main::u#7 = phi( main::@14/main::u#12 )
  main::u#3 = main::u#7 - $4d2
  *zp1 = ++ *zp1
  to:main::@1
main::@7: scope:[main]  from main::@18 main::@3
  main::v#10 = phi( main::@18/main::v#12, main::@3/main::v#13 )
  main::u#20 = phi( main::@18/main::u#4, main::@3/main::u#2 )
  main::$7 = *zp1 < $a
  if(main::$7) goto main::@8
  to:main::@9
main::@8: scope:[main]  from main::@7
  main::v#8 = phi( main::@7/main::v#10 )
  main::u#18 = phi( main::@7/main::u#20 )
  *TIMEHI = 0
  *TIMELO = 0
  *zp2 = 0
  to:main::@10
main::@9: scope:[main]  from main::@7
  main::return#0 = 0
  to:main::@return
main::@10: scope:[main]  from main::@16 main::@8
  main::v#6 = phi( main::@16/main::v#2, main::@8/main::v#8 )
  main::u#13 = phi( main::@16/main::u#17, main::@8/main::u#18 )
  main::$8 = *zp2 < $c8
  if(main::$8) goto main::@11
  to:main::@12
main::@11: scope:[main]  from main::@10
  main::u#8 = phi( main::@10/main::u#13 )
  div10::val#4 = main::u#8
  call div10
  div10::return#2 = div10::return#1
  to:main::@16
main::@16: scope:[main]  from main::@11
  main::u#17 = phi( main::@11/main::u#8 )
  div10::return#4 = phi( main::@11/div10::return#2 )
  main::$9 = div10::return#4
  main::v#2 = main::$9
  *zp2 = ++ *zp2
  to:main::@10
main::@12: scope:[main]  from main::@10
  main::v#4 = phi( main::@10/main::v#6 )
  main::u#9 = phi( main::@10/main::u#13 )
  main::$16 = (unsigned int)*TIMEHI
  main::$10 = main::$16 << 8
  main::$17 = (unsigned int)*TIMELO
  main::$11 = main::$10 + main::$17
  myprintf::dst#1 = strTemp
  myprintf::str#2 = main::str1
  myprintf::w1#1 = main::u#9
  myprintf::w2#1 = main::v#4
  myprintf::w3#1 = main::$11
  call myprintf
  myprintf::return#3 = myprintf::return#1
  to:main::@17
main::@17: scope:[main]  from main::@12
  main::v#15 = phi( main::@12/main::v#4 )
  main::u#14 = phi( main::@12/main::u#9 )
  call Print
  to:main::@18
main::@18: scope:[main]  from main::@17
  main::v#12 = phi( main::@17/main::v#15 )
  main::u#10 = phi( main::@17/main::u#14 )
  main::u#4 = main::u#10 - $4d2
  *zp1 = ++ *zp1
  to:main::@7
main::@return: scope:[main]  from main::@9
  main::return#3 = phi( main::@9/main::return#0 )
  main::return#1 = main::return#3
  return 
  to:@return

void __start()
__start: scope:[__start]  from
  to:__start::__init1
__start::__init1: scope:[__start]  from __start
  to:__start::@1
__start::@1: scope:[__start]  from __start::__init1
  call main
  main::return#2 = main::return#1
  to:__start::@2
__start::@2: scope:[__start]  from __start::@1
  to:__start::@return
__start::@return: scope:[__start]  from __start::@2
  return 
  to:@return

SYMBOL TABLE SSA
void Print()
__constant char * const TIMEHI = (char *)$a1
__constant char * const TIMELO = (char *)$a2
__constant char * const VICBANK = (char *)$d018
void __start()
unsigned int append(char *dst , unsigned int value , unsigned int sub)
bool append::$0
char *append::dst
char *append::dst#0
char *append::dst#1
char *append::dst#2
char *append::dst#3
char *append::dst#4
char *append::dst#5
char *append::dst#6
unsigned int append::return
unsigned int append::return#0
unsigned int append::return#1
unsigned int append::return#10
unsigned int append::return#2
unsigned int append::return#3
unsigned int append::return#4
unsigned int append::return#5
unsigned int append::return#6
unsigned int append::return#7
unsigned int append::return#8
unsigned int append::return#9
unsigned int append::sub
unsigned int append::sub#0
unsigned int append::sub#1
unsigned int append::sub#2
unsigned int append::sub#3
unsigned int append::sub#4
unsigned int append::sub#5
unsigned int append::sub#6
unsigned int append::value
unsigned int append::value#0
unsigned int append::value#1
unsigned int append::value#2
unsigned int append::value#3
unsigned int append::value#4
unsigned int append::value#5
unsigned int append::value#6
unsigned int append::value#7
unsigned int append::value#8
unsigned int div10(unsigned int val)
unsigned int div10::$0
number div10::$1
unsigned int div10::$2
unsigned int div10::$3
unsigned int div10::$4
unsigned int div10::$5
unsigned int div10::return
unsigned int div10::return#0
unsigned int div10::return#1
unsigned int div10::return#2
unsigned int div10::return#3
unsigned int div10::return#4
unsigned int div10::val
unsigned int div10::val#0
unsigned int div10::val#1
unsigned int div10::val#2
unsigned int div10::val#3
unsigned int div10::val#4
unsigned int div10::val#5
unsigned int div16u(unsigned int dividend , unsigned int divisor)
unsigned int div16u::$0
unsigned int div16u::dividend
unsigned int div16u::dividend#0
unsigned int div16u::dividend#1
unsigned int div16u::divisor
unsigned int div16u::divisor#0
unsigned int div16u::divisor#1
unsigned int div16u::return
unsigned int div16u::return#0
unsigned int div16u::return#1
unsigned int div16u::return#2
unsigned int div16u::return#3
unsigned int div16u::return#4
unsigned int divr16u(unsigned int dividend , unsigned int divisor , unsigned int rem)
unsigned int divr16u::$0
char divr16u::$1
unsigned int divr16u::$10
bool divr16u::$11
number divr16u::$2
bool divr16u::$3
bool divr16u::$4
number divr16u::$5
unsigned int divr16u::$6
unsigned int divr16u::$7
bool divr16u::$8
bool divr16u::$9
unsigned int divr16u::dividend
unsigned int divr16u::dividend#0
unsigned int divr16u::dividend#1
unsigned int divr16u::dividend#2
unsigned int divr16u::dividend#3
unsigned int divr16u::dividend#4
unsigned int divr16u::dividend#5
unsigned int divr16u::dividend#6
unsigned int divr16u::dividend#7
unsigned int divr16u::divisor
unsigned int divr16u::divisor#0
unsigned int divr16u::divisor#1
unsigned int divr16u::divisor#2
unsigned int divr16u::divisor#3
unsigned int divr16u::divisor#4
unsigned int divr16u::divisor#5
unsigned int divr16u::divisor#6
char divr16u::i
char divr16u::i#0
char divr16u::i#1
char divr16u::i#2
char divr16u::i#3
char divr16u::i#4
char divr16u::i#5
char divr16u::i#6
unsigned int divr16u::quotient
unsigned int divr16u::quotient#0
unsigned int divr16u::quotient#1
unsigned int divr16u::quotient#2
unsigned int divr16u::quotient#3
unsigned int divr16u::quotient#4
unsigned int divr16u::quotient#5
unsigned int divr16u::quotient#6
unsigned int divr16u::quotient#7
unsigned int divr16u::quotient#8
unsigned int divr16u::rem
unsigned int divr16u::rem#0
unsigned int divr16u::rem#1
unsigned int divr16u::rem#2
unsigned int divr16u::rem#3
unsigned int divr16u::rem#4
unsigned int divr16u::rem#5
unsigned int divr16u::rem#6
unsigned int divr16u::rem#7
unsigned int divr16u::rem#8
unsigned int divr16u::rem#9
unsigned int divr16u::return
unsigned int divr16u::return#0
unsigned int divr16u::return#1
unsigned int divr16u::return#2
unsigned int divr16u::return#3
unsigned int divr16u::return#4
int main()
bool main::$0
bool main::$1
unsigned int main::$10
unsigned int main::$11
unsigned int main::$14
unsigned int main::$15
unsigned int main::$16
unsigned int main::$17
unsigned int main::$2
unsigned int main::$3
unsigned int main::$4
bool main::$7
bool main::$8
unsigned int main::$9
int main::return
int main::return#0
int main::return#1
int main::return#2
int main::return#3
__constant char main::str[$24] = "200 DIV16U: %5d,%4d IN %04d FRAMESm"
__constant char main::str1[$24] = "200 DIV10 : %5d,%4d IN %04d FRAMESm"
unsigned int main::u
unsigned int main::u#0
unsigned int main::u#1
unsigned int main::u#10
unsigned int main::u#11
unsigned int main::u#12
unsigned int main::u#13
unsigned int main::u#14
unsigned int main::u#15
unsigned int main::u#16
unsigned int main::u#17
unsigned int main::u#18
unsigned int main::u#19
unsigned int main::u#2
unsigned int main::u#20
unsigned int main::u#3
unsigned int main::u#4
unsigned int main::u#5
unsigned int main::u#6
unsigned int main::u#7
unsigned int main::u#8
unsigned int main::u#9
unsigned int main::v
unsigned int main::v#0
unsigned int main::v#1
unsigned int main::v#10
unsigned int main::v#11
unsigned int main::v#12
unsigned int main::v#13
unsigned int main::v#14
unsigned int main::v#15
unsigned int main::v#2
unsigned int main::v#3
unsigned int main::v#4
unsigned int main::v#5
unsigned int main::v#6
unsigned int main::v#7
unsigned int main::v#8
unsigned int main::v#9
char myprintf(char *dst , char *str , unsigned int w1 , unsigned int w2 , unsigned int w3)
bool myprintf::$0
bool myprintf::$1
bool myprintf::$10
bool myprintf::$11
bool myprintf::$12
bool myprintf::$13
bool myprintf::$14
bool myprintf::$15
bool myprintf::$16
bool myprintf::$17
char myprintf::$18
number myprintf::$19
bool myprintf::$2
bool myprintf::$20
number myprintf::$21
char myprintf::$22
number myprintf::$23
number myprintf::$24
number myprintf::$25
bool myprintf::$26
number myprintf::$27
char myprintf::$28
number myprintf::$29
bool myprintf::$3
number myprintf::$30
bool myprintf::$32
bool myprintf::$33
bool myprintf::$34
bool myprintf::$35
bool myprintf::$36
bool myprintf::$37
bool myprintf::$38
char myprintf::$39
bool myprintf::$4
char myprintf::$40
char myprintf::$41
bool myprintf::$42
bool myprintf::$43
bool myprintf::$44
bool myprintf::$45
bool myprintf::$46
bool myprintf::$47
bool myprintf::$48
bool myprintf::$49
bool myprintf::$5
bool myprintf::$50
bool myprintf::$51
bool myprintf::$52
bool myprintf::$53
bool myprintf::$54
bool myprintf::$55
char myprintf::$56
char myprintf::$57
bool myprintf::$6
bool myprintf::$7
bool myprintf::$8
char myprintf::$9
char myprintf::b
char myprintf::b#0
char myprintf::b#1
char myprintf::b#10
char myprintf::b#11
char myprintf::b#12
char myprintf::b#13
char myprintf::b#14
char myprintf::b#15
char myprintf::b#16
char myprintf::b#17
char myprintf::b#18
char myprintf::b#19
char myprintf::b#2
char myprintf::b#20
char myprintf::b#21
char myprintf::b#22
char myprintf::b#23
char myprintf::b#24
char myprintf::b#25
char myprintf::b#26
char myprintf::b#27
char myprintf::b#28
char myprintf::b#29
char myprintf::b#3
char myprintf::b#30
char myprintf::b#31
char myprintf::b#32
char myprintf::b#33
char myprintf::b#34
char myprintf::b#35
char myprintf::b#36
char myprintf::b#37
char myprintf::b#4
char myprintf::b#5
char myprintf::b#6
char myprintf::b#7
char myprintf::b#8
char myprintf::b#9
char myprintf::bArg
char myprintf::bArg#0
char myprintf::bArg#1
char myprintf::bArg#10
char myprintf::bArg#11
char myprintf::bArg#12
char myprintf::bArg#13
char myprintf::bArg#14
char myprintf::bArg#15
char myprintf::bArg#16
char myprintf::bArg#17
char myprintf::bArg#18
char myprintf::bArg#19
char myprintf::bArg#2
char myprintf::bArg#20
char myprintf::bArg#21
char myprintf::bArg#22
char myprintf::bArg#23
char myprintf::bArg#24
char myprintf::bArg#25
char myprintf::bArg#26
char myprintf::bArg#27
char myprintf::bArg#28
char myprintf::bArg#29
char myprintf::bArg#3
char myprintf::bArg#30
char myprintf::bArg#31
char myprintf::bArg#32
char myprintf::bArg#33
char myprintf::bArg#34
char myprintf::bArg#35
char myprintf::bArg#36
char myprintf::bArg#37
char myprintf::bArg#38
char myprintf::bArg#39
char myprintf::bArg#4
char myprintf::bArg#40
char myprintf::bArg#41
char myprintf::bArg#42
char myprintf::bArg#43
char myprintf::bArg#44
char myprintf::bArg#45
char myprintf::bArg#46
char myprintf::bArg#47
char myprintf::bArg#48
char myprintf::bArg#5
char myprintf::bArg#6
char myprintf::bArg#7
char myprintf::bArg#8
char myprintf::bArg#9
char myprintf::bDigits
char myprintf::bDigits#0
char myprintf::bDigits#1
char myprintf::bDigits#10
char myprintf::bDigits#11
char myprintf::bDigits#12
char myprintf::bDigits#13
char myprintf::bDigits#14
char myprintf::bDigits#15
char myprintf::bDigits#16
char myprintf::bDigits#17
char myprintf::bDigits#18
char myprintf::bDigits#19
char myprintf::bDigits#2
char myprintf::bDigits#20
char myprintf::bDigits#21
char myprintf::bDigits#22
char myprintf::bDigits#23
char myprintf::bDigits#24
char myprintf::bDigits#25
char myprintf::bDigits#26
char myprintf::bDigits#27
char myprintf::bDigits#28
char myprintf::bDigits#29
char myprintf::bDigits#3
char myprintf::bDigits#30
char myprintf::bDigits#31
char myprintf::bDigits#32
char myprintf::bDigits#33
char myprintf::bDigits#34
char myprintf::bDigits#35
char myprintf::bDigits#36
char myprintf::bDigits#37
char myprintf::bDigits#38
char myprintf::bDigits#39
char myprintf::bDigits#4
char myprintf::bDigits#40
char myprintf::bDigits#41
char myprintf::bDigits#42
char myprintf::bDigits#43
char myprintf::bDigits#44
char myprintf::bDigits#45
char myprintf::bDigits#46
char myprintf::bDigits#47
char myprintf::bDigits#48
char myprintf::bDigits#49
char myprintf::bDigits#5
char myprintf::bDigits#6
char myprintf::bDigits#7
char myprintf::bDigits#8
char myprintf::bDigits#9
char myprintf::bFormat
char myprintf::bFormat#0
char myprintf::bFormat#1
char myprintf::bFormat#10
char myprintf::bFormat#11
char myprintf::bFormat#12
char myprintf::bFormat#13
char myprintf::bFormat#14
char myprintf::bFormat#15
char myprintf::bFormat#16
char myprintf::bFormat#17
char myprintf::bFormat#18
char myprintf::bFormat#19
char myprintf::bFormat#2
char myprintf::bFormat#20
char myprintf::bFormat#3
char myprintf::bFormat#4
char myprintf::bFormat#5
char myprintf::bFormat#6
char myprintf::bFormat#7
char myprintf::bFormat#8
char myprintf::bFormat#9
char myprintf::bLeadZero
char myprintf::bLeadZero#0
char myprintf::bLeadZero#1
char myprintf::bLeadZero#10
char myprintf::bLeadZero#11
char myprintf::bLeadZero#12
char myprintf::bLeadZero#13
char myprintf::bLeadZero#14
char myprintf::bLeadZero#15
char myprintf::bLeadZero#16
char myprintf::bLeadZero#17
char myprintf::bLeadZero#18
char myprintf::bLeadZero#19
char myprintf::bLeadZero#2
char myprintf::bLeadZero#20
char myprintf::bLeadZero#21
char myprintf::bLeadZero#22
char myprintf::bLeadZero#23
char myprintf::bLeadZero#24
char myprintf::bLeadZero#25
char myprintf::bLeadZero#26
char myprintf::bLeadZero#27
char myprintf::bLeadZero#28
char myprintf::bLeadZero#29
char myprintf::bLeadZero#3
char myprintf::bLeadZero#30
char myprintf::bLeadZero#31
char myprintf::bLeadZero#32
char myprintf::bLeadZero#33
char myprintf::bLeadZero#34
char myprintf::bLeadZero#35
char myprintf::bLeadZero#36
char myprintf::bLeadZero#37
char myprintf::bLeadZero#38
char myprintf::bLeadZero#39
char myprintf::bLeadZero#4
char myprintf::bLeadZero#40
char myprintf::bLeadZero#41
char myprintf::bLeadZero#42
char myprintf::bLeadZero#43
char myprintf::bLeadZero#44
char myprintf::bLeadZero#45
char myprintf::bLeadZero#46
char myprintf::bLeadZero#47
char myprintf::bLeadZero#5
char myprintf::bLeadZero#6
char myprintf::bLeadZero#7
char myprintf::bLeadZero#8
char myprintf::bLeadZero#9
char myprintf::bLen
char myprintf::bLen#0
char myprintf::bLen#1
char myprintf::bLen#10
char myprintf::bLen#11
char myprintf::bLen#12
char myprintf::bLen#13
char myprintf::bLen#14
char myprintf::bLen#15
char myprintf::bLen#16
char myprintf::bLen#17
char myprintf::bLen#18
char myprintf::bLen#19
char myprintf::bLen#2
char myprintf::bLen#20
char myprintf::bLen#21
char myprintf::bLen#22
char myprintf::bLen#23
char myprintf::bLen#24
char myprintf::bLen#25
char myprintf::bLen#26
char myprintf::bLen#27
char myprintf::bLen#28
char myprintf::bLen#29
char myprintf::bLen#3
char myprintf::bLen#30
char myprintf::bLen#31
char myprintf::bLen#32
char myprintf::bLen#33
char myprintf::bLen#34
char myprintf::bLen#35
char myprintf::bLen#36
char myprintf::bLen#37
char myprintf::bLen#38
char myprintf::bLen#39
char myprintf::bLen#4
char myprintf::bLen#40
char myprintf::bLen#41
char myprintf::bLen#42
char myprintf::bLen#43
char myprintf::bLen#44
char myprintf::bLen#45
char myprintf::bLen#46
char myprintf::bLen#47
char myprintf::bLen#48
char myprintf::bLen#49
char myprintf::bLen#5
char myprintf::bLen#50
char myprintf::bLen#51
char myprintf::bLen#52
char myprintf::bLen#53
char myprintf::bLen#54
char myprintf::bLen#55
char myprintf::bLen#6
char myprintf::bLen#7
char myprintf::bLen#8
char myprintf::bLen#9
char myprintf::bTrailing
char myprintf::bTrailing#0
char myprintf::bTrailing#1
char myprintf::bTrailing#10
char myprintf::bTrailing#11
char myprintf::bTrailing#12
char myprintf::bTrailing#13
char myprintf::bTrailing#14
char myprintf::bTrailing#15
char myprintf::bTrailing#16
char myprintf::bTrailing#17
char myprintf::bTrailing#18
char myprintf::bTrailing#19
char myprintf::bTrailing#2
char myprintf::bTrailing#20
char myprintf::bTrailing#21
char myprintf::bTrailing#22
char myprintf::bTrailing#23
char myprintf::bTrailing#24
char myprintf::bTrailing#25
char myprintf::bTrailing#26
char myprintf::bTrailing#27
char myprintf::bTrailing#28
char myprintf::bTrailing#29
char myprintf::bTrailing#3
char myprintf::bTrailing#30
char myprintf::bTrailing#31
char myprintf::bTrailing#32
char myprintf::bTrailing#33
char myprintf::bTrailing#34
char myprintf::bTrailing#35
char myprintf::bTrailing#36
char myprintf::bTrailing#37
char myprintf::bTrailing#38
char myprintf::bTrailing#39
char myprintf::bTrailing#4
char myprintf::bTrailing#40
char myprintf::bTrailing#41
char myprintf::bTrailing#42
char myprintf::bTrailing#43
char myprintf::bTrailing#44
char myprintf::bTrailing#45
char myprintf::bTrailing#46
char myprintf::bTrailing#47
char myprintf::bTrailing#5
char myprintf::bTrailing#6
char myprintf::bTrailing#7
char myprintf::bTrailing#8
char myprintf::bTrailing#9
__constant char myprintf::buf6[6] = { fill( 6, 0) }
char myprintf::digit
char myprintf::digit#0
char myprintf::digit#1
char myprintf::digit#2
char myprintf::digit#3
char myprintf::digit#4
char *myprintf::dst
char *myprintf::dst#0
char *myprintf::dst#1
char *myprintf::dst#10
char *myprintf::dst#11
char *myprintf::dst#12
char *myprintf::dst#13
char *myprintf::dst#14
char *myprintf::dst#15
char *myprintf::dst#16
char *myprintf::dst#17
char *myprintf::dst#18
char *myprintf::dst#19
char *myprintf::dst#2
char *myprintf::dst#20
char *myprintf::dst#21
char *myprintf::dst#22
char *myprintf::dst#23
char *myprintf::dst#24
char *myprintf::dst#25
char *myprintf::dst#26
char *myprintf::dst#27
char *myprintf::dst#28
char *myprintf::dst#29
char *myprintf::dst#3
char *myprintf::dst#30
char *myprintf::dst#31
char *myprintf::dst#32
char *myprintf::dst#33
char *myprintf::dst#34
char *myprintf::dst#35
char *myprintf::dst#36
char *myprintf::dst#37
char *myprintf::dst#38
char *myprintf::dst#39
char *myprintf::dst#4
char *myprintf::dst#40
char *myprintf::dst#41
char *myprintf::dst#42
char *myprintf::dst#43
char *myprintf::dst#44
char *myprintf::dst#45
char *myprintf::dst#46
char *myprintf::dst#47
char *myprintf::dst#48
char *myprintf::dst#49
char *myprintf::dst#5
char *myprintf::dst#50
char *myprintf::dst#6
char *myprintf::dst#7
char *myprintf::dst#8
char *myprintf::dst#9
char myprintf::return
char myprintf::return#0
char myprintf::return#1
char myprintf::return#2
char myprintf::return#3
char myprintf::return#4
char *myprintf::str
char *myprintf::str#0
char *myprintf::str#1
char *myprintf::str#10
char *myprintf::str#11
char *myprintf::str#12
char *myprintf::str#13
char *myprintf::str#14
char *myprintf::str#15
char *myprintf::str#16
char *myprintf::str#17
char *myprintf::str#18
char *myprintf::str#19
char *myprintf::str#2
char *myprintf::str#20
char *myprintf::str#21
char *myprintf::str#22
char *myprintf::str#23
char *myprintf::str#24
char *myprintf::str#25
char *myprintf::str#26
char *myprintf::str#27
char *myprintf::str#28
char *myprintf::str#29
char *myprintf::str#3
char *myprintf::str#30
char *myprintf::str#31
char *myprintf::str#32
char *myprintf::str#33
char *myprintf::str#34
char *myprintf::str#35
char *myprintf::str#36
char *myprintf::str#37
char *myprintf::str#38
char *myprintf::str#39
char *myprintf::str#4
char *myprintf::str#40
char *myprintf::str#41
char *myprintf::str#42
char *myprintf::str#43
char *myprintf::str#44
char *myprintf::str#45
char *myprintf::str#46
char *myprintf::str#47
char *myprintf::str#48
char *myprintf::str#49
char *myprintf::str#5
char *myprintf::str#50
char *myprintf::str#6
char *myprintf::str#7
char *myprintf::str#8
char *myprintf::str#9
unsigned int myprintf::w
unsigned int myprintf::w#0
unsigned int myprintf::w#1
unsigned int myprintf::w#10
unsigned int myprintf::w#11
unsigned int myprintf::w#12
unsigned int myprintf::w#13
unsigned int myprintf::w#14
unsigned int myprintf::w#15
unsigned int myprintf::w#16
unsigned int myprintf::w#17
unsigned int myprintf::w#18
unsigned int myprintf::w#19
unsigned int myprintf::w#2
unsigned int myprintf::w#20
unsigned int myprintf::w#21
unsigned int myprintf::w#22
unsigned int myprintf::w#23
unsigned int myprintf::w#24
unsigned int myprintf::w#25
unsigned int myprintf::w#26
unsigned int myprintf::w#27
unsigned int myprintf::w#28
unsigned int myprintf::w#29
unsigned int myprintf::w#3
unsigned int myprintf::w#30
unsigned int myprintf::w#31
unsigned int myprintf::w#32
unsigned int myprintf::w#33
unsigned int myprintf::w#34
unsigned int myprintf::w#35
unsigned int myprintf::w#36
unsigned int myprintf::w#37
unsigned int myprintf::w#38
unsigned int myprintf::w#39
unsigned int myprintf::w#4
unsigned int myprintf::w#40
unsigned int myprintf::w#41
unsigned int myprintf::w#42
unsigned int myprintf::w#43
unsigned int myprintf::w#44
unsigned int myprintf::w#45
unsigned int myprintf::w#5
unsigned int myprintf::w#6
unsigned int myprintf::w#7
unsigned int myprintf::w#8
unsigned int myprintf::w#9
unsigned int myprintf::w1
unsigned int myprintf::w1#0
unsigned int myprintf::w1#1
unsigned int myprintf::w1#10
unsigned int myprintf::w1#11
unsigned int myprintf::w1#12
unsigned int myprintf::w1#13
unsigned int myprintf::w1#14
unsigned int myprintf::w1#15
unsigned int myprintf::w1#16
unsigned int myprintf::w1#17
unsigned int myprintf::w1#18
unsigned int myprintf::w1#19
unsigned int myprintf::w1#2
unsigned int myprintf::w1#20
unsigned int myprintf::w1#21
unsigned int myprintf::w1#22
unsigned int myprintf::w1#23
unsigned int myprintf::w1#24
unsigned int myprintf::w1#25
unsigned int myprintf::w1#26
unsigned int myprintf::w1#27
unsigned int myprintf::w1#28
unsigned int myprintf::w1#29
unsigned int myprintf::w1#3
unsigned int myprintf::w1#30
unsigned int myprintf::w1#31
unsigned int myprintf::w1#32
unsigned int myprintf::w1#33
unsigned int myprintf::w1#34
unsigned int myprintf::w1#35
unsigned int myprintf::w1#36
unsigned int myprintf::w1#37
unsigned int myprintf::w1#38
unsigned int myprintf::w1#39
unsigned int myprintf::w1#4
unsigned int myprintf::w1#40
unsigned int myprintf::w1#41
unsigned int myprintf::w1#42
unsigned int myprintf::w1#43
unsigned int myprintf::w1#44
unsigned int myprintf::w1#45
unsigned int myprintf::w1#46
unsigned int myprintf::w1#47
unsigned int myprintf::w1#48
unsigned int myprintf::w1#49
unsigned int myprintf::w1#5
unsigned int myprintf::w1#6
unsigned int myprintf::w1#7
unsigned int myprintf::w1#8
unsigned int myprintf::w1#9
unsigned int myprintf::w2
unsigned int myprintf::w2#0
unsigned int myprintf::w2#1
unsigned int myprintf::w2#10
unsigned int myprintf::w2#11
unsigned int myprintf::w2#12
unsigned int myprintf::w2#13
unsigned int myprintf::w2#14
unsigned int myprintf::w2#15
unsigned int myprintf::w2#16
unsigned int myprintf::w2#17
unsigned int myprintf::w2#18
unsigned int myprintf::w2#19
unsigned int myprintf::w2#2
unsigned int myprintf::w2#20
unsigned int myprintf::w2#21
unsigned int myprintf::w2#22
unsigned int myprintf::w2#23
unsigned int myprintf::w2#24
unsigned int myprintf::w2#25
unsigned int myprintf::w2#26
unsigned int myprintf::w2#27
unsigned int myprintf::w2#28
unsigned int myprintf::w2#29
unsigned int myprintf::w2#3
unsigned int myprintf::w2#30
unsigned int myprintf::w2#31
unsigned int myprintf::w2#32
unsigned int myprintf::w2#33
unsigned int myprintf::w2#34
unsigned int myprintf::w2#35
unsigned int myprintf::w2#36
unsigned int myprintf::w2#37
unsigned int myprintf::w2#38
unsigned int myprintf::w2#39
unsigned int myprintf::w2#4
unsigned int myprintf::w2#40
unsigned int myprintf::w2#41
unsigned int myprintf::w2#42
unsigned int myprintf::w2#43
unsigned int myprintf::w2#44
unsigned int myprintf::w2#45
unsigned int myprintf::w2#46
unsigned int myprintf::w2#47
unsigned int myprintf::w2#48
unsigned int myprintf::w2#49
unsigned int myprintf::w2#5
unsigned int myprintf::w2#6
unsigned int myprintf::w2#7
unsigned int myprintf::w2#8
unsigned int myprintf::w2#9
unsigned int myprintf::w3
unsigned int myprintf::w3#0
unsigned int myprintf::w3#1
unsigned int myprintf::w3#10
unsigned int myprintf::w3#11
unsigned int myprintf::w3#12
unsigned int myprintf::w3#13
unsigned int myprintf::w3#14
unsigned int myprintf::w3#15
unsigned int myprintf::w3#16
unsigned int myprintf::w3#17
unsigned int myprintf::w3#18
unsigned int myprintf::w3#19
unsigned int myprintf::w3#2
unsigned int myprintf::w3#20
unsigned int myprintf::w3#21
unsigned int myprintf::w3#22
unsigned int myprintf::w3#23
unsigned int myprintf::w3#24
unsigned int myprintf::w3#25
unsigned int myprintf::w3#26
unsigned int myprintf::w3#27
unsigned int myprintf::w3#28
unsigned int myprintf::w3#29
unsigned int myprintf::w3#3
unsigned int myprintf::w3#30
unsigned int myprintf::w3#31
unsigned int myprintf::w3#32
unsigned int myprintf::w3#33
unsigned int myprintf::w3#34
unsigned int myprintf::w3#35
unsigned int myprintf::w3#36
unsigned int myprintf::w3#37
unsigned int myprintf::w3#38
unsigned int myprintf::w3#39
unsigned int myprintf::w3#4
unsigned int myprintf::w3#40
unsigned int myprintf::w3#41
unsigned int myprintf::w3#42
unsigned int myprintf::w3#43
unsigned int myprintf::w3#44
unsigned int myprintf::w3#45
unsigned int myprintf::w3#46
unsigned int myprintf::w3#47
unsigned int myprintf::w3#48
unsigned int myprintf::w3#49
unsigned int myprintf::w3#5
unsigned int myprintf::w3#6
unsigned int myprintf::w3#7
unsigned int myprintf::w3#8
unsigned int myprintf::w3#9
__constant char strTemp[$64] = { fill( $64, 0) }
void utoa(unsigned int value , char *dst)
bool utoa::$0
bool utoa::$1
bool utoa::$10
bool utoa::$11
bool utoa::$12
bool utoa::$13
bool utoa::$14
bool utoa::$15
char utoa::$16
unsigned int utoa::$17
unsigned int utoa::$18
unsigned int utoa::$19
bool utoa::$2
unsigned int utoa::$20
char utoa::$21
bool utoa::$3
bool utoa::$4
bool utoa::$5
bool utoa::$6
bool utoa::$7
bool utoa::$8
bool utoa::$9
char utoa::bStarted
char utoa::bStarted#0
char utoa::bStarted#1
char utoa::bStarted#2
char utoa::bStarted#3
char utoa::bStarted#4
char utoa::bStarted#5
char utoa::bStarted#6
char utoa::bStarted#7
char *utoa::dst
char *utoa::dst#0
char *utoa::dst#1
char *utoa::dst#10
char *utoa::dst#11
char *utoa::dst#12
char *utoa::dst#13
char *utoa::dst#14
char *utoa::dst#15
char *utoa::dst#16
char *utoa::dst#17
char *utoa::dst#18
char *utoa::dst#2
char *utoa::dst#3
char *utoa::dst#4
char *utoa::dst#5
char *utoa::dst#6
char *utoa::dst#7
char *utoa::dst#8
char *utoa::dst#9
unsigned int utoa::value
unsigned int utoa::value#0
unsigned int utoa::value#1
unsigned int utoa::value#10
unsigned int utoa::value#11
unsigned int utoa::value#12
unsigned int utoa::value#13
unsigned int utoa::value#2
unsigned int utoa::value#3
unsigned int utoa::value#4
unsigned int utoa::value#5
unsigned int utoa::value#6
unsigned int utoa::value#7
unsigned int utoa::value#8
unsigned int utoa::value#9
__constant char * const zp1 = (char *)$61
__constant char * const zp2 = (char *)$62

Adding number conversion cast (unumber) 1 in divr16u::$0 = divr16u::rem#4 << 1
Adding number conversion cast (unumber) $80 in divr16u::$2 = divr16u::$1 & $80
Adding number conversion cast (unumber) divr16u::$2 in divr16u::$2 = divr16u::$1 & (unumber)$80
Adding number conversion cast (unumber) 0 in divr16u::$3 = divr16u::$2 != 0
Adding number conversion cast (unumber) 1 in divr16u::$6 = divr16u::dividend#3 << 1
Adding number conversion cast (unumber) 1 in divr16u::$7 = divr16u::quotient#3 << 1
Adding number conversion cast (unumber) 1 in divr16u::$5 = divr16u::rem#6 | 1
Adding number conversion cast (unumber) divr16u::$5 in divr16u::$5 = divr16u::rem#6 | (unumber)1
Adding number conversion cast (unumber) 0 in divr16u::rem#3 = 0
Adding number conversion cast (unumber) 1 in utoa::$0 = utoa::bStarted#0 == 1
Adding number conversion cast (unumber) $2710 in utoa::$1 = utoa::value#5 >= $2710
Adding number conversion cast (unumber) 1 in utoa::$4 = utoa::bStarted#5 == 1
Adding number conversion cast (unumber) $3e8 in utoa::$5 = utoa::value#6 >= $3e8
Adding number conversion cast (unumber) $2710 in append::sub#0 = $2710
Adding number conversion cast (unumber) 1 in utoa::bStarted#1 = 1
Adding number conversion cast (unumber) 1 in utoa::$8 = utoa::bStarted#6 == 1
Adding number conversion cast (unumber) $64 in utoa::$9 = utoa::value#8 >= $64
Adding number conversion cast (unumber) $3e8 in append::sub#1 = $3e8
Adding number conversion cast (unumber) 1 in utoa::bStarted#2 = 1
Adding number conversion cast (unumber) 1 in utoa::$12 = utoa::bStarted#7 == 1
Adding number conversion cast (unumber) $a in utoa::$13 = utoa::value#10 >= $a
Adding number conversion cast (unumber) $64 in append::sub#2 = $64
Adding number conversion cast (unumber) 1 in utoa::bStarted#3 = 1
Adding number conversion cast (unumber) 0 in *utoa::dst#3 = 0
Adding number conversion cast (unumber) $a in append::sub#3 = $a
Adding number conversion cast (unumber) 1 in utoa::bStarted#4 = 1
Adding number conversion cast (unumber) 0 in myprintf::$0 = *myprintf::str#3 != 0
Adding number conversion cast (unumber) 0 in myprintf::$1 = myprintf::bFormat#3 != 0
Adding number conversion cast (unumber) 0 in myprintf::dst#2[myprintf::bLen#8] = 0
Adding number conversion cast (unumber) 1 in myprintf::bLeadZero#1 = 1
Adding number conversion cast (unumber) 1 in myprintf::bTrailing#1 = 1
Adding number conversion cast (unumber) 1 in myprintf::b#2 = 1
Adding number conversion cast (unumber) 4 in myprintf::$18 = myprintf::$56 >> 4
Adding number conversion cast (unumber) $f in myprintf::$19 = myprintf::$18 & $f
Adding number conversion cast (unumber) myprintf::$19 in myprintf::$19 = myprintf::$18 & (unumber)$f
Adding number conversion cast (unumber) $a in myprintf::$20 = myprintf::b#3 < $a
Adding number conversion cast (unumber) myprintf::$23 in myprintf::bLeadZero#42 = phi( myprintf::@10/myprintf::bLeadZero#45, myprintf::@11/myprintf::bLeadZero#46 )
  myprintf::bDigits#46 = phi( myprintf::@10/myprintf::bDigits#47, myprintf::@11/myprintf::bDigits#48 )
  myprintf::bTrailing#44 = phi( myprintf::@10/myprintf::bTrailing#45, myprintf::@11/myprintf::bTrailing#46 )
  myprintf::w3#34 = phi( myprintf::@10/myprintf::w3#37, myprintf::@11/myprintf::w3#38 )
  myprintf::w2#34 = phi( myprintf::@10/myprintf::w2#37, myprintf::@11/myprintf::w2#38 )
  myprintf::w1#34 = phi( myprintf::@10/myprintf::w1#37, myprintf::@11/myprintf::w1#38 )
  myprintf::bArg#33 = phi( myprintf::@10/myprintf::bArg#36, myprintf::@11/myprintf::bArg#37 )
  myprintf::str#35 = phi( myprintf::@10/myprintf::str#38, myprintf::@11/myprintf::str#39 )
  myprintf::w#7 = phi( myprintf::@10/myprintf::w#11, myprintf::@11/myprintf::w#12 )
  myprintf::bLen#10 = phi( myprintf::@10/myprintf::bLen#18, myprintf::@11/myprintf::bLen#19 )
  myprintf::dst#4 = phi( myprintf::@10/myprintf::dst#12, myprintf::@11/myprintf::dst#13 )
  myprintf::b#15 = phi( myprintf::@10/myprintf::b#27, myprintf::@11/myprintf::b#28 )
  myprintf::$23 = phi( myprintf::@10/myprintf::$22, myprintf::@11/myprintf::$21 )
Adding number conversion cast (unumber) myprintf::$21 in myprintf::bLeadZero#42 = phi( myprintf::@10/myprintf::bLeadZero#45, myprintf::@11/myprintf::bLeadZero#46 )
  myprintf::bDigits#46 = phi( myprintf::@10/myprintf::bDigits#47, myprintf::@11/myprintf::bDigits#48 )
  myprintf::bTrailing#44 = phi( myprintf::@10/myprintf::bTrailing#45, myprintf::@11/myprintf::bTrailing#46 )
  myprintf::w3#34 = phi( myprintf::@10/myprintf::w3#37, myprintf::@11/myprintf::w3#38 )
  myprintf::w2#34 = phi( myprintf::@10/myprintf::w2#37, myprintf::@11/myprintf::w2#38 )
  myprintf::w1#34 = phi( myprintf::@10/myprintf::w1#37, myprintf::@11/myprintf::w1#38 )
  myprintf::bArg#33 = phi( myprintf::@10/myprintf::bArg#36, myprintf::@11/myprintf::bArg#37 )
  myprintf::str#35 = phi( myprintf::@10/myprintf::str#38, myprintf::@11/myprintf::str#39 )
  myprintf::w#7 = phi( myprintf::@10/myprintf::w#11, myprintf::@11/myprintf::w#12 )
  myprintf::bLen#10 = phi( myprintf::@10/myprintf::bLen#18, myprintf::@11/myprintf::bLen#19 )
  myprintf::dst#4 = phi( myprintf::@10/myprintf::dst#12, myprintf::@11/myprintf::dst#13 )
  myprintf::b#15 = phi( myprintf::@10/myprintf::b#27, myprintf::@11/myprintf::b#28 )
  myprintf::$23 = phi( myprintf::@10/myprintf::$22, myprintf::@11/myprintf::$21 )
Adding number conversion cast (unumber) myprintf::$24 in myprintf::$24 = myprintf::$23 + myprintf::b#15
Adding number conversion cast (unumber) $f in myprintf::$25 = myprintf::$57 & $f
Adding number conversion cast (unumber) myprintf::$25 in myprintf::$25 = myprintf::$57 & (unumber)$f
Adding number conversion cast (unumber) $a in myprintf::$26 = myprintf::b#4 < $a
Adding number conversion cast (unumber) myprintf::$29 in myprintf::bLeadZero#26 = phi( myprintf::@13/myprintf::bLeadZero#36, myprintf::@14/myprintf::bLeadZero#37 )
  myprintf::bDigits#34 = phi( myprintf::@13/myprintf::bDigits#42, myprintf::@14/myprintf::bDigits#43 )
  myprintf::bTrailing#30 = phi( myprintf::@13/myprintf::bTrailing#39, myprintf::@14/myprintf::bTrailing#40 )
  myprintf::w#25 = phi( myprintf::@13/myprintf::w#30, myprintf::@14/myprintf::w#31 )
  myprintf::w3#19 = phi( myprintf::@13/myprintf::w3#30, myprintf::@14/myprintf::w3#31 )
  myprintf::w2#19 = phi( myprintf::@13/myprintf::w2#30, myprintf::@14/myprintf::w2#31 )
  myprintf::w1#18 = phi( myprintf::@13/myprintf::w1#29, myprintf::@14/myprintf::w1#30 )
  myprintf::bArg#20 = phi( myprintf::@13/myprintf::bArg#29, myprintf::@14/myprintf::bArg#30 )
  myprintf::str#16 = phi( myprintf::@13/myprintf::str#28, myprintf::@14/myprintf::str#29 )
  myprintf::bLen#11 = phi( myprintf::@13/myprintf::bLen#20, myprintf::@14/myprintf::bLen#21 )
  myprintf::dst#5 = phi( myprintf::@13/myprintf::dst#14, myprintf::@14/myprintf::dst#15 )
  myprintf::b#16 = phi( myprintf::@13/myprintf::b#29, myprintf::@14/myprintf::b#30 )
  myprintf::$29 = phi( myprintf::@13/myprintf::$28, myprintf::@14/myprintf::$27 )
Adding number conversion cast (unumber) myprintf::$27 in myprintf::bLeadZero#26 = phi( myprintf::@13/myprintf::bLeadZero#36, myprintf::@14/myprintf::bLeadZero#37 )
  myprintf::bDigits#34 = phi( myprintf::@13/myprintf::bDigits#42, myprintf::@14/myprintf::bDigits#43 )
  myprintf::bTrailing#30 = phi( myprintf::@13/myprintf::bTrailing#39, myprintf::@14/myprintf::bTrailing#40 )
  myprintf::w#25 = phi( myprintf::@13/myprintf::w#30, myprintf::@14/myprintf::w#31 )
  myprintf::w3#19 = phi( myprintf::@13/myprintf::w3#30, myprintf::@14/myprintf::w3#31 )
  myprintf::w2#19 = phi( myprintf::@13/myprintf::w2#30, myprintf::@14/myprintf::w2#31 )
  myprintf::w1#18 = phi( myprintf::@13/myprintf::w1#29, myprintf::@14/myprintf::w1#30 )
  myprintf::bArg#20 = phi( myprintf::@13/myprintf::bArg#29, myprintf::@14/myprintf::bArg#30 )
  myprintf::str#16 = phi( myprintf::@13/myprintf::str#28, myprintf::@14/myprintf::str#29 )
  myprintf::bLen#11 = phi( myprintf::@13/myprintf::bLen#20, myprintf::@14/myprintf::bLen#21 )
  myprintf::dst#5 = phi( myprintf::@13/myprintf::dst#14, myprintf::@14/myprintf::dst#15 )
  myprintf::b#16 = phi( myprintf::@13/myprintf::b#29, myprintf::@14/myprintf::b#30 )
  myprintf::$29 = phi( myprintf::@13/myprintf::$28, myprintf::@14/myprintf::$27 )
Adding number conversion cast (unumber) myprintf::$30 in myprintf::$30 = myprintf::$29 + myprintf::b#16
Adding number conversion cast (unumber) 0 in myprintf::$32 = myprintf::buf6[myprintf::b#17] != 0
Adding number conversion cast (unumber) 0 in myprintf::$33 = myprintf::bTrailing#3 == 0
Adding number conversion cast (unumber) 0 in myprintf::digit#1 = 0
Adding number conversion cast (unumber) 0 in myprintf::$38 = myprintf::bLeadZero#3 == 0
Adding number conversion cast (unumber) 0 in myprintf::$43 = myprintf::bTrailing#4 != 0
Adding number conversion cast (unumber) 0 in myprintf::bFormat#1 = 0
Adding number conversion cast (unumber) $41 in myprintf::$52 = myprintf::b#24 >= $41
Adding number conversion cast (unumber) $5a in myprintf::$53 = myprintf::b#24 <= $5a
Adding number conversion cast (unumber) 1 in myprintf::bFormat#2 = 1
Adding number conversion cast (unumber) 0 in myprintf::bLeadZero#2 = 0
Adding number conversion cast (unumber) 1 in myprintf::bDigits#4 = 1
Adding number conversion cast (unumber) 0 in myprintf::bTrailing#2 = 0
Adding number conversion cast (unumber) 0 in myprintf::$50 = myprintf::bArg#2 == 0
Adding number conversion cast (unumber) 1 in myprintf::$51 = myprintf::bArg#3 == 1
Adding number conversion cast (unumber) $20 in myprintf::b#6 = myprintf::b#26 + $20
Adding number conversion cast (unumber) 1 in div10::$0 = div10::val#5 >> 1
Adding number conversion cast (unumber) 1 in div10::$1 = div10::$0 + 1
Adding number conversion cast (unumber) div10::$1 in div10::$1 = div10::$0 + (unumber)1
Adding number conversion cast (unumber) 1 in div10::$2 = div10::val#0 << 1
Adding number conversion cast (unumber) 4 in div10::$3 = div10::val#1 >> 4
Adding number conversion cast (unumber) 8 in div10::$4 = div10::val#2 >> 8
Adding number conversion cast (unumber) 4 in div10::$5 = div10::val#3 >> 4
Adding number conversion cast (unumber) $17 in *VICBANK = $17
Adding number conversion cast (unumber) $6e85 in main::u#1 = $6e85
Adding number conversion cast (unumber) 0 in *zp1 = 0
Adding number conversion cast (unumber) $a in main::$0 = *zp1 < $a
Adding number conversion cast (unumber) 0 in *TIMEHI = 0
Adding number conversion cast (unumber) 0 in *TIMELO = 0
Adding number conversion cast (unumber) 0 in *zp2 = 0
Adding number conversion cast (unumber) $6e85 in main::u#2 = $6e85
Adding number conversion cast (unumber) 0 in *zp1 = 0
Adding number conversion cast (unumber) $c8 in main::$1 = *zp2 < $c8
Adding number conversion cast (unumber) $a in div16u::divisor#0 = $a
Adding number conversion cast (unumber) 8 in main::$3 = main::$14 << 8
Adding number conversion cast (unumber) $4d2 in main::u#3 = main::u#7 - $4d2
Adding number conversion cast (unumber) $a in main::$7 = *zp1 < $a
Adding number conversion cast (unumber) 0 in *TIMEHI = 0
Adding number conversion cast (unumber) 0 in *TIMELO = 0
Adding number conversion cast (unumber) 0 in *zp2 = 0
Adding number conversion cast (snumber) 0 in main::return#0 = 0
Adding number conversion cast (unumber) $c8 in main::$8 = *zp2 < $c8
Adding number conversion cast (unumber) 8 in main::$10 = main::$16 << 8
Adding number conversion cast (unumber) $4d2 in main::u#4 = main::u#10 - $4d2
Successful SSA optimization PassNAddNumberTypeConversions
Adding number conversion cast (unumber) $57 in myprintf::$21 = $57
Adding number conversion cast (unumber) $57 in myprintf::$27 = $57
Successful SSA optimization PassNAddNumberTypeConversions
Inlining cast divr16u::rem#3 = (unumber)0
Inlining cast append::sub#0 = (unumber)$2710
Inlining cast utoa::bStarted#1 = (unumber)1
Inlining cast append::sub#1 = (unumber)$3e8
Inlining cast utoa::bStarted#2 = (unumber)1
Inlining cast append::sub#2 = (unumber)$64
Inlining cast utoa::bStarted#3 = (unumber)1
Inlining cast *utoa::dst#3 = (unumber)0
Inlining cast append::sub#3 = (unumber)$a
Inlining cast utoa::bStarted#4 = (unumber)1
Inlining cast myprintf::dst#2[myprintf::bLen#8] = (unumber)0
Inlining cast myprintf::bLeadZero#1 = (unumber)1
Inlining cast myprintf::bTrailing#1 = (unumber)1
Inlining cast myprintf::b#2 = (unumber)1
Inlining cast myprintf::$21 = (unumber)$57
Inlining cast myprintf::$27 = (unumber)$57
Inlining cast myprintf::digit#1 = (unumber)0
Inlining cast myprintf::bFormat#1 = (unumber)0
Inlining cast myprintf::bFormat#2 = (unumber)1
Inlining cast myprintf::bLeadZero#2 = (unumber)0
Inlining cast myprintf::bDigits#4 = (unumber)1
Inlining cast myprintf::bTrailing#2 = (unumber)0
Inlining cast *VICBANK = (unumber)$17
Inlining cast main::u#1 = (unumber)$6e85
Inlining cast *zp1 = (unumber)0
Inlining cast *TIMEHI = (unumber)0
Inlining cast *TIMELO = (unumber)0
Inlining cast *zp2 = (unumber)0
Inlining cast main::u#2 = (unumber)$6e85
Inlining cast *zp1 = (unumber)0
Inlining cast div16u::divisor#0 = (unumber)$a
Inlining cast *TIMEHI = (unumber)0
Inlining cast *TIMELO = (unumber)0
Inlining cast *zp2 = (unumber)0
Inlining cast main::return#0 = (snumber)0
Successful SSA optimization Pass2InlineCast
Simplifying constant pointer cast (char *) 97
Simplifying constant pointer cast (char *) 98
Simplifying constant pointer cast (char *) 161
Simplifying constant pointer cast (char *) 162
Simplifying constant pointer cast (char *) 53272
Simplifying constant integer cast 1
Simplifying constant integer cast $80
Simplifying constant integer cast 0
Simplifying constant integer cast 1
Simplifying constant integer cast 1
Simplifying constant integer cast 1
Simplifying constant integer cast 0
Simplifying constant integer cast 1
Simplifying constant integer cast $2710
Simplifying constant integer cast 1
Simplifying constant integer cast $3e8
Simplifying constant integer cast $2710
Simplifying constant integer cast 1
Simplifying constant integer cast 1
Simplifying constant integer cast $64
Simplifying constant integer cast $3e8
Simplifying constant integer cast 1
Simplifying constant integer cast 1
Simplifying constant integer cast $a
Simplifying constant integer cast $64
Simplifying constant integer cast 1
Simplifying constant integer cast 0
Simplifying constant integer cast $a
Simplifying constant integer cast 1
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 1
Simplifying constant integer cast 1
Simplifying constant integer cast 1
Simplifying constant integer cast 4
Simplifying constant integer cast $f
Simplifying constant integer cast $a
Simplifying constant integer cast $57
Simplifying constant integer cast $f
Simplifying constant integer cast $a
Simplifying constant integer cast $57
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast $41
Simplifying constant integer cast $5a
Simplifying constant integer cast 1
Simplifying constant integer cast 0
Simplifying constant integer cast 1
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 1
Simplifying constant integer cast $20
Simplifying constant integer cast 1
Simplifying constant integer cast 1
Simplifying constant integer cast 1
Simplifying constant integer cast 4
Simplifying constant integer cast 8
Simplifying constant integer cast 4
Simplifying constant integer cast $17
Simplifying constant integer cast $6e85
Simplifying constant integer cast 0
Simplifying constant integer cast $a
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast $6e85
Simplifying constant integer cast 0
Simplifying constant integer cast $c8
Simplifying constant integer cast $a
Simplifying constant integer cast 8
Simplifying constant integer cast $4d2
Simplifying constant integer cast $a
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast 0
Simplifying constant integer cast $c8
Simplifying constant integer cast 8
Simplifying constant integer cast $4d2
Successful SSA optimization PassNCastSimplification
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) $80
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 1
Finalized unsigned number type (unsigned int) $2710
Finalized unsigned number type (char) 1
Finalized unsigned number type (unsigned int) $3e8
Finalized unsigned number type (unsigned int) $2710
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) $64
Finalized unsigned number type (unsigned int) $3e8
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) $a
Finalized unsigned number type (char) $64
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) $a
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) 4
Finalized unsigned number type (char) $f
Finalized unsigned number type (char) $a
Finalized unsigned number type (char) $57
Finalized unsigned number type (char) $f
Finalized unsigned number type (char) $a
Finalized unsigned number type (char) $57
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) $41
Finalized unsigned number type (char) $5a
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) $20
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) 1
Finalized unsigned number type (char) 4
Finalized unsigned number type (char) 8
Finalized unsigned number type (char) 4
Finalized unsigned number type (char) $17
Finalized unsigned number type (unsigned int) $6e85
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) $a
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 0
Finalized unsigned number type (unsigned int) $6e85
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) $c8
Finalized unsigned number type (char) $a
Finalized unsigned number type (char) 8
Finalized unsigned number type (unsigned int) $4d2
Finalized unsigned number type (char) $a
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 0
Finalized unsigned number type (char) 0
Finalized signed number type (signed char) 0
Finalized unsigned number type (char) $c8
Finalized unsigned number type (char) 8
Finalized unsigned number type (unsigned int) $4d2
Successful SSA optimization PassNFinalizeNumberTypeConversions
Inferred type updated to char in divr16u::$2 = divr16u::$1 & $80
Inferred type updated to unsigned int in divr16u::$5 = divr16u::rem#6 | 1
Inferred type updated to char in myprintf::$19 = myprintf::$18 & $f
Inferred type updated to char in myprintf::$21 = $57
Inferred type updated to char for myprintf::$23
Inferred type updated to char in myprintf::$24 = myprintf::$23 + myprintf::b#15
Inferred type updated to char in myprintf::$25 = myprintf::$57 & $f
Inferred type updated to char in myprintf::$27 = $57
Inferred type updated to char for myprintf::$29
Inferred type updated to char in myprintf::$30 = myprintf::$29 + myprintf::b#16
Inferred type updated to unsigned int in div10::$1 = div10::$0 + 1
Inversing boolean not [9] divr16u::$4 = divr16u::$2 == 0 from [8] divr16u::$3 = divr16u::$2 != 0
Inversing boolean not [17] divr16u::$9 = divr16u::rem#5 < divr16u::divisor#1 from [16] divr16u::$8 = divr16u::rem#5 >= divr16u::divisor#1
Inversing boolean not [152] myprintf::$2 = myprintf::bFormat#3 == 0 from [151] myprintf::$1 = myprintf::bFormat#3 != 0
Inversing boolean not [159] myprintf::$49 = myprintf::b#7 != '%' from [158] myprintf::$48 = myprintf::b#7 == '%'
Inversing boolean not [163] myprintf::$4 = myprintf::b#8 != '0' from [162] myprintf::$3 = myprintf::b#8 == '0'
Inversing boolean not [177] myprintf::$11 = myprintf::b#10 != '-' from [176] myprintf::$10 = myprintf::b#10 == '-'
Successful SSA optimization Pass2UnaryNotSimplification
Alias divr16u::rem#0 = divr16u::$0 divr16u::rem#6 
Alias divr16u::dividend#0 = divr16u::$6 divr16u::dividend#7 
Alias divr16u::quotient#1 = divr16u::$7 divr16u::quotient#4 
Alias divr16u::dividend#2 = divr16u::dividend#6 
Alias divr16u::quotient#6 = divr16u::quotient#7 
Alias divr16u::divisor#3 = divr16u::divisor#4 
Alias divr16u::i#5 = divr16u::i#6 
Alias divr16u::rem#1 = divr16u::$5 
Alias divr16u::rem#5 = divr16u::rem#7 
Alias divr16u::divisor#1 = divr16u::divisor#2 
Alias divr16u::i#3 = divr16u::i#4 
Alias divr16u::rem#2 = divr16u::$10 
Alias divr16u::return#0 = divr16u::quotient#5 divr16u::quotient#8 divr16u::return#3 divr16u::return#1 
Alias divr16u::return#2 = divr16u::return#4 
Alias div16u::return#0 = div16u::$0 div16u::return#3 div16u::return#1 
Alias append::dst#5 = append::dst#6 
Alias append::value#5 = append::value#6 append::value#7 append::return#0 append::return#6 append::return#1 
Alias append::sub#4 = append::sub#5 
Alias utoa::dst#15 = utoa::dst#6 utoa::dst#7 
Alias utoa::value#5 = utoa::value#7 
Alias append::return#2 = append::return#7 
Alias utoa::value#0 = utoa::$17 
Alias utoa::dst#16 = utoa::dst#8 utoa::dst#9 
Alias utoa::value#6 = utoa::value#9 
Alias append::return#3 = append::return#8 
Alias utoa::value#1 = utoa::$18 
Alias utoa::dst#10 = utoa::dst#17 utoa::dst#11 
Alias utoa::value#11 = utoa::value#8 
Alias append::return#4 = append::return#9 
Alias utoa::value#2 = utoa::$19 
Alias utoa::dst#13 = utoa::dst#18 utoa::dst#14 
Alias utoa::value#10 = utoa::value#13 
Alias append::return#10 = append::return#5 
Alias utoa::value#3 = utoa::$20 
Alias myprintf::str#12 = myprintf::str#4 myprintf::str#3 myprintf::str#32 myprintf::str#13 myprintf::str#14 myprintf::str#15 myprintf::str#8 myprintf::str#26 myprintf::str#9 myprintf::str#20 myprintf::str#27 myprintf::str#49 myprintf::str#46 myprintf::str#19 myprintf::str#42 myprintf::str#38 myprintf::str#39 myprintf::str#24 myprintf::str#33 myprintf::str#21 myprintf::str#34 myprintf::str#22 myprintf::str#23 myprintf::str#25 
Alias myprintf::bFormat#10 = myprintf::bFormat#3 myprintf::bFormat#4 myprintf::bFormat#19 myprintf::bFormat#11 myprintf::bFormat#12 myprintf::bFormat#13 myprintf::bFormat#6 myprintf::bFormat#7 myprintf::bFormat#17 myprintf::bFormat#18 
Alias myprintf::bArg#10 = myprintf::bArg#9 myprintf::bArg#5 myprintf::bArg#17 myprintf::bArg#18 myprintf::bArg#16 myprintf::bArg#19 myprintf::bArg#13 myprintf::bArg#27 myprintf::bArg#14 myprintf::bArg#24 myprintf::bArg#28 myprintf::bArg#47 myprintf::bArg#44 myprintf::bArg#23 myprintf::bArg#40 myprintf::bArg#36 myprintf::bArg#37 myprintf::bArg#25 myprintf::bArg#2 myprintf::bArg#6 myprintf::bArg#3 myprintf::bArg#7 myprintf::bArg#8 myprintf::bArg#26 
Alias myprintf::dst#10 = myprintf::dst#30 myprintf::dst#2 myprintf::dst#29 myprintf::dst#40 myprintf::dst#36 myprintf::dst#35 myprintf::dst#24 myprintf::dst#32 myprintf::dst#11 myprintf::dst#33 myprintf::dst#3 myprintf::dst#41 myprintf::dst#50 myprintf::dst#47 myprintf::dst#37 myprintf::dst#25 myprintf::dst#12 myprintf::dst#13 myprintf::dst#20 myprintf::dst#48 myprintf::dst#43 myprintf::dst#49 myprintf::dst#44 myprintf::dst#45 myprintf::dst#21 
Alias myprintf::bLen#16 = myprintf::bLen#35 myprintf::bLen#8 myprintf::return#0 myprintf::bLen#34 myprintf::bLen#45 myprintf::bLen#41 myprintf::bLen#40 myprintf::bLen#29 myprintf::bLen#37 myprintf::bLen#17 myprintf::bLen#38 myprintf::bLen#9 myprintf::bLen#46 myprintf::bLen#55 myprintf::bLen#52 myprintf::bLen#42 myprintf::bLen#30 myprintf::bLen#18 myprintf::bLen#19 myprintf::bLen#26 myprintf::bLen#53 myprintf::bLen#48 myprintf::bLen#54 myprintf::bLen#49 myprintf::bLen#50 myprintf::bLen#27 myprintf::return#4 myprintf::return#1 
Alias myprintf::w1#10 = myprintf::w1#5 myprintf::w1#6 myprintf::w1#4 myprintf::w1#15 myprintf::w1#16 myprintf::w1#14 myprintf::w1#17 myprintf::w1#27 myprintf::w1#11 myprintf::w1#22 myprintf::w1#28 myprintf::w1#48 myprintf::w1#45 myprintf::w1#21 myprintf::w1#41 myprintf::w1#37 myprintf::w1#38 myprintf::w1#25 myprintf::w1#3 myprintf::w1#2 myprintf::w#1 myprintf::w1#33 myprintf::w1#23 myprintf::w1#24 myprintf::w1#26 
Alias myprintf::w2#11 = myprintf::w2#6 myprintf::w2#7 myprintf::w2#5 myprintf::w2#16 myprintf::w2#17 myprintf::w2#15 myprintf::w2#18 myprintf::w2#28 myprintf::w2#12 myprintf::w2#23 myprintf::w2#29 myprintf::w2#48 myprintf::w2#45 myprintf::w2#22 myprintf::w2#41 myprintf::w2#37 myprintf::w2#38 myprintf::w2#26 myprintf::w2#4 myprintf::w2#24 myprintf::w2#3 myprintf::w2#2 myprintf::w#2 myprintf::w2#25 myprintf::w2#27 
Alias myprintf::w3#11 = myprintf::w3#6 myprintf::w3#7 myprintf::w3#5 myprintf::w3#16 myprintf::w3#17 myprintf::w3#15 myprintf::w3#18 myprintf::w3#28 myprintf::w3#12 myprintf::w3#23 myprintf::w3#29 myprintf::w3#48 myprintf::w3#45 myprintf::w3#22 myprintf::w3#41 myprintf::w3#37 myprintf::w3#38 myprintf::w3#26 myprintf::w3#4 myprintf::w3#24 myprintf::w3#3 myprintf::w3#25 myprintf::w3#2 myprintf::w#3 myprintf::w3#27 
Alias myprintf::w#10 = myprintf::w#16 myprintf::w#17 myprintf::w#34 myprintf::w#15 myprintf::w#14 myprintf::w#24 myprintf::w#13 myprintf::w#20 myprintf::w#8 myprintf::w#21 myprintf::w#4 myprintf::w#9 myprintf::w#5 myprintf::w#42 myprintf::w#6 myprintf::w#11 myprintf::w#12 myprintf::w#28 myprintf::w#29 
Alias myprintf::bTrailing#11 = myprintf::bTrailing#22 myprintf::bTrailing#23 myprintf::bTrailing#42 myprintf::bTrailing#21 myprintf::bTrailing#20 myprintf::bTrailing#29 myprintf::bTrailing#18 myprintf::bTrailing#26 myprintf::bTrailing#15 myprintf::bTrailing#33 myprintf::bTrailing#13 myprintf::bTrailing#8 myprintf::bTrailing#32 myprintf::bTrailing#47 myprintf::bTrailing#45 myprintf::bTrailing#46 myprintf::bTrailing#37 myprintf::bTrailing#38 
Alias myprintf::bDigits#16 = myprintf::bDigits#26 myprintf::bDigits#27 myprintf::bDigits#44 myprintf::bDigits#25 myprintf::bDigits#24 myprintf::bDigits#33 myprintf::bDigits#23 myprintf::bDigits#22 myprintf::bDigits#30 myprintf::bDigits#36 myprintf::bDigits#21 myprintf::bDigits#20 myprintf::bDigits#35 myprintf::bDigits#49 myprintf::bDigits#47 myprintf::bDigits#48 myprintf::bDigits#40 myprintf::bDigits#41 
Alias myprintf::bLeadZero#11 = myprintf::bLeadZero#18 myprintf::bLeadZero#19 myprintf::bLeadZero#40 myprintf::bLeadZero#17 myprintf::bLeadZero#16 myprintf::bLeadZero#15 myprintf::bLeadZero#22 myprintf::bLeadZero#14 myprintf::bLeadZero#23 myprintf::bLeadZero#30 myprintf::bLeadZero#13 myprintf::bLeadZero#12 myprintf::bLeadZero#29 myprintf::bLeadZero#47 myprintf::bLeadZero#45 myprintf::bLeadZero#46 myprintf::bLeadZero#34 myprintf::bLeadZero#35 
Alias myprintf::b#1 = myprintf::b#7 myprintf::b#8 myprintf::b#9 myprintf::b#10 myprintf::b#11 myprintf::b#12 myprintf::b#13 myprintf::b#14 myprintf::b#24 myprintf::b#26 
Alias myprintf::bDigits#1 = myprintf::$9 
Alias myprintf::b#27 = myprintf::b#3 myprintf::$19 myprintf::b#28 
Alias myprintf::b#29 = myprintf::b#4 myprintf::$25 myprintf::b#30 
Alias myprintf::dst#14 = myprintf::dst#4 myprintf::dst#15 
Alias myprintf::bLen#2 = myprintf::bLen#20 myprintf::bLen#21 
Alias myprintf::str#28 = myprintf::str#35 myprintf::str#29 
Alias myprintf::bArg#29 = myprintf::bArg#33 myprintf::bArg#30 
Alias myprintf::w1#29 = myprintf::w1#34 myprintf::w1#30 
Alias myprintf::w2#30 = myprintf::w2#34 myprintf::w2#31 
Alias myprintf::w3#30 = myprintf::w3#34 myprintf::w3#31 
Alias myprintf::w#30 = myprintf::w#7 myprintf::w#31 
Alias myprintf::bTrailing#39 = myprintf::bTrailing#44 myprintf::bTrailing#40 
Alias myprintf::bDigits#42 = myprintf::bDigits#46 myprintf::bDigits#43 
Alias myprintf::bLeadZero#36 = myprintf::bLeadZero#42 myprintf::bLeadZero#37 
Alias myprintf::b#17 = myprintf::b#18 myprintf::b#19 
Alias myprintf::bTrailing#3 = myprintf::bTrailing#7 myprintf::bTrailing#5 
Alias myprintf::bDigits#11 = myprintf::bDigits#15 myprintf::bDigits#5 
Alias myprintf::bLeadZero#10 = myprintf::bLeadZero#7 myprintf::bLeadZero#5 
Alias myprintf::dst#38 = myprintf::dst#46 myprintf::dst#42 
Alias myprintf::bLen#43 = myprintf::bLen#51 myprintf::bLen#47 
Alias myprintf::str#40 = myprintf::str#45 myprintf::str#43 
Alias myprintf::bArg#38 = myprintf::bArg#43 myprintf::bArg#41 
Alias myprintf::w1#39 = myprintf::w1#44 myprintf::w1#42 
Alias myprintf::w2#39 = myprintf::w2#44 myprintf::w2#42 
Alias myprintf::w3#39 = myprintf::w3#44 myprintf::w3#42 
Alias myprintf::w#37 = myprintf::w#41 myprintf::w#39 
Alias myprintf::bLeadZero#3 = myprintf::bLeadZero#4 myprintf::bLeadZero#8 myprintf::bLeadZero#9 
Alias myprintf::dst#16 = myprintf::dst#26 myprintf::dst#39 myprintf::dst#17 
Alias myprintf::bLen#22 = myprintf::bLen#31 myprintf::bLen#44 myprintf::bLen#23 
Alias myprintf::bDigits#12 = myprintf::bDigits#17 myprintf::bDigits#6 myprintf::bDigits#13 
Alias myprintf::b#20 = myprintf::b#37 myprintf::b#35 myprintf::b#36 
Alias myprintf::bTrailing#12 = myprintf::bTrailing#19 myprintf::bTrailing#16 myprintf::bTrailing#17 
Alias myprintf::str#41 = myprintf::str#50 myprintf::str#47 myprintf::str#48 
Alias myprintf::bArg#39 = myprintf::bArg#48 myprintf::bArg#45 myprintf::bArg#46 
Alias myprintf::w1#40 = myprintf::w1#49 myprintf::w1#46 myprintf::w1#47 
Alias myprintf::w2#40 = myprintf::w2#49 myprintf::w2#46 myprintf::w2#47 
Alias myprintf::w3#40 = myprintf::w3#49 myprintf::w3#46 myprintf::w3#47 
Alias myprintf::w#38 = myprintf::w#45 myprintf::w#43 myprintf::w#44 
Alias myprintf::digit#3 = myprintf::digit#4 
Alias myprintf::dst#18 = myprintf::dst#7 myprintf::dst#28 
Alias myprintf::bLen#13 = myprintf::bLen#24 myprintf::bLen#33 
Alias myprintf::b#21 = myprintf::b#33 myprintf::b#22 
Alias myprintf::bTrailing#10 = myprintf::bTrailing#6 myprintf::bTrailing#4 
Alias myprintf::bDigits#14 = myprintf::bDigits#19 myprintf::bDigits#8 
Alias myprintf::str#17 = myprintf::str#37 myprintf::str#30 
Alias myprintf::bArg#21 = myprintf::bArg#35 myprintf::bArg#31 
Alias myprintf::w1#19 = myprintf::w1#36 myprintf::w1#31 
Alias myprintf::w2#20 = myprintf::w2#36 myprintf::w2#32 
Alias myprintf::w3#20 = myprintf::w3#36 myprintf::w3#32 
Alias myprintf::w#26 = myprintf::w#36 myprintf::w#32 
Alias myprintf::bLeadZero#27 = myprintf::bLeadZero#44 myprintf::bLeadZero#38 
Alias myprintf::dst#19 = myprintf::dst#8 
Alias myprintf::bLen#14 = myprintf::bLen#25 
Alias myprintf::bDigits#10 = myprintf::bDigits#9 
Alias myprintf::b#23 = myprintf::b#34 
Alias myprintf::str#18 = myprintf::str#31 
Alias myprintf::bArg#22 = myprintf::bArg#32 
Alias myprintf::w1#20 = myprintf::w1#32 
Alias myprintf::w2#21 = myprintf::w2#33 
Alias myprintf::w3#21 = myprintf::w3#33 
Alias myprintf::w#27 = myprintf::w#33 
Alias myprintf::bTrailing#31 = myprintf::bTrailing#41 
Alias myprintf::bLeadZero#28 = myprintf::bLeadZero#39 
Alias myprintf::bFormat#14 = myprintf::bFormat#2 myprintf::bFormat#20 myprintf::bFormat#15 myprintf::bFormat#16 
Alias myprintf::bTrailing#2 = myprintf::bTrailing#34 myprintf::bTrailing#43 myprintf::bTrailing#35 myprintf::bTrailing#36 
Alias myprintf::bDigits#37 = myprintf::bDigits#4 myprintf::bDigits#45 myprintf::bDigits#38 myprintf::bDigits#39 
Alias myprintf::bLeadZero#2 = myprintf::bLeadZero#31 myprintf::bLeadZero#41 myprintf::bLeadZero#32 myprintf::bLeadZero#33 
Alias div10::val#0 = div10::$1 
Alias div10::return#0 = div10::$5 div10::return#3 div10::return#1 
Alias main::u#16 = main::u#19 
Alias main::v#13 = main::v#7 main::v#9 
Alias main::u#11 = main::u#5 main::u#15 main::u#6 main::u#12 main::u#7 
Alias div16u::return#2 = div16u::return#4 
Alias main::v#1 = main::$2 
Alias main::v#11 = main::v#3 main::v#5 main::v#14 
Alias myprintf::w3#0 = main::$4 
Alias main::u#18 = main::u#20 
Alias main::v#10 = main::v#8 
Alias main::u#10 = main::u#8 main::u#13 main::u#17 main::u#9 main::u#14 
Alias div10::return#2 = div10::return#4 
Alias main::v#2 = main::$9 
Alias main::v#12 = main::v#4 main::v#6 main::v#15 
Alias myprintf::w3#1 = main::$11 
Alias main::return#0 = main::return#3 main::return#1 
Successful SSA optimization Pass2AliasElimination
Alias candidate removed (phi-usage) myprintf::w1#10 = myprintf::w1#29 myprintf::w1#18 myprintf::w1#12 myprintf::w1#13 
Alias candidate removed (phi-usage) myprintf::w2#11 = myprintf::w2#30 myprintf::w2#19 myprintf::w2#13 myprintf::w2#14 
Alias candidate removed (phi-usage) myprintf::w3#11 = myprintf::w3#30 myprintf::w3#19 myprintf::w3#13 myprintf::w3#14 
Alias divr16u::dividend#2 = divr16u::dividend#3 
Alias divr16u::quotient#3 = divr16u::quotient#6 
Alias divr16u::divisor#1 = divr16u::divisor#3 divr16u::divisor#6 
Alias divr16u::i#2 = divr16u::i#3 divr16u::i#5 
Alias divr16u::dividend#0 = divr16u::dividend#5 
Alias myprintf::b#15 = myprintf::b#27 
Alias myprintf::dst#10 = myprintf::dst#14 myprintf::dst#5 myprintf::dst#34 myprintf::dst#9 
Alias myprintf::bLen#10 = myprintf::bLen#16 myprintf::bLen#39 myprintf::bLen#15 
Alias myprintf::w#10 = myprintf::w#30 myprintf::w#25 myprintf::w#23 
Alias myprintf::str#10 = myprintf::str#28 myprintf::str#12 myprintf::str#16 myprintf::str#11 
Alias myprintf::bArg#10 = myprintf::bArg#29 myprintf::bArg#20 myprintf::bArg#4 myprintf::bArg#15 
Alias myprintf::bTrailing#11 = myprintf::bTrailing#39 myprintf::bTrailing#30 myprintf::bTrailing#28 
Alias myprintf::bDigits#16 = myprintf::bDigits#42 myprintf::bDigits#34 myprintf::bDigits#32 
Alias myprintf::bLeadZero#11 = myprintf::bLeadZero#36 myprintf::bLeadZero#26 myprintf::bLeadZero#25 
Alias myprintf::b#16 = myprintf::b#29 
Alias myprintf::bLen#11 = myprintf::bLen#2 
Alias myprintf::dst#16 = myprintf::dst#6 
Alias myprintf::bLen#12 = myprintf::bLen#22 
Alias myprintf::bDigits#12 = myprintf::bDigits#7 
Alias myprintf::b#20 = myprintf::b#31 
Alias myprintf::bLeadZero#3 = myprintf::bLeadZero#6 
Alias myprintf::bTrailing#12 = myprintf::bTrailing#14 
Alias myprintf::str#41 = myprintf::str#44 
Alias myprintf::bArg#39 = myprintf::bArg#42 
Alias myprintf::w1#40 = myprintf::w1#43 
Alias myprintf::w2#40 = myprintf::w2#43 
Alias myprintf::w3#40 = myprintf::w3#43 
Alias myprintf::w#38 = myprintf::w#40 
Alias myprintf::bFormat#14 = myprintf::bFormat#8 
Alias myprintf::bTrailing#2 = myprintf::bTrailing#27 
Alias myprintf::bDigits#31 = myprintf::bDigits#37 
Alias myprintf::bLeadZero#2 = myprintf::bLeadZero#24 
Alias myprintf::bFormat#10 = myprintf::bFormat#9 
Successful SSA optimization Pass2AliasElimination
Alias candidate removed (phi-usage) myprintf::w1#10 = myprintf::w1#29 myprintf::w1#18 myprintf::w1#12 myprintf::w1#13 
Alias candidate removed (phi-usage) myprintf::w2#11 = myprintf::w2#30 myprintf::w2#19 myprintf::w2#13 myprintf::w2#14 
Alias candidate removed (phi-usage) myprintf::w3#11 = myprintf::w3#30 myprintf::w3#19 myprintf::w3#13 myprintf::w3#14 
Identical Phi Values divr16u::rem#8 divr16u::rem#3
Identical Phi Values divr16u::dividend#4 divr16u::dividend#1
Identical Phi Values divr16u::divisor#5 divr16u::divisor#0
Identical Phi Values divr16u::divisor#1 divr16u::divisor#5
Identical Phi Values div16u::dividend#1 div16u::dividend#0
Identical Phi Values div16u::divisor#1 div16u::divisor#0
Identical Phi Values append::sub#4 append::sub#6
Identical Phi Values append::dst#5 append::dst#4
Identical Phi Values utoa::value#5 utoa::value#4
Identical Phi Values utoa::dst#15 utoa::dst#5
Identical Phi Values myprintf::w1#29 myprintf::w1#10
Identical Phi Values myprintf::w2#30 myprintf::w2#11
Identical Phi Values myprintf::w3#30 myprintf::w3#11
Identical Phi Values myprintf::w1#18 myprintf::w1#29
Identical Phi Values myprintf::w2#19 myprintf::w2#30
Identical Phi Values myprintf::w3#19 myprintf::w3#30
Identical Phi Values myprintf::bTrailing#3 myprintf::bTrailing#11
Identical Phi Values myprintf::bDigits#11 myprintf::bDigits#16
Identical Phi Values myprintf::bLeadZero#10 myprintf::bLeadZero#11
Identical Phi Values myprintf::dst#38 myprintf::dst#10
Identical Phi Values myprintf::bLen#43 myprintf::bLen#10
Identical Phi Values myprintf::str#40 myprintf::str#10
Identical Phi Values myprintf::bArg#38 myprintf::bArg#10
Identical Phi Values myprintf::w1#39 myprintf::w1#10
Identical Phi Values myprintf::w2#39 myprintf::w2#11
Identical Phi Values myprintf::w3#39 myprintf::w3#11
Identical Phi Values myprintf::w#37 myprintf::w#10
Identical Phi Values myprintf::b#20 myprintf::b#17
Identical Phi Values myprintf::bLeadZero#3 myprintf::bLeadZero#10
Identical Phi Values myprintf::dst#16 myprintf::dst#38
Identical Phi Values myprintf::bTrailing#12 myprintf::bTrailing#3
Identical Phi Values myprintf::str#41 myprintf::str#40
Identical Phi Values myprintf::bArg#39 myprintf::bArg#38
Identical Phi Values myprintf::w1#40 myprintf::w1#39
Identical Phi Values myprintf::w2#40 myprintf::w2#39
Identical Phi Values myprintf::w3#40 myprintf::w3#39
Identical Phi Values myprintf::w#38 myprintf::w#37
Identical Phi Values myprintf::b#21 myprintf::b#32
Identical Phi Values myprintf::dst#18 myprintf::dst#27
Identical Phi Values myprintf::bTrailing#10 myprintf::bTrailing#9
Identical Phi Values myprintf::bDigits#14 myprintf::bDigits#18
Identical Phi Values myprintf::str#17 myprintf::str#36
Identical Phi Values myprintf::bArg#21 myprintf::bArg#34
Identical Phi Values myprintf::w1#19 myprintf::w1#35
Identical Phi Values myprintf::w2#20 myprintf::w2#35
Identical Phi Values myprintf::w3#20 myprintf::w3#35
Identical Phi Values myprintf::w#26 myprintf::w#35
Identical Phi Values myprintf::bLeadZero#27 myprintf::bLeadZero#43
Identical Phi Values myprintf::b#23 myprintf::b#21
Identical Phi Values myprintf::dst#19 myprintf::dst#18
Identical Phi Values myprintf::str#18 myprintf::str#17
Identical Phi Values myprintf::bArg#22 myprintf::bArg#21
Identical Phi Values myprintf::w1#20 myprintf::w1#19
Identical Phi Values myprintf::w2#21 myprintf::w2#20
Identical Phi Values myprintf::w3#21 myprintf::w3#20
Identical Phi Values myprintf::w#27 myprintf::w#26
Identical Phi Values myprintf::bTrailing#31 myprintf::bTrailing#10
Identical Phi Values myprintf::bLeadZero#28 myprintf::bLeadZero#27
Identical Phi Values myprintf::w1#12 myprintf::w1#10
Identical Phi Values myprintf::w2#13 myprintf::w2#11
Identical Phi Values myprintf::w3#13 myprintf::w3#11
Identical Phi Values myprintf::w1#13 myprintf::w1#10
Identical Phi Values myprintf::w2#14 myprintf::w2#11
Identical Phi Values myprintf::w3#14 myprintf::w3#11
Identical Phi Values div10::val#5 div10::val#4
Identical Phi Values main::u#11 main::u#16
Identical Phi Values main::u#10 main::u#18
Successful SSA optimization Pass2IdenticalPhiElimination
Identical Phi Values myprintf::b#32 myprintf::b#17
Identical Phi Values myprintf::dst#27 myprintf::dst#10
Identical Phi Values myprintf::bTrailing#9 myprintf::bTrailing#11
Identical Phi Values myprintf::str#36 myprintf::str#10
Identical Phi Values myprintf::bArg#34 myprintf::bArg#10
Identical Phi Values myprintf::w1#35 myprintf::w1#10
Identical Phi Values myprintf::w2#35 myprintf::w2#11
Identical Phi Values myprintf::w3#35 myprintf::w3#11
Identical Phi Values myprintf::w#35 myprintf::w#10
Identical Phi Values myprintf::bLeadZero#43 myprintf::bLeadZero#11
Successful SSA optimization Pass2IdenticalPhiElimination
Identical Phi Values myprintf::str#7 myprintf::str#10
Identical Phi Values myprintf::dst#31 myprintf::dst#10
Identical Phi Values myprintf::bArg#12 myprintf::bArg#10
Identical Phi Values myprintf::w1#9 myprintf::w1#10
Identical Phi Values myprintf::w2#10 myprintf::w2#11
Identical Phi Values myprintf::w3#10 myprintf::w3#11
Identical Phi Values myprintf::w#19 myprintf::w#10
Identical Phi Values myprintf::bTrailing#25 myprintf::bTrailing#11
Identical Phi Values myprintf::bLeadZero#21 myprintf::bLeadZero#11
Successful SSA optimization Pass2IdenticalPhiElimination
Identical Phi Values myprintf::str#5 myprintf::str#10
Identical Phi Values myprintf::dst#23 myprintf::dst#10
Identical Phi Values myprintf::w1#8 myprintf::w1#10
Identical Phi Values myprintf::w2#9 myprintf::w2#11
Identical Phi Values myprintf::w3#9 myprintf::w3#11
Successful SSA optimization Pass2IdenticalPhiElimination
Identical Phi Values myprintf::dst#10 myprintf::dst#22
Identical Phi Values myprintf::w1#10 myprintf::w1#7
Identical Phi Values myprintf::w2#11 myprintf::w2#8
Identical Phi Values myprintf::w3#11 myprintf::w3#8
Successful SSA optimization Pass2IdenticalPhiElimination
Simple Condition divr16u::$4 [8] if(divr16u::$2==0) goto divr16u::@2
Simple Condition divr16u::$9 [13] if(divr16u::rem#5<divr16u::divisor#0) goto divr16u::@3
Simple Condition divr16u::$11 [18] if(divr16u::i#1!=rangelast(0,$f)) goto divr16u::@1
Simple Condition append::$0 [34] if(append::value#5>=append::sub#6) goto append::@2
Simple Condition myprintf::$0 [114] if(*myprintf::str#10!=0) goto myprintf::@2
Simple Condition myprintf::$2 [117] if(myprintf::bFormat#10==0) goto myprintf::@4
Simple Condition myprintf::$49 [120] if(myprintf::b#1!='%') goto myprintf::@37
Simple Condition myprintf::$4 [122] if(myprintf::b#1!='0') goto myprintf::@5
Simple Condition myprintf::$11 [132] if(myprintf::b#1!='-') goto myprintf::@7
Simple Condition myprintf::$12 [135] if(myprintf::b#1=='c') goto myprintf::@8
Simple Condition myprintf::$13 [140] if(myprintf::b#1=='d') goto myprintf::@9
Simple Condition myprintf::$20 [154] if(myprintf::b#15<$a) goto myprintf::@10
Simple Condition myprintf::$26 [164] if(myprintf::b#16<$a) goto myprintf::@13
Simple Condition myprintf::$32 [173] if(myprintf::buf6[myprintf::b#17]!=0) goto myprintf::@17
Simple Condition myprintf::$37 [184] if(myprintf::bDigits#12>myprintf::b#17) goto myprintf::@21
Simple Condition myprintf::$38 [186] if(myprintf::bLeadZero#11==0) goto myprintf::@22
Simple Condition myprintf::$42 [195] if(myprintf::digit#3<myprintf::b#17) goto myprintf::@26
Simple Condition myprintf::$47 [206] if(myprintf::bDigits#10>myprintf::b#17) goto myprintf::@29
Simple Condition myprintf::$50 [222] if(myprintf::bArg#10==0) goto myprintf::@38
Simple Condition myprintf::$51 [224] if(myprintf::bArg#10==1) goto myprintf::@39
Simple Condition main::$0 [252] if(*zp1<$a) goto main::@2
Simple Condition main::$1 [260] if(*zp2<$c8) goto main::@5
Simple Condition main::$7 [282] if(*zp1<$a) goto main::@8
Simple Condition main::$8 [289] if(*zp2<$c8) goto main::@11
Successful SSA optimization Pass2ConditionalJumpSimplification
Rewriting ! if()-condition to reversed if() [43] utoa::$3 = ! utoa::$2
Rewriting || if()-condition to two if()s [42] utoa::$2 = utoa::$0 || utoa::$1
Rewriting ! if()-condition to reversed if() [49] utoa::$7 = ! utoa::$6
Rewriting || if()-condition to two if()s [48] utoa::$6 = utoa::$4 || utoa::$5
Rewriting ! if()-condition to reversed if() [63] utoa::$11 = ! utoa::$10
Rewriting || if()-condition to two if()s [62] utoa::$10 = utoa::$8 || utoa::$9
Rewriting ! if()-condition to reversed if() [77] utoa::$15 = ! utoa::$14
Rewriting || if()-condition to two if()s [76] utoa::$14 = utoa::$12 || utoa::$13
Rewriting ! if()-condition to reversed if() [126] myprintf::$8 = ! myprintf::$7
Rewriting && if()-condition to two if()s [125] myprintf::$7 = myprintf::$5 && myprintf::$6
Rewriting ! if()-condition to reversed if() [148] myprintf::$17 = ! myprintf::$16
Rewriting || if()-condition to two if()s [147] myprintf::$16 = myprintf::$14 || myprintf::$15
Rewriting ! if()-condition to reversed if() [178] myprintf::$36 = ! myprintf::$35
Rewriting && if()-condition to two if()s [177] myprintf::$35 = myprintf::$33 && myprintf::$34
Rewriting ! if()-condition to reversed if() [202] myprintf::$46 = ! myprintf::$45
Rewriting && if()-condition to two if()s [201] myprintf::$45 = myprintf::$43 && myprintf::$44
Rewriting ! if()-condition to reversed if() [215] myprintf::$55 = ! myprintf::$54
Rewriting && if()-condition to two if()s [214] myprintf::$54 = myprintf::$52 && myprintf::$53
Successful SSA optimization Pass2ConditionalAndOrRewriting
Constant divr16u::quotient#0 = 0
Constant divr16u::i#0 = 0
Constant divr16u::rem#3 = 0
Constant utoa::bStarted#0 = 0
Constant append::sub#0 = $2710
Constant utoa::bStarted#1 = 1
Constant append::sub#1 = $3e8
Constant utoa::bStarted#2 = 1
Constant append::sub#2 = $64
Constant utoa::bStarted#3 = 1
Constant append::sub#3 = $a
Constant utoa::bStarted#4 = 1
Constant myprintf::bArg#0 = 0
Constant myprintf::bFormat#0 = 0
Constant myprintf::bLen#0 = 0
Constant myprintf::bLeadZero#0 = 0
Constant myprintf::bDigits#0 = 0
Constant myprintf::bTrailing#0 = 0
Constant myprintf::b#0 = 0
Constant myprintf::digit#0 = 0
Constant myprintf::w#0 = 0
Constant myprintf::bLeadZero#1 = 1
Constant myprintf::bTrailing#1 = 1
Constant utoa::dst#5 = myprintf::buf6
Constant myprintf::b#2 = 1
Constant myprintf::$22 = '0'
Constant myprintf::$21 = $57
Constant myprintf::$28 = '0'
Constant myprintf::$27 = $57
Constant myprintf::digit#1 = 0
Constant myprintf::$40 = ' '
Constant myprintf::$39 = '0'
Constant myprintf::bFormat#1 = 0
Constant myprintf::bFormat#14 = 1
Constant myprintf::bLeadZero#2 = 0
Constant myprintf::bDigits#31 = 1
Constant myprintf::bTrailing#2 = 0
Constant main::u#0 = 0
Constant main::v#0 = 0
Constant main::u#1 = $6e85
Constant main::u#2 = $6e85
Constant div16u::divisor#0 = $a
Constant myprintf::dst#0 = strTemp
Constant myprintf::str#1 = main::str
Constant main::return#0 = 0
Constant myprintf::dst#1 = strTemp
Constant myprintf::str#2 = main::str1
Successful SSA optimization Pass2ConstantIdentification
Constant divr16u::divisor#0 = div16u::divisor#0
Constant append::dst#0 = utoa::dst#5
Constant main::return#2 = main::return#0
Successful SSA optimization Pass2ConstantIdentification
Resolved ranged next value [16] divr16u::i#1 = ++ divr16u::i#2 to ++
Resolved ranged comparison value [18] if(divr16u::i#1!=rangelast(0,$f)) goto divr16u::@1 to $10
Eliminating unused variable myprintf::return#2 and assignment [186] myprintf::return#2 = myprintf::bLen#10
Eliminating unused variable myprintf::return#3 and assignment [209] myprintf::return#3 = myprintf::bLen#10
Eliminating unused constant utoa::bStarted#4
Eliminating unused constant myprintf::b#0
Eliminating unused constant myprintf::digit#0
Eliminating unused constant main::u#0
Eliminating unused constant main::return#2
Successful SSA optimization PassNEliminateUnusedVars
Eliminating unused constant main::return#0
Successful SSA optimization PassNEliminateUnusedVars
Removing unused procedure __start
Removing unused procedure block __start
Removing unused procedure block __start::__init1
Removing unused procedure block __start::@1
Removing unused procedure block __start::@2
Removing unused procedure block __start::@return
Successful SSA optimization PassNEliminateEmptyStart
Adding number conversion cast (unumber) $10 in [12] if(divr16u::i#1!=$10) goto divr16u::@1
Successful SSA optimization PassNAddNumberTypeConversions
Simplifying constant integer cast $10
Successful SSA optimization PassNCastSimplification
Finalized unsigned number type (char) $10
Successful SSA optimization PassNFinalizeNumberTypeConversions
Simple Condition utoa::$0 [30] if(utoa::bStarted#0==1) goto utoa::@5
Simple Condition utoa::$4 [34] if(utoa::bStarted#5==1) goto utoa::@6
Simple Condition utoa::$8 [43] if(utoa::bStarted#6==1) goto utoa::@7
Simple Condition utoa::$12 [53] if(utoa::bStarted#7==1) goto utoa::@8
Simple Condition myprintf::$5 [83] if(myprintf::b#1>='1') goto myprintf::@49
Simple Condition myprintf::$14 [96] if(myprintf::b#1=='x') goto myprintf::@35
Simple Condition myprintf::$33 [117] if(myprintf::bTrailing#11==0) goto myprintf::@51
Simple Condition myprintf::$43 [133] if(myprintf::bTrailing#11!=0) goto myprintf::@52
Simple Condition myprintf::$52 [142] if(myprintf::b#1>=$41) goto myprintf::@53
Simple Condition utoa::$1 [212] if(utoa::value#4>=$2710) goto utoa::@5
Simple Condition utoa::$5 [213] if(utoa::value#6>=$3e8) goto utoa::@6
Simple Condition utoa::$9 [214] if(utoa::value#11>=$64) goto utoa::@7
Simple Condition utoa::$13 [215] if(utoa::value#10>=$a) goto utoa::@8
Simple Condition myprintf::$6 [216] if(myprintf::b#1<='9') goto myprintf::@31
Simple Condition myprintf::$15 [217] if(myprintf::b#1=='X') goto myprintf::@35
Simple Condition myprintf::$34 [218] if(myprintf::bDigits#16>myprintf::b#17) goto myprintf::@20
Simple Condition myprintf::$44 [219] if(myprintf::bDigits#18>myprintf::b#17) goto myprintf::@28
Simple Condition myprintf::$53 [220] if(myprintf::b#1<=$5a) goto myprintf::@47
Successful SSA optimization Pass2ConditionalJumpSimplification
Negating conditional jump and destination [83] if(myprintf::b#1<'1') goto myprintf::@6
Negating conditional jump and destination [117] if(myprintf::bTrailing#11!=0) goto myprintf::@19
Negating conditional jump and destination [133] if(myprintf::bTrailing#11==0) goto myprintf::@30
Negating conditional jump and destination [142] if(myprintf::b#1<$41) goto myprintf::@41
Negating conditional jump and destination [218] if(myprintf::bDigits#16<=myprintf::b#17) goto myprintf::@19
Negating conditional jump and destination [219] if(myprintf::bDigits#18<=myprintf::b#17) goto myprintf::@30
Negating conditional jump and destination [220] if(myprintf::b#1>$5a) goto myprintf::@41
Successful SSA optimization Pass2ConditionalJumpSequenceImprovement
Constant right-side identified [39] utoa::dst#0 = ++ utoa::dst#5
Successful SSA optimization Pass2ConstantRValueConsolidation
Constant utoa::dst#0 = ++utoa::dst#5
Successful SSA optimization Pass2ConstantIdentification
if() condition always false - eliminating [30] if(utoa::bStarted#0==1) goto utoa::@5
Successful SSA optimization Pass2ConstantIfs
Rewriting conditional comparison [220] if(myprintf::b#1>$5a) goto myprintf::@41
Adding number conversion cast (unumber) $5a+1 in if(myprintf::b#1>=$5a+1) goto myprintf::@41
Adding number conversion cast (unumber) 1 in if(myprintf::b#1>=(unumber)$5a+1) goto myprintf::@41
Successful SSA optimization PassNAddNumberTypeConversions
Simplifying constant integer cast $5a+(unumber)1
Simplifying constant integer cast 1
Successful SSA optimization PassNCastSimplification
Finalized unsigned number type (char) 1
Successful SSA optimization PassNFinalizeNumberTypeConversions
Inlining constant with var siblings divr16u::quotient#0
Inlining constant with var siblings divr16u::i#0
Inlining constant with var siblings divr16u::rem#3
Inlining constant with var siblings append::sub#0
Inlining constant with var siblings append::sub#1
Inlining constant with var siblings append::sub#2
Inlining constant with var siblings append::sub#3
Inlining constant with var siblings append::dst#0
Inlining constant with var siblings utoa::bStarted#0
Inlining constant with var siblings utoa::bStarted#1
Inlining constant with var siblings utoa::bStarted#2
Inlining constant with var siblings utoa::bStarted#3
Inlining constant with var siblings utoa::dst#5
Inlining constant with var siblings utoa::dst#0
Inlining constant with var siblings myprintf::bArg#0
Inlining constant with var siblings myprintf::bFormat#0
Inlining constant with var siblings myprintf::bLen#0
Inlining constant with var siblings myprintf::bLeadZero#0
Inlining constant with var siblings myprintf::bDigits#0
Inlining constant with var siblings myprintf::bTrailing#0
Inlining constant with var siblings myprintf::w#0
Inlining constant with var siblings myprintf::bLeadZero#1
Inlining constant with var siblings myprintf::bTrailing#1
Inlining constant with var siblings myprintf::b#2
Inlining constant with var siblings myprintf::digit#1
Inlining constant with var siblings myprintf::bFormat#1
Inlining constant with var siblings myprintf::bFormat#14
Inlining constant with var siblings myprintf::bLeadZero#2
Inlining constant with var siblings myprintf::bDigits#31
Inlining constant with var siblings myprintf::bTrailing#2
Inlining constant with var siblings myprintf::dst#0
Inlining constant with var siblings myprintf::str#1
Inlining constant with var siblings myprintf::dst#1
Inlining constant with var siblings myprintf::str#2
Inlining constant with var siblings main::v#0
Inlining constant with var siblings main::u#1
Inlining constant with var siblings main::u#2
Constant inlined divr16u::rem#3 = 0
Constant inlined utoa::dst#5 = myprintf::buf6
Constant inlined utoa::bStarted#3 = 1
Constant inlined append::dst#0 = myprintf::buf6
Constant inlined divr16u::i#0 = 0
Constant inlined utoa::dst#0 = ++myprintf::buf6
Constant inlined myprintf::$28 = '0'
Constant inlined myprintf::$27 = $57
Constant inlined myprintf::str#1 = main::str
Constant inlined myprintf::bLeadZero#0 = 0
Constant inlined myprintf::str#2 = main::str1
Constant inlined myprintf::bLeadZero#1 = 1
Constant inlined myprintf::digit#1 = 0
Constant inlined myprintf::bDigits#31 = 1
Constant inlined myprintf::dst#1 = strTemp
Constant inlined divr16u::quotient#0 = 0
Constant inlined myprintf::dst#0 = strTemp
Constant inlined myprintf::bArg#0 = 0
Constant inlined myprintf::bLeadZero#2 = 0
Constant inlined divr16u::divisor#0 = div16u::divisor#0
Constant inlined myprintf::bLen#0 = 0
Constant inlined myprintf::bFormat#14 = 1
Constant inlined append::sub#0 = $2710
Constant inlined append::sub#1 = $3e8
Constant inlined append::sub#2 = $64
Constant inlined myprintf::$39 = '0'
Constant inlined append::sub#3 = $a
Constant inlined myprintf::b#2 = 1
Constant inlined main::v#0 = 0
Constant inlined main::u#1 = $6e85
Constant inlined myprintf::bDigits#0 = 0
Constant inlined main::u#2 = $6e85
Constant inlined myprintf::bTrailing#2 = 0
Constant inlined myprintf::$40 = ' '
Constant inlined myprintf::bFormat#1 = 0
Constant inlined myprintf::bFormat#0 = 0
Constant inlined myprintf::w#0 = 0
Constant inlined myprintf::$22 = '0'
Constant inlined utoa::bStarted#1 = 1
Constant inlined myprintf::$21 = $57
Constant inlined utoa::bStarted#2 = 1
Constant inlined myprintf::bTrailing#0 = 0
Constant inlined utoa::bStarted#0 = 0
Constant inlined myprintf::bTrailing#1 = 1
Successful SSA optimization Pass2ConstantInlining
Identical Phi Values myprintf::dst#22 strTemp
Successful SSA optimization Pass2IdenticalPhiElimination
Finalized unsigned number type (char) $64
Finalized unsigned number type (char) $64
Finalized unsigned number type (char) 6
Finalized unsigned number type (char) 6
Successful SSA optimization PassNFinalizeNumberTypeConversions
Added new block during phi lifting divr16u::@7(between divr16u::@3 and divr16u::@1)
Added new block during phi lifting divr16u::@8(between divr16u::@1 and divr16u::@2)
Added new block during phi lifting divr16u::@9(between divr16u::@2 and divr16u::@3)
Added new block during phi lifting utoa::@17(between utoa::@13 and utoa::@1)
Fixing phi predecessor for utoa::bStarted#5 to new block ( utoa::@13 -> utoa::@17 ) during phi lifting.
Fixing phi predecessor for utoa::dst#16 to new block ( utoa::@13 -> utoa::@17 ) during phi lifting.
Added new block during phi lifting utoa::@18(between utoa::@14 and utoa::@2)
Added new block during phi lifting utoa::@19(between utoa::@15 and utoa::@3)
Added new block during phi lifting utoa::@20(between utoa::@16 and utoa::@4)
Added new block during phi lifting myprintf::@54(between myprintf::@18 and myprintf::@19)
Added new block during phi lifting myprintf::@55(between myprintf::@20 and myprintf::@19)
Added new block during phi lifting myprintf::@56(between myprintf::@51 and myprintf::@20)
Added new block during phi lifting myprintf::@57(between myprintf::@52 and myprintf::@28)
Added new block during phi lifting myprintf::@58(between myprintf::@27 and myprintf::@30)
Added new block during phi lifting myprintf::@59(between myprintf::@28 and myprintf::@30)
Added new block during phi lifting myprintf::@60(between myprintf::@50 and myprintf::@30)
Added new block during phi lifting myprintf::@61(between myprintf::@37 and myprintf::@41)
Adding NOP phi() at start of main::@9
Adding NOP phi() at start of main::@17
Adding NOP phi() at start of main::@14
Adding NOP phi() at start of myprintf::@11
Adding NOP phi() at start of myprintf::@14
Adding NOP phi() at start of myprintf::@13
Adding NOP phi() at start of myprintf::@10
Adding NOP phi() at start of myprintf::@48
Adding NOP phi() at start of myprintf::@23
Adding NOP phi() at start of myprintf::@22
Adding NOP phi() at start of utoa
Adding NOP phi() at start of divr16u::@6
Adding NOP phi() at start of append::@3
CALL GRAPH
Calls in [main] to myprintf:25 Print:27 div10:33 myprintf:53 Print:55 div16u:61 
Calls in [myprintf] to utoa:135 
Calls in [div16u] to divr16u:235 
Calls in [utoa] to append:270 append:280 append:290 append:298 

Created 63 initial phi equivalence classes
Coalesced [5] main::v#20 = main::v#13
Coalesced [13] main::v#22 = main::v#10
Coalesced [22] myprintf::w1#50 = myprintf::w1#1
Coalesced [23] myprintf::w2#50 = myprintf::w2#1
Coalesced [24] myprintf::w3#50 = myprintf::w3#1
Coalesced [30] main::u#22 = main::u#4
Coalesced (already) [31] main::v#19 = main::v#12
Coalesced [37] main::v#21 = main::v#2
Coalesced [41] main::v#18 = main::v#13
Coalesced [50] myprintf::w1#51 = myprintf::w1#0
Coalesced [51] myprintf::w2#51 = myprintf::w2#0
Coalesced [52] myprintf::w3#51 = myprintf::w3#0
Coalesced [58] main::u#21 = main::u#3
Coalesced (already) [59] main::v#16 = main::v#11
Coalesced [65] main::v#17 = main::v#1
Coalesced [67] myprintf::str#51 = myprintf::str#6
Coalesced [75] myprintf::bFormat#25 = myprintf::bFormat#10
Coalesced [76] myprintf::bLen#62 = myprintf::bLen#10
Coalesced [77] myprintf::bArg#55 = myprintf::bArg#10
Coalesced [78] myprintf::w#52 = myprintf::w#10
Coalesced [79] myprintf::bTrailing#52 = myprintf::bTrailing#11
Coalesced [80] myprintf::bDigits#55 = myprintf::bDigits#16
Coalesced [83] myprintf::str#52 = myprintf::str#0
Coalesced (already) [84] myprintf::bFormat#21 = myprintf::bFormat#5
Coalesced (already) [85] myprintf::bLen#56 = myprintf::bLen#28
Coalesced (already) [86] myprintf::bArg#49 = myprintf::bArg#11
Coalesced (already) [87] myprintf::w#46 = myprintf::w#18
Coalesced (already) [88] myprintf::bTrailing#48 = myprintf::bTrailing#24
Coalesced (already) [89] myprintf::bDigits#50 = myprintf::bDigits#28
Coalesced [90] myprintf::bLeadZero#48 = myprintf::bLeadZero#20
Coalesced (already) [94] myprintf::bFormat#23 = myprintf::bFormat#10
Coalesced (already) [95] myprintf::bLen#59 = myprintf::bLen#10
Coalesced (already) [96] myprintf::bArg#52 = myprintf::bArg#10
Coalesced (already) [97] myprintf::w#49 = myprintf::w#10
Coalesced (already) [98] myprintf::bDigits#53 = myprintf::bDigits#16
Coalesced (already) [99] myprintf::bLeadZero#51 = myprintf::bLeadZero#11
Coalesced [104] myprintf::bLen#74 = myprintf::bLen#10
Coalesced [105] myprintf::bDigits#65 = myprintf::bDigits#16
Coalesced (already) [107] myprintf::bLen#57 = myprintf::bLen#36
Coalesced (already) [108] myprintf::bArg#50 = myprintf::bArg#10
Coalesced (already) [109] myprintf::w#47 = myprintf::w#10
Coalesced (already) [110] myprintf::bTrailing#49 = myprintf::bTrailing#11
Coalesced (already) [111] myprintf::bDigits#51 = myprintf::bDigits#29
Coalesced (already) [112] myprintf::bLeadZero#49 = myprintf::bLeadZero#11
Coalesced [130] myprintf::bLen#71 = myprintf::bLen#3
Coalesced (already) [131] myprintf::bDigits#62 = myprintf::bDigits#16
Coalesced [141] myprintf::bDigits#58 = myprintf::bDigits#16
Coalesced [142] myprintf::bLen#65 = myprintf::bLen#10
Coalesced [145] myprintf::bLen#64 = myprintf::bLen#12
Coalesced [146] myprintf::bDigits#57 = myprintf::bDigits#12
Coalesced [148] myprintf::bLen#67 = myprintf::bLen#32
Coalesced [153] myprintf::bDigits#60 = myprintf::bDigits#18
Coalesced [154] myprintf::bLen#69 = myprintf::bLen#13
Coalesced (already) [157] myprintf::bLen#73 = myprintf::bLen#14
Coalesced (already) [158] myprintf::bDigits#64 = myprintf::bDigits#10
Coalesced [162] myprintf::bDigits#61 = myprintf::bDigits#3
Coalesced [163] myprintf::bLen#70 = myprintf::bLen#6
Coalesced (already) [164] myprintf::bLen#72 = myprintf::bLen#13
Coalesced (already) [165] myprintf::bDigits#63 = myprintf::bDigits#18
Coalesced [169] myprintf::digit#5 = myprintf::digit#2
Coalesced [170] myprintf::bLen#68 = myprintf::bLen#5
Coalesced [177] myprintf::bDigits#59 = myprintf::bDigits#2
Coalesced [178] myprintf::bLen#66 = myprintf::bLen#4
Coalesced (already) [180] myprintf::bLen#63 = myprintf::bLen#10
Coalesced (already) [181] myprintf::bDigits#56 = myprintf::bDigits#16
Coalesced [183] myprintf::b#38 = myprintf::b#5
Coalesced [186] myprintf::bLen#75 = myprintf::bLen#1
Coalesced (already) [187] myprintf::bDigits#66 = myprintf::bDigits#16
Coalesced (already) [189] myprintf::bFormat#22 = myprintf::bFormat#10
Coalesced (already) [190] myprintf::bLen#58 = myprintf::bLen#10
Coalesced (already) [191] myprintf::bArg#51 = myprintf::bArg#10
Coalesced (already) [192] myprintf::w#48 = myprintf::w#10
Coalesced (already) [193] myprintf::bTrailing#50 = myprintf::bTrailing#11
Coalesced [194] myprintf::bDigits#52 = myprintf::bDigits#1
Coalesced (already) [195] myprintf::bLeadZero#50 = myprintf::bLeadZero#11
Not coalescing [199] myprintf::w#55 = myprintf::w3#8
Coalesced (already) [202] myprintf::bLen#60 = myprintf::bLen#10
Coalesced [203] myprintf::bArg#53 = myprintf::bArg#1
Coalesced [204] myprintf::w#50 = myprintf::w#22
Not coalescing [205] myprintf::w#54 = myprintf::w2#8
Not coalescing [206] myprintf::w#53 = myprintf::w1#7
Coalesced [210] myprintf::b#40 = myprintf::b#6
Coalesced (already) [214] myprintf::bFormat#24 = myprintf::bFormat#10
Coalesced [215] myprintf::bLen#61 = myprintf::bLen#7
Coalesced (already) [216] myprintf::bArg#54 = myprintf::bArg#10
Coalesced (already) [217] myprintf::w#51 = myprintf::w#10
Coalesced (already) [218] myprintf::bTrailing#51 = myprintf::bTrailing#11
Coalesced (already) [219] myprintf::bDigits#54 = myprintf::bDigits#16
Coalesced (already) [220] myprintf::bLeadZero#52 = myprintf::bLeadZero#11
Coalesced [221] myprintf::b#39 = myprintf::b#1
Coalesced [241] utoa::value#14 = utoa::value#4
Coalesced [245] utoa::bStarted#8 = utoa::bStarted#5
Coalesced [246] utoa::value#16 = utoa::value#6
Coalesced [247] utoa::dst#19 = utoa::dst#16
Coalesced [251] utoa::bStarted#9 = utoa::bStarted#6
Coalesced [252] utoa::value#19 = utoa::value#11
Coalesced [253] utoa::dst#22 = utoa::dst#10
Coalesced [257] utoa::value#21 = utoa::value#10
Coalesced [258] utoa::dst#24 = utoa::dst#13
Coalesced [268] append::dst#9 = append::dst#3
Coalesced [269] append::value#12 = append::value#4
Coalesced [274] utoa::value#20 = utoa::value#3
Coalesced [275] utoa::dst#23 = utoa::dst#4
Coalesced [278] append::dst#8 = append::dst#2
Coalesced [279] append::value#11 = append::value#3
Coalesced [284] utoa::value#18 = utoa::value#2
Coalesced [285] utoa::dst#21 = utoa::dst#2
Coalesced [288] append::dst#7 = append::dst#1
Coalesced [289] append::value#10 = append::value#2
Coalesced [294] utoa::value#17 = utoa::value#1
Coalesced [295] utoa::dst#20 = utoa::dst#1
Coalesced [297] append::value#9 = append::value#1
Coalesced [301] utoa::value#15 = utoa::value#0
Coalesced [302] divr16u::dividend#8 = divr16u::dividend#1
Coalesced [309] divr16u::rem#12 = divr16u::rem#1
Coalesced [316] divr16u::rem#14 = divr16u::rem#2
Coalesced [317] divr16u::return#6 = divr16u::quotient#2
Coalesced [323] divr16u::rem#10 = divr16u::rem#9
Coalesced [324] divr16u::dividend#9 = divr16u::dividend#0
Coalesced [325] divr16u::quotient#9 = divr16u::return#0
Coalesced [326] divr16u::i#7 = divr16u::i#1
Coalesced [327] divr16u::rem#13 = divr16u::rem#5
Coalesced [328] divr16u::return#5 = divr16u::quotient#1
Coalesced [329] divr16u::rem#11 = divr16u::rem#0
Coalesced [332] append::value#13 = append::value#8
Coalesced [339] append::value#14 = append::value#0
Coalesced down to 30 phi equivalence classes
Culled Empty Block label main::@9
Culled Empty Block label myprintf::@43
Culled Empty Block label myprintf::@32
Culled Empty Block label myprintf::@60
Culled Empty Block label myprintf::@11
Culled Empty Block label myprintf::@14
Culled Empty Block label myprintf::@48
Culled Empty Block label myprintf::@56
Culled Empty Block label myprintf::@55
Culled Empty Block label myprintf::@57
Culled Empty Block label myprintf::@59
Culled Empty Block label myprintf::@58
Culled Empty Block label myprintf::@23
Culled Empty Block label myprintf::@54
Culled Empty Block label myprintf::@61
Culled Empty Block label utoa::@17
Culled Empty Block label utoa::@18
Culled Empty Block label utoa::@19
Culled Empty Block label utoa::@20
Culled Empty Block label divr16u::@6
Culled Empty Block label divr16u::@7
Culled Empty Block label divr16u::@9
Culled Empty Block label divr16u::@8
Culled Empty Block label append::@3
Renumbering block myprintf::@12 to myprintf::@11
Renumbering block myprintf::@13 to myprintf::@12
Renumbering block myprintf::@15 to myprintf::@13
Renumbering block myprintf::@16 to myprintf::@14
Renumbering block myprintf::@17 to myprintf::@15
Renumbering block myprintf::@18 to myprintf::@16
Renumbering block myprintf::@19 to myprintf::@17
Renumbering block myprintf::@20 to myprintf::@18
Renumbering block myprintf::@21 to myprintf::@19
Renumbering block myprintf::@22 to myprintf::@20
Renumbering block myprintf::@24 to myprintf::@21
Renumbering block myprintf::@25 to myprintf::@22
Renumbering block myprintf::@26 to myprintf::@23
Renumbering block myprintf::@27 to myprintf::@24
Renumbering block myprintf::@28 to myprintf::@25
Renumbering block myprintf::@29 to myprintf::@26
Renumbering block myprintf::@30 to myprintf::@27
Renumbering block myprintf::@31 to myprintf::@28
Renumbering block myprintf::@33 to myprintf::@29
Renumbering block myprintf::@34 to myprintf::@30
Renumbering block myprintf::@35 to myprintf::@31
Renumbering block myprintf::@36 to myprintf::@32
Renumbering block myprintf::@37 to myprintf::@33
Renumbering block myprintf::@38 to myprintf::@34
Renumbering block myprintf::@39 to myprintf::@35
Renumbering block myprintf::@40 to myprintf::@36
Renumbering block myprintf::@41 to myprintf::@37
Renumbering block myprintf::@42 to myprintf::@38
Renumbering block myprintf::@44 to myprintf::@39
Renumbering block myprintf::@45 to myprintf::@40
Renumbering block myprintf::@46 to myprintf::@41
Renumbering block myprintf::@47 to myprintf::@42
Renumbering block myprintf::@49 to myprintf::@43
Renumbering block myprintf::@50 to myprintf::@44
Renumbering block myprintf::@51 to myprintf::@45
Renumbering block myprintf::@52 to myprintf::@46
Renumbering block myprintf::@53 to myprintf::@47
Renumbering block main::@10 to main::@9
Renumbering block main::@11 to main::@10
Renumbering block main::@12 to main::@11
Renumbering block main::@13 to main::@12
Renumbering block main::@14 to main::@13
Renumbering block main::@15 to main::@14
Renumbering block main::@16 to main::@15
Renumbering block main::@17 to main::@16
Renumbering block main::@18 to main::@17
Adding NOP phi() at start of main::@16
Adding NOP phi() at start of main::@13
Adding NOP phi() at start of myprintf::@10
Adding NOP phi() at start of myprintf::@12
Adding NOP phi() at start of myprintf::@20
Adding NOP phi() at start of utoa
Adding NOP phi() at start of divr16u

FINAL CONTROL FLOW GRAPH

int main()
main: scope:[main]  from
  [0] *VICBANK = $17
  [1] *zp1 = 0
  to:main::@1
main::@1: scope:[main]  from main main::@14
  [2] main::v#13 = phi( main/0, main::@14/main::v#11 )
  [2] main::u#16 = phi( main/$6e85, main::@14/main::u#3 )
  [3] if(*zp1<$a) goto main::@2
  to:main::@3
main::@3: scope:[main]  from main::@1
  [4] *zp1 = 0
  to:main::@7
main::@7: scope:[main]  from main::@17 main::@3
  [5] main::v#10 = phi( main::@17/main::v#12, main::@3/main::v#13 )
  [5] main::u#18 = phi( main::@17/main::u#4, main::@3/$6e85 )
  [6] if(*zp1<$a) goto main::@8
  to:main::@return
main::@return: scope:[main]  from main::@7
  [7] return 
  to:@return
main::@8: scope:[main]  from main::@7
  [8] *TIMEHI = 0
  [9] *TIMELO = 0
  [10] *zp2 = 0
  to:main::@9
main::@9: scope:[main]  from main::@15 main::@8
  [11] main::v#12 = phi( main::@15/main::v#2, main::@8/main::v#10 )
  [12] if(*zp2<$c8) goto main::@10
  to:main::@11
main::@11: scope:[main]  from main::@9
  [13] main::$16 = (unsigned int)*TIMEHI
  [14] main::$10 = main::$16 << 8
  [15] main::$17 = (unsigned int)*TIMELO
  [16] myprintf::w3#1 = main::$10 + main::$17
  [17] myprintf::w1#1 = main::u#18
  [18] myprintf::w2#1 = main::v#12
  [19] call myprintf
  to:main::@16
main::@16: scope:[main]  from main::@11
  [20] phi()
  [21] call Print
  to:main::@17
main::@17: scope:[main]  from main::@16
  [22] main::u#4 = main::u#18 - $4d2
  [23] *zp1 = ++ *zp1
  to:main::@7
main::@10: scope:[main]  from main::@9
  [24] div10::val#4 = main::u#18
  [25] call div10
  [26] div10::return#2 = div10::return#0
  to:main::@15
main::@15: scope:[main]  from main::@10
  [27] main::v#2 = div10::return#2
  [28] *zp2 = ++ *zp2
  to:main::@9
main::@2: scope:[main]  from main::@1
  [29] *TIMEHI = 0
  [30] *TIMELO = 0
  [31] *zp2 = 0
  to:main::@4
main::@4: scope:[main]  from main::@12 main::@2
  [32] main::v#11 = phi( main::@12/main::v#1, main::@2/main::v#13 )
  [33] if(*zp2<$c8) goto main::@5
  to:main::@6
main::@6: scope:[main]  from main::@4
  [34] main::$14 = (unsigned int)*TIMEHI
  [35] main::$3 = main::$14 << 8
  [36] main::$15 = (unsigned int)*TIMELO
  [37] myprintf::w3#0 = main::$3 + main::$15
  [38] myprintf::w1#0 = main::u#16
  [39] myprintf::w2#0 = main::v#11
  [40] call myprintf
  to:main::@13
main::@13: scope:[main]  from main::@6
  [41] phi()
  [42] call Print
  to:main::@14
main::@14: scope:[main]  from main::@13
  [43] main::u#3 = main::u#16 - $4d2
  [44] *zp1 = ++ *zp1
  to:main::@1
main::@5: scope:[main]  from main::@4
  [45] div16u::dividend#0 = main::u#16
  [46] call div16u
  [47] div16u::return#2 = div16u::return#0
  to:main::@12
main::@12: scope:[main]  from main::@5
  [48] main::v#1 = div16u::return#2
  [49] *zp2 = ++ *zp2
  to:main::@4

char myprintf(char *dst , char *str , unsigned int w1 , unsigned int w2 , unsigned int w3)
myprintf: scope:[myprintf]  from main::@11 main::@6
  [50] myprintf::w3#8 = phi( main::@11/myprintf::w3#1, main::@6/myprintf::w3#0 )
  [50] myprintf::w2#8 = phi( main::@11/myprintf::w2#1, main::@6/myprintf::w2#0 )
  [50] myprintf::w1#7 = phi( main::@11/myprintf::w1#1, main::@6/myprintf::w1#0 )
  [50] myprintf::str#6 = phi( main::@11/main::str1, main::@6/main::str )
  to:myprintf::@1
myprintf::@1: scope:[myprintf]  from myprintf myprintf::@32
  [51] myprintf::bLeadZero#11 = phi( myprintf/0, myprintf::@32/myprintf::bLeadZero#20 )
  [51] myprintf::bDigits#16 = phi( myprintf/0, myprintf::@32/myprintf::bDigits#28 )
  [51] myprintf::bTrailing#11 = phi( myprintf/0, myprintf::@32/myprintf::bTrailing#24 )
  [51] myprintf::w#10 = phi( myprintf/0, myprintf::@32/myprintf::w#18 )
  [51] myprintf::bArg#10 = phi( myprintf/0, myprintf::@32/myprintf::bArg#11 )
  [51] myprintf::bLen#10 = phi( myprintf/0, myprintf::@32/myprintf::bLen#28 )
  [51] myprintf::bFormat#10 = phi( myprintf/0, myprintf::@32/myprintf::bFormat#5 )
  [51] myprintf::str#10 = phi( myprintf/myprintf::str#6, myprintf::@32/myprintf::str#0 )
  [52] if(*myprintf::str#10!=0) goto myprintf::@2
  to:myprintf::@3
myprintf::@3: scope:[myprintf]  from myprintf::@1
  [53] strTemp[myprintf::bLen#10] = 0
  to:myprintf::@return
myprintf::@return: scope:[myprintf]  from myprintf::@3
  [54] return 
  to:@return
myprintf::@2: scope:[myprintf]  from myprintf::@1
  [55] myprintf::b#1 = *myprintf::str#10
  [56] if(myprintf::bFormat#10==0) goto myprintf::@4
  to:myprintf::@38
myprintf::@38: scope:[myprintf]  from myprintf::@2
  [57] if(myprintf::b#1!='0') goto myprintf::@5
  to:myprintf::@32
myprintf::@32: scope:[myprintf]  from myprintf::@27 myprintf::@28 myprintf::@36 myprintf::@37 myprintf::@38 myprintf::@6
  [58] myprintf::bLeadZero#20 = phi( myprintf::@27/myprintf::bLeadZero#11, myprintf::@28/myprintf::bLeadZero#11, myprintf::@6/myprintf::bLeadZero#11, myprintf::@36/0, myprintf::@37/myprintf::bLeadZero#11, myprintf::@38/1 )
  [58] myprintf::bDigits#28 = phi( myprintf::@27/myprintf::bDigits#29, myprintf::@28/myprintf::bDigits#1, myprintf::@6/myprintf::bDigits#16, myprintf::@36/1, myprintf::@37/myprintf::bDigits#16, myprintf::@38/myprintf::bDigits#16 )
  [58] myprintf::bTrailing#24 = phi( myprintf::@27/myprintf::bTrailing#11, myprintf::@28/myprintf::bTrailing#11, myprintf::@6/1, myprintf::@36/0, myprintf::@37/myprintf::bTrailing#11, myprintf::@38/myprintf::bTrailing#11 )
  [58] myprintf::w#18 = phi( myprintf::@27/myprintf::w#10, myprintf::@28/myprintf::w#10, myprintf::@6/myprintf::w#10, myprintf::@36/myprintf::w#22, myprintf::@37/myprintf::w#10, myprintf::@38/myprintf::w#10 )
  [58] myprintf::bArg#11 = phi( myprintf::@27/myprintf::bArg#10, myprintf::@28/myprintf::bArg#10, myprintf::@6/myprintf::bArg#10, myprintf::@36/myprintf::bArg#1, myprintf::@37/myprintf::bArg#10, myprintf::@38/myprintf::bArg#10 )
  [58] myprintf::bLen#28 = phi( myprintf::@27/myprintf::bLen#36, myprintf::@28/myprintf::bLen#10, myprintf::@6/myprintf::bLen#10, myprintf::@36/myprintf::bLen#10, myprintf::@37/myprintf::bLen#7, myprintf::@38/myprintf::bLen#10 )
  [58] myprintf::bFormat#5 = phi( myprintf::@27/0, myprintf::@28/myprintf::bFormat#10, myprintf::@6/myprintf::bFormat#10, myprintf::@36/1, myprintf::@37/myprintf::bFormat#10, myprintf::@38/myprintf::bFormat#10 )
  [59] myprintf::str#0 = ++ myprintf::str#10
  to:myprintf::@1
myprintf::@5: scope:[myprintf]  from myprintf::@38
  [60] if(myprintf::b#1<'1') goto myprintf::@6
  to:myprintf::@43
myprintf::@43: scope:[myprintf]  from myprintf::@5
  [61] if(myprintf::b#1<='9') goto myprintf::@28
  to:myprintf::@6
myprintf::@6: scope:[myprintf]  from myprintf::@43 myprintf::@5
  [62] if(myprintf::b#1!='-') goto myprintf::@7
  to:myprintf::@32
myprintf::@7: scope:[myprintf]  from myprintf::@6
  [63] if(myprintf::b#1=='c') goto myprintf::@8
  to:myprintf::@29
myprintf::@29: scope:[myprintf]  from myprintf::@7
  [64] if(myprintf::b#1=='d') goto myprintf::@9
  to:myprintf::@30
myprintf::@30: scope:[myprintf]  from myprintf::@29
  [65] if(myprintf::b#1=='x') goto myprintf::@31
  to:myprintf::@44
myprintf::@44: scope:[myprintf]  from myprintf::@30
  [66] if(myprintf::b#1=='X') goto myprintf::@31
  to:myprintf::@27
myprintf::@27: scope:[myprintf]  from myprintf::@13 myprintf::@24 myprintf::@25 myprintf::@44 myprintf::@46 myprintf::@8
  [67] myprintf::bDigits#29 = phi( myprintf::@13/myprintf::bDigits#16, myprintf::@24/myprintf::bDigits#18, myprintf::@25/myprintf::bDigits#10, myprintf::@44/myprintf::bDigits#16, myprintf::@8/myprintf::bDigits#16 )
  [67] myprintf::bLen#36 = phi( myprintf::@13/myprintf::bLen#3, myprintf::@24/myprintf::bLen#13, myprintf::@25/myprintf::bLen#14, myprintf::@44/myprintf::bLen#10, myprintf::@8/myprintf::bLen#1 )
  to:myprintf::@32
myprintf::@31: scope:[myprintf]  from myprintf::@30 myprintf::@44
  [68] myprintf::$56 = (char)myprintf::w#10
  [69] myprintf::$18 = myprintf::$56 >> 4
  [70] myprintf::b#15 = myprintf::$18 & $f
  [71] if(myprintf::b#15<$a) goto myprintf::@10
  to:myprintf::@11
myprintf::@10: scope:[myprintf]  from myprintf::@31
  [72] phi()
  to:myprintf::@11
myprintf::@11: scope:[myprintf]  from myprintf::@10 myprintf::@31
  [73] myprintf::$23 = phi( myprintf::@10/'0', myprintf::@31/$57 )
  [74] myprintf::$24 = myprintf::$23 + myprintf::b#15
  [75] strTemp[myprintf::bLen#10] = myprintf::$24
  [76] myprintf::bLen#11 = ++ myprintf::bLen#10
  [77] myprintf::$57 = (char)myprintf::w#10
  [78] myprintf::b#16 = myprintf::$57 & $f
  [79] if(myprintf::b#16<$a) goto myprintf::@12
  to:myprintf::@13
myprintf::@12: scope:[myprintf]  from myprintf::@11
  [80] phi()
  to:myprintf::@13
myprintf::@13: scope:[myprintf]  from myprintf::@11 myprintf::@12
  [81] myprintf::$29 = phi( myprintf::@12/'0', myprintf::@11/$57 )
  [82] myprintf::$30 = myprintf::$29 + myprintf::b#16
  [83] strTemp[myprintf::bLen#11] = myprintf::$30
  [84] myprintf::bLen#3 = ++ myprintf::bLen#11
  to:myprintf::@27
myprintf::@9: scope:[myprintf]  from myprintf::@29
  [85] utoa::value#4 = myprintf::w#10
  [86] call utoa
  to:myprintf::@14
myprintf::@14: scope:[myprintf]  from myprintf::@15 myprintf::@9
  [87] myprintf::b#17 = phi( myprintf::@15/myprintf::b#5, myprintf::@9/1 )
  [88] if(myprintf::buf6[myprintf::b#17]!=0) goto myprintf::@15
  to:myprintf::@16
myprintf::@16: scope:[myprintf]  from myprintf::@14
  [89] if(myprintf::bTrailing#11!=0) goto myprintf::@17
  to:myprintf::@45
myprintf::@45: scope:[myprintf]  from myprintf::@16
  [90] if(myprintf::bDigits#16<=myprintf::b#17) goto myprintf::@17
  to:myprintf::@18
myprintf::@18: scope:[myprintf]  from myprintf::@21 myprintf::@45
  [91] myprintf::bLen#12 = phi( myprintf::@45/myprintf::bLen#10, myprintf::@21/myprintf::bLen#4 )
  [91] myprintf::bDigits#12 = phi( myprintf::@45/myprintf::bDigits#16, myprintf::@21/myprintf::bDigits#2 )
  [92] if(myprintf::bDigits#12>myprintf::b#17) goto myprintf::@19
  to:myprintf::@17
myprintf::@17: scope:[myprintf]  from myprintf::@16 myprintf::@18 myprintf::@45
  [93] myprintf::bDigits#18 = phi( myprintf::@16/myprintf::bDigits#16, myprintf::@18/myprintf::bDigits#12 )
  [93] myprintf::bLen#32 = phi( myprintf::@16/myprintf::bLen#10, myprintf::@18/myprintf::bLen#12 )
  to:myprintf::@22
myprintf::@22: scope:[myprintf]  from myprintf::@17 myprintf::@23
  [94] myprintf::bLen#13 = phi( myprintf::@17/myprintf::bLen#32, myprintf::@23/myprintf::bLen#5 )
  [94] myprintf::digit#3 = phi( myprintf::@17/0, myprintf::@23/myprintf::digit#2 )
  [95] if(myprintf::digit#3<myprintf::b#17) goto myprintf::@23
  to:myprintf::@24
myprintf::@24: scope:[myprintf]  from myprintf::@22
  [96] if(myprintf::bTrailing#11==0) goto myprintf::@27
  to:myprintf::@46
myprintf::@46: scope:[myprintf]  from myprintf::@24
  [97] if(myprintf::bDigits#18<=myprintf::b#17) goto myprintf::@27
  to:myprintf::@25
myprintf::@25: scope:[myprintf]  from myprintf::@26 myprintf::@46
  [98] myprintf::bLen#14 = phi( myprintf::@46/myprintf::bLen#13, myprintf::@26/myprintf::bLen#6 )
  [98] myprintf::bDigits#10 = phi( myprintf::@46/myprintf::bDigits#18, myprintf::@26/myprintf::bDigits#3 )
  [99] if(myprintf::bDigits#10>myprintf::b#17) goto myprintf::@26
  to:myprintf::@27
myprintf::@26: scope:[myprintf]  from myprintf::@25
  [100] strTemp[myprintf::bLen#14] = ' '
  [101] myprintf::bLen#6 = ++ myprintf::bLen#14
  [102] myprintf::bDigits#3 = -- myprintf::bDigits#10
  to:myprintf::@25
myprintf::@23: scope:[myprintf]  from myprintf::@22
  [103] strTemp[myprintf::bLen#13] = myprintf::buf6[myprintf::digit#3]
  [104] myprintf::bLen#5 = ++ myprintf::bLen#13
  [105] myprintf::digit#2 = ++ myprintf::digit#3
  to:myprintf::@22
myprintf::@19: scope:[myprintf]  from myprintf::@18
  [106] if(myprintf::bLeadZero#11==0) goto myprintf::@20
  to:myprintf::@21
myprintf::@20: scope:[myprintf]  from myprintf::@19
  [107] phi()
  to:myprintf::@21
myprintf::@21: scope:[myprintf]  from myprintf::@19 myprintf::@20
  [108] myprintf::$41 = phi( myprintf::@20/' ', myprintf::@19/'0' )
  [109] strTemp[myprintf::bLen#12] = myprintf::$41
  [110] myprintf::bLen#4 = ++ myprintf::bLen#12
  [111] myprintf::bDigits#2 = -- myprintf::bDigits#12
  to:myprintf::@18
myprintf::@15: scope:[myprintf]  from myprintf::@14
  [112] myprintf::b#5 = ++ myprintf::b#17
  to:myprintf::@14
myprintf::@8: scope:[myprintf]  from myprintf::@7
  [113] strTemp[myprintf::bLen#10] = (char)myprintf::w#10
  [114] myprintf::bLen#1 = ++ myprintf::bLen#10
  to:myprintf::@27
myprintf::@28: scope:[myprintf]  from myprintf::@43
  [115] myprintf::bDigits#1 = myprintf::b#1 - '0'
  to:myprintf::@32
myprintf::@4: scope:[myprintf]  from myprintf::@2
  [116] if(myprintf::b#1!='%') goto myprintf::@33
  to:myprintf::@39
myprintf::@39: scope:[myprintf]  from myprintf::@4
  [117] if(myprintf::bArg#10==0) goto myprintf::@34
  to:myprintf::@40
myprintf::@40: scope:[myprintf]  from myprintf::@39
  [118] if(myprintf::bArg#10==1) goto myprintf::@35
  to:myprintf::@41
myprintf::@41: scope:[myprintf]  from myprintf::@40
  [119] myprintf::w#55 = myprintf::w3#8
  to:myprintf::@36
myprintf::@36: scope:[myprintf]  from myprintf::@34 myprintf::@35 myprintf::@41
  [120] myprintf::w#22 = phi( myprintf::@34/myprintf::w#53, myprintf::@35/myprintf::w#54, myprintf::@41/myprintf::w#55 )
  [121] myprintf::bArg#1 = ++ myprintf::bArg#10
  to:myprintf::@32
myprintf::@35: scope:[myprintf]  from myprintf::@40
  [122] myprintf::w#54 = myprintf::w2#8
  to:myprintf::@36
myprintf::@34: scope:[myprintf]  from myprintf::@39
  [123] myprintf::w#53 = myprintf::w1#7
  to:myprintf::@36
myprintf::@33: scope:[myprintf]  from myprintf::@4
  [124] if(myprintf::b#1<$41) goto myprintf::@37
  to:myprintf::@47
myprintf::@47: scope:[myprintf]  from myprintf::@33
  [125] if(myprintf::b#1>=$5a+1) goto myprintf::@37
  to:myprintf::@42
myprintf::@42: scope:[myprintf]  from myprintf::@47
  [126] myprintf::b#6 = myprintf::b#1 + $20
  to:myprintf::@37
myprintf::@37: scope:[myprintf]  from myprintf::@33 myprintf::@42 myprintf::@47
  [127] myprintf::b#25 = phi( myprintf::@33/myprintf::b#1, myprintf::@42/myprintf::b#6 )
  [128] strTemp[myprintf::bLen#10] = myprintf::b#25
  [129] myprintf::bLen#7 = ++ myprintf::bLen#10
  to:myprintf::@32

void Print()
Print: scope:[Print]  from main::@13 main::@16
  asm { ldy#0 loop: ldastrTemp,y beqdone jsr$FFD2 iny jmploop done:  }
  to:Print::@return
Print::@return: scope:[Print]  from Print
  [131] return 
  to:@return

unsigned int div10(unsigned int val)
div10: scope:[div10]  from main::@10
  [132] div10::$0 = div10::val#4 >> 1
  [133] div10::val#0 = div10::$0 + 1
  [134] div10::$2 = div10::val#0 << 1
  [135] div10::val#1 = div10::val#0 + div10::$2
  [136] div10::$3 = div10::val#1 >> 4
  [137] div10::val#2 = div10::val#1 + div10::$3
  [138] div10::$4 = div10::val#2 >> 8
  [139] div10::val#3 = div10::val#2 + div10::$4
  [140] div10::return#0 = div10::val#3 >> 4
  to:div10::@return
div10::@return: scope:[div10]  from div10
  [141] return 
  to:@return

unsigned int div16u(unsigned int dividend , unsigned int divisor)
div16u: scope:[div16u]  from main::@5
  [142] divr16u::dividend#1 = div16u::dividend#0
  [143] call divr16u
  [144] divr16u::return#2 = divr16u::return#0
  to:div16u::@1
div16u::@1: scope:[div16u]  from div16u
  [145] div16u::return#0 = divr16u::return#2
  to:div16u::@return
div16u::@return: scope:[div16u]  from div16u::@1
  [146] return 
  to:@return

void utoa(unsigned int value , char *dst)
utoa: scope:[utoa]  from myprintf::@9
  [147] phi()
  to:utoa::@13
utoa::@13: scope:[utoa]  from utoa
  [148] if(utoa::value#4>=$2710) goto utoa::@5
  to:utoa::@1
utoa::@1: scope:[utoa]  from utoa::@13 utoa::@9
  [149] utoa::dst#16 = phi( utoa::@13/myprintf::buf6, utoa::@9/++myprintf::buf6 )
  [149] utoa::value#6 = phi( utoa::@13/utoa::value#4, utoa::@9/utoa::value#0 )
  [149] utoa::bStarted#5 = phi( utoa::@13/0, utoa::@9/1 )
  [150] if(utoa::bStarted#5==1) goto utoa::@6
  to:utoa::@14
utoa::@14: scope:[utoa]  from utoa::@1
  [151] if(utoa::value#6>=$3e8) goto utoa::@6
  to:utoa::@2
utoa::@2: scope:[utoa]  from utoa::@10 utoa::@14
  [152] utoa::dst#10 = phi( utoa::@14/utoa::dst#16, utoa::@10/utoa::dst#1 )
  [152] utoa::value#11 = phi( utoa::@14/utoa::value#6, utoa::@10/utoa::value#1 )
  [152] utoa::bStarted#6 = phi( utoa::@14/utoa::bStarted#5, utoa::@10/1 )
  [153] if(utoa::bStarted#6==1) goto utoa::@7
  to:utoa::@15
utoa::@15: scope:[utoa]  from utoa::@2
  [154] if(utoa::value#11>=$64) goto utoa::@7
  to:utoa::@3
utoa::@3: scope:[utoa]  from utoa::@11 utoa::@15
  [155] utoa::dst#13 = phi( utoa::@11/utoa::dst#2, utoa::@15/utoa::dst#10 )
  [155] utoa::value#10 = phi( utoa::@11/utoa::value#2, utoa::@15/utoa::value#11 )
  [155] utoa::bStarted#7 = phi( utoa::@11/1, utoa::@15/utoa::bStarted#6 )
  [156] if(utoa::bStarted#7==1) goto utoa::@8
  to:utoa::@16
utoa::@16: scope:[utoa]  from utoa::@3
  [157] if(utoa::value#10>=$a) goto utoa::@8
  to:utoa::@4
utoa::@4: scope:[utoa]  from utoa::@12 utoa::@16
  [158] utoa::dst#12 = phi( utoa::@12/utoa::dst#4, utoa::@16/utoa::dst#13 )
  [158] utoa::value#12 = phi( utoa::@12/utoa::value#3, utoa::@16/utoa::value#10 )
  [159] utoa::$21 = (char)utoa::value#12
  [160] utoa::$16 = '0' + utoa::$21
  [161] *utoa::dst#12 = utoa::$16
  [162] utoa::dst#3 = ++ utoa::dst#12
  [163] *utoa::dst#3 = 0
  to:utoa::@return
utoa::@return: scope:[utoa]  from utoa::@4
  [164] return 
  to:@return
utoa::@8: scope:[utoa]  from utoa::@16 utoa::@3
  [165] append::dst#3 = utoa::dst#13
  [166] append::value#4 = utoa::value#10
  [167] call append
  [168] append::return#10 = append::value#5
  to:utoa::@12
utoa::@12: scope:[utoa]  from utoa::@8
  [169] utoa::value#3 = append::return#10
  [170] utoa::dst#4 = ++ utoa::dst#13
  to:utoa::@4
utoa::@7: scope:[utoa]  from utoa::@15 utoa::@2
  [171] append::dst#2 = utoa::dst#10
  [172] append::value#3 = utoa::value#11
  [173] call append
  [174] append::return#4 = append::value#5
  to:utoa::@11
utoa::@11: scope:[utoa]  from utoa::@7
  [175] utoa::value#2 = append::return#4
  [176] utoa::dst#2 = ++ utoa::dst#10
  to:utoa::@3
utoa::@6: scope:[utoa]  from utoa::@1 utoa::@14
  [177] append::dst#1 = utoa::dst#16
  [178] append::value#2 = utoa::value#6
  [179] call append
  [180] append::return#3 = append::value#5
  to:utoa::@10
utoa::@10: scope:[utoa]  from utoa::@6
  [181] utoa::value#1 = append::return#3
  [182] utoa::dst#1 = ++ utoa::dst#16
  to:utoa::@2
utoa::@5: scope:[utoa]  from utoa::@13
  [183] append::value#1 = utoa::value#4
  [184] call append
  [185] append::return#2 = append::value#5
  to:utoa::@9
utoa::@9: scope:[utoa]  from utoa::@5
  [186] utoa::value#0 = append::return#2
  to:utoa::@1

unsigned int divr16u(unsigned int dividend , unsigned int divisor , unsigned int rem)
divr16u: scope:[divr16u]  from div16u
  [187] phi()
  to:divr16u::@1
divr16u::@1: scope:[divr16u]  from divr16u divr16u::@3
  [188] divr16u::i#2 = phi( divr16u/0, divr16u::@3/divr16u::i#1 )
  [188] divr16u::quotient#3 = phi( divr16u/0, divr16u::@3/divr16u::return#0 )
  [188] divr16u::dividend#2 = phi( divr16u/divr16u::dividend#1, divr16u::@3/divr16u::dividend#0 )
  [188] divr16u::rem#4 = phi( divr16u/0, divr16u::@3/divr16u::rem#9 )
  [189] divr16u::rem#0 = divr16u::rem#4 << 1
  [190] divr16u::$1 = byte1  divr16u::dividend#2
  [191] divr16u::$2 = divr16u::$1 & $80
  [192] if(divr16u::$2==0) goto divr16u::@2
  to:divr16u::@4
divr16u::@4: scope:[divr16u]  from divr16u::@1
  [193] divr16u::rem#1 = divr16u::rem#0 | 1
  to:divr16u::@2
divr16u::@2: scope:[divr16u]  from divr16u::@1 divr16u::@4
  [194] divr16u::rem#5 = phi( divr16u::@1/divr16u::rem#0, divr16u::@4/divr16u::rem#1 )
  [195] divr16u::dividend#0 = divr16u::dividend#2 << 1
  [196] divr16u::quotient#1 = divr16u::quotient#3 << 1
  [197] if(divr16u::rem#5<div16u::divisor#0) goto divr16u::@3
  to:divr16u::@5
divr16u::@5: scope:[divr16u]  from divr16u::@2
  [198] divr16u::quotient#2 = ++ divr16u::quotient#1
  [199] divr16u::rem#2 = divr16u::rem#5 - div16u::divisor#0
  to:divr16u::@3
divr16u::@3: scope:[divr16u]  from divr16u::@2 divr16u::@5
  [200] divr16u::return#0 = phi( divr16u::@2/divr16u::quotient#1, divr16u::@5/divr16u::quotient#2 )
  [200] divr16u::rem#9 = phi( divr16u::@2/divr16u::rem#5, divr16u::@5/divr16u::rem#2 )
  [201] divr16u::i#1 = ++ divr16u::i#2
  [202] if(divr16u::i#1!=$10) goto divr16u::@1
  to:divr16u::@return
divr16u::@return: scope:[divr16u]  from divr16u::@3
  [203] return 
  to:@return

unsigned int append(char *dst , unsigned int value , unsigned int sub)
append: scope:[append]  from utoa::@5 utoa::@6 utoa::@7 utoa::@8
  [204] append::sub#6 = phi( utoa::@5/$2710, utoa::@6/$3e8, utoa::@7/$64, utoa::@8/$a )
  [204] append::value#8 = phi( utoa::@5/append::value#1, utoa::@6/append::value#2, utoa::@7/append::value#3, utoa::@8/append::value#4 )
  [204] append::dst#4 = phi( utoa::@5/myprintf::buf6, utoa::@6/append::dst#1, utoa::@7/append::dst#2, utoa::@8/append::dst#3 )
  [205] *append::dst#4 = '0'
  to:append::@1
append::@1: scope:[append]  from append append::@2
  [206] append::value#5 = phi( append/append::value#8, append::@2/append::value#0 )
  [207] if(append::value#5>=append::sub#6) goto append::@2
  to:append::@return
append::@return: scope:[append]  from append::@1
  [208] return 
  to:@return
append::@2: scope:[append]  from append::@1
  [209] *append::dst#4 = ++ *append::dst#4
  [210] append::value#0 = append::value#5 - append::sub#6
  to:append::@1


VARIABLE REGISTER WEIGHTS
void Print()
unsigned int append(char *dst , unsigned int value , unsigned int sub)
char *append::dst
char *append::dst#1 // 100001.0
char *append::dst#2 // 100001.0
char *append::dst#3 // 100001.0
char *append::dst#4 // 3.33550001E8
unsigned int append::return
unsigned int append::return#10 // 200002.0
unsigned int append::return#2 // 200002.0
unsigned int append::return#3 // 200002.0
unsigned int append::return#4 // 200002.0
unsigned int append::sub
unsigned int append::sub#6 // 3.333333336666667E8
unsigned int append::value
unsigned int append::value#0 // 2.000000002E9
unsigned int append::value#1 // 200002.0
unsigned int append::value#2 // 200002.0
unsigned int append::value#3 // 200002.0
unsigned int append::value#4 // 200002.0
unsigned int append::value#5 // 3.75175001E8
unsigned int append::value#8 // 700002.5
unsigned int div10(unsigned int val)
unsigned int div10::$0 // 2002.0
unsigned int div10::$2 // 2002.0
unsigned int div10::$3 // 2002.0
unsigned int div10::$4 // 2002.0
unsigned int div10::return
unsigned int div10::return#0 // 367.33333333333337
unsigned int div10::return#2 // 202.0
unsigned int div10::val
unsigned int div10::val#0 // 1501.5
unsigned int div10::val#1 // 1501.5
unsigned int div10::val#2 // 1501.5
unsigned int div10::val#3 // 2002.0
unsigned int div10::val#4 // 1102.0
unsigned int div16u(unsigned int dividend , unsigned int divisor)
unsigned int div16u::dividend
unsigned int div16u::dividend#0 // 1102.0
unsigned int div16u::divisor
unsigned int div16u::return
unsigned int div16u::return#0 // 367.33333333333337
unsigned int div16u::return#2 // 202.0
unsigned int divr16u(unsigned int dividend , unsigned int divisor , unsigned int rem)
char divr16u::$1 // 2.0000002E7
char divr16u::$2 // 2.0000002E7
unsigned int divr16u::dividend
unsigned int divr16u::dividend#0 // 2500000.25
unsigned int divr16u::dividend#1 // 5501.0
unsigned int divr16u::dividend#2 // 4287143.428571429
unsigned int divr16u::divisor
char divr16u::i
char divr16u::i#1 // 1.50000015E7
char divr16u::i#2 // 1538461.6923076923
unsigned int divr16u::quotient
unsigned int divr16u::quotient#1 // 1.50000015E7
unsigned int divr16u::quotient#2 // 1.0000001E7
unsigned int divr16u::quotient#3 // 2500000.25
unsigned int divr16u::rem
unsigned int divr16u::rem#0 // 7500000.75
unsigned int divr16u::rem#1 // 2.0000002E7
unsigned int divr16u::rem#2 // 2.0000002E7
unsigned int divr16u::rem#4 // 2.0000002E7
unsigned int divr16u::rem#5 // 1.0000001E7
unsigned int divr16u::rem#9 // 1.0000001E7
unsigned int divr16u::return
unsigned int divr16u::return#0 // 6000200.8
unsigned int divr16u::return#2 // 2002.0
int main()
unsigned int main::$10 // 11.0
unsigned int main::$14 // 22.0
unsigned int main::$15 // 22.0
unsigned int main::$16 // 22.0
unsigned int main::$17 // 22.0
unsigned int main::$3 // 11.0
int main::return
unsigned int main::u
unsigned int main::u#16 // 6.380952380952381
unsigned int main::u#18 // 6.380952380952381
unsigned int main::u#3 // 11.0
unsigned int main::u#4 // 11.0
unsigned int main::v
unsigned int main::v#1 // 101.0
unsigned int main::v#10 // 4.800000000000001
unsigned int main::v#11 // 10.307692307692308
unsigned int main::v#12 // 10.307692307692308
unsigned int main::v#13 // 4.0
unsigned int main::v#2 // 101.0
char myprintf(char *dst , char *str , unsigned int w1 , unsigned int w2 , unsigned int w3)
char myprintf::$18 // 20002.0
char myprintf::$23 // 10001.0
char myprintf::$24 // 20002.0
char myprintf::$29 // 10001.0
char myprintf::$30 // 20002.0
char myprintf::$41 // 100001.0
char myprintf::$56 // 20002.0
char myprintf::$57 // 20002.0
char myprintf::b
char myprintf::b#1 // 12501.249999999998
char myprintf::b#15 // 7500.75
char myprintf::b#16 // 7500.75
char myprintf::b#17 // 24800.320000000003
char myprintf::b#25 // 30003.0
char myprintf::b#5 // 200002.0
char myprintf::b#6 // 20002.0
char myprintf::bArg
char myprintf::bArg#1 // 20002.0
char myprintf::bArg#10 // 1216.337837837838
char myprintf::bArg#11 // 35003.5
char myprintf::bDigits
char myprintf::bDigits#1 // 20002.0
char myprintf::bDigits#10 // 102501.25
char myprintf::bDigits#12 // 58572.14285714286
char myprintf::bDigits#16 // 2222.444444444445
char myprintf::bDigits#18 // 17500.625
char myprintf::bDigits#2 // 200002.0
char myprintf::bDigits#28 // 30003.0
char myprintf::bDigits#29 // 150006.0
char myprintf::bDigits#3 // 200002.0
char myprintf::bFormat
char myprintf::bFormat#10 // 3750.375
char myprintf::bFormat#5 // 25002.5
char myprintf::bLeadZero
char myprintf::bLeadZero#11 // 2205.9705882352937
char myprintf::bLeadZero#20 // 25002.5
char myprintf::bLen
char myprintf::bLen#1 // 20002.0
char myprintf::bLen#10 // 3336.0714285714294
char myprintf::bLen#11 // 3750.375
char myprintf::bLen#12 // 68334.16666666666
char myprintf::bLen#13 // 66001.2
char myprintf::bLen#14 // 136668.3333333333
char myprintf::bLen#28 // 35003.5
char myprintf::bLen#3 // 20002.0
char myprintf::bLen#32 // 120003.0
char myprintf::bLen#36 // 150006.0
char myprintf::bLen#4 // 100001.0
char myprintf::bLen#5 // 100001.0
char myprintf::bLen#6 // 100001.0
char myprintf::bLen#7 // 20002.0
char myprintf::bTrailing
char myprintf::bTrailing#11 // 1029.5147058823527
char myprintf::bTrailing#24 // 25002.5
char myprintf::digit
char myprintf::digit#2 // 200002.0
char myprintf::digit#3 // 100001.0
char *myprintf::dst
char myprintf::return
char *myprintf::str
char *myprintf::str#0 // 20002.0
char *myprintf::str#10 // 527.6973684210526
char *myprintf::str#6 // 101.0
unsigned int myprintf::w
unsigned int myprintf::w#10 // 1029.5147058823527
unsigned int myprintf::w#18 // 35003.5
unsigned int myprintf::w#22 // 20002.0
unsigned int myprintf::w#53 // 20002.0
unsigned int myprintf::w#54 // 20002.0
unsigned int myprintf::w#55 // 20002.0
unsigned int myprintf::w1
unsigned int myprintf::w1#0 // 11.0
unsigned int myprintf::w1#1 // 11.0
unsigned int myprintf::w1#7 // 128.5
unsigned int myprintf::w2
unsigned int myprintf::w2#0 // 22.0
unsigned int myprintf::w2#1 // 22.0
unsigned int myprintf::w2#8 // 128.5
unsigned int myprintf::w3
unsigned int myprintf::w3#0 // 7.333333333333333
unsigned int myprintf::w3#1 // 7.333333333333333
unsigned int myprintf::w3#8 // 128.5
void utoa(unsigned int value , char *dst)
char utoa::$16 // 200002.0
char utoa::$21 // 200002.0
char utoa::bStarted
char utoa::bStarted#5 // 66667.33333333333
char utoa::bStarted#6 // 100001.0
char utoa::bStarted#7 // 200002.0
char *utoa::dst
char *utoa::dst#1 // 200002.0
char *utoa::dst#10 // 62500.625
char *utoa::dst#12 // 100001.0
char *utoa::dst#13 // 62500.625
char *utoa::dst#16 // 37500.375
char *utoa::dst#2 // 200002.0
char *utoa::dst#3 // 200002.0
char *utoa::dst#4 // 200002.0
unsigned int utoa::value
unsigned int utoa::value#0 // 200002.0
unsigned int utoa::value#1 // 100001.0
unsigned int utoa::value#10 // 125001.25
unsigned int utoa::value#11 // 125001.25
unsigned int utoa::value#12 // 200002.0
unsigned int utoa::value#2 // 100001.0
unsigned int utoa::value#3 // 100001.0
unsigned int utoa::value#4 // 103334.66666666666
unsigned int utoa::value#6 // 125001.25

Initial phi equivalence classes
[ main::u#16 main::u#3 ]
[ main::u#18 main::u#4 ]
[ main::v#10 main::v#12 main::v#13 main::v#11 main::v#2 main::v#1 ]
[ myprintf::w1#7 myprintf::w1#1 myprintf::w1#0 ]
[ myprintf::w2#8 myprintf::w2#1 myprintf::w2#0 ]
[ myprintf::w3#8 myprintf::w3#1 myprintf::w3#0 ]
[ myprintf::str#10 myprintf::str#6 myprintf::str#0 ]
[ myprintf::bFormat#10 myprintf::bFormat#5 ]
[ myprintf::bArg#10 myprintf::bArg#11 myprintf::bArg#1 ]
[ myprintf::w#10 myprintf::w#18 myprintf::w#22 myprintf::w#53 myprintf::w#54 myprintf::w#55 ]
[ myprintf::bTrailing#11 myprintf::bTrailing#24 ]
[ myprintf::bLeadZero#11 myprintf::bLeadZero#20 ]
[ myprintf::$23 ]
[ myprintf::$29 ]
[ myprintf::b#17 myprintf::b#5 ]
[ myprintf::bDigits#12 myprintf::bDigits#16 myprintf::bDigits#28 myprintf::bDigits#29 myprintf::bDigits#1 myprintf::bDigits#18 myprintf::bDigits#10 myprintf::bDigits#2 myprintf::bDigits#3 ]
[ myprintf::bLen#32 myprintf::bLen#12 myprintf::bLen#10 myprintf::bLen#28 myprintf::bLen#36 myprintf::bLen#7 myprintf::bLen#3 myprintf::bLen#13 myprintf::bLen#14 myprintf::bLen#1 myprintf::bLen#4 myprintf::bLen#5 myprintf::bLen#6 ]
[ myprintf::digit#3 myprintf::digit#2 ]
[ myprintf::$41 ]
[ myprintf::b#25 myprintf::b#1 myprintf::b#6 ]
[ utoa::bStarted#7 utoa::bStarted#6 utoa::bStarted#5 ]
[ utoa::value#12 utoa::value#3 utoa::value#10 utoa::value#2 utoa::value#11 utoa::value#6 utoa::value#4 utoa::value#0 utoa::value#1 ]
[ utoa::dst#12 utoa::dst#4 utoa::dst#13 utoa::dst#2 utoa::dst#10 utoa::dst#16 utoa::dst#1 ]
[ divr16u::rem#4 divr16u::rem#9 divr16u::rem#5 divr16u::rem#0 divr16u::rem#1 divr16u::rem#2 ]
[ divr16u::dividend#2 divr16u::dividend#1 divr16u::dividend#0 ]
[ divr16u::quotient#3 divr16u::return#0 divr16u::quotient#1 divr16u::quotient#2 ]
[ divr16u::i#2 divr16u::i#1 ]
[ append::dst#4 append::dst#1 append::dst#2 append::dst#3 ]
[ append::sub#6 ]
[ append::value#5 append::value#8 append::value#1 append::value#2 append::value#3 append::value#4 append::value#0 ]
Added variable main::$16 to live range equivalence class [ main::$16 ]
Added variable main::$10 to live range equivalence class [ main::$10 ]
Added variable main::$17 to live range equivalence class [ main::$17 ]
Added variable div10::val#4 to live range equivalence class [ div10::val#4 ]
Added variable div10::return#2 to live range equivalence class [ div10::return#2 ]
Added variable main::$14 to live range equivalence class [ main::$14 ]
Added variable main::$3 to live range equivalence class [ main::$3 ]
Added variable main::$15 to live range equivalence class [ main::$15 ]
Added variable div16u::dividend#0 to live range equivalence class [ div16u::dividend#0 ]
Added variable div16u::return#2 to live range equivalence class [ div16u::return#2 ]
Added variable myprintf::$56 to live range equivalence class [ myprintf::$56 ]
Added variable myprintf::$18 to live range equivalence class [ myprintf::$18 ]
Added variable myprintf::b#15 to live range equivalence class [ myprintf::b#15 ]
Added variable myprintf::$24 to live range equivalence class [ myprintf::$24 ]
Added variable myprintf::bLen#11 to live range equivalence class [ myprintf::bLen#11 ]
Added variable myprintf::$57 to live range equivalence class [ myprintf::$57 ]
Added variable myprintf::b#16 to live range equivalence class [ myprintf::b#16 ]
Added variable myprintf::$30 to live range equivalence class [ myprintf::$30 ]
Added variable div10::$0 to live range equivalence class [ div10::$0 ]
Added variable div10::val#0 to live range equivalence class [ div10::val#0 ]
Added variable div10::$2 to live range equivalence class [ div10::$2 ]
Added variable div10::val#1 to live range equivalence class [ div10::val#1 ]
Added variable div10::$3 to live range equivalence class [ div10::$3 ]
Added variable div10::val#2 to live range equivalence class [ div10::val#2 ]
Added variable div10::$4 to live range equivalence class [ div10::$4 ]
Added variable div10::val#3 to live range equivalence class [ div10::val#3 ]
Added variable div10::return#0 to live range equivalence class [ div10::return#0 ]
Added variable divr16u::return#2 to live range equivalence class [ divr16u::return#2 ]
Added variable div16u::return#0 to live range equivalence class [ div16u::return#0 ]
Added variable utoa::$21 to live range equivalence class [ utoa::$21 ]
Added variable utoa::$16 to live range equivalence class [ utoa::$16 ]
Added variable utoa::dst#3 to live range equivalence class [ utoa::dst#3 ]
Added variable append::return#10 to live range equivalence class [ append::return#10 ]
Added variable append::return#4 to live range equivalence class [ append::return#4 ]
Added variable append::return#3 to live range equivalence class [ append::return#3 ]
Added variable append::return#2 to live range equivalence class [ append::return#2 ]
Added variable divr16u::$1 to live range equivalence class [ divr16u::$1 ]
Added variable divr16u::$2 to live range equivalence class [ divr16u::$2 ]
Complete equivalence classes
[ main::u#16 main::u#3 ]
[ main::u#18 main::u#4 ]
[ main::v#10 main::v#12 main::v#13 main::v#11 main::v#2 main::v#1 ]
[ myprintf::w1#7 myprintf::w1#1 myprintf::w1#0 ]
[ myprintf::w2#8 myprintf::w2#1 myprintf::w2#0 ]
[ myprintf::w3#8 myprintf::w3#1 myprintf::w3#0 ]
[ myprintf::str#10 myprintf::str#6 myprintf::str#0 ]
[ myprintf::bFormat#10 myprintf::bFormat#5 ]
[ myprintf::bArg#10 myprintf::bArg#11 myprintf::bArg#1 ]
[ myprintf::w#10 myprintf::w#18 myprintf::w#22 myprintf::w#53 myprintf::w#54 myprintf::w#55 ]
[ myprintf::bTrailing#11 myprintf::bTrailing#24 ]
[ myprintf::bLeadZero#11 myprintf::bLeadZero#20 ]
[ myprintf::$23 ]
[ myprintf::$29 ]
[ myprintf::b#17 myprintf::b#5 ]
[ myprintf::bDigits#12 myprintf::bDigits#16 myprintf::bDigits#28 myprintf::bDigits#29 myprintf::bDigits#1 myprintf::bDigits#18 myprintf::bDigits#10 myprintf::bDigits#2 myprintf::bDigits#3 ]
[ myprintf::bLen#32 myprintf::bLen#12 myprintf::bLen#10 myprintf::bLen#28 myprintf::bLen#36 myprintf::bLen#7 myprintf::bLen#3 myprintf::bLen#13 myprintf::bLen#14 myprintf::bLen#1 myprintf::bLen#4 myprintf::bLen#5 myprintf::bLen#6 ]
[ myprintf::digit#3 myprintf::digit#2 ]
[ myprintf::$41 ]
[ myprintf::b#25 myprintf::b#1 myprintf::b#6 ]
[ utoa::bStarted#7 utoa::bStarted#6 utoa::bStarted#5 ]
[ utoa::value#12 utoa::value#3 utoa::value#10 utoa::value#2 utoa::value#11 utoa::value#6 utoa::value#4 utoa::value#0 utoa::value#1 ]
[ utoa::dst#12 utoa::dst#4 utoa::dst#13 utoa::dst#2 utoa::dst#10 utoa::dst#16 utoa::dst#1 ]
[ divr16u::rem#4 divr16u::rem#9 divr16u::rem#5 divr16u::rem#0 divr16u::rem#1 divr16u::rem#2 ]
[ divr16u::dividend#2 divr16u::dividend#1 divr16u::dividend#0 ]
[ divr16u::quotient#3 divr16u::return#0 divr16u::quotient#1 divr16u::quotient#2 ]
[ divr16u::i#2 divr16u::i#1 ]
[ append::dst#4 append::dst#1 append::dst#2 append::dst#3 ]
[ append::sub#6 ]
[ append::value#5 append::value#8 append::value#1 append::value#2 append::value#3 append::value#4 append::value#0 ]
[ main::$16 ]
[ main::$10 ]
[ main::$17 ]
[ div10::val#4 ]
[ div10::return#2 ]
[ main::$14 ]
[ main::$3 ]
[ main::$15 ]
[ div16u::dividend#0 ]
[ div16u::return#2 ]
[ myprintf::$56 ]
[ myprintf::$18 ]
[ myprintf::b#15 ]
[ myprintf::$24 ]
[ myprintf::bLen#11 ]
[ myprintf::$57 ]
[ myprintf::b#16 ]
[ myprintf::$30 ]
[ div10::$0 ]
[ div10::val#0 ]
[ div10::$2 ]
[ div10::val#1 ]
[ div10::$3 ]
[ div10::val#2 ]
[ div10::$4 ]
[ div10::val#3 ]
[ div10::return#0 ]
[ divr16u::return#2 ]
[ div16u::return#0 ]
[ utoa::$21 ]
[ utoa::$16 ]
[ utoa::dst#3 ]
[ append::return#10 ]
[ append::return#4 ]
[ append::return#3 ]
[ append::return#2 ]
[ divr16u::$1 ]
[ divr16u::$2 ]
Allocated zp[2]:2 [ main::u#16 main::u#3 ]
Allocated zp[2]:4 [ main::u#18 main::u#4 ]
Allocated zp[2]:6 [ main::v#10 main::v#12 main::v#13 main::v#11 main::v#2 main::v#1 ]
Allocated zp[2]:8 [ myprintf::w1#7 myprintf::w1#1 myprintf::w1#0 ]
Allocated zp[2]:10 [ myprintf::w2#8 myprintf::w2#1 myprintf::w2#0 ]
Allocated zp[2]:12 [ myprintf::w3#8 myprintf::w3#1 myprintf::w3#0 ]
Allocated zp[2]:14 [ myprintf::str#10 myprintf::str#6 myprintf::str#0 ]
Allocated zp[1]:16 [ myprintf::bFormat#10 myprintf::bFormat#5 ]
Allocated zp[1]:17 [ myprintf::bArg#10 myprintf::bArg#11 myprintf::bArg#1 ]
Allocated zp[2]:18 [ myprintf::w#10 myprintf::w#18 myprintf::w#22 myprintf::w#53 myprintf::w#54 myprintf::w#55 ]
Allocated zp[1]:20 [ myprintf::bTrailing#11 myprintf::bTrailing#24 ]
Allocated zp[1]:21 [ myprintf::bLeadZero#11 myprintf::bLeadZero#20 ]
Allocated zp[1]:22 [ myprintf::$23 ]
Allocated zp[1]:23 [ myprintf::$29 ]
Allocated zp[1]:24 [ myprintf::b#17 myprintf::b#5 ]
Allocated zp[1]:25 [ myprintf::bDigits#12 myprintf::bDigits#16 myprintf::bDigits#28 myprintf::bDigits#29 myprintf::bDigits#1 myprintf::bDigits#18 myprintf::bDigits#10 myprintf::bDigits#2 myprintf::bDigits#3 ]
Allocated zp[1]:26 [ myprintf::bLen#32 myprintf::bLen#12 myprintf::bLen#10 myprintf::bLen#28 myprintf::bLen#36 myprintf::bLen#7 myprintf::bLen#3 myprintf::bLen#13 myprintf::bLen#14 myprintf::bLen#1 myprintf::bLen#4 myprintf::bLen#5 myprintf::bLen#6 ]
Allocated zp[1]:27 [ myprintf::digit#3 myprintf::digit#2 ]
Allocated zp[1]:28 [ myprintf::$41 ]
Allocated zp[1]:29 [ myprintf::b#25 myprintf::b#1 myprintf::b#6 ]
Allocated zp[1]:30 [ utoa::bStarted#7 utoa::bStarted#6 utoa::bStarted#5 ]
Allocated zp[2]:31 [ utoa::value#12 utoa::value#3 utoa::value#10 utoa::value#2 utoa::value#11 utoa::value#6 utoa::value#4 utoa::value#0 utoa::value#1 ]
Allocated zp[2]:33 [ utoa::dst#12 utoa::dst#4 utoa::dst#13 utoa::dst#2 utoa::dst#10 utoa::dst#16 utoa::dst#1 ]
Allocated zp[2]:35 [ divr16u::rem#4 divr16u::rem#9 divr16u::rem#5 divr16u::rem#0 divr16u::rem#1 divr16u::rem#2 ]
Allocated zp[2]:37 [ divr16u::dividend#2 divr16u::dividend#1 divr16u::dividend#0 ]
Allocated zp[2]:39 [ divr16u::quotient#3 divr16u::return#0 divr16u::quotient#1 divr16u::quotient#2 ]
Allocated zp[1]:41 [ divr16u::i#2 divr16u::i#1 ]
Allocated zp[2]:42 [ append::dst#4 append::dst#1 append::dst#2 append::dst#3 ]
Allocated zp[2]:44 [ append::sub#6 ]
Allocated zp[2]:46 [ append::value#5 append::value#8 append::value#1 append::value#2 append::value#3 append::value#4 append::value#0 ]
Allocated zp[2]:48 [ main::$16 ]
Allocated zp[2]:50 [ main::$10 ]
Allocated zp[2]:52 [ main::$17 ]
Allocated zp[2]:54 [ div10::val#4 ]
Allocated zp[2]:56 [ div10::return#2 ]
Allocated zp[2]:58 [ main::$14 ]
Allocated zp[2]:60 [ main::$3 ]
Allocated zp[2]:62 [ main::$15 ]
Allocated zp[2]:64 [ div16u::dividend#0 ]
Allocated zp[2]:66 [ div16u::return#2 ]
Allocated zp[1]:68 [ myprintf::$56 ]
Allocated zp[1]:69 [ myprintf::$18 ]
Allocated zp[1]:70 [ myprintf::b#15 ]
Allocated zp[1]:71 [ myprintf::$24 ]
Allocated zp[1]:72 [ myprintf::bLen#11 ]
Allocated zp[1]:73 [ myprintf::$57 ]
Allocated zp[1]:74 [ myprintf::b#16 ]
Allocated zp[1]:75 [ myprintf::$30 ]
Allocated zp[2]:76 [ div10::$0 ]
Allocated zp[2]:78 [ div10::val#0 ]
Allocated zp[2]:80 [ div10::$2 ]
Allocated zp[2]:82 [ div10::val#1 ]
Allocated zp[2]:84 [ div10::$3 ]
Allocated zp[2]:86 [ div10::val#2 ]
Allocated zp[2]:88 [ div10::$4 ]
Allocated zp[2]:90 [ div10::val#3 ]
Allocated zp[2]:92 [ div10::return#0 ]
Allocated zp[2]:94 [ divr16u::return#2 ]
Allocated zp[2]:96 [ div16u::return#0 ]
Allocated zp[1]:98 [ utoa::$21 ]
Allocated zp[1]:99 [ utoa::$16 ]
Allocated zp[2]:100 [ utoa::dst#3 ]
Allocated zp[2]:102 [ append::return#10 ]
Allocated zp[2]:104 [ append::return#4 ]
Allocated zp[2]:106 [ append::return#3 ]
Allocated zp[2]:108 [ append::return#2 ]
Allocated zp[1]:110 [ divr16u::$1 ]
Allocated zp[1]:111 [ divr16u::$2 ]
REGISTER UPLIFT POTENTIAL REGISTERS
Statement [0] *VICBANK = $17 [ ] (  [ ] { }  ) always clobbers reg byte a 
Statement [1] *zp1 = 0 [ ] (  [ ] { }  ) always clobbers reg byte a 
Statement [3] if(*zp1<$a) goto main::@2 [ main::u#16 main::v#13 ] (  [ main::u#16 main::v#13 ] { }  ) always clobbers reg byte a 
Statement [4] *zp1 = 0 [ main::v#13 ] (  [ main::v#13 ] { }  ) always clobbers reg byte a 
Statement [6] if(*zp1<$a) goto main::@8 [ main::u#18 main::v#10 ] (  [ main::u#18 main::v#10 ] { }  ) always clobbers reg byte a 
Statement [8] *TIMEHI = 0 [ main::u#18 main::v#10 ] (  [ main::u#18 main::v#10 ] { }  ) always clobbers reg byte a 
Statement [9] *TIMELO = 0 [ main::u#18 main::v#10 ] (  [ main::u#18 main::v#10 ] { }  ) always clobbers reg byte a 
Statement [10] *zp2 = 0 [ main::u#18 main::v#10 ] (  [ main::u#18 main::v#10 ] { }  ) always clobbers reg byte a 
Statement [12] if(*zp2<$c8) goto main::@10 [ main::u#18 main::v#12 ] (  [ main::u#18 main::v#12 ] { }  ) always clobbers reg byte a 
Statement [13] main::$16 = (unsigned int)*TIMEHI [ main::u#18 main::v#12 main::$16 ] (  [ main::u#18 main::v#12 main::$16 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [14] main::$10 = main::$16 << 8 [ main::u#18 main::v#12 main::$10 ] (  [ main::u#18 main::v#12 main::$10 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [15] main::$17 = (unsigned int)*TIMELO [ main::u#18 main::v#12 main::$10 main::$17 ] (  [ main::u#18 main::v#12 main::$10 main::$17 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [16] myprintf::w3#1 = main::$10 + main::$17 [ main::u#18 main::v#12 myprintf::w3#1 ] (  [ main::u#18 main::v#12 myprintf::w3#1 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [17] myprintf::w1#1 = main::u#18 [ main::u#18 main::v#12 myprintf::w3#1 myprintf::w1#1 ] (  [ main::u#18 main::v#12 myprintf::w3#1 myprintf::w1#1 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [18] myprintf::w2#1 = main::v#12 [ main::u#18 main::v#12 myprintf::w3#1 myprintf::w1#1 myprintf::w2#1 ] (  [ main::u#18 main::v#12 myprintf::w3#1 myprintf::w1#1 myprintf::w2#1 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [22] main::u#4 = main::u#18 - $4d2 [ main::u#4 main::v#12 ] (  [ main::u#4 main::v#12 ] { }  ) always clobbers reg byte a 
Statement [24] div10::val#4 = main::u#18 [ main::u#18 div10::val#4 ] (  [ main::u#18 div10::val#4 ] { { div10::val#4 = main::u#18 } { div10::return#0 = div10::return#2 } }  ) always clobbers reg byte a 
Statement [26] div10::return#2 = div10::return#0 [ main::u#18 div10::return#2 ] (  [ main::u#18 div10::return#2 ] { { div10::val#4 = main::u#18 } { div10::return#0 = div10::return#2 } }  ) always clobbers reg byte a 
Statement [27] main::v#2 = div10::return#2 [ main::u#18 main::v#2 ] (  [ main::u#18 main::v#2 ] { }  ) always clobbers reg byte a 
Statement [29] *TIMEHI = 0 [ main::u#16 main::v#13 ] (  [ main::u#16 main::v#13 ] { }  ) always clobbers reg byte a 
Statement [30] *TIMELO = 0 [ main::u#16 main::v#13 ] (  [ main::u#16 main::v#13 ] { }  ) always clobbers reg byte a 
Statement [31] *zp2 = 0 [ main::u#16 main::v#13 ] (  [ main::u#16 main::v#13 ] { }  ) always clobbers reg byte a 
Statement [33] if(*zp2<$c8) goto main::@5 [ main::u#16 main::v#11 ] (  [ main::u#16 main::v#11 ] { }  ) always clobbers reg byte a 
Statement [34] main::$14 = (unsigned int)*TIMEHI [ main::u#16 main::v#11 main::$14 ] (  [ main::u#16 main::v#11 main::$14 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [35] main::$3 = main::$14 << 8 [ main::u#16 main::v#11 main::$3 ] (  [ main::u#16 main::v#11 main::$3 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [36] main::$15 = (unsigned int)*TIMELO [ main::u#16 main::v#11 main::$3 main::$15 ] (  [ main::u#16 main::v#11 main::$3 main::$15 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [37] myprintf::w3#0 = main::$3 + main::$15 [ main::u#16 main::v#11 myprintf::w3#0 ] (  [ main::u#16 main::v#11 myprintf::w3#0 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [38] myprintf::w1#0 = main::u#16 [ main::u#16 main::v#11 myprintf::w3#0 myprintf::w1#0 ] (  [ main::u#16 main::v#11 myprintf::w3#0 myprintf::w1#0 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [39] myprintf::w2#0 = main::v#11 [ main::u#16 main::v#11 myprintf::w3#0 myprintf::w1#0 myprintf::w2#0 ] (  [ main::u#16 main::v#11 myprintf::w3#0 myprintf::w1#0 myprintf::w2#0 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [43] main::u#3 = main::u#16 - $4d2 [ main::u#3 main::v#11 ] (  [ main::u#3 main::v#11 ] { }  ) always clobbers reg byte a 
Statement [45] div16u::dividend#0 = main::u#16 [ main::u#16 div16u::dividend#0 ] (  [ main::u#16 div16u::dividend#0 ] { { div16u::dividend#0 = main::u#16 } { div16u::return#0 = div16u::return#2 } }  ) always clobbers reg byte a 
Statement [47] div16u::return#2 = div16u::return#0 [ main::u#16 div16u::return#2 ] (  [ main::u#16 div16u::return#2 ] { { div16u::dividend#0 = main::u#16 } { div16u::return#0 = div16u::return#2 } }  ) always clobbers reg byte a 
Statement [48] main::v#1 = div16u::return#2 [ main::u#16 main::v#1 ] (  [ main::u#16 main::v#1 ] { }  ) always clobbers reg byte a 
Statement [52] if(*myprintf::str#10!=0) goto myprintf::@2 [ myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bFormat#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 ] ( myprintf:19 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bFormat#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } }  myprintf:40 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bFormat#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } }  ) always clobbers reg byte a reg byte y 
Removing always clobbered register reg byte a as potential for zp[1]:16 [ myprintf::bFormat#10 myprintf::bFormat#5 ]
Removing always clobbered register reg byte y as potential for zp[1]:16 [ myprintf::bFormat#10 myprintf::bFormat#5 ]
Removing always clobbered register reg byte a as potential for zp[1]:26 [ myprintf::bLen#32 myprintf::bLen#12 myprintf::bLen#10 myprintf::bLen#28 myprintf::bLen#36 myprintf::bLen#7 myprintf::bLen#3 myprintf::bLen#13 myprintf::bLen#14 myprintf::bLen#1 myprintf::bLen#4 myprintf::bLen#5 myprintf::bLen#6 ]
Removing always clobbered register reg byte y as potential for zp[1]:26 [ myprintf::bLen#32 myprintf::bLen#12 myprintf::bLen#10 myprintf::bLen#28 myprintf::bLen#36 myprintf::bLen#7 myprintf::bLen#3 myprintf::bLen#13 myprintf::bLen#14 myprintf::bLen#1 myprintf::bLen#4 myprintf::bLen#5 myprintf::bLen#6 ]
Removing always clobbered register reg byte a as potential for zp[1]:17 [ myprintf::bArg#10 myprintf::bArg#11 myprintf::bArg#1 ]
Removing always clobbered register reg byte y as potential for zp[1]:17 [ myprintf::bArg#10 myprintf::bArg#11 myprintf::bArg#1 ]
Removing always clobbered register reg byte a as potential for zp[1]:20 [ myprintf::bTrailing#11 myprintf::bTrailing#24 ]
Removing always clobbered register reg byte y as potential for zp[1]:20 [ myprintf::bTrailing#11 myprintf::bTrailing#24 ]
Removing always clobbered register reg byte a as potential for zp[1]:25 [ myprintf::bDigits#12 myprintf::bDigits#16 myprintf::bDigits#28 myprintf::bDigits#29 myprintf::bDigits#1 myprintf::bDigits#18 myprintf::bDigits#10 myprintf::bDigits#2 myprintf::bDigits#3 ]
Removing always clobbered register reg byte y as potential for zp[1]:25 [ myprintf::bDigits#12 myprintf::bDigits#16 myprintf::bDigits#28 myprintf::bDigits#29 myprintf::bDigits#1 myprintf::bDigits#18 myprintf::bDigits#10 myprintf::bDigits#2 myprintf::bDigits#3 ]
Removing always clobbered register reg byte a as potential for zp[1]:21 [ myprintf::bLeadZero#11 myprintf::bLeadZero#20 ]
Removing always clobbered register reg byte y as potential for zp[1]:21 [ myprintf::bLeadZero#11 myprintf::bLeadZero#20 ]
Statement [53] strTemp[myprintf::bLen#10] = 0 [ ] ( myprintf:19 [ main::u#18 main::v#12 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } }  myprintf:40 [ main::u#16 main::v#11 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [55] myprintf::b#1 = *myprintf::str#10 [ myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bFormat#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 myprintf::b#1 ] ( myprintf:19 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bFormat#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 myprintf::b#1 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } }  myprintf:40 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bFormat#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 myprintf::b#1 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } }  ) always clobbers reg byte a reg byte y 
Statement [69] myprintf::$18 = myprintf::$56 >> 4 [ myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 myprintf::$18 ] ( myprintf:19 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 myprintf::$18 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } }  myprintf:40 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 myprintf::$18 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [74] myprintf::$24 = myprintf::$23 + myprintf::b#15 [ myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 myprintf::$24 ] ( myprintf:19 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 myprintf::$24 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } }  myprintf:40 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 myprintf::$24 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [82] myprintf::$30 = myprintf::$29 + myprintf::b#16 [ myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 myprintf::bLen#11 myprintf::$30 ] ( myprintf:19 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 myprintf::bLen#11 myprintf::$30 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } }  myprintf:40 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 myprintf::bLen#11 myprintf::$30 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Removing always clobbered register reg byte a as potential for zp[1]:72 [ myprintf::bLen#11 ]
Statement [85] utoa::value#4 = myprintf::w#10 [ myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::value#4 ] ( myprintf:19 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::value#4 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  myprintf:40 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::value#4 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  ) always clobbers reg byte a 
Statement [88] if(myprintf::buf6[myprintf::b#17]!=0) goto myprintf::@15 [ myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 myprintf::b#17 ] ( myprintf:19 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 myprintf::b#17 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } }  myprintf:40 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 myprintf::b#17 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Removing always clobbered register reg byte a as potential for zp[1]:24 [ myprintf::b#17 myprintf::b#5 ]
Statement [100] strTemp[myprintf::bLen#14] = ' ' [ myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bLeadZero#11 myprintf::bLen#14 myprintf::bDigits#10 myprintf::b#17 ] ( myprintf:19 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bLeadZero#11 myprintf::bLen#14 myprintf::bDigits#10 myprintf::b#17 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } }  myprintf:40 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bLeadZero#11 myprintf::bLen#14 myprintf::bDigits#10 myprintf::b#17 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [103] strTemp[myprintf::bLen#13] = myprintf::buf6[myprintf::digit#3] [ myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bLeadZero#11 myprintf::bLen#13 myprintf::bDigits#18 myprintf::b#17 myprintf::digit#3 ] ( myprintf:19 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bLeadZero#11 myprintf::bLen#13 myprintf::bDigits#18 myprintf::b#17 myprintf::digit#3 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } }  myprintf:40 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bLeadZero#11 myprintf::bLen#13 myprintf::bDigits#18 myprintf::b#17 myprintf::digit#3 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Removing always clobbered register reg byte a as potential for zp[1]:27 [ myprintf::digit#3 myprintf::digit#2 ]
Statement [113] strTemp[myprintf::bLen#10] = (char)myprintf::w#10 [ myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 ] ( myprintf:19 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } }  myprintf:40 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [119] myprintf::w#55 = myprintf::w3#8 [ myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#55 ] ( myprintf:19 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#55 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } }  myprintf:40 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#55 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [122] myprintf::w#54 = myprintf::w2#8 [ myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#54 ] ( myprintf:19 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#54 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } }  myprintf:40 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#54 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [123] myprintf::w#53 = myprintf::w1#7 [ myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#53 ] ( myprintf:19 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#53 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } }  myprintf:40 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#53 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [126] myprintf::b#6 = myprintf::b#1 + $20 [ myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bFormat#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 myprintf::b#6 ] ( myprintf:19 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bFormat#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 myprintf::b#6 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } }  myprintf:40 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bFormat#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 myprintf::b#6 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement asm { ldy#0 loop: ldastrTemp,y beqdone jsr$FFD2 iny jmploop done:  } always clobbers reg byte a reg byte x reg byte y 
Statement [132] div10::$0 = div10::val#4 >> 1 [ div10::$0 ] ( div10:25 [ main::u#18 div10::$0 ] { { div10::val#4 = main::u#18 } { div10::return#0 = div10::return#2 } }  ) always clobbers reg byte a 
Statement [133] div10::val#0 = div10::$0 + 1 [ div10::val#0 ] ( div10:25 [ main::u#18 div10::val#0 ] { { div10::val#4 = main::u#18 } { div10::return#0 = div10::return#2 } }  ) always clobbers reg byte a 
Statement [134] div10::$2 = div10::val#0 << 1 [ div10::val#0 div10::$2 ] ( div10:25 [ main::u#18 div10::val#0 div10::$2 ] { { div10::val#4 = main::u#18 } { div10::return#0 = div10::return#2 } }  ) always clobbers reg byte a 
Statement [135] div10::val#1 = div10::val#0 + div10::$2 [ div10::val#1 ] ( div10:25 [ main::u#18 div10::val#1 ] { { div10::val#4 = main::u#18 } { div10::return#0 = div10::return#2 } }  ) always clobbers reg byte a 
Statement [136] div10::$3 = div10::val#1 >> 4 [ div10::val#1 div10::$3 ] ( div10:25 [ main::u#18 div10::val#1 div10::$3 ] { { div10::val#4 = main::u#18 } { div10::return#0 = div10::return#2 } }  ) always clobbers reg byte a 
Statement [137] div10::val#2 = div10::val#1 + div10::$3 [ div10::val#2 ] ( div10:25 [ main::u#18 div10::val#2 ] { { div10::val#4 = main::u#18 } { div10::return#0 = div10::return#2 } }  ) always clobbers reg byte a 
Statement [138] div10::$4 = div10::val#2 >> 8 [ div10::val#2 div10::$4 ] ( div10:25 [ main::u#18 div10::val#2 div10::$4 ] { { div10::val#4 = main::u#18 } { div10::return#0 = div10::return#2 } }  ) always clobbers reg byte a 
Statement [139] div10::val#3 = div10::val#2 + div10::$4 [ div10::val#3 ] ( div10:25 [ main::u#18 div10::val#3 ] { { div10::val#4 = main::u#18 } { div10::return#0 = div10::return#2 } }  ) always clobbers reg byte a 
Statement [140] div10::return#0 = div10::val#3 >> 4 [ div10::return#0 ] ( div10:25 [ main::u#18 div10::return#0 ] { { div10::val#4 = main::u#18 } { div10::return#0 = div10::return#2 } }  ) always clobbers reg byte a 
Statement [142] divr16u::dividend#1 = div16u::dividend#0 [ divr16u::dividend#1 ] ( div16u:46 [ main::u#16 divr16u::dividend#1 ] { { div16u::dividend#0 = main::u#16 divr16u::dividend#1 } { div16u::return#0 = div16u::return#2 } { divr16u::return#0 = divr16u::return#2 } }  ) always clobbers reg byte a 
Statement [144] divr16u::return#2 = divr16u::return#0 [ divr16u::return#2 ] ( div16u:46 [ main::u#16 divr16u::return#2 ] { { div16u::dividend#0 = main::u#16 divr16u::dividend#1 } { div16u::return#0 = div16u::return#2 } { divr16u::return#0 = divr16u::return#2 } }  ) always clobbers reg byte a 
Statement [145] div16u::return#0 = divr16u::return#2 [ div16u::return#0 ] ( div16u:46 [ main::u#16 div16u::return#0 ] { { div16u::dividend#0 = main::u#16 } { div16u::return#0 = div16u::return#2 } }  ) always clobbers reg byte a 
Statement [148] if(utoa::value#4>=$2710) goto utoa::@5 [ utoa::value#4 ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::value#4 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::value#4 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  ) always clobbers reg byte a 
Statement [151] if(utoa::value#6>=$3e8) goto utoa::@6 [ utoa::bStarted#5 utoa::value#6 utoa::dst#16 ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::bStarted#5 utoa::value#6 utoa::dst#16 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::bStarted#5 utoa::value#6 utoa::dst#16 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  ) always clobbers reg byte a 
Removing always clobbered register reg byte a as potential for zp[1]:30 [ utoa::bStarted#7 utoa::bStarted#6 utoa::bStarted#5 ]
Statement [154] if(utoa::value#11>=$64) goto utoa::@7 [ utoa::bStarted#6 utoa::value#11 utoa::dst#10 ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::bStarted#6 utoa::value#11 utoa::dst#10 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::bStarted#6 utoa::value#11 utoa::dst#10 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  ) always clobbers reg byte a 
Statement [157] if(utoa::value#10>=$a) goto utoa::@8 [ utoa::value#10 utoa::dst#13 ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::value#10 utoa::dst#13 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::value#10 utoa::dst#13 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  ) always clobbers reg byte a 
Statement [161] *utoa::dst#12 = utoa::$16 [ utoa::dst#12 ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#12 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#12 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  ) always clobbers reg byte y 
Statement [162] utoa::dst#3 = ++ utoa::dst#12 [ utoa::dst#3 ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#3 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#3 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  ) always clobbers reg byte a 
Statement [163] *utoa::dst#3 = 0 [ ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  ) always clobbers reg byte a reg byte y 
Statement [165] append::dst#3 = utoa::dst#13 [ utoa::value#10 utoa::dst#13 append::dst#3 ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::value#10 utoa::dst#13 append::dst#3 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#3 = append::dst#4 utoa::dst#13 } { append::value#4 = append::value#8 utoa::value#10 } { append::return#10 = append::value#5 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::value#10 utoa::dst#13 append::dst#3 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#3 = append::dst#4 utoa::dst#13 } { append::value#4 = append::value#8 utoa::value#10 } { append::return#10 = append::value#5 } }  ) always clobbers reg byte a 
Statement [166] append::value#4 = utoa::value#10 [ utoa::dst#13 append::dst#3 append::value#4 ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#13 append::dst#3 append::value#4 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#3 = append::dst#4 utoa::dst#13 } { append::value#4 = append::value#8 utoa::value#10 } { append::return#10 = append::value#5 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#13 append::dst#3 append::value#4 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#3 = append::dst#4 utoa::dst#13 } { append::value#4 = append::value#8 utoa::value#10 } { append::return#10 = append::value#5 } }  ) always clobbers reg byte a 
Statement [168] append::return#10 = append::value#5 [ utoa::dst#13 append::return#10 ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#13 append::return#10 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#3 = append::dst#4 utoa::dst#13 } { append::value#4 = append::value#8 utoa::value#10 } { append::return#10 = append::value#5 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#13 append::return#10 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#3 = append::dst#4 utoa::dst#13 } { append::value#4 = append::value#8 utoa::value#10 } { append::return#10 = append::value#5 } }  ) always clobbers reg byte a 
Statement [169] utoa::value#3 = append::return#10 [ utoa::dst#13 utoa::value#3 ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#13 utoa::value#3 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#13 utoa::value#3 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  ) always clobbers reg byte a 
Statement [171] append::dst#2 = utoa::dst#10 [ utoa::value#11 utoa::dst#10 append::dst#2 ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::value#11 utoa::dst#10 append::dst#2 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#2 = append::dst#4 utoa::dst#10 } { append::value#3 = append::value#8 utoa::value#11 } { append::return#4 = append::value#5 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::value#11 utoa::dst#10 append::dst#2 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#2 = append::dst#4 utoa::dst#10 } { append::value#3 = append::value#8 utoa::value#11 } { append::return#4 = append::value#5 } }  ) always clobbers reg byte a 
Statement [172] append::value#3 = utoa::value#11 [ utoa::dst#10 append::dst#2 append::value#3 ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#10 append::dst#2 append::value#3 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#2 = append::dst#4 utoa::dst#10 } { append::value#3 = append::value#8 utoa::value#11 } { append::return#4 = append::value#5 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#10 append::dst#2 append::value#3 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#2 = append::dst#4 utoa::dst#10 } { append::value#3 = append::value#8 utoa::value#11 } { append::return#4 = append::value#5 } }  ) always clobbers reg byte a 
Statement [174] append::return#4 = append::value#5 [ utoa::dst#10 append::return#4 ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#10 append::return#4 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#2 = append::dst#4 utoa::dst#10 } { append::value#3 = append::value#8 utoa::value#11 } { append::return#4 = append::value#5 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#10 append::return#4 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#2 = append::dst#4 utoa::dst#10 } { append::value#3 = append::value#8 utoa::value#11 } { append::return#4 = append::value#5 } }  ) always clobbers reg byte a 
Statement [175] utoa::value#2 = append::return#4 [ utoa::dst#10 utoa::value#2 ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#10 utoa::value#2 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#10 utoa::value#2 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  ) always clobbers reg byte a 
Statement [177] append::dst#1 = utoa::dst#16 [ utoa::value#6 utoa::dst#16 append::dst#1 ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::value#6 utoa::dst#16 append::dst#1 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#1 = append::dst#4 utoa::dst#16 } { append::value#2 = append::value#8 utoa::value#6 } { append::return#3 = append::value#5 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::value#6 utoa::dst#16 append::dst#1 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#1 = append::dst#4 utoa::dst#16 } { append::value#2 = append::value#8 utoa::value#6 } { append::return#3 = append::value#5 } }  ) always clobbers reg byte a 
Statement [178] append::value#2 = utoa::value#6 [ utoa::dst#16 append::dst#1 append::value#2 ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#16 append::dst#1 append::value#2 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#1 = append::dst#4 utoa::dst#16 } { append::value#2 = append::value#8 utoa::value#6 } { append::return#3 = append::value#5 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#16 append::dst#1 append::value#2 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#1 = append::dst#4 utoa::dst#16 } { append::value#2 = append::value#8 utoa::value#6 } { append::return#3 = append::value#5 } }  ) always clobbers reg byte a 
Statement [180] append::return#3 = append::value#5 [ utoa::dst#16 append::return#3 ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#16 append::return#3 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#1 = append::dst#4 utoa::dst#16 } { append::value#2 = append::value#8 utoa::value#6 } { append::return#3 = append::value#5 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#16 append::return#3 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#1 = append::dst#4 utoa::dst#16 } { append::value#2 = append::value#8 utoa::value#6 } { append::return#3 = append::value#5 } }  ) always clobbers reg byte a 
Statement [181] utoa::value#1 = append::return#3 [ utoa::dst#16 utoa::value#1 ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#16 utoa::value#1 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#16 utoa::value#1 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  ) always clobbers reg byte a 
Statement [183] append::value#1 = utoa::value#4 [ append::value#1 ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 append::value#1 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { append::value#1 = append::value#8 utoa::value#4 myprintf::w#10 } { append::return#2 = append::value#5 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 append::value#1 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { append::value#1 = append::value#8 utoa::value#4 myprintf::w#10 } { append::return#2 = append::value#5 } }  ) always clobbers reg byte a 
Statement [185] append::return#2 = append::value#5 [ append::return#2 ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 append::return#2 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { append::value#1 = append::value#8 utoa::value#4 myprintf::w#10 } { append::return#2 = append::value#5 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 append::return#2 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { append::value#1 = append::value#8 utoa::value#4 myprintf::w#10 } { append::return#2 = append::value#5 } }  ) always clobbers reg byte a 
Statement [186] utoa::value#0 = append::return#2 [ utoa::value#0 ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::value#0 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::value#0 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  ) always clobbers reg byte a 
Statement [193] divr16u::rem#1 = divr16u::rem#0 | 1 [ divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( div16u:46::divr16u:143 [ main::u#16 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] { { div16u::dividend#0 = main::u#16 divr16u::dividend#1 } { div16u::return#0 = div16u::return#2 } { divr16u::return#0 = divr16u::return#2 } }  ) always clobbers reg byte a 
Removing always clobbered register reg byte a as potential for zp[1]:41 [ divr16u::i#2 divr16u::i#1 ]
Statement [197] if(divr16u::rem#5<div16u::divisor#0) goto divr16u::@3 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#5 divr16u::quotient#1 ] ( div16u:46::divr16u:143 [ main::u#16 divr16u::i#2 divr16u::dividend#0 divr16u::rem#5 divr16u::quotient#1 ] { { div16u::dividend#0 = main::u#16 divr16u::dividend#1 } { div16u::return#0 = div16u::return#2 } { divr16u::return#0 = divr16u::return#2 } }  ) always clobbers reg byte a 
Statement [199] divr16u::rem#2 = divr16u::rem#5 - div16u::divisor#0 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( div16u:46::divr16u:143 [ main::u#16 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] { { div16u::dividend#0 = main::u#16 divr16u::dividend#1 } { div16u::return#0 = div16u::return#2 } { divr16u::return#0 = divr16u::return#2 } }  ) always clobbers reg byte a 
Statement [205] *append::dst#4 = '0' [ append::dst#4 append::value#8 append::sub#6 ] ( myprintf:19::utoa:86::append:167 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#13 append::dst#4 append::value#8 append::sub#6 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#3 = append::dst#4 utoa::dst#13 } { append::value#4 = append::value#8 utoa::value#10 } { append::return#10 = append::value#5 } }  myprintf:40::utoa:86::append:167 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#13 append::dst#4 append::value#8 append::sub#6 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#3 = append::dst#4 utoa::dst#13 } { append::value#4 = append::value#8 utoa::value#10 } { append::return#10 = append::value#5 } }  myprintf:19::utoa:86::append:173 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#10 append::dst#4 append::value#8 append::sub#6 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#2 = append::dst#4 utoa::dst#10 } { append::value#3 = append::value#8 utoa::value#11 } { append::return#4 = append::value#5 } }  myprintf:40::utoa:86::append:173 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#10 append::dst#4 append::value#8 append::sub#6 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#2 = append::dst#4 utoa::dst#10 } { append::value#3 = append::value#8 utoa::value#11 } { append::return#4 = append::value#5 } }  myprintf:19::utoa:86::append:179 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#16 append::dst#4 append::value#8 append::sub#6 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#1 = append::dst#4 utoa::dst#16 } { append::value#2 = append::value#8 utoa::value#6 } { append::return#3 = append::value#5 } }  myprintf:40::utoa:86::append:179 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#16 append::dst#4 append::value#8 append::sub#6 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#1 = append::dst#4 utoa::dst#16 } { append::value#2 = append::value#8 utoa::value#6 } { append::return#3 = append::value#5 } }  myprintf:19::utoa:86::append:184 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 append::dst#4 append::value#8 append::sub#6 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { append::value#1 = append::value#8 utoa::value#4 myprintf::w#10 } { append::return#2 = append::value#5 } }  myprintf:40::utoa:86::append:184 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 append::dst#4 append::value#8 append::sub#6 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { append::value#1 = append::value#8 utoa::value#4 myprintf::w#10 } { append::return#2 = append::value#5 } }  ) always clobbers reg byte a reg byte y 
Statement [207] if(append::value#5>=append::sub#6) goto append::@2 [ append::value#5 append::dst#4 append::sub#6 ] ( myprintf:19::utoa:86::append:167 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#13 append::value#5 append::dst#4 append::sub#6 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#3 = append::dst#4 utoa::dst#13 } { append::value#4 = append::value#8 utoa::value#10 } { append::return#10 = append::value#5 } }  myprintf:40::utoa:86::append:167 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#13 append::value#5 append::dst#4 append::sub#6 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#3 = append::dst#4 utoa::dst#13 } { append::value#4 = append::value#8 utoa::value#10 } { append::return#10 = append::value#5 } }  myprintf:19::utoa:86::append:173 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#10 append::value#5 append::dst#4 append::sub#6 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#2 = append::dst#4 utoa::dst#10 } { append::value#3 = append::value#8 utoa::value#11 } { append::return#4 = append::value#5 } }  myprintf:40::utoa:86::append:173 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#10 append::value#5 append::dst#4 append::sub#6 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#2 = append::dst#4 utoa::dst#10 } { append::value#3 = append::value#8 utoa::value#11 } { append::return#4 = append::value#5 } }  myprintf:19::utoa:86::append:179 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#16 append::value#5 append::dst#4 append::sub#6 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#1 = append::dst#4 utoa::dst#16 } { append::value#2 = append::value#8 utoa::value#6 } { append::return#3 = append::value#5 } }  myprintf:40::utoa:86::append:179 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#16 append::value#5 append::dst#4 append::sub#6 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#1 = append::dst#4 utoa::dst#16 } { append::value#2 = append::value#8 utoa::value#6 } { append::return#3 = append::value#5 } }  myprintf:19::utoa:86::append:184 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 append::value#5 append::dst#4 append::sub#6 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { append::value#1 = append::value#8 utoa::value#4 myprintf::w#10 } { append::return#2 = append::value#5 } }  myprintf:40::utoa:86::append:184 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 append::value#5 append::dst#4 append::sub#6 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { append::value#1 = append::value#8 utoa::value#4 myprintf::w#10 } { append::return#2 = append::value#5 } }  ) always clobbers reg byte a 
Statement [209] *append::dst#4 = ++ *append::dst#4 [ append::value#5 append::dst#4 append::sub#6 ] ( myprintf:19::utoa:86::append:167 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#13 append::value#5 append::dst#4 append::sub#6 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#3 = append::dst#4 utoa::dst#13 } { append::value#4 = append::value#8 utoa::value#10 } { append::return#10 = append::value#5 } }  myprintf:40::utoa:86::append:167 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#13 append::value#5 append::dst#4 append::sub#6 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#3 = append::dst#4 utoa::dst#13 } { append::value#4 = append::value#8 utoa::value#10 } { append::return#10 = append::value#5 } }  myprintf:19::utoa:86::append:173 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#10 append::value#5 append::dst#4 append::sub#6 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#2 = append::dst#4 utoa::dst#10 } { append::value#3 = append::value#8 utoa::value#11 } { append::return#4 = append::value#5 } }  myprintf:40::utoa:86::append:173 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#10 append::value#5 append::dst#4 append::sub#6 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#2 = append::dst#4 utoa::dst#10 } { append::value#3 = append::value#8 utoa::value#11 } { append::return#4 = append::value#5 } }  myprintf:19::utoa:86::append:179 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#16 append::value#5 append::dst#4 append::sub#6 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#1 = append::dst#4 utoa::dst#16 } { append::value#2 = append::value#8 utoa::value#6 } { append::return#3 = append::value#5 } }  myprintf:40::utoa:86::append:179 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#16 append::value#5 append::dst#4 append::sub#6 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#1 = append::dst#4 utoa::dst#16 } { append::value#2 = append::value#8 utoa::value#6 } { append::return#3 = append::value#5 } }  myprintf:19::utoa:86::append:184 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 append::value#5 append::dst#4 append::sub#6 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { append::value#1 = append::value#8 utoa::value#4 myprintf::w#10 } { append::return#2 = append::value#5 } }  myprintf:40::utoa:86::append:184 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 append::value#5 append::dst#4 append::sub#6 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { append::value#1 = append::value#8 utoa::value#4 myprintf::w#10 } { append::return#2 = append::value#5 } }  ) always clobbers reg byte a reg byte y 
Statement [210] append::value#0 = append::value#5 - append::sub#6 [ append::dst#4 append::sub#6 append::value#0 ] ( myprintf:19::utoa:86::append:167 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#13 append::dst#4 append::sub#6 append::value#0 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#3 = append::dst#4 utoa::dst#13 } { append::value#4 = append::value#8 utoa::value#10 } { append::return#10 = append::value#5 } }  myprintf:40::utoa:86::append:167 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#13 append::dst#4 append::sub#6 append::value#0 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#3 = append::dst#4 utoa::dst#13 } { append::value#4 = append::value#8 utoa::value#10 } { append::return#10 = append::value#5 } }  myprintf:19::utoa:86::append:173 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#10 append::dst#4 append::sub#6 append::value#0 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#2 = append::dst#4 utoa::dst#10 } { append::value#3 = append::value#8 utoa::value#11 } { append::return#4 = append::value#5 } }  myprintf:40::utoa:86::append:173 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#10 append::dst#4 append::sub#6 append::value#0 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#2 = append::dst#4 utoa::dst#10 } { append::value#3 = append::value#8 utoa::value#11 } { append::return#4 = append::value#5 } }  myprintf:19::utoa:86::append:179 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#16 append::dst#4 append::sub#6 append::value#0 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#1 = append::dst#4 utoa::dst#16 } { append::value#2 = append::value#8 utoa::value#6 } { append::return#3 = append::value#5 } }  myprintf:40::utoa:86::append:179 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#16 append::dst#4 append::sub#6 append::value#0 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#1 = append::dst#4 utoa::dst#16 } { append::value#2 = append::value#8 utoa::value#6 } { append::return#3 = append::value#5 } }  myprintf:19::utoa:86::append:184 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 append::dst#4 append::sub#6 append::value#0 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { append::value#1 = append::value#8 utoa::value#4 myprintf::w#10 } { append::return#2 = append::value#5 } }  myprintf:40::utoa:86::append:184 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 append::dst#4 append::sub#6 append::value#0 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { append::value#1 = append::value#8 utoa::value#4 myprintf::w#10 } { append::return#2 = append::value#5 } }  ) always clobbers reg byte a 
Statement [0] *VICBANK = $17 [ ] (  [ ] { }  ) always clobbers reg byte a 
Statement [1] *zp1 = 0 [ ] (  [ ] { }  ) always clobbers reg byte a 
Statement [3] if(*zp1<$a) goto main::@2 [ main::u#16 main::v#13 ] (  [ main::u#16 main::v#13 ] { }  ) always clobbers reg byte a 
Statement [4] *zp1 = 0 [ main::v#13 ] (  [ main::v#13 ] { }  ) always clobbers reg byte a 
Statement [6] if(*zp1<$a) goto main::@8 [ main::u#18 main::v#10 ] (  [ main::u#18 main::v#10 ] { }  ) always clobbers reg byte a 
Statement [8] *TIMEHI = 0 [ main::u#18 main::v#10 ] (  [ main::u#18 main::v#10 ] { }  ) always clobbers reg byte a 
Statement [9] *TIMELO = 0 [ main::u#18 main::v#10 ] (  [ main::u#18 main::v#10 ] { }  ) always clobbers reg byte a 
Statement [10] *zp2 = 0 [ main::u#18 main::v#10 ] (  [ main::u#18 main::v#10 ] { }  ) always clobbers reg byte a 
Statement [12] if(*zp2<$c8) goto main::@10 [ main::u#18 main::v#12 ] (  [ main::u#18 main::v#12 ] { }  ) always clobbers reg byte a 
Statement [13] main::$16 = (unsigned int)*TIMEHI [ main::u#18 main::v#12 main::$16 ] (  [ main::u#18 main::v#12 main::$16 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [14] main::$10 = main::$16 << 8 [ main::u#18 main::v#12 main::$10 ] (  [ main::u#18 main::v#12 main::$10 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [15] main::$17 = (unsigned int)*TIMELO [ main::u#18 main::v#12 main::$10 main::$17 ] (  [ main::u#18 main::v#12 main::$10 main::$17 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [16] myprintf::w3#1 = main::$10 + main::$17 [ main::u#18 main::v#12 myprintf::w3#1 ] (  [ main::u#18 main::v#12 myprintf::w3#1 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [17] myprintf::w1#1 = main::u#18 [ main::u#18 main::v#12 myprintf::w3#1 myprintf::w1#1 ] (  [ main::u#18 main::v#12 myprintf::w3#1 myprintf::w1#1 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [18] myprintf::w2#1 = main::v#12 [ main::u#18 main::v#12 myprintf::w3#1 myprintf::w1#1 myprintf::w2#1 ] (  [ main::u#18 main::v#12 myprintf::w3#1 myprintf::w1#1 myprintf::w2#1 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [22] main::u#4 = main::u#18 - $4d2 [ main::u#4 main::v#12 ] (  [ main::u#4 main::v#12 ] { }  ) always clobbers reg byte a 
Statement [24] div10::val#4 = main::u#18 [ main::u#18 div10::val#4 ] (  [ main::u#18 div10::val#4 ] { { div10::val#4 = main::u#18 } { div10::return#0 = div10::return#2 } }  ) always clobbers reg byte a 
Statement [26] div10::return#2 = div10::return#0 [ main::u#18 div10::return#2 ] (  [ main::u#18 div10::return#2 ] { { div10::val#4 = main::u#18 } { div10::return#0 = div10::return#2 } }  ) always clobbers reg byte a 
Statement [27] main::v#2 = div10::return#2 [ main::u#18 main::v#2 ] (  [ main::u#18 main::v#2 ] { }  ) always clobbers reg byte a 
Statement [29] *TIMEHI = 0 [ main::u#16 main::v#13 ] (  [ main::u#16 main::v#13 ] { }  ) always clobbers reg byte a 
Statement [30] *TIMELO = 0 [ main::u#16 main::v#13 ] (  [ main::u#16 main::v#13 ] { }  ) always clobbers reg byte a 
Statement [31] *zp2 = 0 [ main::u#16 main::v#13 ] (  [ main::u#16 main::v#13 ] { }  ) always clobbers reg byte a 
Statement [33] if(*zp2<$c8) goto main::@5 [ main::u#16 main::v#11 ] (  [ main::u#16 main::v#11 ] { }  ) always clobbers reg byte a 
Statement [34] main::$14 = (unsigned int)*TIMEHI [ main::u#16 main::v#11 main::$14 ] (  [ main::u#16 main::v#11 main::$14 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [35] main::$3 = main::$14 << 8 [ main::u#16 main::v#11 main::$3 ] (  [ main::u#16 main::v#11 main::$3 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [36] main::$15 = (unsigned int)*TIMELO [ main::u#16 main::v#11 main::$3 main::$15 ] (  [ main::u#16 main::v#11 main::$3 main::$15 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [37] myprintf::w3#0 = main::$3 + main::$15 [ main::u#16 main::v#11 myprintf::w3#0 ] (  [ main::u#16 main::v#11 myprintf::w3#0 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [38] myprintf::w1#0 = main::u#16 [ main::u#16 main::v#11 myprintf::w3#0 myprintf::w1#0 ] (  [ main::u#16 main::v#11 myprintf::w3#0 myprintf::w1#0 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [39] myprintf::w2#0 = main::v#11 [ main::u#16 main::v#11 myprintf::w3#0 myprintf::w1#0 myprintf::w2#0 ] (  [ main::u#16 main::v#11 myprintf::w3#0 myprintf::w1#0 myprintf::w2#0 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [43] main::u#3 = main::u#16 - $4d2 [ main::u#3 main::v#11 ] (  [ main::u#3 main::v#11 ] { }  ) always clobbers reg byte a 
Statement [45] div16u::dividend#0 = main::u#16 [ main::u#16 div16u::dividend#0 ] (  [ main::u#16 div16u::dividend#0 ] { { div16u::dividend#0 = main::u#16 } { div16u::return#0 = div16u::return#2 } }  ) always clobbers reg byte a 
Statement [47] div16u::return#2 = div16u::return#0 [ main::u#16 div16u::return#2 ] (  [ main::u#16 div16u::return#2 ] { { div16u::dividend#0 = main::u#16 } { div16u::return#0 = div16u::return#2 } }  ) always clobbers reg byte a 
Statement [48] main::v#1 = div16u::return#2 [ main::u#16 main::v#1 ] (  [ main::u#16 main::v#1 ] { }  ) always clobbers reg byte a 
Statement [52] if(*myprintf::str#10!=0) goto myprintf::@2 [ myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bFormat#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 ] ( myprintf:19 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bFormat#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } }  myprintf:40 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bFormat#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } }  ) always clobbers reg byte a reg byte y 
Statement [53] strTemp[myprintf::bLen#10] = 0 [ ] ( myprintf:19 [ main::u#18 main::v#12 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } }  myprintf:40 [ main::u#16 main::v#11 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [55] myprintf::b#1 = *myprintf::str#10 [ myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bFormat#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 myprintf::b#1 ] ( myprintf:19 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bFormat#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 myprintf::b#1 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } }  myprintf:40 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bFormat#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 myprintf::b#1 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } }  ) always clobbers reg byte a reg byte y 
Statement [69] myprintf::$18 = myprintf::$56 >> 4 [ myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 myprintf::$18 ] ( myprintf:19 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 myprintf::$18 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } }  myprintf:40 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 myprintf::$18 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [74] myprintf::$24 = myprintf::$23 + myprintf::b#15 [ myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 myprintf::$24 ] ( myprintf:19 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 myprintf::$24 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } }  myprintf:40 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 myprintf::$24 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [82] myprintf::$30 = myprintf::$29 + myprintf::b#16 [ myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 myprintf::bLen#11 myprintf::$30 ] ( myprintf:19 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 myprintf::bLen#11 myprintf::$30 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } }  myprintf:40 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 myprintf::bLen#11 myprintf::$30 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [85] utoa::value#4 = myprintf::w#10 [ myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::value#4 ] ( myprintf:19 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::value#4 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  myprintf:40 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::value#4 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  ) always clobbers reg byte a 
Statement [88] if(myprintf::buf6[myprintf::b#17]!=0) goto myprintf::@15 [ myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 myprintf::b#17 ] ( myprintf:19 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 myprintf::b#17 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } }  myprintf:40 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 myprintf::b#17 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [100] strTemp[myprintf::bLen#14] = ' ' [ myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bLeadZero#11 myprintf::bLen#14 myprintf::bDigits#10 myprintf::b#17 ] ( myprintf:19 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bLeadZero#11 myprintf::bLen#14 myprintf::bDigits#10 myprintf::b#17 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } }  myprintf:40 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bLeadZero#11 myprintf::bLen#14 myprintf::bDigits#10 myprintf::b#17 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [103] strTemp[myprintf::bLen#13] = myprintf::buf6[myprintf::digit#3] [ myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bLeadZero#11 myprintf::bLen#13 myprintf::bDigits#18 myprintf::b#17 myprintf::digit#3 ] ( myprintf:19 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bLeadZero#11 myprintf::bLen#13 myprintf::bDigits#18 myprintf::b#17 myprintf::digit#3 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } }  myprintf:40 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bLeadZero#11 myprintf::bLen#13 myprintf::bDigits#18 myprintf::b#17 myprintf::digit#3 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [113] strTemp[myprintf::bLen#10] = (char)myprintf::w#10 [ myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 ] ( myprintf:19 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } }  myprintf:40 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [119] myprintf::w#55 = myprintf::w3#8 [ myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#55 ] ( myprintf:19 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#55 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } }  myprintf:40 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#55 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [122] myprintf::w#54 = myprintf::w2#8 [ myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#54 ] ( myprintf:19 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#54 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } }  myprintf:40 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#54 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [123] myprintf::w#53 = myprintf::w1#7 [ myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#53 ] ( myprintf:19 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#53 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } }  myprintf:40 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#53 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement [126] myprintf::b#6 = myprintf::b#1 + $20 [ myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bFormat#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 myprintf::b#6 ] ( myprintf:19 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bFormat#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 myprintf::b#6 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } }  myprintf:40 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bFormat#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 myprintf::b#6 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } }  ) always clobbers reg byte a 
Statement asm { ldy#0 loop: ldastrTemp,y beqdone jsr$FFD2 iny jmploop done:  } always clobbers reg byte a reg byte x reg byte y 
Statement [132] div10::$0 = div10::val#4 >> 1 [ div10::$0 ] ( div10:25 [ main::u#18 div10::$0 ] { { div10::val#4 = main::u#18 } { div10::return#0 = div10::return#2 } }  ) always clobbers reg byte a 
Statement [133] div10::val#0 = div10::$0 + 1 [ div10::val#0 ] ( div10:25 [ main::u#18 div10::val#0 ] { { div10::val#4 = main::u#18 } { div10::return#0 = div10::return#2 } }  ) always clobbers reg byte a 
Statement [134] div10::$2 = div10::val#0 << 1 [ div10::val#0 div10::$2 ] ( div10:25 [ main::u#18 div10::val#0 div10::$2 ] { { div10::val#4 = main::u#18 } { div10::return#0 = div10::return#2 } }  ) always clobbers reg byte a 
Statement [135] div10::val#1 = div10::val#0 + div10::$2 [ div10::val#1 ] ( div10:25 [ main::u#18 div10::val#1 ] { { div10::val#4 = main::u#18 } { div10::return#0 = div10::return#2 } }  ) always clobbers reg byte a 
Statement [136] div10::$3 = div10::val#1 >> 4 [ div10::val#1 div10::$3 ] ( div10:25 [ main::u#18 div10::val#1 div10::$3 ] { { div10::val#4 = main::u#18 } { div10::return#0 = div10::return#2 } }  ) always clobbers reg byte a 
Statement [137] div10::val#2 = div10::val#1 + div10::$3 [ div10::val#2 ] ( div10:25 [ main::u#18 div10::val#2 ] { { div10::val#4 = main::u#18 } { div10::return#0 = div10::return#2 } }  ) always clobbers reg byte a 
Statement [138] div10::$4 = div10::val#2 >> 8 [ div10::val#2 div10::$4 ] ( div10:25 [ main::u#18 div10::val#2 div10::$4 ] { { div10::val#4 = main::u#18 } { div10::return#0 = div10::return#2 } }  ) always clobbers reg byte a 
Statement [139] div10::val#3 = div10::val#2 + div10::$4 [ div10::val#3 ] ( div10:25 [ main::u#18 div10::val#3 ] { { div10::val#4 = main::u#18 } { div10::return#0 = div10::return#2 } }  ) always clobbers reg byte a 
Statement [140] div10::return#0 = div10::val#3 >> 4 [ div10::return#0 ] ( div10:25 [ main::u#18 div10::return#0 ] { { div10::val#4 = main::u#18 } { div10::return#0 = div10::return#2 } }  ) always clobbers reg byte a 
Statement [142] divr16u::dividend#1 = div16u::dividend#0 [ divr16u::dividend#1 ] ( div16u:46 [ main::u#16 divr16u::dividend#1 ] { { div16u::dividend#0 = main::u#16 divr16u::dividend#1 } { div16u::return#0 = div16u::return#2 } { divr16u::return#0 = divr16u::return#2 } }  ) always clobbers reg byte a 
Statement [144] divr16u::return#2 = divr16u::return#0 [ divr16u::return#2 ] ( div16u:46 [ main::u#16 divr16u::return#2 ] { { div16u::dividend#0 = main::u#16 divr16u::dividend#1 } { div16u::return#0 = div16u::return#2 } { divr16u::return#0 = divr16u::return#2 } }  ) always clobbers reg byte a 
Statement [145] div16u::return#0 = divr16u::return#2 [ div16u::return#0 ] ( div16u:46 [ main::u#16 div16u::return#0 ] { { div16u::dividend#0 = main::u#16 } { div16u::return#0 = div16u::return#2 } }  ) always clobbers reg byte a 
Statement [148] if(utoa::value#4>=$2710) goto utoa::@5 [ utoa::value#4 ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::value#4 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::value#4 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  ) always clobbers reg byte a 
Statement [151] if(utoa::value#6>=$3e8) goto utoa::@6 [ utoa::bStarted#5 utoa::value#6 utoa::dst#16 ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::bStarted#5 utoa::value#6 utoa::dst#16 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::bStarted#5 utoa::value#6 utoa::dst#16 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  ) always clobbers reg byte a 
Statement [154] if(utoa::value#11>=$64) goto utoa::@7 [ utoa::bStarted#6 utoa::value#11 utoa::dst#10 ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::bStarted#6 utoa::value#11 utoa::dst#10 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::bStarted#6 utoa::value#11 utoa::dst#10 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  ) always clobbers reg byte a 
Statement [157] if(utoa::value#10>=$a) goto utoa::@8 [ utoa::value#10 utoa::dst#13 ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::value#10 utoa::dst#13 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::value#10 utoa::dst#13 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  ) always clobbers reg byte a 
Statement [161] *utoa::dst#12 = utoa::$16 [ utoa::dst#12 ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#12 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#12 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  ) always clobbers reg byte y 
Statement [162] utoa::dst#3 = ++ utoa::dst#12 [ utoa::dst#3 ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#3 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#3 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  ) always clobbers reg byte a 
Statement [163] *utoa::dst#3 = 0 [ ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  ) always clobbers reg byte a reg byte y 
Statement [165] append::dst#3 = utoa::dst#13 [ utoa::value#10 utoa::dst#13 append::dst#3 ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::value#10 utoa::dst#13 append::dst#3 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#3 = append::dst#4 utoa::dst#13 } { append::value#4 = append::value#8 utoa::value#10 } { append::return#10 = append::value#5 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::value#10 utoa::dst#13 append::dst#3 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#3 = append::dst#4 utoa::dst#13 } { append::value#4 = append::value#8 utoa::value#10 } { append::return#10 = append::value#5 } }  ) always clobbers reg byte a 
Statement [166] append::value#4 = utoa::value#10 [ utoa::dst#13 append::dst#3 append::value#4 ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#13 append::dst#3 append::value#4 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#3 = append::dst#4 utoa::dst#13 } { append::value#4 = append::value#8 utoa::value#10 } { append::return#10 = append::value#5 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#13 append::dst#3 append::value#4 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#3 = append::dst#4 utoa::dst#13 } { append::value#4 = append::value#8 utoa::value#10 } { append::return#10 = append::value#5 } }  ) always clobbers reg byte a 
Statement [168] append::return#10 = append::value#5 [ utoa::dst#13 append::return#10 ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#13 append::return#10 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#3 = append::dst#4 utoa::dst#13 } { append::value#4 = append::value#8 utoa::value#10 } { append::return#10 = append::value#5 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#13 append::return#10 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#3 = append::dst#4 utoa::dst#13 } { append::value#4 = append::value#8 utoa::value#10 } { append::return#10 = append::value#5 } }  ) always clobbers reg byte a 
Statement [169] utoa::value#3 = append::return#10 [ utoa::dst#13 utoa::value#3 ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#13 utoa::value#3 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#13 utoa::value#3 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  ) always clobbers reg byte a 
Statement [171] append::dst#2 = utoa::dst#10 [ utoa::value#11 utoa::dst#10 append::dst#2 ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::value#11 utoa::dst#10 append::dst#2 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#2 = append::dst#4 utoa::dst#10 } { append::value#3 = append::value#8 utoa::value#11 } { append::return#4 = append::value#5 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::value#11 utoa::dst#10 append::dst#2 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#2 = append::dst#4 utoa::dst#10 } { append::value#3 = append::value#8 utoa::value#11 } { append::return#4 = append::value#5 } }  ) always clobbers reg byte a 
Statement [172] append::value#3 = utoa::value#11 [ utoa::dst#10 append::dst#2 append::value#3 ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#10 append::dst#2 append::value#3 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#2 = append::dst#4 utoa::dst#10 } { append::value#3 = append::value#8 utoa::value#11 } { append::return#4 = append::value#5 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#10 append::dst#2 append::value#3 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#2 = append::dst#4 utoa::dst#10 } { append::value#3 = append::value#8 utoa::value#11 } { append::return#4 = append::value#5 } }  ) always clobbers reg byte a 
Statement [174] append::return#4 = append::value#5 [ utoa::dst#10 append::return#4 ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#10 append::return#4 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#2 = append::dst#4 utoa::dst#10 } { append::value#3 = append::value#8 utoa::value#11 } { append::return#4 = append::value#5 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#10 append::return#4 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#2 = append::dst#4 utoa::dst#10 } { append::value#3 = append::value#8 utoa::value#11 } { append::return#4 = append::value#5 } }  ) always clobbers reg byte a 
Statement [175] utoa::value#2 = append::return#4 [ utoa::dst#10 utoa::value#2 ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#10 utoa::value#2 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#10 utoa::value#2 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  ) always clobbers reg byte a 
Statement [177] append::dst#1 = utoa::dst#16 [ utoa::value#6 utoa::dst#16 append::dst#1 ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::value#6 utoa::dst#16 append::dst#1 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#1 = append::dst#4 utoa::dst#16 } { append::value#2 = append::value#8 utoa::value#6 } { append::return#3 = append::value#5 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::value#6 utoa::dst#16 append::dst#1 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#1 = append::dst#4 utoa::dst#16 } { append::value#2 = append::value#8 utoa::value#6 } { append::return#3 = append::value#5 } }  ) always clobbers reg byte a 
Statement [178] append::value#2 = utoa::value#6 [ utoa::dst#16 append::dst#1 append::value#2 ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#16 append::dst#1 append::value#2 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#1 = append::dst#4 utoa::dst#16 } { append::value#2 = append::value#8 utoa::value#6 } { append::return#3 = append::value#5 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#16 append::dst#1 append::value#2 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#1 = append::dst#4 utoa::dst#16 } { append::value#2 = append::value#8 utoa::value#6 } { append::return#3 = append::value#5 } }  ) always clobbers reg byte a 
Statement [180] append::return#3 = append::value#5 [ utoa::dst#16 append::return#3 ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#16 append::return#3 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#1 = append::dst#4 utoa::dst#16 } { append::value#2 = append::value#8 utoa::value#6 } { append::return#3 = append::value#5 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#16 append::return#3 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#1 = append::dst#4 utoa::dst#16 } { append::value#2 = append::value#8 utoa::value#6 } { append::return#3 = append::value#5 } }  ) always clobbers reg byte a 
Statement [181] utoa::value#1 = append::return#3 [ utoa::dst#16 utoa::value#1 ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#16 utoa::value#1 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#16 utoa::value#1 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  ) always clobbers reg byte a 
Statement [183] append::value#1 = utoa::value#4 [ append::value#1 ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 append::value#1 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { append::value#1 = append::value#8 utoa::value#4 myprintf::w#10 } { append::return#2 = append::value#5 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 append::value#1 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { append::value#1 = append::value#8 utoa::value#4 myprintf::w#10 } { append::return#2 = append::value#5 } }  ) always clobbers reg byte a 
Statement [185] append::return#2 = append::value#5 [ append::return#2 ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 append::return#2 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { append::value#1 = append::value#8 utoa::value#4 myprintf::w#10 } { append::return#2 = append::value#5 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 append::return#2 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { append::value#1 = append::value#8 utoa::value#4 myprintf::w#10 } { append::return#2 = append::value#5 } }  ) always clobbers reg byte a 
Statement [186] utoa::value#0 = append::return#2 [ utoa::value#0 ] ( myprintf:19::utoa:86 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::value#0 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  myprintf:40::utoa:86 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::value#0 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } }  ) always clobbers reg byte a 
Statement [193] divr16u::rem#1 = divr16u::rem#0 | 1 [ divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( div16u:46::divr16u:143 [ main::u#16 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] { { div16u::dividend#0 = main::u#16 divr16u::dividend#1 } { div16u::return#0 = div16u::return#2 } { divr16u::return#0 = divr16u::return#2 } }  ) always clobbers reg byte a 
Statement [197] if(divr16u::rem#5<div16u::divisor#0) goto divr16u::@3 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#5 divr16u::quotient#1 ] ( div16u:46::divr16u:143 [ main::u#16 divr16u::i#2 divr16u::dividend#0 divr16u::rem#5 divr16u::quotient#1 ] { { div16u::dividend#0 = main::u#16 divr16u::dividend#1 } { div16u::return#0 = div16u::return#2 } { divr16u::return#0 = divr16u::return#2 } }  ) always clobbers reg byte a 
Statement [199] divr16u::rem#2 = divr16u::rem#5 - div16u::divisor#0 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( div16u:46::divr16u:143 [ main::u#16 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] { { div16u::dividend#0 = main::u#16 divr16u::dividend#1 } { div16u::return#0 = div16u::return#2 } { divr16u::return#0 = divr16u::return#2 } }  ) always clobbers reg byte a 
Statement [205] *append::dst#4 = '0' [ append::dst#4 append::value#8 append::sub#6 ] ( myprintf:19::utoa:86::append:167 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#13 append::dst#4 append::value#8 append::sub#6 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#3 = append::dst#4 utoa::dst#13 } { append::value#4 = append::value#8 utoa::value#10 } { append::return#10 = append::value#5 } }  myprintf:40::utoa:86::append:167 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#13 append::dst#4 append::value#8 append::sub#6 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#3 = append::dst#4 utoa::dst#13 } { append::value#4 = append::value#8 utoa::value#10 } { append::return#10 = append::value#5 } }  myprintf:19::utoa:86::append:173 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#10 append::dst#4 append::value#8 append::sub#6 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#2 = append::dst#4 utoa::dst#10 } { append::value#3 = append::value#8 utoa::value#11 } { append::return#4 = append::value#5 } }  myprintf:40::utoa:86::append:173 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#10 append::dst#4 append::value#8 append::sub#6 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#2 = append::dst#4 utoa::dst#10 } { append::value#3 = append::value#8 utoa::value#11 } { append::return#4 = append::value#5 } }  myprintf:19::utoa:86::append:179 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#16 append::dst#4 append::value#8 append::sub#6 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#1 = append::dst#4 utoa::dst#16 } { append::value#2 = append::value#8 utoa::value#6 } { append::return#3 = append::value#5 } }  myprintf:40::utoa:86::append:179 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#16 append::dst#4 append::value#8 append::sub#6 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#1 = append::dst#4 utoa::dst#16 } { append::value#2 = append::value#8 utoa::value#6 } { append::return#3 = append::value#5 } }  myprintf:19::utoa:86::append:184 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 append::dst#4 append::value#8 append::sub#6 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { append::value#1 = append::value#8 utoa::value#4 myprintf::w#10 } { append::return#2 = append::value#5 } }  myprintf:40::utoa:86::append:184 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 append::dst#4 append::value#8 append::sub#6 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { append::value#1 = append::value#8 utoa::value#4 myprintf::w#10 } { append::return#2 = append::value#5 } }  ) always clobbers reg byte a reg byte y 
Statement [207] if(append::value#5>=append::sub#6) goto append::@2 [ append::value#5 append::dst#4 append::sub#6 ] ( myprintf:19::utoa:86::append:167 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#13 append::value#5 append::dst#4 append::sub#6 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#3 = append::dst#4 utoa::dst#13 } { append::value#4 = append::value#8 utoa::value#10 } { append::return#10 = append::value#5 } }  myprintf:40::utoa:86::append:167 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#13 append::value#5 append::dst#4 append::sub#6 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#3 = append::dst#4 utoa::dst#13 } { append::value#4 = append::value#8 utoa::value#10 } { append::return#10 = append::value#5 } }  myprintf:19::utoa:86::append:173 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#10 append::value#5 append::dst#4 append::sub#6 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#2 = append::dst#4 utoa::dst#10 } { append::value#3 = append::value#8 utoa::value#11 } { append::return#4 = append::value#5 } }  myprintf:40::utoa:86::append:173 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#10 append::value#5 append::dst#4 append::sub#6 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#2 = append::dst#4 utoa::dst#10 } { append::value#3 = append::value#8 utoa::value#11 } { append::return#4 = append::value#5 } }  myprintf:19::utoa:86::append:179 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#16 append::value#5 append::dst#4 append::sub#6 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#1 = append::dst#4 utoa::dst#16 } { append::value#2 = append::value#8 utoa::value#6 } { append::return#3 = append::value#5 } }  myprintf:40::utoa:86::append:179 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#16 append::value#5 append::dst#4 append::sub#6 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#1 = append::dst#4 utoa::dst#16 } { append::value#2 = append::value#8 utoa::value#6 } { append::return#3 = append::value#5 } }  myprintf:19::utoa:86::append:184 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 append::value#5 append::dst#4 append::sub#6 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { append::value#1 = append::value#8 utoa::value#4 myprintf::w#10 } { append::return#2 = append::value#5 } }  myprintf:40::utoa:86::append:184 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 append::value#5 append::dst#4 append::sub#6 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { append::value#1 = append::value#8 utoa::value#4 myprintf::w#10 } { append::return#2 = append::value#5 } }  ) always clobbers reg byte a 
Statement [209] *append::dst#4 = ++ *append::dst#4 [ append::value#5 append::dst#4 append::sub#6 ] ( myprintf:19::utoa:86::append:167 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#13 append::value#5 append::dst#4 append::sub#6 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#3 = append::dst#4 utoa::dst#13 } { append::value#4 = append::value#8 utoa::value#10 } { append::return#10 = append::value#5 } }  myprintf:40::utoa:86::append:167 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#13 append::value#5 append::dst#4 append::sub#6 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#3 = append::dst#4 utoa::dst#13 } { append::value#4 = append::value#8 utoa::value#10 } { append::return#10 = append::value#5 } }  myprintf:19::utoa:86::append:173 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#10 append::value#5 append::dst#4 append::sub#6 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#2 = append::dst#4 utoa::dst#10 } { append::value#3 = append::value#8 utoa::value#11 } { append::return#4 = append::value#5 } }  myprintf:40::utoa:86::append:173 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#10 append::value#5 append::dst#4 append::sub#6 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#2 = append::dst#4 utoa::dst#10 } { append::value#3 = append::value#8 utoa::value#11 } { append::return#4 = append::value#5 } }  myprintf:19::utoa:86::append:179 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#16 append::value#5 append::dst#4 append::sub#6 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#1 = append::dst#4 utoa::dst#16 } { append::value#2 = append::value#8 utoa::value#6 } { append::return#3 = append::value#5 } }  myprintf:40::utoa:86::append:179 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#16 append::value#5 append::dst#4 append::sub#6 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#1 = append::dst#4 utoa::dst#16 } { append::value#2 = append::value#8 utoa::value#6 } { append::return#3 = append::value#5 } }  myprintf:19::utoa:86::append:184 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 append::value#5 append::dst#4 append::sub#6 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { append::value#1 = append::value#8 utoa::value#4 myprintf::w#10 } { append::return#2 = append::value#5 } }  myprintf:40::utoa:86::append:184 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 append::value#5 append::dst#4 append::sub#6 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { append::value#1 = append::value#8 utoa::value#4 myprintf::w#10 } { append::return#2 = append::value#5 } }  ) always clobbers reg byte a reg byte y 
Statement [210] append::value#0 = append::value#5 - append::sub#6 [ append::dst#4 append::sub#6 append::value#0 ] ( myprintf:19::utoa:86::append:167 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#13 append::dst#4 append::sub#6 append::value#0 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#3 = append::dst#4 utoa::dst#13 } { append::value#4 = append::value#8 utoa::value#10 } { append::return#10 = append::value#5 } }  myprintf:40::utoa:86::append:167 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#13 append::dst#4 append::sub#6 append::value#0 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#3 = append::dst#4 utoa::dst#13 } { append::value#4 = append::value#8 utoa::value#10 } { append::return#10 = append::value#5 } }  myprintf:19::utoa:86::append:173 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#10 append::dst#4 append::sub#6 append::value#0 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#2 = append::dst#4 utoa::dst#10 } { append::value#3 = append::value#8 utoa::value#11 } { append::return#4 = append::value#5 } }  myprintf:40::utoa:86::append:173 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#10 append::dst#4 append::sub#6 append::value#0 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#2 = append::dst#4 utoa::dst#10 } { append::value#3 = append::value#8 utoa::value#11 } { append::return#4 = append::value#5 } }  myprintf:19::utoa:86::append:179 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#16 append::dst#4 append::sub#6 append::value#0 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#1 = append::dst#4 utoa::dst#16 } { append::value#2 = append::value#8 utoa::value#6 } { append::return#3 = append::value#5 } }  myprintf:40::utoa:86::append:179 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 utoa::dst#16 append::dst#4 append::sub#6 append::value#0 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { utoa::value#4 = myprintf::w#10 } { append::dst#1 = append::dst#4 utoa::dst#16 } { append::value#2 = append::value#8 utoa::value#6 } { append::return#3 = append::value#5 } }  myprintf:19::utoa:86::append:184 [ main::u#18 main::v#12 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 append::dst#4 append::sub#6 append::value#0 ] { { myprintf::w1#1 = myprintf::w1#7 main::u#18 } { myprintf::w2#1 = myprintf::w2#8 main::v#12 } { myprintf::w3#1 = myprintf::w3#8 } { append::value#1 = append::value#8 utoa::value#4 myprintf::w#10 } { append::return#2 = append::value#5 } }  myprintf:40::utoa:86::append:184 [ main::u#16 main::v#11 myprintf::w1#7 myprintf::w2#8 myprintf::w3#8 myprintf::str#10 myprintf::bLen#10 myprintf::bArg#10 myprintf::w#10 myprintf::bTrailing#11 myprintf::bDigits#16 myprintf::bLeadZero#11 append::dst#4 append::sub#6 append::value#0 ] { { myprintf::w1#0 = myprintf::w1#7 main::u#16 } { myprintf::w2#0 = myprintf::w2#8 main::v#11 } { myprintf::w3#0 = myprintf::w3#8 } { append::value#1 = append::value#8 utoa::value#4 myprintf::w#10 } { append::return#2 = append::value#5 } }  ) always clobbers reg byte a 
Potential registers zp[2]:2 [ main::u#16 main::u#3 ] : zp[2]:2 , 
Potential registers zp[2]:4 [ main::u#18 main::u#4 ] : zp[2]:4 , 
Potential registers zp[2]:6 [ main::v#10 main::v#12 main::v#13 main::v#11 main::v#2 main::v#1 ] : zp[2]:6 , 
Potential registers zp[2]:8 [ myprintf::w1#7 myprintf::w1#1 myprintf::w1#0 ] : zp[2]:8 , 
Potential registers zp[2]:10 [ myprintf::w2#8 myprintf::w2#1 myprintf::w2#0 ] : zp[2]:10 , 
Potential registers zp[2]:12 [ myprintf::w3#8 myprintf::w3#1 myprintf::w3#0 ] : zp[2]:12 , 
Potential registers zp[2]:14 [ myprintf::str#10 myprintf::str#6 myprintf::str#0 ] : zp[2]:14 , 
Potential registers zp[1]:16 [ myprintf::bFormat#10 myprintf::bFormat#5 ] : zp[1]:16 , reg byte x , 
Potential registers zp[1]:17 [ myprintf::bArg#10 myprintf::bArg#11 myprintf::bArg#1 ] : zp[1]:17 , reg byte x , 
Potential registers zp[2]:18 [ myprintf::w#10 myprintf::w#18 myprintf::w#22 myprintf::w#53 myprintf::w#54 myprintf::w#55 ] : zp[2]:18 , 
Potential registers zp[1]:20 [ myprintf::bTrailing#11 myprintf::bTrailing#24 ] : zp[1]:20 , reg byte x , 
Potential registers zp[1]:21 [ myprintf::bLeadZero#11 myprintf::bLeadZero#20 ] : zp[1]:21 , reg byte x , 
Potential registers zp[1]:22 [ myprintf::$23 ] : zp[1]:22 , reg byte a , reg byte x , reg byte y , 
Potential registers zp[1]:23 [ myprintf::$29 ] : zp[1]:23 , reg byte a , reg byte x , reg byte y , 
Potential registers zp[1]:24 [ myprintf::b#17 myprintf::b#5 ] : zp[1]:24 , reg byte x , reg byte y , 
Potential registers zp[1]:25 [ myprintf::bDigits#12 myprintf::bDigits#16 myprintf::bDigits#28 myprintf::bDigits#29 myprintf::bDigits#1 myprintf::bDigits#18 myprintf::bDigits#10 myprintf::bDigits#2 myprintf::bDigits#3 ] : zp[1]:25 , reg byte x , 
Potential registers zp[1]:26 [ myprintf::bLen#32 myprintf::bLen#12 myprintf::bLen#10 myprintf::bLen#28 myprintf::bLen#36 myprintf::bLen#7 myprintf::bLen#3 myprintf::bLen#13 myprintf::bLen#14 myprintf::bLen#1 myprintf::bLen#4 myprintf::bLen#5 myprintf::bLen#6 ] : zp[1]:26 , reg byte x , 
Potential registers zp[1]:27 [ myprintf::digit#3 myprintf::digit#2 ] : zp[1]:27 , reg byte x , reg byte y , 
Potential registers zp[1]:28 [ myprintf::$41 ] : zp[1]:28 , reg byte a , reg byte x , reg byte y , 
Potential registers zp[1]:29 [ myprintf::b#25 myprintf::b#1 myprintf::b#6 ] : zp[1]:29 , reg byte a , reg byte x , reg byte y , 
Potential registers zp[1]:30 [ utoa::bStarted#7 utoa::bStarted#6 utoa::bStarted#5 ] : zp[1]:30 , reg byte x , reg byte y , 
Potential registers zp[2]:31 [ utoa::value#12 utoa::value#3 utoa::value#10 utoa::value#2 utoa::value#11 utoa::value#6 utoa::value#4 utoa::value#0 utoa::value#1 ] : zp[2]:31 , 
Potential registers zp[2]:33 [ utoa::dst#12 utoa::dst#4 utoa::dst#13 utoa::dst#2 utoa::dst#10 utoa::dst#16 utoa::dst#1 ] : zp[2]:33 , 
Potential registers zp[2]:35 [ divr16u::rem#4 divr16u::rem#9 divr16u::rem#5 divr16u::rem#0 divr16u::rem#1 divr16u::rem#2 ] : zp[2]:35 , 
Potential registers zp[2]:37 [ divr16u::dividend#2 divr16u::dividend#1 divr16u::dividend#0 ] : zp[2]:37 , 
Potential registers zp[2]:39 [ divr16u::quotient#3 divr16u::return#0 divr16u::quotient#1 divr16u::quotient#2 ] : zp[2]:39 , 
Potential registers zp[1]:41 [ divr16u::i#2 divr16u::i#1 ] : zp[1]:41 , reg byte x , reg byte y , 
Potential registers zp[2]:42 [ append::dst#4 append::dst#1 append::dst#2 append::dst#3 ] : zp[2]:42 , 
Potential registers zp[2]:44 [ append::sub#6 ] : zp[2]:44 , 
Potential registers zp[2]:46 [ append::value#5 append::value#8 append::value#1 append::value#2 append::value#3 append::value#4 append::value#0 ] : zp[2]:46 , 
Potential registers zp[2]:48 [ main::$16 ] : zp[2]:48 , 
Potential registers zp[2]:50 [ main::$10 ] : zp[2]:50 , 
Potential registers zp[2]:52 [ main::$17 ] : zp[2]:52 , 
Potential registers zp[2]:54 [ div10::val#4 ] : zp[2]:54 , 
Potential registers zp[2]:56 [ div10::return#2 ] : zp[2]:56 , 
Potential registers zp[2]:58 [ main::$14 ] : zp[2]:58 , 
Potential registers zp[2]:60 [ main::$3 ] : zp[2]:60 , 
Potential registers zp[2]:62 [ main::$15 ] : zp[2]:62 , 
Potential registers zp[2]:64 [ div16u::dividend#0 ] : zp[2]:64 , 
Potential registers zp[2]:66 [ div16u::return#2 ] : zp[2]:66 , 
Potential registers zp[1]:68 [ myprintf::$56 ] : zp[1]:68 , reg byte a , reg byte x , reg byte y , 
Potential registers zp[1]:69 [ myprintf::$18 ] : zp[1]:69 , reg byte a , reg byte x , reg byte y , 
Potential registers zp[1]:70 [ myprintf::b#15 ] : zp[1]:70 , reg byte a , reg byte x , reg byte y , 
Potential registers zp[1]:71 [ myprintf::$24 ] : zp[1]:71 , reg byte a , reg byte x , reg byte y , 
Potential registers zp[1]:72 [ myprintf::bLen#11 ] : zp[1]:72 , reg byte x , reg byte y , 
Potential registers zp[1]:73 [ myprintf::$57 ] : zp[1]:73 , reg byte a , reg byte x , reg byte y , 
Potential registers zp[1]:74 [ myprintf::b#16 ] : zp[1]:74 , reg byte a , reg byte x , reg byte y , 
Potential registers zp[1]:75 [ myprintf::$30 ] : zp[1]:75 , reg byte a , reg byte x , reg byte y , 
Potential registers zp[2]:76 [ div10::$0 ] : zp[2]:76 , 
Potential registers zp[2]:78 [ div10::val#0 ] : zp[2]:78 , 
Potential registers zp[2]:80 [ div10::$2 ] : zp[2]:80 , 
Potential registers zp[2]:82 [ div10::val#1 ] : zp[2]:82 , 
Potential registers zp[2]:84 [ div10::$3 ] : zp[2]:84 , 
Potential registers zp[2]:86 [ div10::val#2 ] : zp[2]:86 , 
Potential registers zp[2]:88 [ div10::$4 ] : zp[2]:88 , 
Potential registers zp[2]:90 [ div10::val#3 ] : zp[2]:90 , 
Potential registers zp[2]:92 [ div10::return#0 ] : zp[2]:92 , 
Potential registers zp[2]:94 [ divr16u::return#2 ] : zp[2]:94 , 
Potential registers zp[2]:96 [ div16u::return#0 ] : zp[2]:96 , 
Potential registers zp[1]:98 [ utoa::$21 ] : zp[1]:98 , reg byte a , reg byte x , reg byte y , 
Potential registers zp[1]:99 [ utoa::$16 ] : zp[1]:99 , reg byte a , reg byte x , reg byte y , 
Potential registers zp[2]:100 [ utoa::dst#3 ] : zp[2]:100 , 
Potential registers zp[2]:102 [ append::return#10 ] : zp[2]:102 , 
Potential registers zp[2]:104 [ append::return#4 ] : zp[2]:104 , 
Potential registers zp[2]:106 [ append::return#3 ] : zp[2]:106 , 
Potential registers zp[2]:108 [ append::return#2 ] : zp[2]:108 , 
Potential registers zp[1]:110 [ divr16u::$1 ] : zp[1]:110 , reg byte a , reg byte x , reg byte y , 
Potential registers zp[1]:111 [ divr16u::$2 ] : zp[1]:111 , reg byte a , reg byte x , reg byte y , 

REGISTER UPLIFT SCOPES
Uplift Scope [append] 2,376,675,013.5: zp[2]:46 [ append::value#5 append::value#8 append::value#1 append::value#2 append::value#3 append::value#4 append::value#0 ] 333,850,004: zp[2]:42 [ append::dst#4 append::dst#1 append::dst#2 append::dst#3 ] 333,333,333.67: zp[2]:44 [ append::sub#6 ] 200,002: zp[2]:102 [ append::return#10 ] 200,002: zp[2]:104 [ append::return#4 ] 200,002: zp[2]:106 [ append::return#3 ] 200,002: zp[2]:108 [ append::return#2 ] 
Uplift Scope [divr16u] 87,500,008.75: zp[2]:35 [ divr16u::rem#4 divr16u::rem#9 divr16u::rem#5 divr16u::rem#0 divr16u::rem#1 divr16u::rem#2 ] 33,500,203.55: zp[2]:39 [ divr16u::quotient#3 divr16u::return#0 divr16u::quotient#1 divr16u::quotient#2 ] 20,000,002: zp[1]:110 [ divr16u::$1 ] 20,000,002: zp[1]:111 [ divr16u::$2 ] 16,538,463.19: zp[1]:41 [ divr16u::i#2 divr16u::i#1 ] 6,792,644.68: zp[2]:37 [ divr16u::dividend#2 divr16u::dividend#1 divr16u::dividend#0 ] 2,002: zp[2]:94 [ divr16u::return#2 ] 
Uplift Scope [utoa] 1,178,345.42: zp[2]:31 [ utoa::value#12 utoa::value#3 utoa::value#10 utoa::value#2 utoa::value#11 utoa::value#6 utoa::value#4 utoa::value#0 utoa::value#1 ] 862,508.62: zp[2]:33 [ utoa::dst#12 utoa::dst#4 utoa::dst#13 utoa::dst#2 utoa::dst#10 utoa::dst#16 utoa::dst#1 ] 366,670.33: zp[1]:30 [ utoa::bStarted#7 utoa::bStarted#6 utoa::bStarted#5 ] 200,002: zp[1]:98 [ utoa::$21 ] 200,002: zp[1]:99 [ utoa::$16 ] 200,002: zp[2]:100 [ utoa::dst#3 ] 
Uplift Scope [myprintf] 939,361.27: zp[1]:26 [ myprintf::bLen#32 myprintf::bLen#12 myprintf::bLen#10 myprintf::bLen#28 myprintf::bLen#36 myprintf::bLen#7 myprintf::bLen#3 myprintf::bLen#13 myprintf::bLen#14 myprintf::bLen#1 myprintf::bLen#4 myprintf::bLen#5 myprintf::bLen#6 ] 780,811.46: zp[1]:25 [ myprintf::bDigits#12 myprintf::bDigits#16 myprintf::bDigits#28 myprintf::bDigits#29 myprintf::bDigits#1 myprintf::bDigits#18 myprintf::bDigits#10 myprintf::bDigits#2 myprintf::bDigits#3 ] 300,003: zp[1]:27 [ myprintf::digit#3 myprintf::digit#2 ] 224,802.32: zp[1]:24 [ myprintf::b#17 myprintf::b#5 ] 116,041.01: zp[2]:18 [ myprintf::w#10 myprintf::w#18 myprintf::w#22 myprintf::w#53 myprintf::w#54 myprintf::w#55 ] 100,001: zp[1]:28 [ myprintf::$41 ] 62,506.25: zp[1]:29 [ myprintf::b#25 myprintf::b#1 myprintf::b#6 ] 56,221.84: zp[1]:17 [ myprintf::bArg#10 myprintf::bArg#11 myprintf::bArg#1 ] 28,752.88: zp[1]:16 [ myprintf::bFormat#10 myprintf::bFormat#5 ] 27,208.47: zp[1]:21 [ myprintf::bLeadZero#11 myprintf::bLeadZero#20 ] 26,032.01: zp[1]:20 [ myprintf::bTrailing#11 myprintf::bTrailing#24 ] 20,630.7: zp[2]:14 [ myprintf::str#10 myprintf::str#6 myprintf::str#0 ] 20,002: zp[1]:68 [ myprintf::$56 ] 20,002: zp[1]:69 [ myprintf::$18 ] 20,002: zp[1]:71 [ myprintf::$24 ] 20,002: zp[1]:73 [ myprintf::$57 ] 20,002: zp[1]:75 [ myprintf::$30 ] 10,001: zp[1]:22 [ myprintf::$23 ] 10,001: zp[1]:23 [ myprintf::$29 ] 7,500.75: zp[1]:70 [ myprintf::b#15 ] 7,500.75: zp[1]:74 [ myprintf::b#16 ] 3,750.38: zp[1]:72 [ myprintf::bLen#11 ] 172.5: zp[2]:10 [ myprintf::w2#8 myprintf::w2#1 myprintf::w2#0 ] 150.5: zp[2]:8 [ myprintf::w1#7 myprintf::w1#1 myprintf::w1#0 ] 143.17: zp[2]:12 [ myprintf::w3#8 myprintf::w3#1 myprintf::w3#0 ] 
Uplift Scope [div10] 2,002: zp[2]:76 [ div10::$0 ] 2,002: zp[2]:80 [ div10::$2 ] 2,002: zp[2]:84 [ div10::$3 ] 2,002: zp[2]:88 [ div10::$4 ] 2,002: zp[2]:90 [ div10::val#3 ] 1,501.5: zp[2]:78 [ div10::val#0 ] 1,501.5: zp[2]:82 [ div10::val#1 ] 1,501.5: zp[2]:86 [ div10::val#2 ] 1,102: zp[2]:54 [ div10::val#4 ] 367.33: zp[2]:92 [ div10::return#0 ] 202: zp[2]:56 [ div10::return#2 ] 
Uplift Scope [div16u] 1,102: zp[2]:64 [ div16u::dividend#0 ] 367.33: zp[2]:96 [ div16u::return#0 ] 202: zp[2]:66 [ div16u::return#2 ] 
Uplift Scope [main] 231.42: zp[2]:6 [ main::v#10 main::v#12 main::v#13 main::v#11 main::v#2 main::v#1 ] 22: zp[2]:48 [ main::$16 ] 22: zp[2]:52 [ main::$17 ] 22: zp[2]:58 [ main::$14 ] 22: zp[2]:62 [ main::$15 ] 17.38: zp[2]:2 [ main::u#16 main::u#3 ] 17.38: zp[2]:4 [ main::u#18 main::u#4 ] 11: zp[2]:50 [ main::$10 ] 11: zp[2]:60 [ main::$3 ] 
Uplift Scope [Print] 
Uplift Scope [] 

Uplifting [append] best 485866 combination zp[2]:46 [ append::value#5 append::value#8 append::value#1 append::value#2 append::value#3 append::value#4 append::value#0 ] zp[2]:42 [ append::dst#4 append::dst#1 append::dst#2 append::dst#3 ] zp[2]:44 [ append::sub#6 ] zp[2]:102 [ append::return#10 ] zp[2]:104 [ append::return#4 ] zp[2]:106 [ append::return#3 ] zp[2]:108 [ append::return#2 ] 
Uplifting [divr16u] best 466866 combination zp[2]:35 [ divr16u::rem#4 divr16u::rem#9 divr16u::rem#5 divr16u::rem#0 divr16u::rem#1 divr16u::rem#2 ] zp[2]:39 [ divr16u::quotient#3 divr16u::return#0 divr16u::quotient#1 divr16u::quotient#2 ] reg byte a [ divr16u::$1 ] reg byte a [ divr16u::$2 ] reg byte x [ divr16u::i#2 divr16u::i#1 ] zp[2]:37 [ divr16u::dividend#2 divr16u::dividend#1 divr16u::dividend#0 ] zp[2]:94 [ divr16u::return#2 ] 
Uplifting [utoa] best 466835 combination zp[2]:31 [ utoa::value#12 utoa::value#3 utoa::value#10 utoa::value#2 utoa::value#11 utoa::value#6 utoa::value#4 utoa::value#0 utoa::value#1 ] zp[2]:33 [ utoa::dst#12 utoa::dst#4 utoa::dst#13 utoa::dst#2 utoa::dst#10 utoa::dst#16 utoa::dst#1 ] reg byte x [ utoa::bStarted#7 utoa::bStarted#6 utoa::bStarted#5 ] reg byte a [ utoa::$21 ] reg byte a [ utoa::$16 ] zp[2]:100 [ utoa::dst#3 ] 
Uplifting [div10] best 466835 combination zp[2]:76 [ div10::$0 ] zp[2]:80 [ div10::$2 ] zp[2]:84 [ div10::$3 ] zp[2]:88 [ div10::$4 ] zp[2]:90 [ div10::val#3 ] zp[2]:78 [ div10::val#0 ] zp[2]:82 [ div10::val#1 ] zp[2]:86 [ div10::val#2 ] zp[2]:54 [ div10::val#4 ] zp[2]:92 [ div10::return#0 ] zp[2]:56 [ div10::return#2 ] 
Uplifting [div16u] best 466835 combination zp[2]:64 [ div16u::dividend#0 ] zp[2]:96 [ div16u::return#0 ] zp[2]:66 [ div16u::return#2 ] 
Uplifting [main] best 466835 combination zp[2]:6 [ main::v#10 main::v#12 main::v#13 main::v#11 main::v#2 main::v#1 ] zp[2]:48 [ main::$16 ] zp[2]:52 [ main::$17 ] zp[2]:58 [ main::$14 ] zp[2]:62 [ main::$15 ] zp[2]:2 [ main::u#16 main::u#3 ] zp[2]:4 [ main::u#18 main::u#4 ] zp[2]:50 [ main::$10 ] zp[2]:60 [ main::$3 ] 
Uplifting [Print] best 466835 combination 
Uplifting [] best 466835 combination 
Attempting to uplift remaining variables inzp[1]:26 [ myprintf::bLen#32 myprintf::bLen#12 myprintf::bLen#10 myprintf::bLen#28 myprintf::bLen#36 myprintf::bLen#7 myprintf::bLen#3 myprintf::bLen#13 myprintf::bLen#14 myprintf::bLen#1 myprintf::bLen#4 myprintf::bLen#5 myprintf::bLen#6 ]
Uplifting [myprintf] best 466835 combination zp[1]:26 [ myprintf::bLen#32 myprintf::bLen#12 myprintf::bLen#10 myprintf::bLen#28 myprintf::bLen#36 myprintf::bLen#7 myprintf::bLen#3 myprintf::bLen#13 myprintf::bLen#14 myprintf::bLen#1 myprintf::bLen#4 myprintf::bLen#5 myprintf::bLen#6 ] 
Attempting to uplift remaining variables inzp[1]:25 [ myprintf::bDigits#12 myprintf::bDigits#16 myprintf::bDigits#28 myprintf::bDigits#29 myprintf::bDigits#1 myprintf::bDigits#18 myprintf::bDigits#10 myprintf::bDigits#2 myprintf::bDigits#3 ]
Uplifting [myprintf] best 466835 combination zp[1]:25 [ myprintf::bDigits#12 myprintf::bDigits#16 myprintf::bDigits#28 myprintf::bDigits#29 myprintf::bDigits#1 myprintf::bDigits#18 myprintf::bDigits#10 myprintf::bDigits#2 myprintf::bDigits#3 ] 
Attempting to uplift remaining variables inzp[1]:27 [ myprintf::digit#3 myprintf::digit#2 ]
Uplifting [myprintf] best 454835 combination reg byte x [ myprintf::digit#3 myprintf::digit#2 ] 
Attempting to uplift remaining variables inzp[1]:24 [ myprintf::b#17 myprintf::b#5 ]
Uplifting [myprintf] best 454835 combination zp[1]:24 [ myprintf::b#17 myprintf::b#5 ] 
Attempting to uplift remaining variables inzp[1]:28 [ myprintf::$41 ]
Uplifting [myprintf] best 445835 combination reg byte a [ myprintf::$41 ] 
Attempting to uplift remaining variables inzp[1]:29 [ myprintf::b#25 myprintf::b#1 myprintf::b#6 ]
Uplifting [myprintf] best 442085 combination reg byte x [ myprintf::b#25 myprintf::b#1 myprintf::b#6 ] 
Attempting to uplift remaining variables inzp[1]:17 [ myprintf::bArg#10 myprintf::bArg#11 myprintf::bArg#1 ]
Uplifting [myprintf] best 442085 combination zp[1]:17 [ myprintf::bArg#10 myprintf::bArg#11 myprintf::bArg#1 ] 
Attempting to uplift remaining variables inzp[1]:16 [ myprintf::bFormat#10 myprintf::bFormat#5 ]
Uplifting [myprintf] best 442085 combination zp[1]:16 [ myprintf::bFormat#10 myprintf::bFormat#5 ] 
Attempting to uplift remaining variables inzp[1]:21 [ myprintf::bLeadZero#11 myprintf::bLeadZero#20 ]
Uplifting [myprintf] best 442085 combination zp[1]:21 [ myprintf::bLeadZero#11 myprintf::bLeadZero#20 ] 
Attempting to uplift remaining variables inzp[1]:20 [ myprintf::bTrailing#11 myprintf::bTrailing#24 ]
Uplifting [myprintf] best 442085 combination zp[1]:20 [ myprintf::bTrailing#11 myprintf::bTrailing#24 ] 
Attempting to uplift remaining variables inzp[1]:68 [ myprintf::$56 ]
Uplifting [myprintf] best 441485 combination reg byte a [ myprintf::$56 ] 
Attempting to uplift remaining variables inzp[1]:69 [ myprintf::$18 ]
Uplifting [myprintf] best 440885 combination reg byte a [ myprintf::$18 ] 
Attempting to uplift remaining variables inzp[1]:71 [ myprintf::$24 ]
Uplifting [myprintf] best 440285 combination reg byte a [ myprintf::$24 ] 
Attempting to uplift remaining variables inzp[1]:73 [ myprintf::$57 ]
Uplifting [myprintf] best 439685 combination reg byte a [ myprintf::$57 ] 
Attempting to uplift remaining variables inzp[1]:75 [ myprintf::$30 ]
Uplifting [myprintf] best 439085 combination reg byte a [ myprintf::$30 ] 
Attempting to uplift remaining variables inzp[1]:22 [ myprintf::$23 ]
Uplifting [myprintf] best 438185 combination reg byte a [ myprintf::$23 ] 
Attempting to uplift remaining variables inzp[1]:23 [ myprintf::$29 ]
Uplifting [myprintf] best 437285 combination reg byte a [ myprintf::$29 ] 
Attempting to uplift remaining variables inzp[1]:70 [ myprintf::b#15 ]
Uplifting [myprintf] best 437185 combination reg byte x [ myprintf::b#15 ] 
Attempting to uplift remaining variables inzp[1]:74 [ myprintf::b#16 ]
Uplifting [myprintf] best 437085 combination reg byte x [ myprintf::b#16 ] 
Attempting to uplift remaining variables inzp[1]:72 [ myprintf::bLen#11 ]
Uplifting [myprintf] best 436185 combination reg byte y [ myprintf::bLen#11 ] 
Coalescing zero page register [ zp[2]:31 [ utoa::value#12 utoa::value#3 utoa::value#10 utoa::value#2 utoa::value#11 utoa::value#6 utoa::value#4 utoa::value#0 utoa::value#1 ] ] with [ zp[2]:46 [ append::value#5 append::value#8 append::value#1 append::value#2 append::value#3 append::value#4 append::value#0 ] ] - score: 4
Coalescing zero page register [ zp[2]:33 [ utoa::dst#12 utoa::dst#4 utoa::dst#13 utoa::dst#2 utoa::dst#10 utoa::dst#16 utoa::dst#1 ] ] with [ zp[2]:42 [ append::dst#4 append::dst#1 append::dst#2 append::dst#3 ] ] - score: 3
Coalescing zero page register [ zp[2]:6 [ main::v#10 main::v#12 main::v#13 main::v#11 main::v#2 main::v#1 ] ] with [ zp[2]:10 [ myprintf::w2#8 myprintf::w2#1 myprintf::w2#0 ] ] - score: 2
Coalescing zero page register [ zp[2]:2 [ main::u#16 main::u#3 ] ] with [ zp[2]:8 [ myprintf::w1#7 myprintf::w1#1 myprintf::w1#0 ] ] - score: 1
Coalescing zero page register [ zp[2]:2 [ main::u#16 main::u#3 myprintf::w1#7 myprintf::w1#1 myprintf::w1#0 ] ] with [ zp[2]:64 [ div16u::dividend#0 ] ] - score: 1
Coalescing zero page register [ zp[2]:4 [ main::u#18 main::u#4 ] ] with [ zp[2]:54 [ div10::val#4 ] ] - score: 1
Coalescing zero page register [ zp[2]:6 [ main::v#10 main::v#12 main::v#13 main::v#11 main::v#2 main::v#1 myprintf::w2#8 myprintf::w2#1 myprintf::w2#0 ] ] with [ zp[2]:56 [ div10::return#2 ] ] - score: 1
Coalescing zero page register [ zp[2]:6 [ main::v#10 main::v#12 main::v#13 main::v#11 main::v#2 main::v#1 myprintf::w2#8 myprintf::w2#1 myprintf::w2#0 div10::return#2 ] ] with [ zp[2]:66 [ div16u::return#2 ] ] - score: 1
Coalescing zero page register [ zp[2]:12 [ myprintf::w3#8 myprintf::w3#1 myprintf::w3#0 ] ] with [ zp[2]:50 [ main::$10 ] ] - score: 1
Coalescing zero page register [ zp[2]:12 [ myprintf::w3#8 myprintf::w3#1 myprintf::w3#0 main::$10 ] ] with [ zp[2]:60 [ main::$3 ] ] - score: 1
Coalescing zero page register [ zp[2]:31 [ utoa::value#12 utoa::value#3 utoa::value#10 utoa::value#2 utoa::value#11 utoa::value#6 utoa::value#4 utoa::value#0 utoa::value#1 append::value#5 append::value#8 append::value#1 append::value#2 append::value#3 append::value#4 append::value#0 ] ] with [ zp[2]:102 [ append::return#10 ] ] - score: 1
Coalescing zero page register [ zp[2]:31 [ utoa::value#12 utoa::value#3 utoa::value#10 utoa::value#2 utoa::value#11 utoa::value#6 utoa::value#4 utoa::value#0 utoa::value#1 append::value#5 append::value#8 append::value#1 append::value#2 append::value#3 append::value#4 append::value#0 append::return#10 ] ] with [ zp[2]:104 [ append::return#4 ] ] - score: 1
Coalescing zero page register [ zp[2]:31 [ utoa::value#12 utoa::value#3 utoa::value#10 utoa::value#2 utoa::value#11 utoa::value#6 utoa::value#4 utoa::value#0 utoa::value#1 append::value#5 append::value#8 append::value#1 append::value#2 append::value#3 append::value#4 append::value#0 append::return#10 append::return#4 ] ] with [ zp[2]:106 [ append::return#3 ] ] - score: 1
Coalescing zero page register [ zp[2]:31 [ utoa::value#12 utoa::value#3 utoa::value#10 utoa::value#2 utoa::value#11 utoa::value#6 utoa::value#4 utoa::value#0 utoa::value#1 append::value#5 append::value#8 append::value#1 append::value#2 append::value#3 append::value#4 append::value#0 append::return#10 append::return#4 append::return#3 ] ] with [ zp[2]:108 [ append::return#2 ] ] - score: 1
Coalescing zero page register [ zp[2]:33 [ utoa::dst#12 utoa::dst#4 utoa::dst#13 utoa::dst#2 utoa::dst#10 utoa::dst#16 utoa::dst#1 append::dst#4 append::dst#1 append::dst#2 append::dst#3 ] ] with [ zp[2]:100 [ utoa::dst#3 ] ] - score: 1
Coalescing zero page register [ zp[2]:39 [ divr16u::quotient#3 divr16u::return#0 divr16u::quotient#1 divr16u::quotient#2 ] ] with [ zp[2]:94 [ divr16u::return#2 ] ] - score: 1
Coalescing zero page register [ zp[2]:76 [ div10::$0 ] ] with [ zp[2]:78 [ div10::val#0 ] ] - score: 1
Coalescing zero page register [ zp[2]:80 [ div10::$2 ] ] with [ zp[2]:82 [ div10::val#1 ] ] - score: 1
Coalescing zero page register [ zp[2]:84 [ div10::$3 ] ] with [ zp[2]:86 [ div10::val#2 ] ] - score: 1
Coalescing zero page register [ zp[2]:88 [ div10::$4 ] ] with [ zp[2]:90 [ div10::val#3 ] ] - score: 1
Coalescing zero page register [ zp[2]:2 [ main::u#16 main::u#3 myprintf::w1#7 myprintf::w1#1 myprintf::w1#0 div16u::dividend#0 ] ] with [ zp[2]:4 [ main::u#18 main::u#4 div10::val#4 ] ] - score: 1
Coalescing zero page register [ zp[2]:6 [ main::v#10 main::v#12 main::v#13 main::v#11 main::v#2 main::v#1 myprintf::w2#8 myprintf::w2#1 myprintf::w2#0 div10::return#2 div16u::return#2 ] ] with [ zp[2]:92 [ div10::return#0 ] ] - score: 1
Coalescing zero page register [ zp[2]:6 [ main::v#10 main::v#12 main::v#13 main::v#11 main::v#2 main::v#1 myprintf::w2#8 myprintf::w2#1 myprintf::w2#0 div10::return#2 div16u::return#2 div10::return#0 ] ] with [ zp[2]:96 [ div16u::return#0 ] ] - score: 1
Coalescing zero page register [ zp[2]:12 [ myprintf::w3#8 myprintf::w3#1 myprintf::w3#0 main::$10 main::$3 ] ] with [ zp[2]:48 [ main::$16 ] ] - score: 1
Coalescing zero page register [ zp[2]:12 [ myprintf::w3#8 myprintf::w3#1 myprintf::w3#0 main::$10 main::$3 main::$16 ] ] with [ zp[2]:58 [ main::$14 ] ] - score: 1
Coalescing zero page register [ zp[2]:6 [ main::v#10 main::v#12 main::v#13 main::v#11 main::v#2 main::v#1 myprintf::w2#8 myprintf::w2#1 myprintf::w2#0 div10::return#2 div16u::return#2 div10::return#0 div16u::return#0 ] ] with [ zp[2]:39 [ divr16u::quotient#3 divr16u::return#0 divr16u::quotient#1 divr16u::quotient#2 divr16u::return#2 ] ] - score: 1
Coalescing zero page register [ zp[2]:6 [ main::v#10 main::v#12 main::v#13 main::v#11 main::v#2 main::v#1 myprintf::w2#8 myprintf::w2#1 myprintf::w2#0 div10::return#2 div16u::return#2 div10::return#0 div16u::return#0 divr16u::quotient#3 divr16u::return#0 divr16u::quotient#1 divr16u::quotient#2 divr16u::return#2 ] ] with [ zp[2]:88 [ div10::$4 div10::val#3 ] ] - score: 1
Coalescing zero page register [ zp[2]:35 [ divr16u::rem#4 divr16u::rem#9 divr16u::rem#5 divr16u::rem#0 divr16u::rem#1 divr16u::rem#2 ] ] with [ zp[2]:14 [ myprintf::str#10 myprintf::str#6 myprintf::str#0 ] ]
Coalescing zero page register [ zp[2]:37 [ divr16u::dividend#2 divr16u::dividend#1 divr16u::dividend#0 ] ] with [ zp[2]:18 [ myprintf::w#10 myprintf::w#18 myprintf::w#22 myprintf::w#53 myprintf::w#54 myprintf::w#55 ] ]
Coalescing zero page register [ zp[2]:52 [ main::$17 ] ] with [ zp[2]:31 [ utoa::value#12 utoa::value#3 utoa::value#10 utoa::value#2 utoa::value#11 utoa::value#6 utoa::value#4 utoa::value#0 utoa::value#1 append::value#5 append::value#8 append::value#1 append::value#2 append::value#3 append::value#4 append::value#0 append::return#10 append::return#4 append::return#3 append::return#2 ] ]
Coalescing zero page register [ zp[2]:62 [ main::$15 ] ] with [ zp[2]:33 [ utoa::dst#12 utoa::dst#4 utoa::dst#13 utoa::dst#2 utoa::dst#10 utoa::dst#16 utoa::dst#1 append::dst#4 append::dst#1 append::dst#2 append::dst#3 utoa::dst#3 ] ]
Coalescing zero page register [ zp[2]:76 [ div10::$0 div10::val#0 ] ] with [ zp[2]:44 [ append::sub#6 ] ]
Coalescing zero page register [ zp[2]:80 [ div10::$2 div10::val#1 ] ] with [ zp[2]:35 [ divr16u::rem#4 divr16u::rem#9 divr16u::rem#5 divr16u::rem#0 divr16u::rem#1 divr16u::rem#2 myprintf::str#10 myprintf::str#6 myprintf::str#0 ] ]
Coalescing zero page register [ zp[2]:84 [ div10::$3 div10::val#2 ] ] with [ zp[2]:37 [ divr16u::dividend#2 divr16u::dividend#1 divr16u::dividend#0 myprintf::w#10 myprintf::w#18 myprintf::w#22 myprintf::w#53 myprintf::w#54 myprintf::w#55 ] ]
Allocated (was zp[2]:6) zp[2]:4 [ main::v#10 main::v#12 main::v#13 main::v#11 main::v#2 main::v#1 myprintf::w2#8 myprintf::w2#1 myprintf::w2#0 div10::return#2 div16u::return#2 div10::return#0 div16u::return#0 divr16u::quotient#3 divr16u::return#0 divr16u::quotient#1 divr16u::quotient#2 divr16u::return#2 div10::$4 div10::val#3 ]
Allocated (was zp[2]:12) zp[2]:6 [ myprintf::w3#8 myprintf::w3#1 myprintf::w3#0 main::$10 main::$3 main::$16 main::$14 ]
Allocated (was zp[1]:16) zp[1]:8 [ myprintf::bFormat#10 myprintf::bFormat#5 ]
Allocated (was zp[1]:17) zp[1]:9 [ myprintf::bArg#10 myprintf::bArg#11 myprintf::bArg#1 ]
Allocated (was zp[1]:20) zp[1]:10 [ myprintf::bTrailing#11 myprintf::bTrailing#24 ]
Allocated (was zp[1]:21) zp[1]:11 [ myprintf::bLeadZero#11 myprintf::bLeadZero#20 ]
Allocated (was zp[1]:24) zp[1]:12 [ myprintf::b#17 myprintf::b#5 ]
Allocated (was zp[1]:25) zp[1]:13 [ myprintf::bDigits#12 myprintf::bDigits#16 myprintf::bDigits#28 myprintf::bDigits#29 myprintf::bDigits#1 myprintf::bDigits#18 myprintf::bDigits#10 myprintf::bDigits#2 myprintf::bDigits#3 ]
Allocated (was zp[1]:26) zp[1]:14 [ myprintf::bLen#32 myprintf::bLen#12 myprintf::bLen#10 myprintf::bLen#28 myprintf::bLen#36 myprintf::bLen#7 myprintf::bLen#3 myprintf::bLen#13 myprintf::bLen#14 myprintf::bLen#1 myprintf::bLen#4 myprintf::bLen#5 myprintf::bLen#6 ]
Allocated (was zp[2]:52) zp[2]:15 [ main::$17 utoa::value#12 utoa::value#3 utoa::value#10 utoa::value#2 utoa::value#11 utoa::value#6 utoa::value#4 utoa::value#0 utoa::value#1 append::value#5 append::value#8 append::value#1 append::value#2 append::value#3 append::value#4 append::value#0 append::return#10 append::return#4 append::return#3 append::return#2 ]
Allocated (was zp[2]:62) zp[2]:17 [ main::$15 utoa::dst#12 utoa::dst#4 utoa::dst#13 utoa::dst#2 utoa::dst#10 utoa::dst#16 utoa::dst#1 append::dst#4 append::dst#1 append::dst#2 append::dst#3 utoa::dst#3 ]
Allocated (was zp[2]:76) zp[2]:19 [ div10::$0 div10::val#0 append::sub#6 ]
Allocated (was zp[2]:80) zp[2]:21 [ div10::$2 div10::val#1 divr16u::rem#4 divr16u::rem#9 divr16u::rem#5 divr16u::rem#0 divr16u::rem#1 divr16u::rem#2 myprintf::str#10 myprintf::str#6 myprintf::str#0 ]
Allocated (was zp[2]:84) zp[2]:23 [ div10::$3 div10::val#2 divr16u::dividend#2 divr16u::dividend#1 divr16u::dividend#0 myprintf::w#10 myprintf::w#18 myprintf::w#22 myprintf::w#53 myprintf::w#54 myprintf::w#55 ]

ASSEMBLER BEFORE OPTIMIZATION
  // File Comments
/// @file
/// Simple binary division implementation
///
/// Follows the C99 standard by truncating toward zero on negative results.
/// See http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1124.pdf section 6.5.5
  // Upstart
  // Commodore 64 PRG executable file
.file [name="sandbox.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 zp1 = $61
  // #define zp1 *(byte *)0x61 -- allows "zp1" vs "*zp1" below -- not supported --  https://gitlab.com/camelot/kickc/issues/169
  .label zp2 = $62
  .label TIMEHI = $a1
  .label TIMELO = $a2
  .label VICBANK = $d018
.segment Code
  // main
main: {
    .label __3 = 6
    .label __10 = 6
    .label __14 = 6
    .label __15 = $11
    .label __16 = 6
    .label __17 = $f
    .label v = 4
    // test performance of 'div16u(10)'
    // test performance of 'div10'
    .label u = 2
    // [0] *VICBANK = $17 -- _deref_pbuc1=vbuc2 
    lda #$17
    sta VICBANK
    // [1] *zp1 = 0 -- _deref_pbuc1=vbuc2 
    lda #0
    sta zp1
    // [2] phi from main to main::@1 [phi:main->main::@1]
  __b1_from_main:
    // [2] phi main::v#13 = 0 [phi:main->main::@1#0] -- vwuz1=vwuc1 
    lda #<0
    sta.z v
    lda #>0
    sta.z v+1
    // [2] phi main::u#16 = $6e85 [phi:main->main::@1#1] -- vwuz1=vwuc1 
    lda #<$6e85
    sta.z u
    lda #>$6e85
    sta.z u+1
    jmp __b1
    // main::@1
  __b1:
    // [3] if(*zp1<$a) goto main::@2 -- _deref_pbuc1_lt_vbuc2_then_la1 
    lda zp1
    cmp #$a
    bcc __b2
    jmp __b3
    // main::@3
  __b3:
    // [4] *zp1 = 0 -- _deref_pbuc1=vbuc2 
    lda #0
    sta zp1
    // [5] phi from main::@3 to main::@7 [phi:main::@3->main::@7]
  __b7_from___b3:
    // [5] phi main::v#10 = main::v#13 [phi:main::@3->main::@7#0] -- register_copy 
    // [5] phi main::u#18 = $6e85 [phi:main::@3->main::@7#1] -- vwuz1=vwuc1 
    lda #<$6e85
    sta.z u
    lda #>$6e85
    sta.z u+1
    jmp __b7
    // main::@7
  __b7:
    // [6] if(*zp1<$a) goto main::@8 -- _deref_pbuc1_lt_vbuc2_then_la1 
    lda zp1
    cmp #$a
    bcc __b8
    jmp __breturn
    // main::@return
  __breturn:
    // [7] return 
    rts
    // main::@8
  __b8:
    // [8] *TIMEHI = 0 -- _deref_pbuc1=vbuc2 
    lda #0
    sta TIMEHI
    // [9] *TIMELO = 0 -- _deref_pbuc1=vbuc2 
    lda #0
    sta TIMELO
    // [10] *zp2 = 0 -- _deref_pbuc1=vbuc2 
    lda #0
    sta zp2
    // [11] phi from main::@15 main::@8 to main::@9 [phi:main::@15/main::@8->main::@9]
  __b9_from___b15:
  __b9_from___b8:
    // [11] phi main::v#12 = main::v#2 [phi:main::@15/main::@8->main::@9#0] -- register_copy 
    jmp __b9
    // main::@9
  __b9:
    // [12] if(*zp2<$c8) goto main::@10 -- _deref_pbuc1_lt_vbuc2_then_la1 
    lda zp2
    cmp #$c8
    bcc __b10
    jmp __b11
    // main::@11
  __b11:
    // [13] main::$16 = (unsigned int)*TIMEHI -- vwuz1=_word__deref_pbuc1 
    lda TIMEHI
    sta.z __16
    lda #0
    sta.z __16+1
    // [14] main::$10 = main::$16 << 8 -- vwuz1=vwuz1_rol_8 
    lda.z __10
    sta.z __10+1
    lda #0
    sta.z __10
    // [15] main::$17 = (unsigned int)*TIMELO -- vwuz1=_word__deref_pbuc1 
    lda TIMELO
    sta.z __17
    lda #0
    sta.z __17+1
    // [16] myprintf::w3#1 = main::$10 + main::$17 -- vwuz1=vwuz1_plus_vwuz2 
    clc
    lda.z myprintf.w3
    adc.z __17
    sta.z myprintf.w3
    lda.z myprintf.w3+1
    adc.z __17+1
    sta.z myprintf.w3+1
    // [17] myprintf::w1#1 = main::u#18
    // [18] myprintf::w2#1 = main::v#12
    // [19] call myprintf
    // [50] phi from main::@11 to myprintf [phi:main::@11->myprintf]
  myprintf_from___b11:
    // [50] phi myprintf::w3#8 = myprintf::w3#1 [phi:main::@11->myprintf#0] -- register_copy 
    // [50] phi myprintf::w2#8 = myprintf::w2#1 [phi:main::@11->myprintf#1] -- register_copy 
    // [50] phi myprintf::w1#7 = myprintf::w1#1 [phi:main::@11->myprintf#2] -- register_copy 
    // [50] phi myprintf::str#6 = main::str1 [phi:main::@11->myprintf#3] -- pbuz1=pbuc1 
    lda #<str1
    sta.z myprintf.str
    lda #>str1
    sta.z myprintf.str+1
    jsr myprintf
    // [20] phi from main::@11 to main::@16 [phi:main::@11->main::@16]
  __b16_from___b11:
    jmp __b16
    // main::@16
  __b16:
    // [21] call Print
    jsr Print
    jmp __b17
    // main::@17
  __b17:
    // [22] main::u#4 = main::u#18 - $4d2 -- vwuz1=vwuz1_minus_vwuc1 
    lda.z u
    sec
    sbc #<$4d2
    sta.z u
    lda.z u+1
    sbc #>$4d2
    sta.z u+1
    // [23] *zp1 = ++ *zp1 -- _deref_pbuc1=_inc__deref_pbuc1 
    inc zp1
    // [5] phi from main::@17 to main::@7 [phi:main::@17->main::@7]
  __b7_from___b17:
    // [5] phi main::v#10 = main::v#12 [phi:main::@17->main::@7#0] -- register_copy 
    // [5] phi main::u#18 = main::u#4 [phi:main::@17->main::@7#1] -- register_copy 
    jmp __b7
    // main::@10
  __b10:
    // [24] div10::val#4 = main::u#18
    // [25] call div10
    jsr div10
    // [26] div10::return#2 = div10::return#0
    jmp __b15
    // main::@15
  __b15:
    // [27] main::v#2 = div10::return#2
    // [28] *zp2 = ++ *zp2 -- _deref_pbuc1=_inc__deref_pbuc1 
    inc zp2
    jmp __b9_from___b15
    // main::@2
  __b2:
    // [29] *TIMEHI = 0 -- _deref_pbuc1=vbuc2 
    lda #0
    sta TIMEHI
    // [30] *TIMELO = 0 -- _deref_pbuc1=vbuc2 
    lda #0
    sta TIMELO
    // [31] *zp2 = 0 -- _deref_pbuc1=vbuc2 
    lda #0
    sta zp2
    // [32] phi from main::@12 main::@2 to main::@4 [phi:main::@12/main::@2->main::@4]
  __b4_from___b12:
  __b4_from___b2:
    // [32] phi main::v#11 = main::v#1 [phi:main::@12/main::@2->main::@4#0] -- register_copy 
    jmp __b4
    // main::@4
  __b4:
    // [33] if(*zp2<$c8) goto main::@5 -- _deref_pbuc1_lt_vbuc2_then_la1 
    lda zp2
    cmp #$c8
    bcc __b5
    jmp __b6
    // main::@6
  __b6:
    // [34] main::$14 = (unsigned int)*TIMEHI -- vwuz1=_word__deref_pbuc1 
    lda TIMEHI
    sta.z __14
    lda #0
    sta.z __14+1
    // [35] main::$3 = main::$14 << 8 -- vwuz1=vwuz1_rol_8 
    lda.z __3
    sta.z __3+1
    lda #0
    sta.z __3
    // [36] main::$15 = (unsigned int)*TIMELO -- vwuz1=_word__deref_pbuc1 
    lda TIMELO
    sta.z __15
    lda #0
    sta.z __15+1
    // [37] myprintf::w3#0 = main::$3 + main::$15 -- vwuz1=vwuz1_plus_vwuz2 
    clc
    lda.z myprintf.w3
    adc.z __15
    sta.z myprintf.w3
    lda.z myprintf.w3+1
    adc.z __15+1
    sta.z myprintf.w3+1
    // [38] myprintf::w1#0 = main::u#16
    // [39] myprintf::w2#0 = main::v#11
    // [40] call myprintf
  // lower case letters in string literal are placed in string as 0x01-0x1A, should be 0x61-0x7A
  // -- as a side-effect of above issue, we can use "m" for carriage return.  The normal way is the escape code "\r" but that is not supported --
    // [50] phi from main::@6 to myprintf [phi:main::@6->myprintf]
  myprintf_from___b6:
    // [50] phi myprintf::w3#8 = myprintf::w3#0 [phi:main::@6->myprintf#0] -- register_copy 
    // [50] phi myprintf::w2#8 = myprintf::w2#0 [phi:main::@6->myprintf#1] -- register_copy 
    // [50] phi myprintf::w1#7 = myprintf::w1#0 [phi:main::@6->myprintf#2] -- register_copy 
    // [50] phi myprintf::str#6 = main::str [phi:main::@6->myprintf#3] -- pbuz1=pbuc1 
    lda #<str
    sta.z myprintf.str
    lda #>str
    sta.z myprintf.str+1
    jsr myprintf
    // [41] phi from main::@6 to main::@13 [phi:main::@6->main::@13]
  __b13_from___b6:
    jmp __b13
    // main::@13
  __b13:
    // [42] call Print
    jsr Print
    jmp __b14
    // main::@14
  __b14:
    // [43] main::u#3 = main::u#16 - $4d2 -- vwuz1=vwuz1_minus_vwuc1 
    lda.z u
    sec
    sbc #<$4d2
    sta.z u
    lda.z u+1
    sbc #>$4d2
    sta.z u+1
    // [44] *zp1 = ++ *zp1 -- _deref_pbuc1=_inc__deref_pbuc1 
    inc zp1
    // [2] phi from main::@14 to main::@1 [phi:main::@14->main::@1]
  __b1_from___b14:
    // [2] phi main::v#13 = main::v#11 [phi:main::@14->main::@1#0] -- register_copy 
    // [2] phi main::u#16 = main::u#3 [phi:main::@14->main::@1#1] -- register_copy 
    jmp __b1
    // main::@5
  __b5:
    // [45] div16u::dividend#0 = main::u#16
    // [46] call div16u
    jsr div16u
    // [47] div16u::return#2 = div16u::return#0
    jmp __b12
    // main::@12
  __b12:
    // [48] main::v#1 = div16u::return#2
    // [49] *zp2 = ++ *zp2 -- _deref_pbuc1=_inc__deref_pbuc1 
    inc zp2
    jmp __b4_from___b12
  .segment Data
    str: .text "200 DIV16U: %5d,%4d IN %04d FRAMESm"
    .byte 0
    str1: .text "200 DIV10 : %5d,%4d IN %04d FRAMESm"
    .byte 0
}
.segment Code
  // myprintf
// char myprintf(char *dst, __zp($15) char *str, __zp(2) unsigned int w1, __zp(4) unsigned int w2, __zp(6) unsigned int w3)
myprintf: {
    .label str = $15
    .label bDigits = $d
    .label bLen = $e
    // formats
    .label b = $c
    .label bArg = 9
    .label w1 = 2
    .label w2 = 4
    .label w3 = 6
    .label w = $17
    .label bFormat = 8
    .label bTrailing = $a
    .label bLeadZero = $b
    // [51] phi from myprintf to myprintf::@1 [phi:myprintf->myprintf::@1]
  __b1_from_myprintf:
    // [51] phi myprintf::bLeadZero#11 = 0 [phi:myprintf->myprintf::@1#0] -- vbuz1=vbuc1 
    lda #0
    sta.z bLeadZero
    // [51] phi myprintf::bDigits#16 = 0 [phi:myprintf->myprintf::@1#1] -- vbuz1=vbuc1 
    lda #0
    sta.z bDigits
    // [51] phi myprintf::bTrailing#11 = 0 [phi:myprintf->myprintf::@1#2] -- vbuz1=vbuc1 
    lda #0
    sta.z bTrailing
    // [51] phi myprintf::w#10 = 0 [phi:myprintf->myprintf::@1#3] -- vwuz1=vwuc1 
    lda #<0
    sta.z w
    lda #>0
    sta.z w+1
    // [51] phi myprintf::bArg#10 = 0 [phi:myprintf->myprintf::@1#4] -- vbuz1=vbuc1 
    lda #0
    sta.z bArg
    // [51] phi myprintf::bLen#10 = 0 [phi:myprintf->myprintf::@1#5] -- vbuz1=vbuc1 
    lda #0
    sta.z bLen
    // [51] phi myprintf::bFormat#10 = 0 [phi:myprintf->myprintf::@1#6] -- vbuz1=vbuc1 
    lda #0
    sta.z bFormat
    // [51] phi myprintf::str#10 = myprintf::str#6 [phi:myprintf->myprintf::@1#7] -- register_copy 
    jmp __b1
    // myprintf::@1
  __b1:
    // [52] if(*myprintf::str#10!=0) goto myprintf::@2 -- _deref_pbuz1_neq_0_then_la1 
    ldy #0
    lda (str),y
    cmp #0
    bne __b2
    jmp __b3
    // myprintf::@3
  __b3:
    // [53] strTemp[myprintf::bLen#10] = 0 -- pbuc1_derefidx_vbuz1=vbuc2 
    lda #0
    ldy.z bLen
    sta strTemp,y
    jmp __breturn
    // myprintf::@return
  __breturn:
    // [54] return 
    rts
    // myprintf::@2
  __b2:
    // [55] myprintf::b#1 = *myprintf::str#10 -- vbuxx=_deref_pbuz1 
    ldy #0
    lda (str),y
    tax
    // [56] if(myprintf::bFormat#10==0) goto myprintf::@4 -- vbuz1_eq_0_then_la1 
    lda.z bFormat
    beq __b4
    jmp __b38
    // myprintf::@38
  __b38:
    // [57] if(myprintf::b#1!='0') goto myprintf::@5 -- vbuxx_neq_vbuc1_then_la1 
    cpx #'0'
    bne __b5
    // [58] phi from myprintf::@38 to myprintf::@32 [phi:myprintf::@38->myprintf::@32]
  __b32_from___b38:
    // [58] phi myprintf::bLeadZero#20 = 1 [phi:myprintf::@38->myprintf::@32#0] -- vbuz1=vbuc1 
    lda #1
    sta.z bLeadZero
    // [58] phi myprintf::bDigits#28 = myprintf::bDigits#16 [phi:myprintf::@38->myprintf::@32#1] -- register_copy 
    // [58] phi myprintf::bTrailing#24 = myprintf::bTrailing#11 [phi:myprintf::@38->myprintf::@32#2] -- register_copy 
    // [58] phi myprintf::w#18 = myprintf::w#10 [phi:myprintf::@38->myprintf::@32#3] -- register_copy 
    // [58] phi myprintf::bArg#11 = myprintf::bArg#10 [phi:myprintf::@38->myprintf::@32#4] -- register_copy 
    // [58] phi myprintf::bLen#28 = myprintf::bLen#10 [phi:myprintf::@38->myprintf::@32#5] -- register_copy 
    // [58] phi myprintf::bFormat#5 = myprintf::bFormat#10 [phi:myprintf::@38->myprintf::@32#6] -- register_copy 
    jmp __b32
    // myprintf::@32
  __b32:
    // [59] myprintf::str#0 = ++ myprintf::str#10 -- pbuz1=_inc_pbuz1 
    inc.z str
    bne !+
    inc.z str+1
  !:
    // [51] phi from myprintf::@32 to myprintf::@1 [phi:myprintf::@32->myprintf::@1]
  __b1_from___b32:
    // [51] phi myprintf::bLeadZero#11 = myprintf::bLeadZero#20 [phi:myprintf::@32->myprintf::@1#0] -- register_copy 
    // [51] phi myprintf::bDigits#16 = myprintf::bDigits#28 [phi:myprintf::@32->myprintf::@1#1] -- register_copy 
    // [51] phi myprintf::bTrailing#11 = myprintf::bTrailing#24 [phi:myprintf::@32->myprintf::@1#2] -- register_copy 
    // [51] phi myprintf::w#10 = myprintf::w#18 [phi:myprintf::@32->myprintf::@1#3] -- register_copy 
    // [51] phi myprintf::bArg#10 = myprintf::bArg#11 [phi:myprintf::@32->myprintf::@1#4] -- register_copy 
    // [51] phi myprintf::bLen#10 = myprintf::bLen#28 [phi:myprintf::@32->myprintf::@1#5] -- register_copy 
    // [51] phi myprintf::bFormat#10 = myprintf::bFormat#5 [phi:myprintf::@32->myprintf::@1#6] -- register_copy 
    // [51] phi myprintf::str#10 = myprintf::str#0 [phi:myprintf::@32->myprintf::@1#7] -- register_copy 
    jmp __b1
    // myprintf::@5
  __b5:
    // [60] if(myprintf::b#1<'1') goto myprintf::@6 -- vbuxx_lt_vbuc1_then_la1 
    cpx #'1'
    bcc __b6
    jmp __b43
    // myprintf::@43
  __b43:
    // [61] if(myprintf::b#1<='9') goto myprintf::@28 -- vbuxx_le_vbuc1_then_la1 
    cpx #'9'
    bcc __b28
    beq __b28
    jmp __b6
    // myprintf::@6
  __b6:
    // [62] if(myprintf::b#1!='-') goto myprintf::@7 -- vbuxx_neq_vbuc1_then_la1 
    cpx #'-'
    bne __b7
    // [58] phi from myprintf::@6 to myprintf::@32 [phi:myprintf::@6->myprintf::@32]
  __b32_from___b6:
    // [58] phi myprintf::bLeadZero#20 = myprintf::bLeadZero#11 [phi:myprintf::@6->myprintf::@32#0] -- register_copy 
    // [58] phi myprintf::bDigits#28 = myprintf::bDigits#16 [phi:myprintf::@6->myprintf::@32#1] -- register_copy 
    // [58] phi myprintf::bTrailing#24 = 1 [phi:myprintf::@6->myprintf::@32#2] -- vbuz1=vbuc1 
    lda #1
    sta.z bTrailing
    // [58] phi myprintf::w#18 = myprintf::w#10 [phi:myprintf::@6->myprintf::@32#3] -- register_copy 
    // [58] phi myprintf::bArg#11 = myprintf::bArg#10 [phi:myprintf::@6->myprintf::@32#4] -- register_copy 
    // [58] phi myprintf::bLen#28 = myprintf::bLen#10 [phi:myprintf::@6->myprintf::@32#5] -- register_copy 
    // [58] phi myprintf::bFormat#5 = myprintf::bFormat#10 [phi:myprintf::@6->myprintf::@32#6] -- register_copy 
    jmp __b32
    // myprintf::@7
  __b7:
    // [63] if(myprintf::b#1=='c') goto myprintf::@8 -- vbuxx_eq_vbuc1_then_la1 
    cpx #'c'
    beq __b8
    jmp __b29
    // myprintf::@29
  __b29:
    // [64] if(myprintf::b#1=='d') goto myprintf::@9 -- vbuxx_eq_vbuc1_then_la1 
    cpx #'d'
    beq __b9
    jmp __b30
    // myprintf::@30
  __b30:
    // [65] if(myprintf::b#1=='x') goto myprintf::@31 -- vbuxx_eq_vbuc1_then_la1 
    cpx #'x'
    beq __b31
    jmp __b44
    // myprintf::@44
  __b44:
    // [66] if(myprintf::b#1=='X') goto myprintf::@31 -- vbuxx_eq_vbuc1_then_la1 
    cpx #'X'
    beq __b31
    // [67] phi from myprintf::@13 myprintf::@24 myprintf::@25 myprintf::@44 myprintf::@8 to myprintf::@27 [phi:myprintf::@13/myprintf::@24/myprintf::@25/myprintf::@44/myprintf::@8->myprintf::@27]
  __b27_from___b13:
  __b27_from___b24:
  __b27_from___b25:
  __b27_from___b44:
  __b27_from___b8:
    // [67] phi myprintf::bDigits#29 = myprintf::bDigits#16 [phi:myprintf::@13/myprintf::@24/myprintf::@25/myprintf::@44/myprintf::@8->myprintf::@27#0] -- register_copy 
    // [67] phi myprintf::bLen#36 = myprintf::bLen#3 [phi:myprintf::@13/myprintf::@24/myprintf::@25/myprintf::@44/myprintf::@8->myprintf::@27#1] -- register_copy 
    jmp __b27
    // [67] phi from myprintf::@46 to myprintf::@27 [phi:myprintf::@46->myprintf::@27]
  __b27_from___b46:
    jmp __b27
    // myprintf::@27
  __b27:
    // [58] phi from myprintf::@27 to myprintf::@32 [phi:myprintf::@27->myprintf::@32]
  __b32_from___b27:
    // [58] phi myprintf::bLeadZero#20 = myprintf::bLeadZero#11 [phi:myprintf::@27->myprintf::@32#0] -- register_copy 
    // [58] phi myprintf::bDigits#28 = myprintf::bDigits#29 [phi:myprintf::@27->myprintf::@32#1] -- register_copy 
    // [58] phi myprintf::bTrailing#24 = myprintf::bTrailing#11 [phi:myprintf::@27->myprintf::@32#2] -- register_copy 
    // [58] phi myprintf::w#18 = myprintf::w#10 [phi:myprintf::@27->myprintf::@32#3] -- register_copy 
    // [58] phi myprintf::bArg#11 = myprintf::bArg#10 [phi:myprintf::@27->myprintf::@32#4] -- register_copy 
    // [58] phi myprintf::bLen#28 = myprintf::bLen#36 [phi:myprintf::@27->myprintf::@32#5] -- register_copy 
    // [58] phi myprintf::bFormat#5 = 0 [phi:myprintf::@27->myprintf::@32#6] -- vbuz1=vbuc1 
    lda #0
    sta.z bFormat
    jmp __b32
    // myprintf::@31
  __b31:
    // [68] myprintf::$56 = (char)myprintf::w#10 -- vbuaa=_byte_vwuz1 
    lda.z w
    // [69] myprintf::$18 = myprintf::$56 >> 4 -- vbuaa=vbuaa_ror_4 
    lsr
    lsr
    lsr
    lsr
    // [70] myprintf::b#15 = myprintf::$18 & $f -- vbuxx=vbuaa_band_vbuc1 
    ldx #$f
    axs #0
    // [71] if(myprintf::b#15<$a) goto myprintf::@10 -- vbuxx_lt_vbuc1_then_la1 
    cpx #$a
    bcc __b10_from___b31
    // [73] phi from myprintf::@31 to myprintf::@11 [phi:myprintf::@31->myprintf::@11]
  __b11_from___b31:
    // [73] phi myprintf::$23 = $57 [phi:myprintf::@31->myprintf::@11#0] -- vbuaa=vbuc1 
    lda #$57
    jmp __b11
    // [72] phi from myprintf::@31 to myprintf::@10 [phi:myprintf::@31->myprintf::@10]
  __b10_from___b31:
    jmp __b10
    // myprintf::@10
  __b10:
    // [73] phi from myprintf::@10 to myprintf::@11 [phi:myprintf::@10->myprintf::@11]
  __b11_from___b10:
    // [73] phi myprintf::$23 = '0' [phi:myprintf::@10->myprintf::@11#0] -- vbuaa=vbuc1 
    lda #'0'
    jmp __b11
    // myprintf::@11
  __b11:
    // [74] myprintf::$24 = myprintf::$23 + myprintf::b#15 -- vbuaa=vbuaa_plus_vbuxx 
    stx.z $ff
    clc
    adc.z $ff
    // [75] strTemp[myprintf::bLen#10] = myprintf::$24 -- pbuc1_derefidx_vbuz1=vbuaa 
    ldy.z bLen
    sta strTemp,y
    // [76] myprintf::bLen#11 = ++ myprintf::bLen#10 -- vbuyy=_inc_vbuz1 
    ldy.z bLen
    iny
    // [77] myprintf::$57 = (char)myprintf::w#10 -- vbuaa=_byte_vwuz1 
    lda.z w
    // [78] myprintf::b#16 = myprintf::$57 & $f -- vbuxx=vbuaa_band_vbuc1 
    ldx #$f
    axs #0
    // [79] if(myprintf::b#16<$a) goto myprintf::@12 -- vbuxx_lt_vbuc1_then_la1 
    cpx #$a
    bcc __b12_from___b11
    // [81] phi from myprintf::@11 to myprintf::@13 [phi:myprintf::@11->myprintf::@13]
  __b13_from___b11:
    // [81] phi myprintf::$29 = $57 [phi:myprintf::@11->myprintf::@13#0] -- vbuaa=vbuc1 
    lda #$57
    jmp __b13
    // [80] phi from myprintf::@11 to myprintf::@12 [phi:myprintf::@11->myprintf::@12]
  __b12_from___b11:
    jmp __b12
    // myprintf::@12
  __b12:
    // [81] phi from myprintf::@12 to myprintf::@13 [phi:myprintf::@12->myprintf::@13]
  __b13_from___b12:
    // [81] phi myprintf::$29 = '0' [phi:myprintf::@12->myprintf::@13#0] -- vbuaa=vbuc1 
    lda #'0'
    jmp __b13
    // myprintf::@13
  __b13:
    // [82] myprintf::$30 = myprintf::$29 + myprintf::b#16 -- vbuaa=vbuaa_plus_vbuxx 
    stx.z $ff
    clc
    adc.z $ff
    // [83] strTemp[myprintf::bLen#11] = myprintf::$30 -- pbuc1_derefidx_vbuyy=vbuaa 
    sta strTemp,y
    // [84] myprintf::bLen#3 = ++ myprintf::bLen#11 -- vbuz1=_inc_vbuyy 
    iny
    sty.z bLen
    jmp __b27_from___b13
    // myprintf::@9
  __b9:
    // [85] utoa::value#4 = myprintf::w#10 -- vwuz1=vwuz2 
    lda.z w
    sta.z utoa.value
    lda.z w+1
    sta.z utoa.value+1
    // [86] call utoa
    // [147] phi from myprintf::@9 to utoa [phi:myprintf::@9->utoa]
  utoa_from___b9:
    jsr utoa
    // [87] phi from myprintf::@9 to myprintf::@14 [phi:myprintf::@9->myprintf::@14]
  __b14_from___b9:
    // [87] phi myprintf::b#17 = 1 [phi:myprintf::@9->myprintf::@14#0] -- vbuz1=vbuc1 
    lda #1
    sta.z b
    jmp __b14
    // myprintf::@14
  __b14:
    // [88] if(myprintf::buf6[myprintf::b#17]!=0) goto myprintf::@15 -- pbuc1_derefidx_vbuz1_neq_0_then_la1 
    ldy.z b
    lda buf6,y
    cmp #0
    bne __b15
    jmp __b16
    // myprintf::@16
  __b16:
    // [89] if(myprintf::bTrailing#11!=0) goto myprintf::@17 -- vbuz1_neq_0_then_la1 
    lda.z bTrailing
    bne __b17_from___b16
    jmp __b45
    // myprintf::@45
  __b45:
    // [90] if(myprintf::bDigits#16<=myprintf::b#17) goto myprintf::@17 -- vbuz1_le_vbuz2_then_la1 
    lda.z b
    cmp.z bDigits
    bcs __b17_from___b45
    // [91] phi from myprintf::@21 myprintf::@45 to myprintf::@18 [phi:myprintf::@21/myprintf::@45->myprintf::@18]
  __b18_from___b21:
  __b18_from___b45:
    // [91] phi myprintf::bLen#12 = myprintf::bLen#4 [phi:myprintf::@21/myprintf::@45->myprintf::@18#0] -- register_copy 
    // [91] phi myprintf::bDigits#12 = myprintf::bDigits#2 [phi:myprintf::@21/myprintf::@45->myprintf::@18#1] -- register_copy 
    jmp __b18
    // myprintf::@18
  __b18:
    // [92] if(myprintf::bDigits#12>myprintf::b#17) goto myprintf::@19 -- vbuz1_gt_vbuz2_then_la1 
    lda.z b
    cmp.z bDigits
    bcc __b19
    // [93] phi from myprintf::@16 myprintf::@18 to myprintf::@17 [phi:myprintf::@16/myprintf::@18->myprintf::@17]
  __b17_from___b16:
  __b17_from___b18:
    // [93] phi myprintf::bDigits#18 = myprintf::bDigits#16 [phi:myprintf::@16/myprintf::@18->myprintf::@17#0] -- register_copy 
    // [93] phi myprintf::bLen#32 = myprintf::bLen#10 [phi:myprintf::@16/myprintf::@18->myprintf::@17#1] -- register_copy 
    jmp __b17
    // [93] phi from myprintf::@45 to myprintf::@17 [phi:myprintf::@45->myprintf::@17]
  __b17_from___b45:
    jmp __b17
    // myprintf::@17
  __b17:
    // [94] phi from myprintf::@17 to myprintf::@22 [phi:myprintf::@17->myprintf::@22]
  __b22_from___b17:
    // [94] phi myprintf::bLen#13 = myprintf::bLen#32 [phi:myprintf::@17->myprintf::@22#0] -- register_copy 
    // [94] phi myprintf::digit#3 = 0 [phi:myprintf::@17->myprintf::@22#1] -- vbuxx=vbuc1 
    ldx #0
    jmp __b22
    // myprintf::@22
  __b22:
    // [95] if(myprintf::digit#3<myprintf::b#17) goto myprintf::@23 -- vbuxx_lt_vbuz1_then_la1 
    cpx.z b
    bcc __b23
    jmp __b24
    // myprintf::@24
  __b24:
    // [96] if(myprintf::bTrailing#11==0) goto myprintf::@27 -- vbuz1_eq_0_then_la1 
    lda.z bTrailing
    beq __b27_from___b24
    jmp __b46
    // myprintf::@46
  __b46:
    // [97] if(myprintf::bDigits#18<=myprintf::b#17) goto myprintf::@27 -- vbuz1_le_vbuz2_then_la1 
    lda.z b
    cmp.z bDigits
    bcs __b27_from___b46
    // [98] phi from myprintf::@26 myprintf::@46 to myprintf::@25 [phi:myprintf::@26/myprintf::@46->myprintf::@25]
  __b25_from___b26:
  __b25_from___b46:
    // [98] phi myprintf::bLen#14 = myprintf::bLen#6 [phi:myprintf::@26/myprintf::@46->myprintf::@25#0] -- register_copy 
    // [98] phi myprintf::bDigits#10 = myprintf::bDigits#3 [phi:myprintf::@26/myprintf::@46->myprintf::@25#1] -- register_copy 
    jmp __b25
    // myprintf::@25
  __b25:
    // [99] if(myprintf::bDigits#10>myprintf::b#17) goto myprintf::@26 -- vbuz1_gt_vbuz2_then_la1 
    lda.z b
    cmp.z bDigits
    bcc __b26
    jmp __b27_from___b25
    // myprintf::@26
  __b26:
    // [100] strTemp[myprintf::bLen#14] = ' ' -- pbuc1_derefidx_vbuz1=vbuc2 
    lda #' '
    ldy.z bLen
    sta strTemp,y
    // [101] myprintf::bLen#6 = ++ myprintf::bLen#14 -- vbuz1=_inc_vbuz1 
    inc.z bLen
    // [102] myprintf::bDigits#3 = -- myprintf::bDigits#10 -- vbuz1=_dec_vbuz1 
    dec.z bDigits
    jmp __b25_from___b26
    // myprintf::@23
  __b23:
    // [103] strTemp[myprintf::bLen#13] = myprintf::buf6[myprintf::digit#3] -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuxx 
    lda buf6,x
    ldy.z bLen
    sta strTemp,y
    // [104] myprintf::bLen#5 = ++ myprintf::bLen#13 -- vbuz1=_inc_vbuz1 
    inc.z bLen
    // [105] myprintf::digit#2 = ++ myprintf::digit#3 -- vbuxx=_inc_vbuxx 
    inx
    // [94] phi from myprintf::@23 to myprintf::@22 [phi:myprintf::@23->myprintf::@22]
  __b22_from___b23:
    // [94] phi myprintf::bLen#13 = myprintf::bLen#5 [phi:myprintf::@23->myprintf::@22#0] -- register_copy 
    // [94] phi myprintf::digit#3 = myprintf::digit#2 [phi:myprintf::@23->myprintf::@22#1] -- register_copy 
    jmp __b22
    // myprintf::@19
  __b19:
    // [106] if(myprintf::bLeadZero#11==0) goto myprintf::@20 -- vbuz1_eq_0_then_la1 
    lda.z bLeadZero
    beq __b20_from___b19
    // [108] phi from myprintf::@19 to myprintf::@21 [phi:myprintf::@19->myprintf::@21]
  __b21_from___b19:
    // [108] phi myprintf::$41 = '0' [phi:myprintf::@19->myprintf::@21#0] -- vbuaa=vbuc1 
    lda #'0'
    jmp __b21
    // [107] phi from myprintf::@19 to myprintf::@20 [phi:myprintf::@19->myprintf::@20]
  __b20_from___b19:
    jmp __b20
    // myprintf::@20
  __b20:
    // [108] phi from myprintf::@20 to myprintf::@21 [phi:myprintf::@20->myprintf::@21]
  __b21_from___b20:
    // [108] phi myprintf::$41 = ' ' [phi:myprintf::@20->myprintf::@21#0] -- vbuaa=vbuc1 
    lda #' '
    jmp __b21
    // myprintf::@21
  __b21:
    // [109] strTemp[myprintf::bLen#12] = myprintf::$41 -- pbuc1_derefidx_vbuz1=vbuaa 
    ldy.z bLen
    sta strTemp,y
    // [110] myprintf::bLen#4 = ++ myprintf::bLen#12 -- vbuz1=_inc_vbuz1 
    inc.z bLen
    // [111] myprintf::bDigits#2 = -- myprintf::bDigits#12 -- vbuz1=_dec_vbuz1 
    dec.z bDigits
    jmp __b18_from___b21
    // myprintf::@15
  __b15:
    // [112] myprintf::b#5 = ++ myprintf::b#17 -- vbuz1=_inc_vbuz1 
    inc.z b
    // [87] phi from myprintf::@15 to myprintf::@14 [phi:myprintf::@15->myprintf::@14]
  __b14_from___b15:
    // [87] phi myprintf::b#17 = myprintf::b#5 [phi:myprintf::@15->myprintf::@14#0] -- register_copy 
    jmp __b14
    // myprintf::@8
  __b8:
    // [113] strTemp[myprintf::bLen#10] = (char)myprintf::w#10 -- pbuc1_derefidx_vbuz1=_byte_vwuz2 
    // "switch" is the normal way -- not supported -- https://gitlab.com/camelot/kickc/issues/170
    ldy.z bLen
    lda.z w
    sta strTemp,y
    // [114] myprintf::bLen#1 = ++ myprintf::bLen#10 -- vbuz1=_inc_vbuz1 
    inc.z bLen
    jmp __b27_from___b8
    // myprintf::@28
  __b28:
    // [115] myprintf::bDigits#1 = myprintf::b#1 - '0' -- vbuz1=vbuxx_minus_vbuc1 
    txa
    axs #'0'
    stx.z bDigits
    // [58] phi from myprintf::@28 myprintf::@37 to myprintf::@32 [phi:myprintf::@28/myprintf::@37->myprintf::@32]
  __b32_from___b28:
  __b32_from___b37:
    // [58] phi myprintf::bLeadZero#20 = myprintf::bLeadZero#11 [phi:myprintf::@28/myprintf::@37->myprintf::@32#0] -- register_copy 
    // [58] phi myprintf::bDigits#28 = myprintf::bDigits#1 [phi:myprintf::@28/myprintf::@37->myprintf::@32#1] -- register_copy 
    // [58] phi myprintf::bTrailing#24 = myprintf::bTrailing#11 [phi:myprintf::@28/myprintf::@37->myprintf::@32#2] -- register_copy 
    // [58] phi myprintf::w#18 = myprintf::w#10 [phi:myprintf::@28/myprintf::@37->myprintf::@32#3] -- register_copy 
    // [58] phi myprintf::bArg#11 = myprintf::bArg#10 [phi:myprintf::@28/myprintf::@37->myprintf::@32#4] -- register_copy 
    // [58] phi myprintf::bLen#28 = myprintf::bLen#10 [phi:myprintf::@28/myprintf::@37->myprintf::@32#5] -- register_copy 
    // [58] phi myprintf::bFormat#5 = myprintf::bFormat#10 [phi:myprintf::@28/myprintf::@37->myprintf::@32#6] -- register_copy 
    jmp __b32
    // myprintf::@4
  __b4:
    // [116] if(myprintf::b#1!='%') goto myprintf::@33 -- vbuxx_neq_vbuc1_then_la1 
    cpx #'%'
    bne __b33
    jmp __b39
    // myprintf::@39
  __b39:
    // [117] if(myprintf::bArg#10==0) goto myprintf::@34 -- vbuz1_eq_0_then_la1 
    // default format
    //w = (bArg == 0) ? w1 : ((bArg == 1) ? w2 : w3); -- "?" is the normal way, but error "sequence does not contain all blocks" -- https://gitlab.com/camelot/kickc/issues/185 [FIXED]
    lda.z bArg
    beq __b34
    jmp __b40
    // myprintf::@40
  __b40:
    // [118] if(myprintf::bArg#10==1) goto myprintf::@35 -- vbuz1_eq_vbuc1_then_la1 
    lda #1
    cmp.z bArg
    beq __b35
    jmp __b41
    // myprintf::@41
  __b41:
    // [119] myprintf::w#55 = myprintf::w3#8 -- vwuz1=vwuz2 
    lda.z w3
    sta.z w
    lda.z w3+1
    sta.z w+1
    // [120] phi from myprintf::@34 myprintf::@35 myprintf::@41 to myprintf::@36 [phi:myprintf::@34/myprintf::@35/myprintf::@41->myprintf::@36]
  __b36_from___b34:
  __b36_from___b35:
  __b36_from___b41:
    // [120] phi myprintf::w#22 = myprintf::w#53 [phi:myprintf::@34/myprintf::@35/myprintf::@41->myprintf::@36#0] -- register_copy 
    jmp __b36
    // myprintf::@36
  __b36:
    // [121] myprintf::bArg#1 = ++ myprintf::bArg#10 -- vbuz1=_inc_vbuz1 
    inc.z bArg
    // [58] phi from myprintf::@36 to myprintf::@32 [phi:myprintf::@36->myprintf::@32]
  __b32_from___b36:
    // [58] phi myprintf::bLeadZero#20 = 0 [phi:myprintf::@36->myprintf::@32#0] -- vbuz1=vbuc1 
    lda #0
    sta.z bLeadZero
    // [58] phi myprintf::bDigits#28 = 1 [phi:myprintf::@36->myprintf::@32#1] -- vbuz1=vbuc1 
    lda #1
    sta.z bDigits
    // [58] phi myprintf::bTrailing#24 = 0 [phi:myprintf::@36->myprintf::@32#2] -- vbuz1=vbuc1 
    lda #0
    sta.z bTrailing
    // [58] phi myprintf::w#18 = myprintf::w#22 [phi:myprintf::@36->myprintf::@32#3] -- register_copy 
    // [58] phi myprintf::bArg#11 = myprintf::bArg#1 [phi:myprintf::@36->myprintf::@32#4] -- register_copy 
    // [58] phi myprintf::bLen#28 = myprintf::bLen#10 [phi:myprintf::@36->myprintf::@32#5] -- register_copy 
    // [58] phi myprintf::bFormat#5 = 1 [phi:myprintf::@36->myprintf::@32#6] -- vbuz1=vbuc1 
    lda #1
    sta.z bFormat
    jmp __b32
    // myprintf::@35
  __b35:
    // [122] myprintf::w#54 = myprintf::w2#8 -- vwuz1=vwuz2 
    lda.z w2
    sta.z w
    lda.z w2+1
    sta.z w+1
    jmp __b36_from___b35
    // myprintf::@34
  __b34:
    // [123] myprintf::w#53 = myprintf::w1#7 -- vwuz1=vwuz2 
    lda.z w1
    sta.z w
    lda.z w1+1
    sta.z w+1
    jmp __b36_from___b34
    // myprintf::@33
  __b33:
    // [124] if(myprintf::b#1<$41) goto myprintf::@37 -- vbuxx_lt_vbuc1_then_la1 
    cpx #$41
    bcc __b37_from___b33
    jmp __b47
    // myprintf::@47
  __b47:
    // [125] if(myprintf::b#1>=$5a+1) goto myprintf::@37 -- vbuxx_ge_vbuc1_then_la1 
    cpx #$5a+1
    bcs __b37_from___b47
    jmp __b42
    // myprintf::@42
  __b42:
    // [126] myprintf::b#6 = myprintf::b#1 + $20 -- vbuxx=vbuxx_plus_vbuc1 
    txa
    axs #-[$20]
    // [127] phi from myprintf::@33 myprintf::@42 to myprintf::@37 [phi:myprintf::@33/myprintf::@42->myprintf::@37]
  __b37_from___b33:
  __b37_from___b42:
    // [127] phi myprintf::b#25 = myprintf::b#1 [phi:myprintf::@33/myprintf::@42->myprintf::@37#0] -- register_copy 
    jmp __b37
    // [127] phi from myprintf::@47 to myprintf::@37 [phi:myprintf::@47->myprintf::@37]
  __b37_from___b47:
    jmp __b37
    // myprintf::@37
  __b37:
    // [128] strTemp[myprintf::bLen#10] = myprintf::b#25 -- pbuc1_derefidx_vbuz1=vbuxx 
    // swap 0x41 / 0x61 when in lower case mode
    ldy.z bLen
    txa
    sta strTemp,y
    // [129] myprintf::bLen#7 = ++ myprintf::bLen#10 -- vbuz1=_inc_vbuz1 
    inc.z bLen
    jmp __b32_from___b37
  .segment Data
    buf6: .fill 6, 0
}
.segment Code
  // Print
Print: {
    // asm { ldy#0 loop: ldastrTemp,y beqdone jsr$FFD2 iny jmploop done:  }
    // can this assembly be placed in a separate file and call it from the C code here?
    ldy #0
  loop:
    lda strTemp,y
    beq done
    jsr $ffd2
    iny
    jmp loop
  done:
    jmp __breturn
    // Print::@return
  __breturn:
    // [131] return 
    rts
}
  // div10
// __zp(4) unsigned int div10(__zp($13) unsigned int val)
div10: {
    .label __0 = $13
    .label __2 = $15
    .label __3 = $17
    .label __4 = 4
    .label val = $13
    .label val_1 = $15
    .label val_2 = $17
    .label val_3 = 4
    .label return = 4
    .label val_4 = 2
    // [132] div10::$0 = div10::val#4 >> 1 -- vwuz1=vwuz2_ror_1 
    lda.z val_4+1
    lsr
    sta.z __0+1
    lda.z val_4
    ror
    sta.z __0
    // [133] div10::val#0 = div10::$0 + 1 -- vwuz1=vwuz1_plus_1 
    inc.z val
    bne !+
    inc.z val+1
  !:
    // [134] div10::$2 = div10::val#0 << 1 -- vwuz1=vwuz2_rol_1 
    lda.z val
    asl
    sta.z __2
    lda.z val+1
    rol
    sta.z __2+1
    // [135] div10::val#1 = div10::val#0 + div10::$2 -- vwuz1=vwuz2_plus_vwuz1 
    clc
    lda.z val_1
    adc.z val
    sta.z val_1
    lda.z val_1+1
    adc.z val+1
    sta.z val_1+1
    // [136] div10::$3 = div10::val#1 >> 4 -- vwuz1=vwuz2_ror_4 
    lda.z val_1+1
    lsr
    sta.z __3+1
    lda.z val_1
    ror
    sta.z __3
    lsr.z __3+1
    ror.z __3
    lsr.z __3+1
    ror.z __3
    lsr.z __3+1
    ror.z __3
    // [137] div10::val#2 = div10::val#1 + div10::$3 -- vwuz1=vwuz2_plus_vwuz1 
    clc
    lda.z val_2
    adc.z val_1
    sta.z val_2
    lda.z val_2+1
    adc.z val_1+1
    sta.z val_2+1
    // [138] div10::$4 = div10::val#2 >> 8 -- vwuz1=vwuz2_ror_8 
    lda.z val_2+1
    sta.z __4
    lda #0
    sta.z __4+1
    // [139] div10::val#3 = div10::val#2 + div10::$4 -- vwuz1=vwuz2_plus_vwuz1 
    clc
    lda.z val_3
    adc.z val_2
    sta.z val_3
    lda.z val_3+1
    adc.z val_2+1
    sta.z val_3+1
    // [140] div10::return#0 = div10::val#3 >> 4 -- vwuz1=vwuz1_ror_4 
    lsr.z return+1
    ror.z return
    lsr.z return+1
    ror.z return
    lsr.z return+1
    ror.z return
    lsr.z return+1
    ror.z return
    jmp __breturn
    // div10::@return
  __breturn:
    // [141] return 
    rts
}
  // div16u
// Performs division on two 16 bit unsigned ints
// Returns the quotient dividend/divisor.
// The remainder will be set into the global variable rem16u
// Implemented using simple binary division
// __zp(4) unsigned int div16u(__zp(2) unsigned int dividend, unsigned int divisor)
div16u: {
    .label divisor = $a
    .label return = 4
    .label dividend = 2
    // [142] divr16u::dividend#1 = div16u::dividend#0 -- vwuz1=vwuz2 
    lda.z dividend
    sta.z divr16u.dividend
    lda.z dividend+1
    sta.z divr16u.dividend+1
    // [143] call divr16u
    // [187] phi from div16u to divr16u [phi:div16u->divr16u]
  divr16u_from_div16u:
    jsr divr16u
    // [144] divr16u::return#2 = divr16u::return#0
    jmp __b1
    // div16u::@1
  __b1:
    // [145] div16u::return#0 = divr16u::return#2
    jmp __breturn
    // div16u::@return
  __breturn:
    // [146] return 
    rts
}
  // utoa
// void utoa(__zp($f) unsigned int value, __zp($11) char *dst)
utoa: {
    .label value = $f
    .label dst = $11
    jmp __b13
    // utoa::@13
  __b13:
    // [148] if(utoa::value#4>=$2710) goto utoa::@5 -- vwuz1_ge_vwuc1_then_la1 
    lda.z value+1
    cmp #>$2710
    bcc !+
    bne __b5
    lda.z value
    cmp #<$2710
    bcs __b5
  !:
    // [149] phi from utoa::@13 to utoa::@1 [phi:utoa::@13->utoa::@1]
  __b1_from___b13:
    // [149] phi utoa::dst#16 = myprintf::buf6 [phi:utoa::@13->utoa::@1#0] -- pbuz1=pbuc1 
    lda #<myprintf.buf6
    sta.z dst
    lda #>myprintf.buf6
    sta.z dst+1
    // [149] phi utoa::value#6 = utoa::value#4 [phi:utoa::@13->utoa::@1#1] -- register_copy 
    // [149] phi utoa::bStarted#5 = 0 [phi:utoa::@13->utoa::@1#2] -- vbuxx=vbuc1 
    ldx #0
    jmp __b1
    // utoa::@1
  __b1:
    // [150] if(utoa::bStarted#5==1) goto utoa::@6 -- vbuxx_eq_vbuc1_then_la1 
    cpx #1
    beq __b6
    jmp __b14
    // utoa::@14
  __b14:
    // [151] if(utoa::value#6>=$3e8) goto utoa::@6 -- vwuz1_ge_vwuc1_then_la1 
    lda.z value+1
    cmp #>$3e8
    bcc !+
    bne __b6
    lda.z value
    cmp #<$3e8
    bcs __b6
  !:
    // [152] phi from utoa::@14 to utoa::@2 [phi:utoa::@14->utoa::@2]
  __b2_from___b14:
    // [152] phi utoa::dst#10 = utoa::dst#16 [phi:utoa::@14->utoa::@2#0] -- register_copy 
    // [152] phi utoa::value#11 = utoa::value#6 [phi:utoa::@14->utoa::@2#1] -- register_copy 
    // [152] phi utoa::bStarted#6 = utoa::bStarted#5 [phi:utoa::@14->utoa::@2#2] -- register_copy 
    jmp __b2
    // utoa::@2
  __b2:
    // [153] if(utoa::bStarted#6==1) goto utoa::@7 -- vbuxx_eq_vbuc1_then_la1 
    cpx #1
    beq __b7
    jmp __b15
    // utoa::@15
  __b15:
    // [154] if(utoa::value#11>=$64) goto utoa::@7 -- vwuz1_ge_vbuc1_then_la1 
    lda.z value+1
    bne __b7
    lda.z value
    cmp #$64
    bcs __b7
  !:
    // [155] phi from utoa::@15 to utoa::@3 [phi:utoa::@15->utoa::@3]
  __b3_from___b15:
    // [155] phi utoa::dst#13 = utoa::dst#10 [phi:utoa::@15->utoa::@3#0] -- register_copy 
    // [155] phi utoa::value#10 = utoa::value#11 [phi:utoa::@15->utoa::@3#1] -- register_copy 
    // [155] phi utoa::bStarted#7 = utoa::bStarted#6 [phi:utoa::@15->utoa::@3#2] -- register_copy 
    jmp __b3
    // utoa::@3
  __b3:
    // [156] if(utoa::bStarted#7==1) goto utoa::@8 -- vbuxx_eq_vbuc1_then_la1 
    cpx #1
    beq __b8
    jmp __b16
    // utoa::@16
  __b16:
    // [157] if(utoa::value#10>=$a) goto utoa::@8 -- vwuz1_ge_vbuc1_then_la1 
    lda.z value+1
    bne __b8
    lda.z value
    cmp #$a
    bcs __b8
  !:
    // [158] phi from utoa::@12 utoa::@16 to utoa::@4 [phi:utoa::@12/utoa::@16->utoa::@4]
  __b4_from___b12:
  __b4_from___b16:
    // [158] phi utoa::dst#12 = utoa::dst#4 [phi:utoa::@12/utoa::@16->utoa::@4#0] -- register_copy 
    // [158] phi utoa::value#12 = utoa::value#3 [phi:utoa::@12/utoa::@16->utoa::@4#1] -- register_copy 
    jmp __b4
    // utoa::@4
  __b4:
    // [159] utoa::$21 = (char)utoa::value#12 -- vbuaa=_byte_vwuz1 
    lda.z value
    // [160] utoa::$16 = '0' + utoa::$21 -- vbuaa=vbuc1_plus_vbuaa 
    clc
    adc #'0'
    // [161] *utoa::dst#12 = utoa::$16 -- _deref_pbuz1=vbuaa 
    ldy #0
    sta (dst),y
    // [162] utoa::dst#3 = ++ utoa::dst#12 -- pbuz1=_inc_pbuz1 
    inc.z dst
    bne !+
    inc.z dst+1
  !:
    // [163] *utoa::dst#3 = 0 -- _deref_pbuz1=vbuc1 
    lda #0
    ldy #0
    sta (dst),y
    jmp __breturn
    // utoa::@return
  __breturn:
    // [164] return 
    rts
    // utoa::@8
  __b8:
    // [165] append::dst#3 = utoa::dst#13
    // [166] append::value#4 = utoa::value#10
    // [167] call append
    // [204] phi from utoa::@8 to append [phi:utoa::@8->append]
  append_from___b8:
    // [204] phi append::sub#6 = $a [phi:utoa::@8->append#0] -- vwuz1=vbuc1 
    lda #<$a
    sta.z append.sub
    lda #>$a
    sta.z append.sub+1
    // [204] phi append::value#8 = append::value#4 [phi:utoa::@8->append#1] -- register_copy 
    // [204] phi append::dst#4 = append::dst#3 [phi:utoa::@8->append#2] -- register_copy 
    jsr append
    // [168] append::return#10 = append::value#5
    jmp __b12
    // utoa::@12
  __b12:
    // [169] utoa::value#3 = append::return#10
    // [170] utoa::dst#4 = ++ utoa::dst#13 -- pbuz1=_inc_pbuz1 
    inc.z dst
    bne !+
    inc.z dst+1
  !:
    jmp __b4_from___b12
    // utoa::@7
  __b7:
    // [171] append::dst#2 = utoa::dst#10
    // [172] append::value#3 = utoa::value#11
    // [173] call append
    // [204] phi from utoa::@7 to append [phi:utoa::@7->append]
  append_from___b7:
    // [204] phi append::sub#6 = $64 [phi:utoa::@7->append#0] -- vwuz1=vbuc1 
    lda #<$64
    sta.z append.sub
    lda #>$64
    sta.z append.sub+1
    // [204] phi append::value#8 = append::value#3 [phi:utoa::@7->append#1] -- register_copy 
    // [204] phi append::dst#4 = append::dst#2 [phi:utoa::@7->append#2] -- register_copy 
    jsr append
    // [174] append::return#4 = append::value#5
    jmp __b11
    // utoa::@11
  __b11:
    // [175] utoa::value#2 = append::return#4
    // [176] utoa::dst#2 = ++ utoa::dst#10 -- pbuz1=_inc_pbuz1 
    inc.z dst
    bne !+
    inc.z dst+1
  !:
    // [155] phi from utoa::@11 to utoa::@3 [phi:utoa::@11->utoa::@3]
  __b3_from___b11:
    // [155] phi utoa::dst#13 = utoa::dst#2 [phi:utoa::@11->utoa::@3#0] -- register_copy 
    // [155] phi utoa::value#10 = utoa::value#2 [phi:utoa::@11->utoa::@3#1] -- register_copy 
    // [155] phi utoa::bStarted#7 = 1 [phi:utoa::@11->utoa::@3#2] -- vbuxx=vbuc1 
    ldx #1
    jmp __b3
    // utoa::@6
  __b6:
    // [177] append::dst#1 = utoa::dst#16
    // [178] append::value#2 = utoa::value#6
    // [179] call append
    // [204] phi from utoa::@6 to append [phi:utoa::@6->append]
  append_from___b6:
    // [204] phi append::sub#6 = $3e8 [phi:utoa::@6->append#0] -- vwuz1=vwuc1 
    lda #<$3e8
    sta.z append.sub
    lda #>$3e8
    sta.z append.sub+1
    // [204] phi append::value#8 = append::value#2 [phi:utoa::@6->append#1] -- register_copy 
    // [204] phi append::dst#4 = append::dst#1 [phi:utoa::@6->append#2] -- register_copy 
    jsr append
    // [180] append::return#3 = append::value#5
    jmp __b10
    // utoa::@10
  __b10:
    // [181] utoa::value#1 = append::return#3
    // [182] utoa::dst#1 = ++ utoa::dst#16 -- pbuz1=_inc_pbuz1 
    inc.z dst
    bne !+
    inc.z dst+1
  !:
    // [152] phi from utoa::@10 to utoa::@2 [phi:utoa::@10->utoa::@2]
  __b2_from___b10:
    // [152] phi utoa::dst#10 = utoa::dst#1 [phi:utoa::@10->utoa::@2#0] -- register_copy 
    // [152] phi utoa::value#11 = utoa::value#1 [phi:utoa::@10->utoa::@2#1] -- register_copy 
    // [152] phi utoa::bStarted#6 = 1 [phi:utoa::@10->utoa::@2#2] -- vbuxx=vbuc1 
    ldx #1
    jmp __b2
    // utoa::@5
  __b5:
    // [183] append::value#1 = utoa::value#4
    // [184] call append
    // [204] phi from utoa::@5 to append [phi:utoa::@5->append]
  append_from___b5:
    // [204] phi append::sub#6 = $2710 [phi:utoa::@5->append#0] -- vwuz1=vwuc1 
    lda #<$2710
    sta.z append.sub
    lda #>$2710
    sta.z append.sub+1
    // [204] phi append::value#8 = append::value#1 [phi:utoa::@5->append#1] -- register_copy 
    // [204] phi append::dst#4 = myprintf::buf6 [phi:utoa::@5->append#2] -- pbuz1=pbuc1 
    lda #<myprintf.buf6
    sta.z append.dst
    lda #>myprintf.buf6
    sta.z append.dst+1
    jsr append
    // [185] append::return#2 = append::value#5
    jmp __b9
    // utoa::@9
  __b9:
    // [186] utoa::value#0 = append::return#2
    // [149] phi from utoa::@9 to utoa::@1 [phi:utoa::@9->utoa::@1]
  __b1_from___b9:
    // [149] phi utoa::dst#16 = ++myprintf::buf6 [phi:utoa::@9->utoa::@1#0] -- pbuz1=pbuc1 
    lda #<myprintf.buf6+1
    sta.z dst
    lda #>myprintf.buf6+1
    sta.z dst+1
    // [149] phi utoa::value#6 = utoa::value#0 [phi:utoa::@9->utoa::@1#1] -- register_copy 
    // [149] phi utoa::bStarted#5 = 1 [phi:utoa::@9->utoa::@1#2] -- vbuxx=vbuc1 
    ldx #1
    jmp __b1
}
  // divr16u
// Performs division on two 16 bit unsigned ints and an initial remainder
// Returns the quotient dividend/divisor.
// The final remainder will be set into the global variable rem16u
// Implemented using simple binary division
// __zp(4) unsigned int divr16u(__zp($17) unsigned int dividend, unsigned int divisor, __zp($15) unsigned int rem)
divr16u: {
    .label rem = $15
    .label dividend = $17
    .label quotient = 4
    .label return = 4
    // [188] phi from divr16u to divr16u::@1 [phi:divr16u->divr16u::@1]
  __b1_from_divr16u:
    // [188] phi divr16u::i#2 = 0 [phi:divr16u->divr16u::@1#0] -- vbuxx=vbuc1 
    ldx #0
    // [188] phi divr16u::quotient#3 = 0 [phi:divr16u->divr16u::@1#1] -- vwuz1=vwuc1 
    lda #<0
    sta.z quotient
    lda #>0
    sta.z quotient+1
    // [188] phi divr16u::dividend#2 = divr16u::dividend#1 [phi:divr16u->divr16u::@1#2] -- register_copy 
    // [188] phi divr16u::rem#4 = 0 [phi:divr16u->divr16u::@1#3] -- vwuz1=vbuc1 
    lda #<0
    sta.z rem
    lda #>0
    sta.z rem+1
    jmp __b1
    // [188] phi from divr16u::@3 to divr16u::@1 [phi:divr16u::@3->divr16u::@1]
  __b1_from___b3:
    // [188] phi divr16u::i#2 = divr16u::i#1 [phi:divr16u::@3->divr16u::@1#0] -- register_copy 
    // [188] phi divr16u::quotient#3 = divr16u::return#0 [phi:divr16u::@3->divr16u::@1#1] -- register_copy 
    // [188] phi divr16u::dividend#2 = divr16u::dividend#0 [phi:divr16u::@3->divr16u::@1#2] -- register_copy 
    // [188] phi divr16u::rem#4 = divr16u::rem#9 [phi:divr16u::@3->divr16u::@1#3] -- register_copy 
    jmp __b1
    // divr16u::@1
  __b1:
    // [189] divr16u::rem#0 = divr16u::rem#4 << 1 -- vwuz1=vwuz1_rol_1 
    asl.z rem
    rol.z rem+1
    // [190] divr16u::$1 = byte1  divr16u::dividend#2 -- vbuaa=_byte1_vwuz1 
    lda.z dividend+1
    // [191] divr16u::$2 = divr16u::$1 & $80 -- vbuaa=vbuaa_band_vbuc1 
    and #$80
    // [192] if(divr16u::$2==0) goto divr16u::@2 -- vbuaa_eq_0_then_la1 
    cmp #0
    beq __b2_from___b1
    jmp __b4
    // divr16u::@4
  __b4:
    // [193] divr16u::rem#1 = divr16u::rem#0 | 1 -- vwuz1=vwuz1_bor_vbuc1 
    lda #1
    ora.z rem
    sta.z rem
    // [194] phi from divr16u::@1 divr16u::@4 to divr16u::@2 [phi:divr16u::@1/divr16u::@4->divr16u::@2]
  __b2_from___b1:
  __b2_from___b4:
    // [194] phi divr16u::rem#5 = divr16u::rem#0 [phi:divr16u::@1/divr16u::@4->divr16u::@2#0] -- register_copy 
    jmp __b2
    // divr16u::@2
  __b2:
    // [195] divr16u::dividend#0 = divr16u::dividend#2 << 1 -- vwuz1=vwuz1_rol_1 
    asl.z dividend
    rol.z dividend+1
    // [196] divr16u::quotient#1 = divr16u::quotient#3 << 1 -- vwuz1=vwuz1_rol_1 
    asl.z quotient
    rol.z quotient+1
    // [197] if(divr16u::rem#5<div16u::divisor#0) goto divr16u::@3 -- vwuz1_lt_vwuc1_then_la1 
    lda.z rem+1
    cmp #>div16u.divisor
    bcc __b3_from___b2
    bne !+
    lda.z rem
    cmp #<div16u.divisor
    bcc __b3_from___b2
  !:
    jmp __b5
    // divr16u::@5
  __b5:
    // [198] divr16u::quotient#2 = ++ divr16u::quotient#1 -- vwuz1=_inc_vwuz1 
    inc.z quotient
    bne !+
    inc.z quotient+1
  !:
    // [199] divr16u::rem#2 = divr16u::rem#5 - div16u::divisor#0 -- vwuz1=vwuz1_minus_vwuc1 
    lda.z rem
    sec
    sbc #<div16u.divisor
    sta.z rem
    lda.z rem+1
    sbc #>div16u.divisor
    sta.z rem+1
    // [200] phi from divr16u::@2 divr16u::@5 to divr16u::@3 [phi:divr16u::@2/divr16u::@5->divr16u::@3]
  __b3_from___b2:
  __b3_from___b5:
    // [200] phi divr16u::return#0 = divr16u::quotient#1 [phi:divr16u::@2/divr16u::@5->divr16u::@3#0] -- register_copy 
    // [200] phi divr16u::rem#9 = divr16u::rem#5 [phi:divr16u::@2/divr16u::@5->divr16u::@3#1] -- register_copy 
    jmp __b3
    // divr16u::@3
  __b3:
    // [201] divr16u::i#1 = ++ divr16u::i#2 -- vbuxx=_inc_vbuxx 
    inx
    // [202] if(divr16u::i#1!=$10) goto divr16u::@1 -- vbuxx_neq_vbuc1_then_la1 
    cpx #$10
    bne __b1_from___b3
    jmp __breturn
    // divr16u::@return
  __breturn:
    // [203] return 
    rts
}
  // append
// simple 'utoa' without using multiply or divide
// __zp($f) unsigned int append(__zp($11) char *dst, __zp($f) unsigned int value, __zp($13) unsigned int sub)
append: {
    .label value = $f
    .label return = $f
    .label dst = $11
    .label sub = $13
    // [205] *append::dst#4 = '0' -- _deref_pbuz1=vbuc1 
    lda #'0'
    ldy #0
    sta (dst),y
    // [206] phi from append append::@2 to append::@1 [phi:append/append::@2->append::@1]
  __b1_from_append:
  __b1_from___b2:
    // [206] phi append::value#5 = append::value#8 [phi:append/append::@2->append::@1#0] -- register_copy 
    jmp __b1
    // append::@1
  __b1:
    // [207] if(append::value#5>=append::sub#6) goto append::@2 -- vwuz1_ge_vwuz2_then_la1 
    lda.z sub+1
    cmp.z value+1
    bne !+
    lda.z sub
    cmp.z value
    beq __b2
  !:
    bcc __b2
    jmp __breturn
    // append::@return
  __breturn:
    // [208] return 
    rts
    // append::@2
  __b2:
    // [209] *append::dst#4 = ++ *append::dst#4 -- _deref_pbuz1=_inc__deref_pbuz1 
    ldy #0
    lda (dst),y
    clc
    adc #1
    ldy #0
    sta (dst),y
    // [210] append::value#0 = append::value#5 - append::sub#6 -- vwuz1=vwuz1_minus_vwuz2 
    lda.z value
    sec
    sbc.z sub
    sta.z value
    lda.z value+1
    sbc.z sub+1
    sta.z value+1
    jmp __b1_from___b2
}
  // File Data
.segment Data
  // "char buf16[16]" is the normal way -- not supported -- https://gitlab.com/camelot/kickc/issues/162
  strTemp: .fill $64, 0

ASSEMBLER OPTIMIZATIONS
Removing instruction jmp __b1
Removing instruction jmp __b3
Removing instruction jmp __b7
Removing instruction jmp __breturn
Removing instruction jmp __b9
Removing instruction jmp __b11
Removing instruction jmp __b16
Removing instruction jmp __b17
Removing instruction jmp __b15
Removing instruction jmp __b4
Removing instruction jmp __b6
Removing instruction jmp __b13
Removing instruction jmp __b14
Removing instruction jmp __b12
Removing instruction jmp __b1
Removing instruction jmp __b3
Removing instruction jmp __breturn
Removing instruction jmp __b38
Removing instruction jmp __b32
Removing instruction jmp __b43
Removing instruction jmp __b6
Removing instruction jmp __b29
Removing instruction jmp __b30
Removing instruction jmp __b44
Removing instruction jmp __b27
Removing instruction jmp __b10
Removing instruction jmp __b11
Removing instruction jmp __b12
Removing instruction jmp __b13
Removing instruction jmp __b14
Removing instruction jmp __b16
Removing instruction jmp __b45
Removing instruction jmp __b18
Removing instruction jmp __b17
Removing instruction jmp __b22
Removing instruction jmp __b24
Removing instruction jmp __b46
Removing instruction jmp __b25
Removing instruction jmp __b20
Removing instruction jmp __b21
Removing instruction jmp __b39
Removing instruction jmp __b40
Removing instruction jmp __b41
Removing instruction jmp __b36
Removing instruction jmp __b47
Removing instruction jmp __b42
Removing instruction jmp __b37
Removing instruction jmp __breturn
Removing instruction jmp __breturn
Removing instruction jmp __b1
Removing instruction jmp __breturn
Removing instruction jmp __b13
Removing instruction jmp __b1
Removing instruction jmp __b14
Removing instruction jmp __b2
Removing instruction jmp __b15
Removing instruction jmp __b3
Removing instruction jmp __b16
Removing instruction jmp __b4
Removing instruction jmp __breturn
Removing instruction jmp __b12
Removing instruction jmp __b11
Removing instruction jmp __b10
Removing instruction jmp __b9
Removing instruction jmp __b1
Removing instruction jmp __b4
Removing instruction jmp __b2
Removing instruction jmp __b5
Removing instruction jmp __b3
Removing instruction jmp __breturn
Removing instruction jmp __b1
Removing instruction jmp __breturn
Succesful ASM optimization Pass5NextJumpElimination
Removing instruction lda #>0
Removing instruction lda #0
Removing instruction lda #0
Removing instruction lda #0
Removing instruction lda #0
Removing instruction lda #0
Removing instruction lda #0
Removing instruction lda #<0
Removing instruction lda #>0
Removing instruction lda #0
Removing instruction lda #0
Removing instruction lda #0
Removing instruction ldy.z bLen
Removing instruction lda.z val_1+1
Removing instruction lda.z val_2+1
Replacing instruction ldy #0 with TAY
Replacing instruction lda #<0 with TXA
Removing instruction lda #>0
Removing instruction lda #<0
Removing instruction lda #>0
Removing instruction ldy #0
Succesful ASM optimization Pass5UnnecesaryLoadElimination
Replacing label __b9_from___b15 with __b9
Replacing label __b4_from___b12 with __b4
Replacing label __b10_from___b31 with __b10
Replacing label __b12_from___b11 with __b12
Replacing label __b27_from___b13 with __b27_from___b8
Replacing label __b17_from___b16 with __b17_from___b18
Replacing label __b17_from___b45 with __b17
Replacing label __b27_from___b24 with __b27_from___b8
Replacing label __b27_from___b46 with __b27
Replacing label __b27_from___b25 with __b27_from___b8
Replacing label __b25_from___b26 with __b25
Replacing label __b20_from___b19 with __b20
Replacing label __b18_from___b21 with __b18
Replacing label __b36_from___b35 with __b36
Replacing label __b36_from___b34 with __b36
Replacing label __b37_from___b33 with __b37_from___b42
Replacing label __b37_from___b47 with __b37
Replacing label __b4_from___b12 with __b4
Replacing label __b2_from___b1 with __b2
Replacing label __b3_from___b2 with __b3
Replacing label __b3_from___b2 with __b3
Replacing label __b1_from___b3 with __b1
Replacing label __b1_from___b2 with __b1
Removing instruction __b9_from___b15:
Removing instruction __b9_from___b8:
Removing instruction __b16_from___b11:
Removing instruction __b4_from___b12:
Removing instruction __b4_from___b2:
Removing instruction __b13_from___b6:
Removing instruction __b27_from___b13:
Removing instruction __b27_from___b24:
Removing instruction __b27_from___b25:
Removing instruction __b27_from___b44:
Removing instruction __b27_from___b46:
Removing instruction __b32_from___b27:
Removing instruction __b10_from___b31:
Removing instruction __b11_from___b10:
Removing instruction __b12_from___b11:
Removing instruction __b13_from___b12:
Removing instruction __b18_from___b21:
Removing instruction __b18_from___b45:
Removing instruction __b17_from___b16:
Removing instruction __b17_from___b45:
Removing instruction __b22_from___b17:
Removing instruction __b25_from___b26:
Removing instruction __b25_from___b46:
Removing instruction __b20_from___b19:
Removing instruction __b21_from___b20:
Removing instruction __b32_from___b28:
Removing instruction __b36_from___b34:
Removing instruction __b36_from___b35:
Removing instruction __b36_from___b41:
Removing instruction __b37_from___b33:
Removing instruction __b37_from___b47:
Removing instruction __breturn:
Removing instruction __breturn:
Removing instruction __b2_from___b14:
Removing instruction __b3_from___b15:
Removing instruction __b4_from___b12:
Removing instruction __b4_from___b16:
Removing instruction append_from___b8:
Removing instruction append_from___b7:
Removing instruction append_from___b6:
Removing instruction append_from___b5:
Removing instruction __b1_from___b9:
Removing instruction __b1_from___b3:
Removing instruction __b2_from___b1:
Removing instruction __b2_from___b4:
Removing instruction __b3_from___b2:
Removing instruction __b3_from___b5:
Removing instruction __b1_from_append:
Removing instruction __b1_from___b2:
Succesful ASM optimization Pass5RedundantLabelElimination
Removing instruction __b1_from_main:
Removing instruction __b3:
Removing instruction __b7_from___b3:
Removing instruction __breturn:
Removing instruction __b11:
Removing instruction myprintf_from___b11:
Removing instruction __b16:
Removing instruction __b17:
Removing instruction __b7_from___b17:
Removing instruction __b15:
Removing instruction __b6:
Removing instruction myprintf_from___b6:
Removing instruction __b13:
Removing instruction __b14:
Removing instruction __b1_from___b14:
Removing instruction __b12:
Removing instruction __b1_from_myprintf:
Removing instruction __b3:
Removing instruction __breturn:
Removing instruction __b38:
Removing instruction __b32_from___b38:
Removing instruction __b1_from___b32:
Removing instruction __b43:
Removing instruction __b32_from___b6:
Removing instruction __b29:
Removing instruction __b30:
Removing instruction __b44:
Removing instruction __b11_from___b31:
Removing instruction __b13_from___b11:
Removing instruction utoa_from___b9:
Removing instruction __b14_from___b9:
Removing instruction __b16:
Removing instruction __b45:
Removing instruction __b24:
Removing instruction __b46:
Removing instruction __b22_from___b23:
Removing instruction __b21_from___b19:
Removing instruction __b14_from___b15:
Removing instruction __b39:
Removing instruction __b40:
Removing instruction __b41:
Removing instruction __b32_from___b36:
Removing instruction __b47:
Removing instruction __b42:
Removing instruction __breturn:
Removing instruction divr16u_from_div16u:
Removing instruction __b1:
Removing instruction __b13:
Removing instruction __b1_from___b13:
Removing instruction __b14:
Removing instruction __b15:
Removing instruction __b16:
Removing instruction __breturn:
Removing instruction __b12:
Removing instruction __b11:
Removing instruction __b3_from___b11:
Removing instruction __b10:
Removing instruction __b2_from___b10:
Removing instruction __b9:
Removing instruction __b1_from_divr16u:
Removing instruction __b4:
Removing instruction __b5:
Removing instruction __breturn:
Removing instruction __breturn:
Succesful ASM optimization Pass5UnusedLabelElimination
Skipping double jump to __b27 in jmp __b27_from___b8
Skipping double jump to __b17 in bne __b17_from___b18
Skipping double jump to __b27 in beq __b27_from___b8
Skipping double jump to __b27 in jmp __b27_from___b8
Skipping double jump to __b27 in jmp __b27_from___b8
Skipping double jump to __b37 in bcc __b37_from___b42
Skipping double jump to __b32 in jmp __b32_from___b37
Succesful ASM optimization Pass5DoubleJumpElimination
Relabelling long label __b27_from___b8 to __b3
Relabelling long label __b17_from___b18 to __b16
Relabelling long label __b32_from___b37 to __b24
Relabelling long label __b37_from___b42 to __b29
Succesful ASM optimization Pass5RelabelLongLabels
Removing instruction jmp __b27
Removing instruction jmp __b17
Removing instruction jmp __b37
Removing instruction jmp __b1
Succesful ASM optimization Pass5NextJumpElimination
Removing instruction lda #<0
Replacing instruction lda #0 with TYA
Replacing instruction lda.z b with TYA
Succesful ASM optimization Pass5UnnecesaryLoadElimination
Replacing label __b27 with __b3
Replacing label __b27 with __b3
Replacing label __b27 with __b3
Replacing label __b27 with __b3
Replacing label __b27 with __b3
Removing instruction __b27:
Removing instruction __b16:
Removing instruction __b29:
Succesful ASM optimization Pass5RedundantLabelElimination
Removing instruction __b24:
Succesful ASM optimization Pass5UnusedLabelElimination
Fixing long branch [197] beq __b4 to bne
Fixing long branch [214] bcc __b28 to bcs
Fixing long branch [217] beq __b28 to bne
Fixing long branch [228] beq __b8 to bne
Fixing long branch [521] bne __b5 to beq
Fixing long branch [526] bcs __b5 to bcc

FINAL SYMBOL TABLE
void Print()
__constant char * const TIMEHI = (char *) 161
__constant char * const TIMELO = (char *) 162
__constant char * const VICBANK = (char *) 53272
unsigned int append(char *dst , unsigned int value , unsigned int sub)
char *append::dst
char *append::dst#1 // dst zp[2]:17 100001.0
char *append::dst#2 // dst zp[2]:17 100001.0
char *append::dst#3 // dst zp[2]:17 100001.0
char *append::dst#4 // dst zp[2]:17 3.33550001E8
unsigned int append::return
unsigned int append::return#10 // return zp[2]:15 200002.0
unsigned int append::return#2 // return zp[2]:15 200002.0
unsigned int append::return#3 // return zp[2]:15 200002.0
unsigned int append::return#4 // return zp[2]:15 200002.0
unsigned int append::sub
unsigned int append::sub#6 // sub zp[2]:19 3.333333336666667E8
unsigned int append::value
unsigned int append::value#0 // value zp[2]:15 2.000000002E9
unsigned int append::value#1 // value zp[2]:15 200002.0
unsigned int append::value#2 // value zp[2]:15 200002.0
unsigned int append::value#3 // value zp[2]:15 200002.0
unsigned int append::value#4 // value zp[2]:15 200002.0
unsigned int append::value#5 // value zp[2]:15 3.75175001E8
unsigned int append::value#8 // value zp[2]:15 700002.5
unsigned int div10(unsigned int val)
unsigned int div10::$0 // zp[2]:19 2002.0
unsigned int div10::$2 // zp[2]:21 2002.0
unsigned int div10::$3 // zp[2]:23 2002.0
unsigned int div10::$4 // zp[2]:4 2002.0
unsigned int div10::return
unsigned int div10::return#0 // return zp[2]:4 367.33333333333337
unsigned int div10::return#2 // return zp[2]:4 202.0
unsigned int div10::val
unsigned int div10::val#0 // val zp[2]:19 1501.5
unsigned int div10::val#1 // val_1 zp[2]:21 1501.5
unsigned int div10::val#2 // val_2 zp[2]:23 1501.5
unsigned int div10::val#3 // val_3 zp[2]:4 2002.0
unsigned int div10::val#4 // val_4 zp[2]:2 1102.0
unsigned int div16u(unsigned int dividend , unsigned int divisor)
unsigned int div16u::dividend
unsigned int div16u::dividend#0 // dividend zp[2]:2 1102.0
unsigned int div16u::divisor
__constant unsigned int div16u::divisor#0 = $a // divisor
unsigned int div16u::return
unsigned int div16u::return#0 // return zp[2]:4 367.33333333333337
unsigned int div16u::return#2 // return zp[2]:4 202.0
unsigned int divr16u(unsigned int dividend , unsigned int divisor , unsigned int rem)
char divr16u::$1 // reg byte a 2.0000002E7
char divr16u::$2 // reg byte a 2.0000002E7
unsigned int divr16u::dividend
unsigned int divr16u::dividend#0 // dividend zp[2]:23 2500000.25
unsigned int divr16u::dividend#1 // dividend zp[2]:23 5501.0
unsigned int divr16u::dividend#2 // dividend zp[2]:23 4287143.428571429
unsigned int divr16u::divisor
char divr16u::i
char divr16u::i#1 // reg byte x 1.50000015E7
char divr16u::i#2 // reg byte x 1538461.6923076923
unsigned int divr16u::quotient
unsigned int divr16u::quotient#1 // quotient zp[2]:4 1.50000015E7
unsigned int divr16u::quotient#2 // quotient zp[2]:4 1.0000001E7
unsigned int divr16u::quotient#3 // quotient zp[2]:4 2500000.25
unsigned int divr16u::rem
unsigned int divr16u::rem#0 // rem zp[2]:21 7500000.75
unsigned int divr16u::rem#1 // rem zp[2]:21 2.0000002E7
unsigned int divr16u::rem#2 // rem zp[2]:21 2.0000002E7
unsigned int divr16u::rem#4 // rem zp[2]:21 2.0000002E7
unsigned int divr16u::rem#5 // rem zp[2]:21 1.0000001E7
unsigned int divr16u::rem#9 // rem zp[2]:21 1.0000001E7
unsigned int divr16u::return
unsigned int divr16u::return#0 // return zp[2]:4 6000200.8
unsigned int divr16u::return#2 // return zp[2]:4 2002.0
int main()
unsigned int main::$10 // zp[2]:6 11.0
unsigned int main::$14 // zp[2]:6 22.0
unsigned int main::$15 // zp[2]:17 22.0
unsigned int main::$16 // zp[2]:6 22.0
unsigned int main::$17 // zp[2]:15 22.0
unsigned int main::$3 // zp[2]:6 11.0
int main::return
__constant char main::str[$24] = "200 DIV16U: %5d,%4d IN %04d FRAMESm"
__constant char main::str1[$24] = "200 DIV10 : %5d,%4d IN %04d FRAMESm"
unsigned int main::u
unsigned int main::u#16 // u zp[2]:2 6.380952380952381
unsigned int main::u#18 // u zp[2]:2 6.380952380952381
unsigned int main::u#3 // u zp[2]:2 11.0
unsigned int main::u#4 // u zp[2]:2 11.0
unsigned int main::v
unsigned int main::v#1 // v zp[2]:4 101.0
unsigned int main::v#10 // v zp[2]:4 4.800000000000001
unsigned int main::v#11 // v zp[2]:4 10.307692307692308
unsigned int main::v#12 // v zp[2]:4 10.307692307692308
unsigned int main::v#13 // v zp[2]:4 4.0
unsigned int main::v#2 // v zp[2]:4 101.0
char myprintf(char *dst , char *str , unsigned int w1 , unsigned int w2 , unsigned int w3)
char myprintf::$18 // reg byte a 20002.0
char myprintf::$23 // reg byte a 10001.0
char myprintf::$24 // reg byte a 20002.0
char myprintf::$29 // reg byte a 10001.0
char myprintf::$30 // reg byte a 20002.0
char myprintf::$41 // reg byte a 100001.0
char myprintf::$56 // reg byte a 20002.0
char myprintf::$57 // reg byte a 20002.0
char myprintf::b
char myprintf::b#1 // reg byte x 12501.249999999998
char myprintf::b#15 // reg byte x 7500.75
char myprintf::b#16 // reg byte x 7500.75
char myprintf::b#17 // b zp[1]:12 24800.320000000003
char myprintf::b#25 // reg byte x 30003.0
char myprintf::b#5 // b zp[1]:12 200002.0
char myprintf::b#6 // reg byte x 20002.0
char myprintf::bArg
char myprintf::bArg#1 // bArg zp[1]:9 20002.0
char myprintf::bArg#10 // bArg zp[1]:9 1216.337837837838
char myprintf::bArg#11 // bArg zp[1]:9 35003.5
char myprintf::bDigits
char myprintf::bDigits#1 // bDigits zp[1]:13 20002.0
char myprintf::bDigits#10 // bDigits zp[1]:13 102501.25
char myprintf::bDigits#12 // bDigits zp[1]:13 58572.14285714286
char myprintf::bDigits#16 // bDigits zp[1]:13 2222.444444444445
char myprintf::bDigits#18 // bDigits zp[1]:13 17500.625
char myprintf::bDigits#2 // bDigits zp[1]:13 200002.0
char myprintf::bDigits#28 // bDigits zp[1]:13 30003.0
char myprintf::bDigits#29 // bDigits zp[1]:13 150006.0
char myprintf::bDigits#3 // bDigits zp[1]:13 200002.0
char myprintf::bFormat
char myprintf::bFormat#10 // bFormat zp[1]:8 3750.375
char myprintf::bFormat#5 // bFormat zp[1]:8 25002.5
char myprintf::bLeadZero
char myprintf::bLeadZero#11 // bLeadZero zp[1]:11 2205.9705882352937
char myprintf::bLeadZero#20 // bLeadZero zp[1]:11 25002.5
char myprintf::bLen
char myprintf::bLen#1 // bLen zp[1]:14 20002.0
char myprintf::bLen#10 // bLen zp[1]:14 3336.0714285714294
char myprintf::bLen#11 // reg byte y 3750.375
char myprintf::bLen#12 // bLen zp[1]:14 68334.16666666666
char myprintf::bLen#13 // bLen zp[1]:14 66001.2
char myprintf::bLen#14 // bLen zp[1]:14 136668.3333333333
char myprintf::bLen#28 // bLen zp[1]:14 35003.5
char myprintf::bLen#3 // bLen zp[1]:14 20002.0
char myprintf::bLen#32 // bLen zp[1]:14 120003.0
char myprintf::bLen#36 // bLen zp[1]:14 150006.0
char myprintf::bLen#4 // bLen zp[1]:14 100001.0
char myprintf::bLen#5 // bLen zp[1]:14 100001.0
char myprintf::bLen#6 // bLen zp[1]:14 100001.0
char myprintf::bLen#7 // bLen zp[1]:14 20002.0
char myprintf::bTrailing
char myprintf::bTrailing#11 // bTrailing zp[1]:10 1029.5147058823527
char myprintf::bTrailing#24 // bTrailing zp[1]:10 25002.5
__constant char myprintf::buf6[6] = { fill( 6, 0) }
char myprintf::digit
char myprintf::digit#2 // reg byte x 200002.0
char myprintf::digit#3 // reg byte x 100001.0
char *myprintf::dst
char myprintf::return
char *myprintf::str
char *myprintf::str#0 // str zp[2]:21 20002.0
char *myprintf::str#10 // str zp[2]:21 527.6973684210526
char *myprintf::str#6 // str zp[2]:21 101.0
unsigned int myprintf::w
unsigned int myprintf::w#10 // w zp[2]:23 1029.5147058823527
unsigned int myprintf::w#18 // w zp[2]:23 35003.5
unsigned int myprintf::w#22 // w zp[2]:23 20002.0
unsigned int myprintf::w#53 // w zp[2]:23 20002.0
unsigned int myprintf::w#54 // w zp[2]:23 20002.0
unsigned int myprintf::w#55 // w zp[2]:23 20002.0
unsigned int myprintf::w1
unsigned int myprintf::w1#0 // w1 zp[2]:2 11.0
unsigned int myprintf::w1#1 // w1 zp[2]:2 11.0
unsigned int myprintf::w1#7 // w1 zp[2]:2 128.5
unsigned int myprintf::w2
unsigned int myprintf::w2#0 // w2 zp[2]:4 22.0
unsigned int myprintf::w2#1 // w2 zp[2]:4 22.0
unsigned int myprintf::w2#8 // w2 zp[2]:4 128.5
unsigned int myprintf::w3
unsigned int myprintf::w3#0 // w3 zp[2]:6 7.333333333333333
unsigned int myprintf::w3#1 // w3 zp[2]:6 7.333333333333333
unsigned int myprintf::w3#8 // w3 zp[2]:6 128.5
__constant char strTemp[$64] = { fill( $64, 0) }
void utoa(unsigned int value , char *dst)
char utoa::$16 // reg byte a 200002.0
char utoa::$21 // reg byte a 200002.0
char utoa::bStarted
char utoa::bStarted#5 // reg byte x 66667.33333333333
char utoa::bStarted#6 // reg byte x 100001.0
char utoa::bStarted#7 // reg byte x 200002.0
char *utoa::dst
char *utoa::dst#1 // dst zp[2]:17 200002.0
char *utoa::dst#10 // dst zp[2]:17 62500.625
char *utoa::dst#12 // dst zp[2]:17 100001.0
char *utoa::dst#13 // dst zp[2]:17 62500.625
char *utoa::dst#16 // dst zp[2]:17 37500.375
char *utoa::dst#2 // dst zp[2]:17 200002.0
char *utoa::dst#3 // dst zp[2]:17 200002.0
char *utoa::dst#4 // dst zp[2]:17 200002.0
unsigned int utoa::value
unsigned int utoa::value#0 // value zp[2]:15 200002.0
unsigned int utoa::value#1 // value zp[2]:15 100001.0
unsigned int utoa::value#10 // value zp[2]:15 125001.25
unsigned int utoa::value#11 // value zp[2]:15 125001.25
unsigned int utoa::value#12 // value zp[2]:15 200002.0
unsigned int utoa::value#2 // value zp[2]:15 100001.0
unsigned int utoa::value#3 // value zp[2]:15 100001.0
unsigned int utoa::value#4 // value zp[2]:15 103334.66666666666
unsigned int utoa::value#6 // value zp[2]:15 125001.25
__constant char * const zp1 = (char *) 97
__constant char * const zp2 = (char *) 98

zp[2]:2 [ main::u#16 main::u#3 myprintf::w1#7 myprintf::w1#1 myprintf::w1#0 div16u::dividend#0 main::u#18 main::u#4 div10::val#4 ]
zp[2]:4 [ main::v#10 main::v#12 main::v#13 main::v#11 main::v#2 main::v#1 myprintf::w2#8 myprintf::w2#1 myprintf::w2#0 div10::return#2 div16u::return#2 div10::return#0 div16u::return#0 divr16u::quotient#3 divr16u::return#0 divr16u::quotient#1 divr16u::quotient#2 divr16u::return#2 div10::$4 div10::val#3 ]
zp[2]:6 [ myprintf::w3#8 myprintf::w3#1 myprintf::w3#0 main::$10 main::$3 main::$16 main::$14 ]
zp[1]:8 [ myprintf::bFormat#10 myprintf::bFormat#5 ]
zp[1]:9 [ myprintf::bArg#10 myprintf::bArg#11 myprintf::bArg#1 ]
zp[1]:10 [ myprintf::bTrailing#11 myprintf::bTrailing#24 ]
zp[1]:11 [ myprintf::bLeadZero#11 myprintf::bLeadZero#20 ]
reg byte a [ myprintf::$23 ]
reg byte a [ myprintf::$29 ]
zp[1]:12 [ myprintf::b#17 myprintf::b#5 ]
zp[1]:13 [ myprintf::bDigits#12 myprintf::bDigits#16 myprintf::bDigits#28 myprintf::bDigits#29 myprintf::bDigits#1 myprintf::bDigits#18 myprintf::bDigits#10 myprintf::bDigits#2 myprintf::bDigits#3 ]
zp[1]:14 [ myprintf::bLen#32 myprintf::bLen#12 myprintf::bLen#10 myprintf::bLen#28 myprintf::bLen#36 myprintf::bLen#7 myprintf::bLen#3 myprintf::bLen#13 myprintf::bLen#14 myprintf::bLen#1 myprintf::bLen#4 myprintf::bLen#5 myprintf::bLen#6 ]
reg byte x [ myprintf::digit#3 myprintf::digit#2 ]
reg byte a [ myprintf::$41 ]
reg byte x [ myprintf::b#25 myprintf::b#1 myprintf::b#6 ]
reg byte x [ utoa::bStarted#7 utoa::bStarted#6 utoa::bStarted#5 ]
reg byte x [ divr16u::i#2 divr16u::i#1 ]
zp[2]:15 [ main::$17 utoa::value#12 utoa::value#3 utoa::value#10 utoa::value#2 utoa::value#11 utoa::value#6 utoa::value#4 utoa::value#0 utoa::value#1 append::value#5 append::value#8 append::value#1 append::value#2 append::value#3 append::value#4 append::value#0 append::return#10 append::return#4 append::return#3 append::return#2 ]
zp[2]:17 [ main::$15 utoa::dst#12 utoa::dst#4 utoa::dst#13 utoa::dst#2 utoa::dst#10 utoa::dst#16 utoa::dst#1 append::dst#4 append::dst#1 append::dst#2 append::dst#3 utoa::dst#3 ]
reg byte a [ myprintf::$56 ]
reg byte a [ myprintf::$18 ]
reg byte x [ myprintf::b#15 ]
reg byte a [ myprintf::$24 ]
reg byte y [ myprintf::bLen#11 ]
reg byte a [ myprintf::$57 ]
reg byte x [ myprintf::b#16 ]
reg byte a [ myprintf::$30 ]
zp[2]:19 [ div10::$0 div10::val#0 append::sub#6 ]
zp[2]:21 [ div10::$2 div10::val#1 divr16u::rem#4 divr16u::rem#9 divr16u::rem#5 divr16u::rem#0 divr16u::rem#1 divr16u::rem#2 myprintf::str#10 myprintf::str#6 myprintf::str#0 ]
zp[2]:23 [ div10::$3 div10::val#2 divr16u::dividend#2 divr16u::dividend#1 divr16u::dividend#0 myprintf::w#10 myprintf::w#18 myprintf::w#22 myprintf::w#53 myprintf::w#54 myprintf::w#55 ]
reg byte a [ utoa::$21 ]
reg byte a [ utoa::$16 ]
reg byte a [ divr16u::$1 ]
reg byte a [ divr16u::$2 ]


FINAL ASSEMBLER
Score: 358342

  // File Comments
/// @file
/// Simple binary division implementation
///
/// Follows the C99 standard by truncating toward zero on negative results.
/// See http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1124.pdf section 6.5.5
  // Upstart
  // Commodore 64 PRG executable file
.file [name="sandbox.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 zp1 = $61
  // #define zp1 *(byte *)0x61 -- allows "zp1" vs "*zp1" below -- not supported --  https://gitlab.com/camelot/kickc/issues/169
  .label zp2 = $62
  .label TIMEHI = $a1
  .label TIMELO = $a2
  .label VICBANK = $d018
.segment Code
  // main
main: {
    .label __3 = 6
    .label __10 = 6
    .label __14 = 6
    .label __15 = $11
    .label __16 = 6
    .label __17 = $f
    .label v = 4
    // test performance of 'div16u(10)'
    // test performance of 'div10'
    .label u = 2
    // *VICBANK = 23
    // [0] *VICBANK = $17 -- _deref_pbuc1=vbuc2 
    lda #$17
    sta VICBANK
    // *zp1 = 0
    // [1] *zp1 = 0 -- _deref_pbuc1=vbuc2 
    lda #0
    sta zp1
    // [2] phi from main to main::@1 [phi:main->main::@1]
    // [2] phi main::v#13 = 0 [phi:main->main::@1#0] -- vwuz1=vwuc1 
    sta.z v
    sta.z v+1
    // [2] phi main::u#16 = $6e85 [phi:main->main::@1#1] -- vwuz1=vwuc1 
    lda #<$6e85
    sta.z u
    lda #>$6e85
    sta.z u+1
    // main::@1
  __b1:
    // for (*zp1 = 0; *zp1 < 10; ++*zp1)
    // [3] if(*zp1<$a) goto main::@2 -- _deref_pbuc1_lt_vbuc2_then_la1 
    lda zp1
    cmp #$a
    bcc __b2
    // main::@3
    // *zp1 = 0
    // [4] *zp1 = 0 -- _deref_pbuc1=vbuc2 
    lda #0
    sta zp1
    // [5] phi from main::@3 to main::@7 [phi:main::@3->main::@7]
    // [5] phi main::v#10 = main::v#13 [phi:main::@3->main::@7#0] -- register_copy 
    // [5] phi main::u#18 = $6e85 [phi:main::@3->main::@7#1] -- vwuz1=vwuc1 
    lda #<$6e85
    sta.z u
    lda #>$6e85
    sta.z u+1
    // main::@7
  __b7:
    // for (*zp1 = 0; *zp1 < 10; ++*zp1)
    // [6] if(*zp1<$a) goto main::@8 -- _deref_pbuc1_lt_vbuc2_then_la1 
    lda zp1
    cmp #$a
    bcc __b8
    // main::@return
    // }
    // [7] return 
    rts
    // main::@8
  __b8:
    // *TIMEHI = 0
    // [8] *TIMEHI = 0 -- _deref_pbuc1=vbuc2 
    lda #0
    sta TIMEHI
    // *TIMELO = 0
    // [9] *TIMELO = 0 -- _deref_pbuc1=vbuc2 
    sta TIMELO
    // *zp2 = 0
    // [10] *zp2 = 0 -- _deref_pbuc1=vbuc2 
    sta zp2
    // [11] phi from main::@15 main::@8 to main::@9 [phi:main::@15/main::@8->main::@9]
    // [11] phi main::v#12 = main::v#2 [phi:main::@15/main::@8->main::@9#0] -- register_copy 
    // main::@9
  __b9:
    // for (*zp2 = 0; *zp2 < 200; ++*zp2)
    // [12] if(*zp2<$c8) goto main::@10 -- _deref_pbuc1_lt_vbuc2_then_la1 
    lda zp2
    cmp #$c8
    bcc __b10
    // main::@11
    // (word)*TIMEHI << 8
    // [13] main::$16 = (unsigned int)*TIMEHI -- vwuz1=_word__deref_pbuc1 
    lda TIMEHI
    sta.z __16
    lda #0
    sta.z __16+1
    // [14] main::$10 = main::$16 << 8 -- vwuz1=vwuz1_rol_8 
    lda.z __10
    sta.z __10+1
    lda #0
    sta.z __10
    // ((word)*TIMEHI << 8) + (word)*TIMELO
    // [15] main::$17 = (unsigned int)*TIMELO -- vwuz1=_word__deref_pbuc1 
    lda TIMELO
    sta.z __17
    lda #0
    sta.z __17+1
    // myprintf(strTemp, "200 DIV10 : %5d,%4d IN %04d FRAMESm", u, v, ((word)*TIMEHI << 8) + (word)*TIMELO)
    // [16] myprintf::w3#1 = main::$10 + main::$17 -- vwuz1=vwuz1_plus_vwuz2 
    clc
    lda.z myprintf.w3
    adc.z __17
    sta.z myprintf.w3
    lda.z myprintf.w3+1
    adc.z __17+1
    sta.z myprintf.w3+1
    // [17] myprintf::w1#1 = main::u#18
    // [18] myprintf::w2#1 = main::v#12
    // [19] call myprintf
    // [50] phi from main::@11 to myprintf [phi:main::@11->myprintf]
    // [50] phi myprintf::w3#8 = myprintf::w3#1 [phi:main::@11->myprintf#0] -- register_copy 
    // [50] phi myprintf::w2#8 = myprintf::w2#1 [phi:main::@11->myprintf#1] -- register_copy 
    // [50] phi myprintf::w1#7 = myprintf::w1#1 [phi:main::@11->myprintf#2] -- register_copy 
    // [50] phi myprintf::str#6 = main::str1 [phi:main::@11->myprintf#3] -- pbuz1=pbuc1 
    lda #<str1
    sta.z myprintf.str
    lda #>str1
    sta.z myprintf.str+1
    jsr myprintf
    // [20] phi from main::@11 to main::@16 [phi:main::@11->main::@16]
    // main::@16
    // Print()
    // [21] call Print
    jsr Print
    // main::@17
    // u -= 1234
    // [22] main::u#4 = main::u#18 - $4d2 -- vwuz1=vwuz1_minus_vwuc1 
    lda.z u
    sec
    sbc #<$4d2
    sta.z u
    lda.z u+1
    sbc #>$4d2
    sta.z u+1
    // for (*zp1 = 0; *zp1 < 10; ++*zp1)
    // [23] *zp1 = ++ *zp1 -- _deref_pbuc1=_inc__deref_pbuc1 
    inc zp1
    // [5] phi from main::@17 to main::@7 [phi:main::@17->main::@7]
    // [5] phi main::v#10 = main::v#12 [phi:main::@17->main::@7#0] -- register_copy 
    // [5] phi main::u#18 = main::u#4 [phi:main::@17->main::@7#1] -- register_copy 
    jmp __b7
    // main::@10
  __b10:
    // div10(u)
    // [24] div10::val#4 = main::u#18
    // [25] call div10
    jsr div10
    // [26] div10::return#2 = div10::return#0
    // main::@15
    // v = div10(u)
    // [27] main::v#2 = div10::return#2
    // for (*zp2 = 0; *zp2 < 200; ++*zp2)
    // [28] *zp2 = ++ *zp2 -- _deref_pbuc1=_inc__deref_pbuc1 
    inc zp2
    jmp __b9
    // main::@2
  __b2:
    // *TIMEHI = 0
    // [29] *TIMEHI = 0 -- _deref_pbuc1=vbuc2 
    lda #0
    sta TIMEHI
    // *TIMELO = 0
    // [30] *TIMELO = 0 -- _deref_pbuc1=vbuc2 
    sta TIMELO
    // *zp2 = 0
    // [31] *zp2 = 0 -- _deref_pbuc1=vbuc2 
    sta zp2
    // [32] phi from main::@12 main::@2 to main::@4 [phi:main::@12/main::@2->main::@4]
    // [32] phi main::v#11 = main::v#1 [phi:main::@12/main::@2->main::@4#0] -- register_copy 
    // main::@4
  __b4:
    // for (*zp2 = 0; *zp2 < 200; ++*zp2)
    // [33] if(*zp2<$c8) goto main::@5 -- _deref_pbuc1_lt_vbuc2_then_la1 
    lda zp2
    cmp #$c8
    bcc __b5
    // main::@6
    // (word)*TIMEHI << 8
    // [34] main::$14 = (unsigned int)*TIMEHI -- vwuz1=_word__deref_pbuc1 
    lda TIMEHI
    sta.z __14
    lda #0
    sta.z __14+1
    // [35] main::$3 = main::$14 << 8 -- vwuz1=vwuz1_rol_8 
    lda.z __3
    sta.z __3+1
    lda #0
    sta.z __3
    // ((word)*TIMEHI << 8) + (word)*TIMELO
    // [36] main::$15 = (unsigned int)*TIMELO -- vwuz1=_word__deref_pbuc1 
    lda TIMELO
    sta.z __15
    lda #0
    sta.z __15+1
    // myprintf(strTemp, "200 DIV16U: %5d,%4d IN %04d FRAMESm", u, v, ((word)*TIMEHI << 8) + (word)*TIMELO)
    // [37] myprintf::w3#0 = main::$3 + main::$15 -- vwuz1=vwuz1_plus_vwuz2 
    clc
    lda.z myprintf.w3
    adc.z __15
    sta.z myprintf.w3
    lda.z myprintf.w3+1
    adc.z __15+1
    sta.z myprintf.w3+1
    // [38] myprintf::w1#0 = main::u#16
    // [39] myprintf::w2#0 = main::v#11
    // [40] call myprintf
  // lower case letters in string literal are placed in string as 0x01-0x1A, should be 0x61-0x7A
  // -- as a side-effect of above issue, we can use "m" for carriage return.  The normal way is the escape code "\r" but that is not supported --
    // [50] phi from main::@6 to myprintf [phi:main::@6->myprintf]
    // [50] phi myprintf::w3#8 = myprintf::w3#0 [phi:main::@6->myprintf#0] -- register_copy 
    // [50] phi myprintf::w2#8 = myprintf::w2#0 [phi:main::@6->myprintf#1] -- register_copy 
    // [50] phi myprintf::w1#7 = myprintf::w1#0 [phi:main::@6->myprintf#2] -- register_copy 
    // [50] phi myprintf::str#6 = main::str [phi:main::@6->myprintf#3] -- pbuz1=pbuc1 
    lda #<str
    sta.z myprintf.str
    lda #>str
    sta.z myprintf.str+1
    jsr myprintf
    // [41] phi from main::@6 to main::@13 [phi:main::@6->main::@13]
    // main::@13
    // Print()
    // [42] call Print
    jsr Print
    // main::@14
    // u -= 1234
    // [43] main::u#3 = main::u#16 - $4d2 -- vwuz1=vwuz1_minus_vwuc1 
    lda.z u
    sec
    sbc #<$4d2
    sta.z u
    lda.z u+1
    sbc #>$4d2
    sta.z u+1
    // for (*zp1 = 0; *zp1 < 10; ++*zp1)
    // [44] *zp1 = ++ *zp1 -- _deref_pbuc1=_inc__deref_pbuc1 
    inc zp1
    // [2] phi from main::@14 to main::@1 [phi:main::@14->main::@1]
    // [2] phi main::v#13 = main::v#11 [phi:main::@14->main::@1#0] -- register_copy 
    // [2] phi main::u#16 = main::u#3 [phi:main::@14->main::@1#1] -- register_copy 
    jmp __b1
    // main::@5
  __b5:
    // div16u(u, 10)
    // [45] div16u::dividend#0 = main::u#16
    // [46] call div16u
    jsr div16u
    // [47] div16u::return#2 = div16u::return#0
    // main::@12
    // v = div16u(u, 10)
    // [48] main::v#1 = div16u::return#2
    // for (*zp2 = 0; *zp2 < 200; ++*zp2)
    // [49] *zp2 = ++ *zp2 -- _deref_pbuc1=_inc__deref_pbuc1 
    inc zp2
    jmp __b4
  .segment Data
    str: .text "200 DIV16U: %5d,%4d IN %04d FRAMESm"
    .byte 0
    str1: .text "200 DIV10 : %5d,%4d IN %04d FRAMESm"
    .byte 0
}
.segment Code
  // myprintf
// char myprintf(char *dst, __zp($15) char *str, __zp(2) unsigned int w1, __zp(4) unsigned int w2, __zp(6) unsigned int w3)
myprintf: {
    .label str = $15
    .label bDigits = $d
    .label bLen = $e
    // formats
    .label b = $c
    .label bArg = 9
    .label w1 = 2
    .label w2 = 4
    .label w3 = 6
    .label w = $17
    .label bFormat = 8
    .label bTrailing = $a
    .label bLeadZero = $b
    // [51] phi from myprintf to myprintf::@1 [phi:myprintf->myprintf::@1]
    // [51] phi myprintf::bLeadZero#11 = 0 [phi:myprintf->myprintf::@1#0] -- vbuz1=vbuc1 
    lda #0
    sta.z bLeadZero
    // [51] phi myprintf::bDigits#16 = 0 [phi:myprintf->myprintf::@1#1] -- vbuz1=vbuc1 
    sta.z bDigits
    // [51] phi myprintf::bTrailing#11 = 0 [phi:myprintf->myprintf::@1#2] -- vbuz1=vbuc1 
    sta.z bTrailing
    // [51] phi myprintf::w#10 = 0 [phi:myprintf->myprintf::@1#3] -- vwuz1=vwuc1 
    sta.z w
    sta.z w+1
    // [51] phi myprintf::bArg#10 = 0 [phi:myprintf->myprintf::@1#4] -- vbuz1=vbuc1 
    sta.z bArg
    // [51] phi myprintf::bLen#10 = 0 [phi:myprintf->myprintf::@1#5] -- vbuz1=vbuc1 
    sta.z bLen
    // [51] phi myprintf::bFormat#10 = 0 [phi:myprintf->myprintf::@1#6] -- vbuz1=vbuc1 
    sta.z bFormat
    // [51] phi myprintf::str#10 = myprintf::str#6 [phi:myprintf->myprintf::@1#7] -- register_copy 
    // myprintf::@1
  __b1:
    // for (; *str != 0; ++str)
    // [52] if(*myprintf::str#10!=0) goto myprintf::@2 -- _deref_pbuz1_neq_0_then_la1 
    ldy #0
    lda (str),y
    cmp #0
    bne __b2
    // myprintf::@3
    // dst[bLen] = 0
    // [53] strTemp[myprintf::bLen#10] = 0 -- pbuc1_derefidx_vbuz1=vbuc2 
    tya
    ldy.z bLen
    sta strTemp,y
    // myprintf::@return
    // }
    // [54] return 
    rts
    // myprintf::@2
  __b2:
    // b = *str
    // [55] myprintf::b#1 = *myprintf::str#10 -- vbuxx=_deref_pbuz1 
    ldy #0
    lda (str),y
    tax
    // if (bFormat != 0)
    // [56] if(myprintf::bFormat#10==0) goto myprintf::@4 -- vbuz1_eq_0_then_la1 
    lda.z bFormat
    bne !__b4+
    jmp __b4
  !__b4:
    // myprintf::@38
    // if (b == '0')
    // [57] if(myprintf::b#1!='0') goto myprintf::@5 -- vbuxx_neq_vbuc1_then_la1 
    cpx #'0'
    bne __b5
    // [58] phi from myprintf::@38 to myprintf::@32 [phi:myprintf::@38->myprintf::@32]
    // [58] phi myprintf::bLeadZero#20 = 1 [phi:myprintf::@38->myprintf::@32#0] -- vbuz1=vbuc1 
    lda #1
    sta.z bLeadZero
    // [58] phi myprintf::bDigits#28 = myprintf::bDigits#16 [phi:myprintf::@38->myprintf::@32#1] -- register_copy 
    // [58] phi myprintf::bTrailing#24 = myprintf::bTrailing#11 [phi:myprintf::@38->myprintf::@32#2] -- register_copy 
    // [58] phi myprintf::w#18 = myprintf::w#10 [phi:myprintf::@38->myprintf::@32#3] -- register_copy 
    // [58] phi myprintf::bArg#11 = myprintf::bArg#10 [phi:myprintf::@38->myprintf::@32#4] -- register_copy 
    // [58] phi myprintf::bLen#28 = myprintf::bLen#10 [phi:myprintf::@38->myprintf::@32#5] -- register_copy 
    // [58] phi myprintf::bFormat#5 = myprintf::bFormat#10 [phi:myprintf::@38->myprintf::@32#6] -- register_copy 
    // myprintf::@32
  __b32:
    // for (; *str != 0; ++str)
    // [59] myprintf::str#0 = ++ myprintf::str#10 -- pbuz1=_inc_pbuz1 
    inc.z str
    bne !+
    inc.z str+1
  !:
    // [51] phi from myprintf::@32 to myprintf::@1 [phi:myprintf::@32->myprintf::@1]
    // [51] phi myprintf::bLeadZero#11 = myprintf::bLeadZero#20 [phi:myprintf::@32->myprintf::@1#0] -- register_copy 
    // [51] phi myprintf::bDigits#16 = myprintf::bDigits#28 [phi:myprintf::@32->myprintf::@1#1] -- register_copy 
    // [51] phi myprintf::bTrailing#11 = myprintf::bTrailing#24 [phi:myprintf::@32->myprintf::@1#2] -- register_copy 
    // [51] phi myprintf::w#10 = myprintf::w#18 [phi:myprintf::@32->myprintf::@1#3] -- register_copy 
    // [51] phi myprintf::bArg#10 = myprintf::bArg#11 [phi:myprintf::@32->myprintf::@1#4] -- register_copy 
    // [51] phi myprintf::bLen#10 = myprintf::bLen#28 [phi:myprintf::@32->myprintf::@1#5] -- register_copy 
    // [51] phi myprintf::bFormat#10 = myprintf::bFormat#5 [phi:myprintf::@32->myprintf::@1#6] -- register_copy 
    // [51] phi myprintf::str#10 = myprintf::str#0 [phi:myprintf::@32->myprintf::@1#7] -- register_copy 
    jmp __b1
    // myprintf::@5
  __b5:
    // if (b >= '1' && b <= '9')
    // [60] if(myprintf::b#1<'1') goto myprintf::@6 -- vbuxx_lt_vbuc1_then_la1 
    cpx #'1'
    bcc __b6
    // myprintf::@43
    // [61] if(myprintf::b#1<='9') goto myprintf::@28 -- vbuxx_le_vbuc1_then_la1 
    cpx #'9'
    bcs !__b28+
    jmp __b28
  !__b28:
    bne !__b28+
    jmp __b28
  !__b28:
    // myprintf::@6
  __b6:
    // if (b == '-')
    // [62] if(myprintf::b#1!='-') goto myprintf::@7 -- vbuxx_neq_vbuc1_then_la1 
    cpx #'-'
    bne __b7
    // [58] phi from myprintf::@6 to myprintf::@32 [phi:myprintf::@6->myprintf::@32]
    // [58] phi myprintf::bLeadZero#20 = myprintf::bLeadZero#11 [phi:myprintf::@6->myprintf::@32#0] -- register_copy 
    // [58] phi myprintf::bDigits#28 = myprintf::bDigits#16 [phi:myprintf::@6->myprintf::@32#1] -- register_copy 
    // [58] phi myprintf::bTrailing#24 = 1 [phi:myprintf::@6->myprintf::@32#2] -- vbuz1=vbuc1 
    lda #1
    sta.z bTrailing
    // [58] phi myprintf::w#18 = myprintf::w#10 [phi:myprintf::@6->myprintf::@32#3] -- register_copy 
    // [58] phi myprintf::bArg#11 = myprintf::bArg#10 [phi:myprintf::@6->myprintf::@32#4] -- register_copy 
    // [58] phi myprintf::bLen#28 = myprintf::bLen#10 [phi:myprintf::@6->myprintf::@32#5] -- register_copy 
    // [58] phi myprintf::bFormat#5 = myprintf::bFormat#10 [phi:myprintf::@6->myprintf::@32#6] -- register_copy 
    jmp __b32
    // myprintf::@7
  __b7:
    // if (b == 'c')
    // [63] if(myprintf::b#1=='c') goto myprintf::@8 -- vbuxx_eq_vbuc1_then_la1 
    cpx #'c'
    bne !__b8+
    jmp __b8
  !__b8:
    // myprintf::@29
    // if (b == 'd')
    // [64] if(myprintf::b#1=='d') goto myprintf::@9 -- vbuxx_eq_vbuc1_then_la1 
    cpx #'d'
    beq __b9
    // myprintf::@30
    // if (b == 'x' || b == 'X')
    // [65] if(myprintf::b#1=='x') goto myprintf::@31 -- vbuxx_eq_vbuc1_then_la1 
    cpx #'x'
    beq __b31
    // myprintf::@44
    // [66] if(myprintf::b#1=='X') goto myprintf::@31 -- vbuxx_eq_vbuc1_then_la1 
    cpx #'X'
    beq __b31
    // [67] phi from myprintf::@13 myprintf::@24 myprintf::@25 myprintf::@44 myprintf::@8 to myprintf::@27 [phi:myprintf::@13/myprintf::@24/myprintf::@25/myprintf::@44/myprintf::@8->myprintf::@27]
  __b3:
    // [67] phi myprintf::bDigits#29 = myprintf::bDigits#16 [phi:myprintf::@13/myprintf::@24/myprintf::@25/myprintf::@44/myprintf::@8->myprintf::@27#0] -- register_copy 
    // [67] phi myprintf::bLen#36 = myprintf::bLen#3 [phi:myprintf::@13/myprintf::@24/myprintf::@25/myprintf::@44/myprintf::@8->myprintf::@27#1] -- register_copy 
    // [67] phi from myprintf::@46 to myprintf::@27 [phi:myprintf::@46->myprintf::@27]
    // myprintf::@27
    // [58] phi from myprintf::@27 to myprintf::@32 [phi:myprintf::@27->myprintf::@32]
    // [58] phi myprintf::bLeadZero#20 = myprintf::bLeadZero#11 [phi:myprintf::@27->myprintf::@32#0] -- register_copy 
    // [58] phi myprintf::bDigits#28 = myprintf::bDigits#29 [phi:myprintf::@27->myprintf::@32#1] -- register_copy 
    // [58] phi myprintf::bTrailing#24 = myprintf::bTrailing#11 [phi:myprintf::@27->myprintf::@32#2] -- register_copy 
    // [58] phi myprintf::w#18 = myprintf::w#10 [phi:myprintf::@27->myprintf::@32#3] -- register_copy 
    // [58] phi myprintf::bArg#11 = myprintf::bArg#10 [phi:myprintf::@27->myprintf::@32#4] -- register_copy 
    // [58] phi myprintf::bLen#28 = myprintf::bLen#36 [phi:myprintf::@27->myprintf::@32#5] -- register_copy 
    // [58] phi myprintf::bFormat#5 = 0 [phi:myprintf::@27->myprintf::@32#6] -- vbuz1=vbuc1 
    lda #0
    sta.z bFormat
    jmp __b32
    // myprintf::@31
  __b31:
    // (byte)w >> 4
    // [68] myprintf::$56 = (char)myprintf::w#10 -- vbuaa=_byte_vwuz1 
    lda.z w
    // [69] myprintf::$18 = myprintf::$56 >> 4 -- vbuaa=vbuaa_ror_4 
    lsr
    lsr
    lsr
    lsr
    // b = ((byte)w >> 4) & 0xF
    // [70] myprintf::b#15 = myprintf::$18 & $f -- vbuxx=vbuaa_band_vbuc1 
    ldx #$f
    axs #0
    // b < 10 ? '0' : 0x57
    // [71] if(myprintf::b#15<$a) goto myprintf::@10 -- vbuxx_lt_vbuc1_then_la1 
    cpx #$a
    bcc __b10
    // [73] phi from myprintf::@31 to myprintf::@11 [phi:myprintf::@31->myprintf::@11]
    // [73] phi myprintf::$23 = $57 [phi:myprintf::@31->myprintf::@11#0] -- vbuaa=vbuc1 
    lda #$57
    jmp __b11
    // [72] phi from myprintf::@31 to myprintf::@10 [phi:myprintf::@31->myprintf::@10]
    // myprintf::@10
  __b10:
    // b < 10 ? '0' : 0x57
    // [73] phi from myprintf::@10 to myprintf::@11 [phi:myprintf::@10->myprintf::@11]
    // [73] phi myprintf::$23 = '0' [phi:myprintf::@10->myprintf::@11#0] -- vbuaa=vbuc1 
    lda #'0'
    // myprintf::@11
  __b11:
    // (b < 10 ? '0' : 0x57) + b
    // [74] myprintf::$24 = myprintf::$23 + myprintf::b#15 -- vbuaa=vbuaa_plus_vbuxx 
    stx.z $ff
    clc
    adc.z $ff
    // dst[bLen++] = (b < 10 ? '0' : 0x57) + b
    // [75] strTemp[myprintf::bLen#10] = myprintf::$24 -- pbuc1_derefidx_vbuz1=vbuaa 
    ldy.z bLen
    sta strTemp,y
    // dst[bLen++] = (b < 10 ? '0' : 0x57) + b;
    // [76] myprintf::bLen#11 = ++ myprintf::bLen#10 -- vbuyy=_inc_vbuz1 
    iny
    // (byte)w & 0xF
    // [77] myprintf::$57 = (char)myprintf::w#10 -- vbuaa=_byte_vwuz1 
    lda.z w
    // b = (byte)w & 0xF
    // [78] myprintf::b#16 = myprintf::$57 & $f -- vbuxx=vbuaa_band_vbuc1 
    ldx #$f
    axs #0
    // b < 10 ? '0' : 0x57
    // [79] if(myprintf::b#16<$a) goto myprintf::@12 -- vbuxx_lt_vbuc1_then_la1 
    cpx #$a
    bcc __b12
    // [81] phi from myprintf::@11 to myprintf::@13 [phi:myprintf::@11->myprintf::@13]
    // [81] phi myprintf::$29 = $57 [phi:myprintf::@11->myprintf::@13#0] -- vbuaa=vbuc1 
    lda #$57
    jmp __b13
    // [80] phi from myprintf::@11 to myprintf::@12 [phi:myprintf::@11->myprintf::@12]
    // myprintf::@12
  __b12:
    // b < 10 ? '0' : 0x57
    // [81] phi from myprintf::@12 to myprintf::@13 [phi:myprintf::@12->myprintf::@13]
    // [81] phi myprintf::$29 = '0' [phi:myprintf::@12->myprintf::@13#0] -- vbuaa=vbuc1 
    lda #'0'
    // myprintf::@13
  __b13:
    // (b < 10 ? '0' : 0x57) + b
    // [82] myprintf::$30 = myprintf::$29 + myprintf::b#16 -- vbuaa=vbuaa_plus_vbuxx 
    stx.z $ff
    clc
    adc.z $ff
    // dst[bLen++] = (b < 10 ? '0' : 0x57) + b
    // [83] strTemp[myprintf::bLen#11] = myprintf::$30 -- pbuc1_derefidx_vbuyy=vbuaa 
    sta strTemp,y
    // dst[bLen++] = (b < 10 ? '0' : 0x57) + b;
    // [84] myprintf::bLen#3 = ++ myprintf::bLen#11 -- vbuz1=_inc_vbuyy 
    iny
    sty.z bLen
    jmp __b3
    // myprintf::@9
  __b9:
    // utoa(w, buf6)
    // [85] utoa::value#4 = myprintf::w#10 -- vwuz1=vwuz2 
    lda.z w
    sta.z utoa.value
    lda.z w+1
    sta.z utoa.value+1
    // [86] call utoa
    // [147] phi from myprintf::@9 to utoa [phi:myprintf::@9->utoa]
    jsr utoa
    // [87] phi from myprintf::@9 to myprintf::@14 [phi:myprintf::@9->myprintf::@14]
    // [87] phi myprintf::b#17 = 1 [phi:myprintf::@9->myprintf::@14#0] -- vbuz1=vbuc1 
    lda #1
    sta.z b
    // myprintf::@14
  __b14:
    // while(buf6[b] != 0)
    // [88] if(myprintf::buf6[myprintf::b#17]!=0) goto myprintf::@15 -- pbuc1_derefidx_vbuz1_neq_0_then_la1 
    ldy.z b
    lda buf6,y
    cmp #0
    bne __b15
    // myprintf::@16
    // if (bTrailing == 0 && bDigits > b)
    // [89] if(myprintf::bTrailing#11!=0) goto myprintf::@17 -- vbuz1_neq_0_then_la1 
    lda.z bTrailing
    bne __b17
    // myprintf::@45
    // [90] if(myprintf::bDigits#16<=myprintf::b#17) goto myprintf::@17 -- vbuz1_le_vbuz2_then_la1 
    tya
    cmp.z bDigits
    bcs __b17
    // [91] phi from myprintf::@21 myprintf::@45 to myprintf::@18 [phi:myprintf::@21/myprintf::@45->myprintf::@18]
    // [91] phi myprintf::bLen#12 = myprintf::bLen#4 [phi:myprintf::@21/myprintf::@45->myprintf::@18#0] -- register_copy 
    // [91] phi myprintf::bDigits#12 = myprintf::bDigits#2 [phi:myprintf::@21/myprintf::@45->myprintf::@18#1] -- register_copy 
    // myprintf::@18
  __b18:
    // for (; bDigits > b; --bDigits)
    // [92] if(myprintf::bDigits#12>myprintf::b#17) goto myprintf::@19 -- vbuz1_gt_vbuz2_then_la1 
    lda.z b
    cmp.z bDigits
    bcc __b19
    // [93] phi from myprintf::@16 myprintf::@18 to myprintf::@17 [phi:myprintf::@16/myprintf::@18->myprintf::@17]
    // [93] phi myprintf::bDigits#18 = myprintf::bDigits#16 [phi:myprintf::@16/myprintf::@18->myprintf::@17#0] -- register_copy 
    // [93] phi myprintf::bLen#32 = myprintf::bLen#10 [phi:myprintf::@16/myprintf::@18->myprintf::@17#1] -- register_copy 
    // [93] phi from myprintf::@45 to myprintf::@17 [phi:myprintf::@45->myprintf::@17]
    // myprintf::@17
  __b17:
    // [94] phi from myprintf::@17 to myprintf::@22 [phi:myprintf::@17->myprintf::@22]
    // [94] phi myprintf::bLen#13 = myprintf::bLen#32 [phi:myprintf::@17->myprintf::@22#0] -- register_copy 
    // [94] phi myprintf::digit#3 = 0 [phi:myprintf::@17->myprintf::@22#1] -- vbuxx=vbuc1 
    ldx #0
    // myprintf::@22
  __b22:
    // for (digit = 0; digit < b; ++digit)
    // [95] if(myprintf::digit#3<myprintf::b#17) goto myprintf::@23 -- vbuxx_lt_vbuz1_then_la1 
    cpx.z b
    bcc __b23
    // myprintf::@24
    // if (bTrailing != 0 && bDigits > b)
    // [96] if(myprintf::bTrailing#11==0) goto myprintf::@27 -- vbuz1_eq_0_then_la1 
    lda.z bTrailing
    beq __b3
    // myprintf::@46
    // [97] if(myprintf::bDigits#18<=myprintf::b#17) goto myprintf::@27 -- vbuz1_le_vbuz2_then_la1 
    lda.z b
    cmp.z bDigits
    bcs __b3
    // [98] phi from myprintf::@26 myprintf::@46 to myprintf::@25 [phi:myprintf::@26/myprintf::@46->myprintf::@25]
    // [98] phi myprintf::bLen#14 = myprintf::bLen#6 [phi:myprintf::@26/myprintf::@46->myprintf::@25#0] -- register_copy 
    // [98] phi myprintf::bDigits#10 = myprintf::bDigits#3 [phi:myprintf::@26/myprintf::@46->myprintf::@25#1] -- register_copy 
    // myprintf::@25
  __b25:
    // for (; bDigits > b; --bDigits)
    // [99] if(myprintf::bDigits#10>myprintf::b#17) goto myprintf::@26 -- vbuz1_gt_vbuz2_then_la1 
    lda.z b
    cmp.z bDigits
    bcc __b26
    jmp __b3
    // myprintf::@26
  __b26:
    // dst[bLen++] = ' '
    // [100] strTemp[myprintf::bLen#14] = ' ' -- pbuc1_derefidx_vbuz1=vbuc2 
    lda #' '
    ldy.z bLen
    sta strTemp,y
    // dst[bLen++] = ' ';
    // [101] myprintf::bLen#6 = ++ myprintf::bLen#14 -- vbuz1=_inc_vbuz1 
    inc.z bLen
    // for (; bDigits > b; --bDigits)
    // [102] myprintf::bDigits#3 = -- myprintf::bDigits#10 -- vbuz1=_dec_vbuz1 
    dec.z bDigits
    jmp __b25
    // myprintf::@23
  __b23:
    // dst[bLen++] = buf6[digit]
    // [103] strTemp[myprintf::bLen#13] = myprintf::buf6[myprintf::digit#3] -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuxx 
    lda buf6,x
    ldy.z bLen
    sta strTemp,y
    // dst[bLen++] = buf6[digit];
    // [104] myprintf::bLen#5 = ++ myprintf::bLen#13 -- vbuz1=_inc_vbuz1 
    inc.z bLen
    // for (digit = 0; digit < b; ++digit)
    // [105] myprintf::digit#2 = ++ myprintf::digit#3 -- vbuxx=_inc_vbuxx 
    inx
    // [94] phi from myprintf::@23 to myprintf::@22 [phi:myprintf::@23->myprintf::@22]
    // [94] phi myprintf::bLen#13 = myprintf::bLen#5 [phi:myprintf::@23->myprintf::@22#0] -- register_copy 
    // [94] phi myprintf::digit#3 = myprintf::digit#2 [phi:myprintf::@23->myprintf::@22#1] -- register_copy 
    jmp __b22
    // myprintf::@19
  __b19:
    // (bLeadZero == 0) ? ' ' : '0'
    // [106] if(myprintf::bLeadZero#11==0) goto myprintf::@20 -- vbuz1_eq_0_then_la1 
    lda.z bLeadZero
    beq __b20
    // [108] phi from myprintf::@19 to myprintf::@21 [phi:myprintf::@19->myprintf::@21]
    // [108] phi myprintf::$41 = '0' [phi:myprintf::@19->myprintf::@21#0] -- vbuaa=vbuc1 
    lda #'0'
    jmp __b21
    // [107] phi from myprintf::@19 to myprintf::@20 [phi:myprintf::@19->myprintf::@20]
    // myprintf::@20
  __b20:
    // (bLeadZero == 0) ? ' ' : '0'
    // [108] phi from myprintf::@20 to myprintf::@21 [phi:myprintf::@20->myprintf::@21]
    // [108] phi myprintf::$41 = ' ' [phi:myprintf::@20->myprintf::@21#0] -- vbuaa=vbuc1 
    lda #' '
    // myprintf::@21
  __b21:
    // dst[bLen++] = (bLeadZero == 0) ? ' ' : '0'
    // [109] strTemp[myprintf::bLen#12] = myprintf::$41 -- pbuc1_derefidx_vbuz1=vbuaa 
    ldy.z bLen
    sta strTemp,y
    // dst[bLen++] = (bLeadZero == 0) ? ' ' : '0';
    // [110] myprintf::bLen#4 = ++ myprintf::bLen#12 -- vbuz1=_inc_vbuz1 
    inc.z bLen
    // for (; bDigits > b; --bDigits)
    // [111] myprintf::bDigits#2 = -- myprintf::bDigits#12 -- vbuz1=_dec_vbuz1 
    dec.z bDigits
    jmp __b18
    // myprintf::@15
  __b15:
    // ++b;
    // [112] myprintf::b#5 = ++ myprintf::b#17 -- vbuz1=_inc_vbuz1 
    inc.z b
    // [87] phi from myprintf::@15 to myprintf::@14 [phi:myprintf::@15->myprintf::@14]
    // [87] phi myprintf::b#17 = myprintf::b#5 [phi:myprintf::@15->myprintf::@14#0] -- register_copy 
    jmp __b14
    // myprintf::@8
  __b8:
    // dst[bLen++] = (byte)w
    // [113] strTemp[myprintf::bLen#10] = (char)myprintf::w#10 -- pbuc1_derefidx_vbuz1=_byte_vwuz2 
    // "switch" is the normal way -- not supported -- https://gitlab.com/camelot/kickc/issues/170
    ldy.z bLen
    lda.z w
    sta strTemp,y
    // dst[bLen++] = (byte)w;
    // [114] myprintf::bLen#1 = ++ myprintf::bLen#10 -- vbuz1=_inc_vbuz1 
    inc.z bLen
    jmp __b3
    // myprintf::@28
  __b28:
    // bDigits = b - '0'
    // [115] myprintf::bDigits#1 = myprintf::b#1 - '0' -- vbuz1=vbuxx_minus_vbuc1 
    txa
    axs #'0'
    stx.z bDigits
    // [58] phi from myprintf::@28 myprintf::@37 to myprintf::@32 [phi:myprintf::@28/myprintf::@37->myprintf::@32]
    // [58] phi myprintf::bLeadZero#20 = myprintf::bLeadZero#11 [phi:myprintf::@28/myprintf::@37->myprintf::@32#0] -- register_copy 
    // [58] phi myprintf::bDigits#28 = myprintf::bDigits#1 [phi:myprintf::@28/myprintf::@37->myprintf::@32#1] -- register_copy 
    // [58] phi myprintf::bTrailing#24 = myprintf::bTrailing#11 [phi:myprintf::@28/myprintf::@37->myprintf::@32#2] -- register_copy 
    // [58] phi myprintf::w#18 = myprintf::w#10 [phi:myprintf::@28/myprintf::@37->myprintf::@32#3] -- register_copy 
    // [58] phi myprintf::bArg#11 = myprintf::bArg#10 [phi:myprintf::@28/myprintf::@37->myprintf::@32#4] -- register_copy 
    // [58] phi myprintf::bLen#28 = myprintf::bLen#10 [phi:myprintf::@28/myprintf::@37->myprintf::@32#5] -- register_copy 
    // [58] phi myprintf::bFormat#5 = myprintf::bFormat#10 [phi:myprintf::@28/myprintf::@37->myprintf::@32#6] -- register_copy 
    jmp __b32
    // myprintf::@4
  __b4:
    // if (b == '%')
    // [116] if(myprintf::b#1!='%') goto myprintf::@33 -- vbuxx_neq_vbuc1_then_la1 
    cpx #'%'
    bne __b33
    // myprintf::@39
    // if (bArg == 0)
    // [117] if(myprintf::bArg#10==0) goto myprintf::@34 -- vbuz1_eq_0_then_la1 
    // default format
    //w = (bArg == 0) ? w1 : ((bArg == 1) ? w2 : w3); -- "?" is the normal way, but error "sequence does not contain all blocks" -- https://gitlab.com/camelot/kickc/issues/185 [FIXED]
    lda.z bArg
    beq __b34
    // myprintf::@40
    // if (bArg == 1)
    // [118] if(myprintf::bArg#10==1) goto myprintf::@35 -- vbuz1_eq_vbuc1_then_la1 
    lda #1
    cmp.z bArg
    beq __b35
    // myprintf::@41
    // [119] myprintf::w#55 = myprintf::w3#8 -- vwuz1=vwuz2 
    lda.z w3
    sta.z w
    lda.z w3+1
    sta.z w+1
    // [120] phi from myprintf::@34 myprintf::@35 myprintf::@41 to myprintf::@36 [phi:myprintf::@34/myprintf::@35/myprintf::@41->myprintf::@36]
    // [120] phi myprintf::w#22 = myprintf::w#53 [phi:myprintf::@34/myprintf::@35/myprintf::@41->myprintf::@36#0] -- register_copy 
    // myprintf::@36
  __b36:
    // ++bArg;
    // [121] myprintf::bArg#1 = ++ myprintf::bArg#10 -- vbuz1=_inc_vbuz1 
    inc.z bArg
    // [58] phi from myprintf::@36 to myprintf::@32 [phi:myprintf::@36->myprintf::@32]
    // [58] phi myprintf::bLeadZero#20 = 0 [phi:myprintf::@36->myprintf::@32#0] -- vbuz1=vbuc1 
    lda #0
    sta.z bLeadZero
    // [58] phi myprintf::bDigits#28 = 1 [phi:myprintf::@36->myprintf::@32#1] -- vbuz1=vbuc1 
    lda #1
    sta.z bDigits
    // [58] phi myprintf::bTrailing#24 = 0 [phi:myprintf::@36->myprintf::@32#2] -- vbuz1=vbuc1 
    lda #0
    sta.z bTrailing
    // [58] phi myprintf::w#18 = myprintf::w#22 [phi:myprintf::@36->myprintf::@32#3] -- register_copy 
    // [58] phi myprintf::bArg#11 = myprintf::bArg#1 [phi:myprintf::@36->myprintf::@32#4] -- register_copy 
    // [58] phi myprintf::bLen#28 = myprintf::bLen#10 [phi:myprintf::@36->myprintf::@32#5] -- register_copy 
    // [58] phi myprintf::bFormat#5 = 1 [phi:myprintf::@36->myprintf::@32#6] -- vbuz1=vbuc1 
    lda #1
    sta.z bFormat
    jmp __b32
    // myprintf::@35
  __b35:
    // [122] myprintf::w#54 = myprintf::w2#8 -- vwuz1=vwuz2 
    lda.z w2
    sta.z w
    lda.z w2+1
    sta.z w+1
    jmp __b36
    // myprintf::@34
  __b34:
    // [123] myprintf::w#53 = myprintf::w1#7 -- vwuz1=vwuz2 
    lda.z w1
    sta.z w
    lda.z w1+1
    sta.z w+1
    jmp __b36
    // myprintf::@33
  __b33:
    // if (b >= 0x41 && b <= 0x5A)
    // [124] if(myprintf::b#1<$41) goto myprintf::@37 -- vbuxx_lt_vbuc1_then_la1 
    cpx #$41
    bcc __b37
    // myprintf::@47
    // [125] if(myprintf::b#1>=$5a+1) goto myprintf::@37 -- vbuxx_ge_vbuc1_then_la1 
    cpx #$5a+1
    bcs __b37
    // myprintf::@42
    // b += 0x20
    // [126] myprintf::b#6 = myprintf::b#1 + $20 -- vbuxx=vbuxx_plus_vbuc1 
    txa
    axs #-[$20]
    // [127] phi from myprintf::@33 myprintf::@42 to myprintf::@37 [phi:myprintf::@33/myprintf::@42->myprintf::@37]
    // [127] phi myprintf::b#25 = myprintf::b#1 [phi:myprintf::@33/myprintf::@42->myprintf::@37#0] -- register_copy 
    // [127] phi from myprintf::@47 to myprintf::@37 [phi:myprintf::@47->myprintf::@37]
    // myprintf::@37
  __b37:
    // dst[bLen++] = b
    // [128] strTemp[myprintf::bLen#10] = myprintf::b#25 -- pbuc1_derefidx_vbuz1=vbuxx 
    // swap 0x41 / 0x61 when in lower case mode
    ldy.z bLen
    txa
    sta strTemp,y
    // dst[bLen++] = b;
    // [129] myprintf::bLen#7 = ++ myprintf::bLen#10 -- vbuz1=_inc_vbuz1 
    inc.z bLen
    jmp __b32
  .segment Data
    buf6: .fill 6, 0
}
.segment Code
  // Print
Print: {
    // asm
    // asm { ldy#0 loop: ldastrTemp,y beqdone jsr$FFD2 iny jmploop done:  }
    // can this assembly be placed in a separate file and call it from the C code here?
    ldy #0
  loop:
    lda strTemp,y
    beq done
    jsr $ffd2
    iny
    jmp loop
  done:
    // Print::@return
    // }
    // [131] return 
    rts
}
  // div10
// __zp(4) unsigned int div10(__zp($13) unsigned int val)
div10: {
    .label __0 = $13
    .label __2 = $15
    .label __3 = $17
    .label __4 = 4
    .label val = $13
    .label val_1 = $15
    .label val_2 = $17
    .label val_3 = 4
    .label return = 4
    .label val_4 = 2
    // val >> 1
    // [132] div10::$0 = div10::val#4 >> 1 -- vwuz1=vwuz2_ror_1 
    lda.z val_4+1
    lsr
    sta.z __0+1
    lda.z val_4
    ror
    sta.z __0
    // val = (val >> 1) + 1
    // [133] div10::val#0 = div10::$0 + 1 -- vwuz1=vwuz1_plus_1 
    inc.z val
    bne !+
    inc.z val+1
  !:
    // val << 1
    // [134] div10::$2 = div10::val#0 << 1 -- vwuz1=vwuz2_rol_1 
    lda.z val
    asl
    sta.z __2
    lda.z val+1
    rol
    sta.z __2+1
    // val += val << 1
    // [135] div10::val#1 = div10::val#0 + div10::$2 -- vwuz1=vwuz2_plus_vwuz1 
    clc
    lda.z val_1
    adc.z val
    sta.z val_1
    lda.z val_1+1
    adc.z val+1
    sta.z val_1+1
    // val >> 4
    // [136] div10::$3 = div10::val#1 >> 4 -- vwuz1=vwuz2_ror_4 
    lsr
    sta.z __3+1
    lda.z val_1
    ror
    sta.z __3
    lsr.z __3+1
    ror.z __3
    lsr.z __3+1
    ror.z __3
    lsr.z __3+1
    ror.z __3
    // val += val >> 4
    // [137] div10::val#2 = div10::val#1 + div10::$3 -- vwuz1=vwuz2_plus_vwuz1 
    clc
    lda.z val_2
    adc.z val_1
    sta.z val_2
    lda.z val_2+1
    adc.z val_1+1
    sta.z val_2+1
    // val >> 8
    // [138] div10::$4 = div10::val#2 >> 8 -- vwuz1=vwuz2_ror_8 
    sta.z __4
    lda #0
    sta.z __4+1
    // val += val >> 8
    // [139] div10::val#3 = div10::val#2 + div10::$4 -- vwuz1=vwuz2_plus_vwuz1 
    clc
    lda.z val_3
    adc.z val_2
    sta.z val_3
    lda.z val_3+1
    adc.z val_2+1
    sta.z val_3+1
    // val >> 4
    // [140] div10::return#0 = div10::val#3 >> 4 -- vwuz1=vwuz1_ror_4 
    lsr.z return+1
    ror.z return
    lsr.z return+1
    ror.z return
    lsr.z return+1
    ror.z return
    lsr.z return+1
    ror.z return
    // div10::@return
    // }
    // [141] return 
    rts
}
  // div16u
// Performs division on two 16 bit unsigned ints
// Returns the quotient dividend/divisor.
// The remainder will be set into the global variable rem16u
// Implemented using simple binary division
// __zp(4) unsigned int div16u(__zp(2) unsigned int dividend, unsigned int divisor)
div16u: {
    .label divisor = $a
    .label return = 4
    .label dividend = 2
    // divr16u(dividend, divisor, 0)
    // [142] divr16u::dividend#1 = div16u::dividend#0 -- vwuz1=vwuz2 
    lda.z dividend
    sta.z divr16u.dividend
    lda.z dividend+1
    sta.z divr16u.dividend+1
    // [143] call divr16u
    // [187] phi from div16u to divr16u [phi:div16u->divr16u]
    jsr divr16u
    // divr16u(dividend, divisor, 0)
    // [144] divr16u::return#2 = divr16u::return#0
    // div16u::@1
    // [145] div16u::return#0 = divr16u::return#2
    // div16u::@return
    // }
    // [146] return 
    rts
}
  // utoa
// void utoa(__zp($f) unsigned int value, __zp($11) char *dst)
utoa: {
    .label value = $f
    .label dst = $11
    // utoa::@13
    // if (bStarted == 1 || value >= 10000)
    // [148] if(utoa::value#4>=$2710) goto utoa::@5 -- vwuz1_ge_vwuc1_then_la1 
    lda.z value+1
    cmp #>$2710
    bcc !+
    beq !__b5+
    jmp __b5
  !__b5:
    lda.z value
    cmp #<$2710
    bcc !__b5+
    jmp __b5
  !__b5:
  !:
    // [149] phi from utoa::@13 to utoa::@1 [phi:utoa::@13->utoa::@1]
    // [149] phi utoa::dst#16 = myprintf::buf6 [phi:utoa::@13->utoa::@1#0] -- pbuz1=pbuc1 
    lda #<myprintf.buf6
    sta.z dst
    lda #>myprintf.buf6
    sta.z dst+1
    // [149] phi utoa::value#6 = utoa::value#4 [phi:utoa::@13->utoa::@1#1] -- register_copy 
    // [149] phi utoa::bStarted#5 = 0 [phi:utoa::@13->utoa::@1#2] -- vbuxx=vbuc1 
    ldx #0
    // utoa::@1
  __b1:
    // if (bStarted == 1 || value >= 1000)
    // [150] if(utoa::bStarted#5==1) goto utoa::@6 -- vbuxx_eq_vbuc1_then_la1 
    cpx #1
    beq __b6
    // utoa::@14
    // [151] if(utoa::value#6>=$3e8) goto utoa::@6 -- vwuz1_ge_vwuc1_then_la1 
    lda.z value+1
    cmp #>$3e8
    bcc !+
    bne __b6
    lda.z value
    cmp #<$3e8
    bcs __b6
  !:
    // [152] phi from utoa::@14 to utoa::@2 [phi:utoa::@14->utoa::@2]
    // [152] phi utoa::dst#10 = utoa::dst#16 [phi:utoa::@14->utoa::@2#0] -- register_copy 
    // [152] phi utoa::value#11 = utoa::value#6 [phi:utoa::@14->utoa::@2#1] -- register_copy 
    // [152] phi utoa::bStarted#6 = utoa::bStarted#5 [phi:utoa::@14->utoa::@2#2] -- register_copy 
    // utoa::@2
  __b2:
    // if (bStarted == 1 || value >= 100)
    // [153] if(utoa::bStarted#6==1) goto utoa::@7 -- vbuxx_eq_vbuc1_then_la1 
    cpx #1
    beq __b7
    // utoa::@15
    // [154] if(utoa::value#11>=$64) goto utoa::@7 -- vwuz1_ge_vbuc1_then_la1 
    lda.z value+1
    bne __b7
    lda.z value
    cmp #$64
    bcs __b7
  !:
    // [155] phi from utoa::@15 to utoa::@3 [phi:utoa::@15->utoa::@3]
    // [155] phi utoa::dst#13 = utoa::dst#10 [phi:utoa::@15->utoa::@3#0] -- register_copy 
    // [155] phi utoa::value#10 = utoa::value#11 [phi:utoa::@15->utoa::@3#1] -- register_copy 
    // [155] phi utoa::bStarted#7 = utoa::bStarted#6 [phi:utoa::@15->utoa::@3#2] -- register_copy 
    // utoa::@3
  __b3:
    // if (bStarted == 1 || value >= 10)
    // [156] if(utoa::bStarted#7==1) goto utoa::@8 -- vbuxx_eq_vbuc1_then_la1 
    cpx #1
    beq __b8
    // utoa::@16
    // [157] if(utoa::value#10>=$a) goto utoa::@8 -- vwuz1_ge_vbuc1_then_la1 
    lda.z value+1
    bne __b8
    lda.z value
    cmp #$a
    bcs __b8
  !:
    // [158] phi from utoa::@12 utoa::@16 to utoa::@4 [phi:utoa::@12/utoa::@16->utoa::@4]
    // [158] phi utoa::dst#12 = utoa::dst#4 [phi:utoa::@12/utoa::@16->utoa::@4#0] -- register_copy 
    // [158] phi utoa::value#12 = utoa::value#3 [phi:utoa::@12/utoa::@16->utoa::@4#1] -- register_copy 
    // utoa::@4
  __b4:
    // '0' + (byte)value
    // [159] utoa::$21 = (char)utoa::value#12 -- vbuaa=_byte_vwuz1 
    lda.z value
    // [160] utoa::$16 = '0' + utoa::$21 -- vbuaa=vbuc1_plus_vbuaa 
    clc
    adc #'0'
    // *dst++ = '0' + (byte)value
    // [161] *utoa::dst#12 = utoa::$16 -- _deref_pbuz1=vbuaa 
    ldy #0
    sta (dst),y
    // *dst++ = '0' + (byte)value;
    // [162] utoa::dst#3 = ++ utoa::dst#12 -- pbuz1=_inc_pbuz1 
    inc.z dst
    bne !+
    inc.z dst+1
  !:
    // *dst = 0
    // [163] *utoa::dst#3 = 0 -- _deref_pbuz1=vbuc1 
    lda #0
    tay
    sta (dst),y
    // utoa::@return
    // }
    // [164] return 
    rts
    // utoa::@8
  __b8:
    // append(dst++, value, 10)
    // [165] append::dst#3 = utoa::dst#13
    // [166] append::value#4 = utoa::value#10
    // [167] call append
    // [204] phi from utoa::@8 to append [phi:utoa::@8->append]
    // [204] phi append::sub#6 = $a [phi:utoa::@8->append#0] -- vwuz1=vbuc1 
    lda #<$a
    sta.z append.sub
    lda #>$a
    sta.z append.sub+1
    // [204] phi append::value#8 = append::value#4 [phi:utoa::@8->append#1] -- register_copy 
    // [204] phi append::dst#4 = append::dst#3 [phi:utoa::@8->append#2] -- register_copy 
    jsr append
    // append(dst++, value, 10)
    // [168] append::return#10 = append::value#5
    // utoa::@12
    // value = append(dst++, value, 10)
    // [169] utoa::value#3 = append::return#10
    // value = append(dst++, value, 10);
    // [170] utoa::dst#4 = ++ utoa::dst#13 -- pbuz1=_inc_pbuz1 
    inc.z dst
    bne !+
    inc.z dst+1
  !:
    jmp __b4
    // utoa::@7
  __b7:
    // append(dst++, value, 100)
    // [171] append::dst#2 = utoa::dst#10
    // [172] append::value#3 = utoa::value#11
    // [173] call append
    // [204] phi from utoa::@7 to append [phi:utoa::@7->append]
    // [204] phi append::sub#6 = $64 [phi:utoa::@7->append#0] -- vwuz1=vbuc1 
    lda #<$64
    sta.z append.sub
    lda #>$64
    sta.z append.sub+1
    // [204] phi append::value#8 = append::value#3 [phi:utoa::@7->append#1] -- register_copy 
    // [204] phi append::dst#4 = append::dst#2 [phi:utoa::@7->append#2] -- register_copy 
    jsr append
    // append(dst++, value, 100)
    // [174] append::return#4 = append::value#5
    // utoa::@11
    // value = append(dst++, value, 100)
    // [175] utoa::value#2 = append::return#4
    // value = append(dst++, value, 100);
    // [176] utoa::dst#2 = ++ utoa::dst#10 -- pbuz1=_inc_pbuz1 
    inc.z dst
    bne !+
    inc.z dst+1
  !:
    // [155] phi from utoa::@11 to utoa::@3 [phi:utoa::@11->utoa::@3]
    // [155] phi utoa::dst#13 = utoa::dst#2 [phi:utoa::@11->utoa::@3#0] -- register_copy 
    // [155] phi utoa::value#10 = utoa::value#2 [phi:utoa::@11->utoa::@3#1] -- register_copy 
    // [155] phi utoa::bStarted#7 = 1 [phi:utoa::@11->utoa::@3#2] -- vbuxx=vbuc1 
    ldx #1
    jmp __b3
    // utoa::@6
  __b6:
    // append(dst++, value, 1000)
    // [177] append::dst#1 = utoa::dst#16
    // [178] append::value#2 = utoa::value#6
    // [179] call append
    // [204] phi from utoa::@6 to append [phi:utoa::@6->append]
    // [204] phi append::sub#6 = $3e8 [phi:utoa::@6->append#0] -- vwuz1=vwuc1 
    lda #<$3e8
    sta.z append.sub
    lda #>$3e8
    sta.z append.sub+1
    // [204] phi append::value#8 = append::value#2 [phi:utoa::@6->append#1] -- register_copy 
    // [204] phi append::dst#4 = append::dst#1 [phi:utoa::@6->append#2] -- register_copy 
    jsr append
    // append(dst++, value, 1000)
    // [180] append::return#3 = append::value#5
    // utoa::@10
    // value = append(dst++, value, 1000)
    // [181] utoa::value#1 = append::return#3
    // value = append(dst++, value, 1000);
    // [182] utoa::dst#1 = ++ utoa::dst#16 -- pbuz1=_inc_pbuz1 
    inc.z dst
    bne !+
    inc.z dst+1
  !:
    // [152] phi from utoa::@10 to utoa::@2 [phi:utoa::@10->utoa::@2]
    // [152] phi utoa::dst#10 = utoa::dst#1 [phi:utoa::@10->utoa::@2#0] -- register_copy 
    // [152] phi utoa::value#11 = utoa::value#1 [phi:utoa::@10->utoa::@2#1] -- register_copy 
    // [152] phi utoa::bStarted#6 = 1 [phi:utoa::@10->utoa::@2#2] -- vbuxx=vbuc1 
    ldx #1
    jmp __b2
    // utoa::@5
  __b5:
    // append(dst++, value, 10000)
    // [183] append::value#1 = utoa::value#4
    // [184] call append
    // [204] phi from utoa::@5 to append [phi:utoa::@5->append]
    // [204] phi append::sub#6 = $2710 [phi:utoa::@5->append#0] -- vwuz1=vwuc1 
    lda #<$2710
    sta.z append.sub
    lda #>$2710
    sta.z append.sub+1
    // [204] phi append::value#8 = append::value#1 [phi:utoa::@5->append#1] -- register_copy 
    // [204] phi append::dst#4 = myprintf::buf6 [phi:utoa::@5->append#2] -- pbuz1=pbuc1 
    lda #<myprintf.buf6
    sta.z append.dst
    lda #>myprintf.buf6
    sta.z append.dst+1
    jsr append
    // append(dst++, value, 10000)
    // [185] append::return#2 = append::value#5
    // utoa::@9
    // value = append(dst++, value, 10000)
    // [186] utoa::value#0 = append::return#2
    // [149] phi from utoa::@9 to utoa::@1 [phi:utoa::@9->utoa::@1]
    // [149] phi utoa::dst#16 = ++myprintf::buf6 [phi:utoa::@9->utoa::@1#0] -- pbuz1=pbuc1 
    lda #<myprintf.buf6+1
    sta.z dst
    lda #>myprintf.buf6+1
    sta.z dst+1
    // [149] phi utoa::value#6 = utoa::value#0 [phi:utoa::@9->utoa::@1#1] -- register_copy 
    // [149] phi utoa::bStarted#5 = 1 [phi:utoa::@9->utoa::@1#2] -- vbuxx=vbuc1 
    ldx #1
    jmp __b1
}
  // divr16u
// Performs division on two 16 bit unsigned ints and an initial remainder
// Returns the quotient dividend/divisor.
// The final remainder will be set into the global variable rem16u
// Implemented using simple binary division
// __zp(4) unsigned int divr16u(__zp($17) unsigned int dividend, unsigned int divisor, __zp($15) unsigned int rem)
divr16u: {
    .label rem = $15
    .label dividend = $17
    .label quotient = 4
    .label return = 4
    // [188] phi from divr16u to divr16u::@1 [phi:divr16u->divr16u::@1]
    // [188] phi divr16u::i#2 = 0 [phi:divr16u->divr16u::@1#0] -- vbuxx=vbuc1 
    ldx #0
    // [188] phi divr16u::quotient#3 = 0 [phi:divr16u->divr16u::@1#1] -- vwuz1=vwuc1 
    txa
    sta.z quotient
    sta.z quotient+1
    // [188] phi divr16u::dividend#2 = divr16u::dividend#1 [phi:divr16u->divr16u::@1#2] -- register_copy 
    // [188] phi divr16u::rem#4 = 0 [phi:divr16u->divr16u::@1#3] -- vwuz1=vbuc1 
    sta.z rem
    sta.z rem+1
    // [188] phi from divr16u::@3 to divr16u::@1 [phi:divr16u::@3->divr16u::@1]
    // [188] phi divr16u::i#2 = divr16u::i#1 [phi:divr16u::@3->divr16u::@1#0] -- register_copy 
    // [188] phi divr16u::quotient#3 = divr16u::return#0 [phi:divr16u::@3->divr16u::@1#1] -- register_copy 
    // [188] phi divr16u::dividend#2 = divr16u::dividend#0 [phi:divr16u::@3->divr16u::@1#2] -- register_copy 
    // [188] phi divr16u::rem#4 = divr16u::rem#9 [phi:divr16u::@3->divr16u::@1#3] -- register_copy 
    // divr16u::@1
  __b1:
    // rem = rem << 1
    // [189] divr16u::rem#0 = divr16u::rem#4 << 1 -- vwuz1=vwuz1_rol_1 
    asl.z rem
    rol.z rem+1
    // BYTE1(dividend)
    // [190] divr16u::$1 = byte1  divr16u::dividend#2 -- vbuaa=_byte1_vwuz1 
    lda.z dividend+1
    // BYTE1(dividend) & $80
    // [191] divr16u::$2 = divr16u::$1 & $80 -- vbuaa=vbuaa_band_vbuc1 
    and #$80
    // if( (BYTE1(dividend) & $80) != 0 )
    // [192] if(divr16u::$2==0) goto divr16u::@2 -- vbuaa_eq_0_then_la1 
    cmp #0
    beq __b2
    // divr16u::@4
    // rem = rem | 1
    // [193] divr16u::rem#1 = divr16u::rem#0 | 1 -- vwuz1=vwuz1_bor_vbuc1 
    lda #1
    ora.z rem
    sta.z rem
    // [194] phi from divr16u::@1 divr16u::@4 to divr16u::@2 [phi:divr16u::@1/divr16u::@4->divr16u::@2]
    // [194] phi divr16u::rem#5 = divr16u::rem#0 [phi:divr16u::@1/divr16u::@4->divr16u::@2#0] -- register_copy 
    // divr16u::@2
  __b2:
    // dividend = dividend << 1
    // [195] divr16u::dividend#0 = divr16u::dividend#2 << 1 -- vwuz1=vwuz1_rol_1 
    asl.z dividend
    rol.z dividend+1
    // quotient = quotient << 1
    // [196] divr16u::quotient#1 = divr16u::quotient#3 << 1 -- vwuz1=vwuz1_rol_1 
    asl.z quotient
    rol.z quotient+1
    // if(rem>=divisor)
    // [197] if(divr16u::rem#5<div16u::divisor#0) goto divr16u::@3 -- vwuz1_lt_vwuc1_then_la1 
    lda.z rem+1
    cmp #>div16u.divisor
    bcc __b3
    bne !+
    lda.z rem
    cmp #<div16u.divisor
    bcc __b3
  !:
    // divr16u::@5
    // quotient++;
    // [198] divr16u::quotient#2 = ++ divr16u::quotient#1 -- vwuz1=_inc_vwuz1 
    inc.z quotient
    bne !+
    inc.z quotient+1
  !:
    // rem = rem - divisor
    // [199] divr16u::rem#2 = divr16u::rem#5 - div16u::divisor#0 -- vwuz1=vwuz1_minus_vwuc1 
    lda.z rem
    sec
    sbc #<div16u.divisor
    sta.z rem
    lda.z rem+1
    sbc #>div16u.divisor
    sta.z rem+1
    // [200] phi from divr16u::@2 divr16u::@5 to divr16u::@3 [phi:divr16u::@2/divr16u::@5->divr16u::@3]
    // [200] phi divr16u::return#0 = divr16u::quotient#1 [phi:divr16u::@2/divr16u::@5->divr16u::@3#0] -- register_copy 
    // [200] phi divr16u::rem#9 = divr16u::rem#5 [phi:divr16u::@2/divr16u::@5->divr16u::@3#1] -- register_copy 
    // divr16u::@3
  __b3:
    // for( char i : 0..15)
    // [201] divr16u::i#1 = ++ divr16u::i#2 -- vbuxx=_inc_vbuxx 
    inx
    // [202] if(divr16u::i#1!=$10) goto divr16u::@1 -- vbuxx_neq_vbuc1_then_la1 
    cpx #$10
    bne __b1
    // divr16u::@return
    // }
    // [203] return 
    rts
}
  // append
// simple 'utoa' without using multiply or divide
// __zp($f) unsigned int append(__zp($11) char *dst, __zp($f) unsigned int value, __zp($13) unsigned int sub)
append: {
    .label value = $f
    .label return = $f
    .label dst = $11
    .label sub = $13
    // *dst = '0'
    // [205] *append::dst#4 = '0' -- _deref_pbuz1=vbuc1 
    lda #'0'
    ldy #0
    sta (dst),y
    // [206] phi from append append::@2 to append::@1 [phi:append/append::@2->append::@1]
    // [206] phi append::value#5 = append::value#8 [phi:append/append::@2->append::@1#0] -- register_copy 
    // append::@1
  __b1:
    // while (value >= sub)
    // [207] if(append::value#5>=append::sub#6) goto append::@2 -- vwuz1_ge_vwuz2_then_la1 
    lda.z sub+1
    cmp.z value+1
    bne !+
    lda.z sub
    cmp.z value
    beq __b2
  !:
    bcc __b2
    // append::@return
    // }
    // [208] return 
    rts
    // append::@2
  __b2:
    // ++*dst;
    // [209] *append::dst#4 = ++ *append::dst#4 -- _deref_pbuz1=_inc__deref_pbuz1 
    ldy #0
    lda (dst),y
    clc
    adc #1
    sta (dst),y
    // value -= sub
    // [210] append::value#0 = append::value#5 - append::sub#6 -- vwuz1=vwuz1_minus_vwuz2 
    lda.z value
    sec
    sbc.z sub
    sta.z value
    lda.z value+1
    sbc.z sub+1
    sta.z value+1
    jmp __b1
}
  // File Data
.segment Data
  // "char buf16[16]" is the normal way -- not supported -- https://gitlab.com/camelot/kickc/issues/162
  strTemp: .fill $64, 0

