(label) @1
(label) @begin
(label) @end
(const byte) SIZEOF_SIGNED_WORD = (byte) 2
(signed word()) foo((byte) foo::x , (signed word*) foo::y)
(byte~) foo::$1 reg byte a 4.0
(label) foo::@return
(signed word) foo::return
(signed word) foo::return#0 return zp[2]:2 1.5
(signed word) foo::return#2 return zp[2]:2 4.0
(signed word) foo::return#3 return zp[2]:2 4.0
(byte) foo::x
(byte) foo::x#2 reg byte x 2.0
(signed word*) foo::y
(signed word*) foo::y#2 y zp[2]:2 1.0
(void()) main()
(signed word~) main::$0 zp[2]:2 4.0
(signed word~) main::$1 zp[2]:2 4.0
(label) main::@1
(label) main::@2
(label) main::@return
(signed word*) main::SCREEN
(const signed word*) main::SCREEN#0 SCREEN = (signed word*) 1024
(signed word) main::y1 loadstore zp[2]:4 20.0
(signed word) main::y2 loadstore zp[2]:6 20.0
(const signed word*) wow[(number) 4]  = { (signed word) $cafe, (signed word) $babe, (signed word) $1234, (signed word) $5678 }

reg byte x [ foo::x#2 ]
zp[2]:2 [ foo::y#2 foo::return#0 foo::return#2 main::$0 foo::return#3 main::$1 ]
zp[2]:4 [ main::y1 ]
zp[2]:6 [ main::y2 ]
reg byte a [ foo::$1 ]
