| Index: src/hydrogen.cc
|
| diff --git a/src/hydrogen.cc b/src/hydrogen.cc
|
| index f59f988534f20c3b7a63fdb7cc0425b8d0c3e4b5..3705042adc7cff58c835e3894ed697c63766e9ad 100644
|
| --- a/src/hydrogen.cc
|
| +++ b/src/hydrogen.cc
|
| @@ -4707,10 +4707,14 @@ bool HOptimizedGraphBuilder::PropertyAccessInfo::IsCompatibleForLoad(
|
| if (!LookupDescriptor()) return false;
|
|
|
| if (!lookup_.IsFound()) {
|
| - return (!info->lookup_.IsFound() || !info->holder_.is_null()) &&
|
| + return (!info->lookup_.IsFound() || info->has_holder()) &&
|
| map_->prototype() == info->map_->prototype();
|
| }
|
|
|
| + // Mismatch if the other access info found the property in the prototype
|
| + // chain.
|
| + if (info->has_holder()) return false;
|
| +
|
| if (lookup_.IsPropertyCallbacks()) {
|
| return accessor_.is_identical_to(info->accessor_);
|
| }
|
|
|