@begin: scope:[]  from
  [0] phi()
  to:@1
@1: scope:[]  from @begin
  [1] phi()
  [2] call main 
  to:@end
@end: scope:[]  from @1
  [3] phi()

(void()) main()
main: scope:[main]  from @1
  [4] phi()
  [5] call scan_for_lowest 
  [6] (byte) scan_for_lowest::return#0 ← (byte) scan_for_lowest::lowest#2
  to:main::@1
main::@1: scope:[main]  from main
  [7] (byte) main::hit_check#0 ← (byte) scan_for_lowest::return#0
  [8] *((const byte*) main::screen) ← (byte) main::hit_check#0
  [9] (byte~) main::$4 ← (byte) main::hit_check#0 << (byte) 1
  [10] (byte~) main::$1 ← < *((const signed word*) ball_y + (byte~) main::$4)
  [11] *((const byte*) main::screen+(byte) 2) ← (byte~) main::$1
  [12] (byte~) main::$2 ← > *((const signed word*) ball_y + (byte~) main::$4)
  [13] *((const byte*) main::screen+(byte) 3) ← (byte~) main::$2
  to:main::@return
main::@return: scope:[main]  from main::@1
  [14] return 
  to:@return

(byte()) scan_for_lowest()
scan_for_lowest: scope:[scan_for_lowest]  from main
  [15] phi()
  to:scan_for_lowest::@1
scan_for_lowest::@1: scope:[scan_for_lowest]  from scan_for_lowest scan_for_lowest::@3
  [16] (byte) scan_for_lowest::lowest#2 ← phi( scan_for_lowest/(byte) $ff scan_for_lowest::@3/(byte) scan_for_lowest::lowest#4 )
  [16] (signed word) scan_for_lowest::height#2 ← phi( scan_for_lowest/(signed word) $258 scan_for_lowest::@3/(signed word) scan_for_lowest::height#4 )
  [16] (byte) scan_for_lowest::i#2 ← phi( scan_for_lowest/(byte) 0 scan_for_lowest::@3/(byte) scan_for_lowest::i#1 )
  [17] if((byte) scan_for_lowest::i#2<(byte) 8) goto scan_for_lowest::@2
  to:scan_for_lowest::@return
scan_for_lowest::@return: scope:[scan_for_lowest]  from scan_for_lowest::@1
  [18] return 
  to:@return
scan_for_lowest::@2: scope:[scan_for_lowest]  from scan_for_lowest::@1
  [19] (byte~) scan_for_lowest::$3 ← (byte) scan_for_lowest::i#2 << (byte) 1
  [20] if(*((const signed word*) ball_y + (byte~) scan_for_lowest::$3)>=(signed word) scan_for_lowest::height#2) goto scan_for_lowest::@3
  to:scan_for_lowest::@4
scan_for_lowest::@4: scope:[scan_for_lowest]  from scan_for_lowest::@2
  [21] (byte~) scan_for_lowest::$4 ← (byte) scan_for_lowest::i#2 << (byte) 1
  [22] (signed word) scan_for_lowest::height#1 ← *((const signed word*) ball_y + (byte~) scan_for_lowest::$4)
  [23] (byte) scan_for_lowest::lowest#8 ← (byte) scan_for_lowest::i#2
  to:scan_for_lowest::@3
scan_for_lowest::@3: scope:[scan_for_lowest]  from scan_for_lowest::@2 scan_for_lowest::@4
  [24] (byte) scan_for_lowest::lowest#4 ← phi( scan_for_lowest::@2/(byte) scan_for_lowest::lowest#2 scan_for_lowest::@4/(byte) scan_for_lowest::lowest#8 )
  [24] (signed word) scan_for_lowest::height#4 ← phi( scan_for_lowest::@2/(signed word) scan_for_lowest::height#2 scan_for_lowest::@4/(signed word) scan_for_lowest::height#1 )
  [25] (byte) scan_for_lowest::i#1 ← ++ (byte) scan_for_lowest::i#2
  to:scan_for_lowest::@1
