------------ #lib::A:: ------------
%this = _Parameter #0 [_T (#lib::A)+]
t1 = _Call direct [dart.core::Object::] (%this)
RESULT: _T {}?
------------ #lib::B:: ------------
%this = _Parameter #0 [_T (#lib::B)+]
t1 = _Call direct [dart.core::Object::] (%this)
RESULT: _T {}?
------------ #lib::foo ------------
%a1 = _Parameter #0 [_T (dart.core::Object)+?]
%a2 = _Parameter #1 [_T (dart.core::Object)+?]
t2* = _Call direct get [#lib::someStatic] ()
t3 = _Call direct [#lib::A::] (_T (#lib::A))
a1 = _Join [dart.core::Object] (%a1, _T (#lib::A), _T (#lib::B))
t5 = _Call direct [#lib::bar] (a1, _T (dart.core::_Smi))
t6 = _Call direct [#lib::B::] (_T (#lib::B))
t7* = _Call [dart.core::Object::==] (a1, %a2)
t8 = _Join [dart.core::Object] (a1, %a2)
t9 = _Narrow (t8 to _T (dart.core::Object)+?)
RESULT: t9
------------ #lib::bar ------------
%a1 = _Parameter #0 [_T (dart.core::Object)+?]
%a2 = _Parameter #1 [_T (dart.core::int)+?]
t2 = _Narrow (%a1 to _T (dart.core::int)+)
t3* = _Call [dart.core::num::+] (t2, %a2)
t4* = _Call [dart.core::num::*] (t3, _T (dart.core::_Smi))
t5* = _Call [dart.core::int::unary-] (_T (dart.core::_Smi))
%result = _Join [dart.core::int] (t4, t5)
RESULT: %result
------------ #lib::loop1 ------------
%a1 = _Parameter #0 [_T (dart.core::Object)+?]
%a2 = _Parameter #1 [_T (dart.core::Object)+?]
t2* = _Call direct [#lib::loop1] (_T (dart.core::Object)+?, %a1)
x = _Join [dart.core::Object] (%a1, t2, %a2)
RESULT: x
------------ #lib::loop2 ------------
%x = _Parameter #0 [_T (dart.core::int)+?]
t1* = _Call [dart.core::num::+] (_T (dart.core::int)+?, _T (dart.core::_Smi))
i = _Join [dart.core::int] (_T (dart.core::_Smi), t1)
t3* = _Call [dart.core::num::<] (i, _T (dart.core::_Smi))
t4* = _Call [dart.core::num::+] (_T (dart.core::int)+?, _T (dart.core::_Smi))
x = _Join [dart.core::int] (%x, t4)
RESULT: x
------------ #lib::main ------------

RESULT: _T {}?
