Reviewers: Michael Starzinger, Description: Minimal backport of the most important parts of r12271 to fix 140473.
Please review this at https://chromiumcodereview.appspot.com/10834231/ SVN Base: http://v8.googlecode.com/svn/branches/3.11/ Affected files: M src/hydrogen-instructions.cc M src/version.cc Index: src/hydrogen-instructions.cc =================================================================== --- src/hydrogen-instructions.cc (revision 12279) +++ src/hydrogen-instructions.cc (working copy) @@ -1631,6 +1631,7 @@ if (current->IsJSGlobalProxy() || current->IsGlobalObject() || !current->IsJSObject() || + JSObject::cast(current)->map()->has_named_interceptor() || JSObject::cast(current)->IsAccessCheckNeeded() || !JSObject::cast(current)->HasFastProperties()) { return false; @@ -1685,7 +1686,8 @@ types_.Add(types->at(i), zone); break; case MAP_TRANSITION: - if (PrototypeChainCanNeverResolve(map, name)) { + if (!map->has_named_interceptor() && + PrototypeChainCanNeverResolve(map, name)) { negative_lookups.Add(types->at(i), zone); } break; @@ -1693,7 +1695,8 @@ break; } } else if (lookup.IsCacheable()) { - if (PrototypeChainCanNeverResolve(map, name)) { + if (!map->has_named_interceptor() && + PrototypeChainCanNeverResolve(map, name)) { negative_lookups.Add(types->at(i), zone); } } Index: src/version.cc =================================================================== --- src/version.cc (revision 12279) +++ src/version.cc (working copy) @@ -35,7 +35,7 @@ #define MAJOR_VERSION 3 #define MINOR_VERSION 11 #define BUILD_NUMBER 10 -#define PATCH_LEVEL 17 +#define PATCH_LEVEL 18 // Use 1 for candidates and 0 otherwise. // (Boolean macro values are not supported by all preprocessors.) #define IS_CANDIDATE_VERSION 0 -- v8-dev mailing list [email protected] http://groups.google.com/group/v8-dev
