| Index: src/accessors.cc
|
| diff --git a/src/accessors.cc b/src/accessors.cc
|
| index f774c6db467e900e3c382094ecacf1b6a8ca0ed8..fd770ea16be5bc1befe01daab72b26d041c0010b 100644
|
| --- a/src/accessors.cc
|
| +++ b/src/accessors.cc
|
| @@ -79,6 +79,14 @@ bool Accessors::IsJSObjectFieldAccessor(Handle<Map> map, Handle<Name> name,
|
| CheckForName(name, isolate->factory()->length_string(),
|
| JSArray::kLengthOffset, object_offset);
|
| case JS_TYPED_ARRAY_TYPE:
|
| + // %TypedArray%.prototype is non-configurable, and so are the following
|
| + // named properties on %TypedArray%.prototype, so we can directly inline
|
| + // the field-load for typed array maps that still use their
|
| + // %TypedArray%.prototype.
|
| + if (JSFunction::cast(map->GetConstructor())->prototype() !=
|
| + map->prototype()) {
|
| + return false;
|
| + }
|
| return
|
| CheckForName(name, isolate->factory()->length_string(),
|
| JSTypedArray::kLengthOffset, object_offset) ||
|
|
|