blob: f08bc1a31fbc24a236aa51bdb3ff37e3e06d98d8 [file] [log] [blame] [edit]
--- foo1
B0 = EntryBlock()
v4 = Constant(null)
Parameter(this)
Parameter(a)
Parameter(b)
Return(v4)
--- instanceCalls
B0 = EntryBlock() dominates:(B20, B22, B19)
v17 = Constant(null)
v1 = Parameter(obj)
v2 = Parameter(obj2)
v3 = Parameter(a)
v4 = Parameter(b)
v5 = Parameter(c)
InterfaceCall A.foo1(v1, v3)
InterfaceCall A.foo1(v1, v3, v4)
v14 = InterfaceCall getter A.foo2(v1)
v18 = Comparison ==(v2, v17)
Branch(v18, true: B19, false: B20)
B19 = TargetBlock() idom:B0
Goto(B22)
B20 = TargetBlock() idom:B0 dominates:(B29, B31, B28)
v26 = TypeCast(v2, A, unchecked)
v27 = InterfaceCall Object.==(v1, v26)
Branch(v27, true: B28, false: B29)
B28 = TargetBlock() idom:B20
v36 = UnaryIntOp toDouble(v14)
v37 = BinaryDoubleOp +(v5, v36)
InterfaceCall setter A.foo3(v1, v37)
Goto(B31)
B29 = TargetBlock() idom:B20
Goto(B31)
B31 = JoinBlock(B29, B28) idom:B20
Goto(B22)
B22 = JoinBlock(B31, B19) idom:B0
Return(v17)
--- staticCalls
B0 = EntryBlock() dominates:(B7, B9, B6)
v4 = Constant(0)
v12 = Constant(1)
v20 = Constant(null)
v1 = Parameter(a)
v2 = Parameter(b)
v5 = Comparison int >(v1, v4)
Branch(v5, true: B6, false: B7)
B6 = TargetBlock() idom:B0
v13 = BinaryIntOp -(v1, v12)
DirectCall staticCalls(v13, v2)
Goto(B9)
B7 = TargetBlock() idom:B0
Goto(B9)
B9 = JoinBlock(B7, B6) idom:B0
v17 = DirectCall getter sField()
v18 = BinaryIntOp +(v17, v12)
DirectCall setter sField(v18)
Return(v20)
--- dynamicCalls
B0 = EntryBlock()
v13 = Constant(1)
v16 = Constant(null)
v1 = Parameter(x)
v2 = Parameter(y)
v3 = Parameter(z)
DynamicCall foo1(v1, v2, v3)
v9 = DynamicCall get bar(v2)
v14 = DynamicCall +(v9, v13)
DynamicCall set baz(v3, v14)
Return(v16)
--- main
B0 = EntryBlock()
v1 = Constant(null)
Return(v1)