Index: runtime/vm/flow_graph_inliner.cc |
diff --git a/runtime/vm/flow_graph_inliner.cc b/runtime/vm/flow_graph_inliner.cc |
index 32be459f860f5989d7f0fe4d503de90abba4e78e..1b39f976e7d126cab98f2a7aa253a06e6771657c 100644 |
--- a/runtime/vm/flow_graph_inliner.cc |
+++ b/runtime/vm/flow_graph_inliner.cc |
@@ -1128,14 +1128,13 @@ class CallSiteInliner : public ValueObject { |
call->ArgumentAt(0)->OriginalDefinition()->AsAllocateObject(); |
if ((alloc != NULL) && !alloc->closure_function().IsNull()) { |
target ^= alloc->closure_function().raw(); |
- ASSERT(target.signature_class() == alloc->cls().raw()); |
+ ASSERT(alloc->cls().IsClosureClass()); |
} |
ConstantInstr* constant = |
call->ArgumentAt(0)->OriginalDefinition()->AsConstant(); |
if ((constant != NULL) && |
- constant->value().IsInstance() && |
- Instance::Cast(constant->value()).IsClosure()) { |
- target ^= Closure::function(Instance::Cast(constant->value())); |
+ constant->value().IsClosure()) { |
+ target ^= Closure::Cast(constant->value()).function(); |
} |
if (target.IsNull()) { |