OLD | NEW |
1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "src/objects.h" | 5 #include "src/objects.h" |
6 | 6 |
7 #include <cmath> | 7 #include <cmath> |
8 #include <iomanip> | 8 #include <iomanip> |
9 #include <sstream> | 9 #include <sstream> |
10 | 10 |
(...skipping 1309 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1320 property_dictionary->SetEntry(entry, name, value, details); | 1320 property_dictionary->SetEntry(entry, name, value, details); |
1321 } | 1321 } |
1322 } | 1322 } |
1323 } | 1323 } |
1324 | 1324 |
1325 | 1325 |
1326 Maybe<bool> Object::HasInPrototypeChain(Isolate* isolate, Handle<Object> object, | 1326 Maybe<bool> Object::HasInPrototypeChain(Isolate* isolate, Handle<Object> object, |
1327 Handle<Object> proto) { | 1327 Handle<Object> proto) { |
1328 PrototypeIterator iter(isolate, object, PrototypeIterator::START_AT_RECEIVER); | 1328 PrototypeIterator iter(isolate, object, PrototypeIterator::START_AT_RECEIVER); |
1329 while (true) { | 1329 while (true) { |
| 1330 if (!iter.HasAccess()) return Just<bool>(false); |
1330 if (!iter.AdvanceFollowingProxies()) return Nothing<bool>(); | 1331 if (!iter.AdvanceFollowingProxies()) return Nothing<bool>(); |
1331 if (iter.IsAtEnd()) return Just(false); | 1332 if (iter.IsAtEnd()) return Just(false); |
1332 if (iter.IsAtEnd(proto)) return Just(true); | 1333 if (iter.IsAtEnd(proto)) return Just(true); |
1333 } | 1334 } |
1334 } | 1335 } |
1335 | 1336 |
1336 | 1337 |
1337 Map* Object::GetRootMap(Isolate* isolate) { | 1338 Map* Object::GetRootMap(Isolate* isolate) { |
1338 DisallowHeapAllocation no_alloc; | 1339 DisallowHeapAllocation no_alloc; |
1339 if (IsSmi()) { | 1340 if (IsSmi()) { |
(...skipping 17972 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
19312 if (cell->value() != *new_value) { | 19313 if (cell->value() != *new_value) { |
19313 cell->set_value(*new_value); | 19314 cell->set_value(*new_value); |
19314 Isolate* isolate = cell->GetIsolate(); | 19315 Isolate* isolate = cell->GetIsolate(); |
19315 cell->dependent_code()->DeoptimizeDependentCodeGroup( | 19316 cell->dependent_code()->DeoptimizeDependentCodeGroup( |
19316 isolate, DependentCode::kPropertyCellChangedGroup); | 19317 isolate, DependentCode::kPropertyCellChangedGroup); |
19317 } | 19318 } |
19318 } | 19319 } |
19319 | 19320 |
19320 } // namespace internal | 19321 } // namespace internal |
19321 } // namespace v8 | 19322 } // namespace v8 |
OLD | NEW |