Index: runtime/vm/object.h |
diff --git a/runtime/vm/object.h b/runtime/vm/object.h |
index 214415644606e120645df657e80e10094da5de37..e59eb451fb38479697789c8ee10883da7e7f4341 100644 |
--- a/runtime/vm/object.h |
+++ b/runtime/vm/object.h |
@@ -2187,17 +2187,14 @@ class Field : public Object { |
return r; |
} |
- bool IsUnboxedField() const { |
- return is_unboxing_candidate() |
- && !is_final() |
- && (guarded_cid() == kDoubleCid && !is_nullable()); |
+ intptr_t UnboxedFieldCid() const { |
+ ASSERT(IsUnboxedField()); |
+ return guarded_cid(); |
} |
- bool IsPotentialUnboxedField() const { |
- return is_unboxing_candidate() |
- && (IsUnboxedField() || |
- (!is_final() && (guarded_cid() == kIllegalCid))); |
- } |
+ bool IsUnboxedField() const; |
+ |
+ bool IsPotentialUnboxedField() const; |
bool is_unboxing_candidate() const { |
return UnboxingCandidateBit::decode(raw_ptr()->kind_bits_); |