Index: runtime/vm/flow_graph_compiler_x64.cc |
diff --git a/runtime/vm/flow_graph_compiler_x64.cc b/runtime/vm/flow_graph_compiler_x64.cc |
index c8ce4f5d248d4d8ce1df9a2dd9862c1356434177..b76da0bd5446e06db9b12bfa7c4caf97e12d47ee 100644 |
--- a/runtime/vm/flow_graph_compiler_x64.cc |
+++ b/runtime/vm/flow_graph_compiler_x64.cc |
@@ -442,8 +442,8 @@ RawSubtypeTestCache* FlowGraphCompiler::GenerateSubtype1TestCacheLookup( |
// R10: instance class. |
// Check immediate superclass equality. |
__ movq(R13, FieldAddress(R10, Class::super_type_offset())); |
- __ movq(R13, FieldAddress(R13, Type::type_class_offset())); |
- __ CompareObject(R13, type_class); |
+ __ movq(R13, FieldAddress(R13, Type::type_class_id_offset())); |
+ __ CompareImmediate(R13, Immediate(Smi::RawValue(type_class.id()))); |
__ j(EQUAL, is_instance_lbl); |
const Register kTypeArgumentsReg = kNoRegister; |