Index: runtime/vm/constant_propagator.cc |
diff --git a/runtime/vm/constant_propagator.cc b/runtime/vm/constant_propagator.cc |
index 03ab8ae7c39aaac71cd94b8d91ebd85cd255fbc0..b8e7c2a014b43ec2cbdcafdc657cb151f82b5579 100644 |
--- a/runtime/vm/constant_propagator.cc |
+++ b/runtime/vm/constant_propagator.cc |
@@ -323,7 +323,7 @@ void ConstantPropagator::VisitRedefinition(RedefinitionInstr* instr) { |
// class ids. Otherwise LICM might potentially hoist incorrect code. |
const Object& value = instr->value()->definition()->constant_value(); |
if (IsConstant(value) && |
- CheckClassInstr::IsImmutableClassId(value.GetClassId())) { |
+ !Field::IsExternalizableCid(value.GetClassId())) { |
SetValue(instr, value); |
} else { |
SetValue(instr, non_constant_); |
@@ -805,7 +805,7 @@ void ConstantPropagator::VisitLoadClassId(LoadClassIdInstr* instr) { |
const Object& object = instr->object()->definition()->constant_value(); |
if (IsConstant(object)) { |
cid = object.GetClassId(); |
- if (CheckClassInstr::IsImmutableClassId(cid)) { |
+ if (!Field::IsExternalizableCid(cid)) { |
SetValue(instr, Smi::ZoneHandle(Z, Smi::New(cid))); |
return; |
} |