| Index: runtime/vm/constant_propagator.cc
|
| diff --git a/runtime/vm/constant_propagator.cc b/runtime/vm/constant_propagator.cc
|
| index 35ee3ccd7f9d6537a569dfd3bf94af24a738e673..a1abaaded7d9d3a7295b80d34bc65707ad2cf8ff 100644
|
| --- a/runtime/vm/constant_propagator.cc
|
| +++ b/runtime/vm/constant_propagator.cc
|
| @@ -702,10 +702,9 @@ void ConstantPropagator::VisitInitStaticField(InitStaticFieldInstr* instr) {
|
| void ConstantPropagator::VisitLoadStaticField(LoadStaticFieldInstr* instr) {
|
| const Field& field = instr->StaticField();
|
| ASSERT(field.is_static());
|
| - if (field.is_final()) {
|
| - Instance& obj = Instance::Handle(I, field.value());
|
| - ASSERT(obj.raw() != Object::sentinel().raw());
|
| - ASSERT(obj.raw() != Object::transition_sentinel().raw());
|
| + Instance& obj = Instance::Handle(I, field.value());
|
| + if (field.is_final() && (obj.raw() != Object::sentinel().raw()) &&
|
| + (obj.raw() != Object::transition_sentinel().raw())) {
|
| if (obj.IsSmi() || obj.IsOld()) {
|
| SetValue(instr, obj);
|
| return;
|
|
|