| Index: src/objects.h
|
| diff --git a/src/objects.h b/src/objects.h
|
| index ab6cc05cbab8ac74e279e77ab148cfe7325a5ab7..cd45a8a7bbb7f61ce2e897764e713fa2fcb54c34 100644
|
| --- a/src/objects.h
|
| +++ b/src/objects.h
|
| @@ -419,6 +419,7 @@ const int kStubMinorKeyBits = kSmiValueSize - kStubMajorKeyBits - 1;
|
| V(JS_MODULE_TYPE) \
|
| V(JS_GLOBAL_OBJECT_TYPE) \
|
| V(JS_GLOBAL_PROXY_TYPE) \
|
| + V(JS_SPECIAL_API_OBJECT_TYPE) \
|
| V(JS_ARRAY_TYPE) \
|
| V(JS_ARRAY_BUFFER_TYPE) \
|
| V(JS_TYPED_ARRAY_TYPE) \
|
| @@ -438,7 +439,6 @@ const int kStubMinorKeyBits = kSmiValueSize - kStubMajorKeyBits - 1;
|
| V(DEBUG_INFO_TYPE) \
|
| V(BREAK_POINT_INFO_TYPE)
|
|
|
| -
|
| // Since string types are not consecutive, this macro is used to
|
| // iterate over them.
|
| #define STRING_TYPE_LIST(V) \
|
| @@ -591,7 +591,6 @@ static inline bool IsShortcutCandidate(int type) {
|
| return ((type & kShortcutTypeMask) == kShortcutTypeTag);
|
| }
|
|
|
| -
|
| enum InstanceType {
|
| // String types.
|
| INTERNALIZED_STRING_TYPE = kTwoByteStringTag | kSeqStringTag |
|
| @@ -703,16 +702,18 @@ enum InstanceType {
|
| // objects in the JS sense. The first and the last type in this range are
|
| // the two forms of function. This organization enables using the same
|
| // compares for checking the JS_RECEIVER and the NONCALLABLE_JS_OBJECT range.
|
| - JS_PROXY_TYPE, // FIRST_JS_RECEIVER_TYPE
|
| - JS_VALUE_TYPE, // FIRST_JS_OBJECT_TYPE
|
| + JS_PROXY_TYPE, // FIRST_JS_RECEIVER_TYPE
|
| + JS_GLOBAL_OBJECT_TYPE, // FIRST_JS_OBJECT_TYPE
|
| + JS_GLOBAL_PROXY_TYPE,
|
| + // Like JS_OBJECT_TYPE, but requires access checks and/or has interceptors.
|
| + JS_SPECIAL_API_OBJECT_TYPE, // LAST_SPECIAL_RECEIVER_TYPE
|
| + JS_VALUE_TYPE,
|
| JS_MESSAGE_OBJECT_TYPE,
|
| JS_DATE_TYPE,
|
| JS_OBJECT_TYPE,
|
| JS_CONTEXT_EXTENSION_OBJECT_TYPE,
|
| JS_GENERATOR_OBJECT_TYPE,
|
| JS_MODULE_TYPE,
|
| - JS_GLOBAL_OBJECT_TYPE,
|
| - JS_GLOBAL_PROXY_TYPE,
|
| JS_ARRAY_TYPE,
|
| JS_ARRAY_BUFFER_TYPE,
|
| JS_TYPED_ARRAY_TYPE,
|
| @@ -753,8 +754,10 @@ enum InstanceType {
|
| FIRST_JS_RECEIVER_TYPE = JS_PROXY_TYPE,
|
| LAST_JS_RECEIVER_TYPE = LAST_TYPE,
|
| // Boundaries for testing the types represented as JSObject
|
| - FIRST_JS_OBJECT_TYPE = JS_VALUE_TYPE,
|
| + FIRST_JS_OBJECT_TYPE = JS_GLOBAL_OBJECT_TYPE,
|
| LAST_JS_OBJECT_TYPE = LAST_TYPE,
|
| + // Boundary for testing JSReceivers that need special property lookup handling
|
| + LAST_SPECIAL_RECEIVER_TYPE = JS_SPECIAL_API_OBJECT_TYPE,
|
| };
|
|
|
| STATIC_ASSERT(JS_OBJECT_TYPE == Internals::kJSObjectType);
|
|
|