Index: src/field-index.h |
diff --git a/src/field-index.h b/src/field-index.h |
index 2dace97ca582b0dd39844aec803390ada6f9aeaa..d0ae2f27f9c7ba4ea391f2d779181ebfc3577594 100644 |
--- a/src/field-index.h |
+++ b/src/field-index.h |
@@ -76,6 +76,13 @@ class FieldIndex final { |
(IsInObjectBits::kMask | IsDoubleBits::kMask | IndexBits::kMask); |
} |
+ // For GetLoadByFieldOffset. |
+ class FieldOffsetIsInobject : public BitField<bool, 1, 1> {}; |
+ class FieldOffsetIsDouble : public BitField<bool, 2, 1> {}; |
+ class FieldOffsetOffset : public BitField<int, 3, 27> {}; |
+ // Make sure we don't overflow into the sign bit. |
+ STATIC_ASSERT(FieldOffsetOffset::kNext <= kSmiValueSize - 1); |
+ |
private: |
FieldIndex(bool is_inobject, int local_index, bool is_double, |
int inobject_properties, int first_inobject_property_offset, |