@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 print_person 
  to:main::@1
main::@1: scope:[main]  from main
  [6] phi()
  [7] call print_person 
  to:main::@return
main::@return: scope:[main]  from main::@1
  [8] return 
  to:@return

(void()) print_person((struct Person*) print_person::person)
print_person: scope:[print_person]  from main main::@1
  [9] (byte) idx#15 ← phi( main/(byte) 0 main::@1/(byte) idx#10 )
  [9] (struct Person*) print_person::person#2 ← phi( main/(const struct Person*) persons main::@1/(const struct Person*) main::person#1 )
  [10] (byte~) print_person::$0 ← (byte) '0' + *((byte*)(struct Person*) print_person::person#2)
  [11] *((const byte*) SCREEN + (byte) idx#15) ← (byte~) print_person::$0
  [12] (byte) idx#4 ← ++ (byte) idx#15
  [13] *((const byte*) SCREEN + (byte) idx#4) ← (byte) ' '
  [14] (byte) idx#5 ← ++ (byte) idx#4
  [15] *((const byte*) SCREEN + (byte) idx#5) ← *((byte*)(struct Person*) print_person::person#2 + (const byte) OFFSET_STRUCT_PERSON_INITIALS)
  [16] (byte) idx#6 ← ++ (byte) idx#5
  [17] (byte*~) print_person::$3 ← (byte*)(struct Person*) print_person::person#2 + (const byte) OFFSET_STRUCT_PERSON_INITIALS
  [18] *((const byte*) SCREEN + (byte) idx#6) ← *((byte*~) print_person::$3 + (byte) 1)
  [19] (byte) idx#7 ← ++ (byte) idx#6
  [20] (byte*~) print_person::$4 ← (byte*)(struct Person*) print_person::person#2 + (const byte) OFFSET_STRUCT_PERSON_INITIALS
  [21] *((const byte*) SCREEN + (byte) idx#7) ← *((byte*~) print_person::$4 + (byte) 2)
  [22] (byte) idx#8 ← ++ (byte) idx#7
  [23] *((const byte*) SCREEN + (byte) idx#8) ← (byte) ' '
  [24] (byte) idx#10 ← ++ (byte) idx#8
  to:print_person::@return
print_person::@return: scope:[print_person]  from print_person
  [25] return 
  to:@return
