Index: runtime/vm/flow_graph_compiler_arm64.cc |
diff --git a/runtime/vm/flow_graph_compiler_arm64.cc b/runtime/vm/flow_graph_compiler_arm64.cc |
index 00d61566d17346788bf950eb8e5b891712558666..8f258f73f0d1dbe61444e0dd493e0bbfaacebbaa 100644 |
--- a/runtime/vm/flow_graph_compiler_arm64.cc |
+++ b/runtime/vm/flow_graph_compiler_arm64.cc |
@@ -1487,13 +1487,13 @@ int FlowGraphCompiler::EmitTestAndCallCheckCid(Label* next_label, |
int bias) { |
intptr_t cid_start = range.cid_start; |
intptr_t cid_end = range.cid_end; |
- if (cid_start == cid_end) { |
+ if (range.IsSingleCid()) { |
__ CompareImmediate(R2, cid_start - bias); |
__ b(next_label, NE); |
} else { |
__ AddImmediate(R2, bias - cid_start); |
bias = cid_start; |
- __ CompareImmediate(R2, cid_end - cid_start); |
+ __ CompareImmediate(R2, range.Extent()); |
__ b(next_label, HI); // Unsigned higher. |
} |
return bias; |