| Index: src/mips/stub-cache-mips.cc
|
| diff --git a/src/mips/stub-cache-mips.cc b/src/mips/stub-cache-mips.cc
|
| index 6eaa90fb607118e5d2f8ae44564d6bf3b21a7ab9..40222a50f80f05f6de9a05295d500887eab3f19b 100644
|
| --- a/src/mips/stub-cache-mips.cc
|
| +++ b/src/mips/stub-cache-mips.cc
|
| @@ -739,8 +739,8 @@ Register PropertyHandlerCompiler::CheckPrototypes(
|
|
|
| prototype = handle(JSObject::cast(current_map->prototype()));
|
| if (current_map->is_dictionary_map() &&
|
| - !current_map->IsJSGlobalObjectMap() &&
|
| - !current_map->IsJSGlobalProxyMap()) {
|
| + !current_map->IsJSGlobalObjectMap()) {
|
| + DCHECK(!current_map->IsJSGlobalProxyMap()); // Proxy maps are fast.
|
| if (!name->IsUniqueName()) {
|
| DCHECK(name->IsString());
|
| name = factory()->InternalizeString(Handle<String>::cast(name));
|
| @@ -767,6 +767,9 @@ Register PropertyHandlerCompiler::CheckPrototypes(
|
| // Check access rights to the global object. This has to happen after
|
| // the map check so that we know that the object is actually a global
|
| // object.
|
| + // This allows us to install generated handlers for accesses to the
|
| + // global proxy (as opposed to using slow ICs). See corresponding code
|
| + // in LookupForRead().
|
| if (current_map->IsJSGlobalProxyMap()) {
|
| __ CheckAccessGlobalProxy(reg, scratch2, miss);
|
| } else if (current_map->IsJSGlobalObjectMap()) {
|
|
|