Index: runtime/vm/object.h |
diff --git a/runtime/vm/object.h b/runtime/vm/object.h |
index eaa5b725c250b0cdf4372e4b6e75a572ef437aab..eccf39fcdfcf2a37a690e0aa1511873a78c1edfe 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_); |