| Index: src/field-index-inl.h
|
| diff --git a/src/field-index-inl.h b/src/field-index-inl.h
|
| index 198422feef4b65f21c7f5c14cc867cc306fb1ff9..80e486945b48eecb7944b3be34b04256a167112b 100644
|
| --- a/src/field-index-inl.h
|
| +++ b/src/field-index-inl.h
|
| @@ -69,6 +69,18 @@ inline FieldIndex FieldIndex::ForLoadByFieldIndex(Map* map, int orig_index) {
|
| }
|
|
|
|
|
| +inline bool FieldIndex::LoadByFieldIndexValid(int index) {
|
| + index >>= 1;
|
| + if (index < 0) {
|
| + index = -(index + 1);
|
| + index += FixedArray::kHeaderSize / kPointerSize;
|
| + } else {
|
| + index += JSObject::kHeaderSize / kPointerSize;
|
| + }
|
| + return IndexBits::is_valid(index);
|
| +}
|
| +
|
| +
|
| // Returns the index format accepted by the HLoadFieldByIndex instruction.
|
| // (In-object: zero-based from (object start + JSObject::kHeaderSize),
|
| // out-of-object: zero-based from FixedArray::kHeaderSize.)
|
|
|