@begin: scope:[] from [0] phi() to:@1 @1: scope:[] from @begin [1] phi() [2] call malloc to:@2 @2: scope:[] from @1 [3] phi() [4] call main to:@end @end: scope:[] from @2 [5] phi() (void()) main() main: scope:[main] from @2 [6] phi() to:main::@1 main::@1: scope:[main] from main main::@1 [7] (byte) main::i#2 ← phi( main/(byte) 0 main::@1/(byte) main::i#1 ) [8] *((const byte*) BYTES#0 + (byte) main::i#2) ← (byte) main::i#2 [9] (byte) main::i#1 ← ++ (byte) main::i#2 [10] if((byte) main::i#1!=(byte) 0) goto main::@1 to:main::@return main::@return: scope:[main] from main::@1 [11] return to:@return (void*()) malloc((word) malloc::size) malloc: scope:[malloc] from @1 [12] phi() to:malloc::@return malloc::@return: scope:[malloc] from malloc [13] return to:@return