blob: 607ee236ef0c03b802b8cd018836997b107d2850 [file]
--- A._
B0 = EntryBlock()
v6 = Constant(null)
v1 = Parameter(this)
TypeParameters(v1)
DirectCall Object.(v1)
Return(v6)
--- A.bar
B0 = EntryBlock()
v4 = Constant(<int>)
v6 = Constant(1)
v8 = Constant(null)
v11 = Constant(2)
v1 = Parameter(this)
v3 = TypeParameters(v1)
InterfaceCall A.foo(v4, v1, v6)
v9 = TypeArguments(v3, v8, <Map<String, A.T%>>)
InterfaceCall A.foo(v9, v1, v11)
Return(v8)
--- A.foo
B0 = EntryBlock() dominates:(B12, B14, B11)
v9 = Constant(null)
v1 = Parameter(#functionTypeParameters)
v2 = Parameter(this)
v3 = Parameter(o)
TypeParameters(v1)
v7 = TypeParameters(v2)
v10 = TypeTest(v3, v7, v9, List<A.T%>)
Branch(v10, true: B11, false: B12)
B11 = TargetBlock() idom:B0
v17 = TypeCast(v3, v7, v9, List<A.T%>, unchecked)
TypeCast(v17, Map<dynamic, dynamic>)
Goto(B14)
B12 = TargetBlock() idom:B0
Goto(B14)
B14 = JoinBlock(B12, B11) idom:B0
Return(v9)
--- A.baz
B0 = EntryBlock()
v7 = Constant(TypeLiteralConstant(List<dynamic>))
v9 = Constant(null)
v1 = Parameter(#functionTypeParameters)
v2 = Parameter(this)
v4 = TypeParameters(v1)
v6 = TypeParameters(v2)
DirectCall print(v7)
v10 = TypeLiteral(A.T%, v6, v9)
DirectCall print(v10)
v12 = TypeLiteral(Map<A.baz.S%, A.T%>, v6, v4)
DirectCall print(v12)
Return(v9)
--- A.
B0 = EntryBlock()
v4 = Constant(null)
v1 = Parameter(#functionTypeParameters)
v3 = TypeParameters(v1)
v5 = TypeArguments(v4, v3, <A..T%>)
v6 = AllocateObject A<A..T%>(v5)
DirectCall A._(v6)
Return(v6)
--- main
B0 = EntryBlock()
v1 = Constant(null)
Return(v1)