| OLD | NEW |
| 1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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/heap/heap.h" | 5 #include "src/heap/heap.h" |
| 6 | 6 |
| 7 #include "src/accessors.h" | 7 #include "src/accessors.h" |
| 8 #include "src/api.h" | 8 #include "src/api.h" |
| 9 #include "src/assembler-inl.h" | 9 #include "src/assembler-inl.h" |
| 10 #include "src/ast/context-slot-cache.h" | 10 #include "src/ast/context-slot-cache.h" |
| (...skipping 4259 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4270 | 4270 |
| 4271 // Large object space doesn't use reservations, so it needs custom handling. | 4271 // Large object space doesn't use reservations, so it needs custom handling. |
| 4272 for (HeapObject* object : *large_objects) { | 4272 for (HeapObject* object : *large_objects) { |
| 4273 incremental_marking()->IterateBlackObject(object); | 4273 incremental_marking()->IterateBlackObject(object); |
| 4274 } | 4274 } |
| 4275 } | 4275 } |
| 4276 | 4276 |
| 4277 void Heap::NotifyObjectLayoutChange(HeapObject* object, | 4277 void Heap::NotifyObjectLayoutChange(HeapObject* object, |
| 4278 const DisallowHeapAllocation&) { | 4278 const DisallowHeapAllocation&) { |
| 4279 if (FLAG_incremental_marking && incremental_marking()->IsMarking()) { | 4279 if (FLAG_incremental_marking && incremental_marking()->IsMarking()) { |
| 4280 incremental_marking()->WhiteToGreyAndPush(object); | 4280 incremental_marking()->MarkBlackAndPush(object); |
| 4281 } | 4281 } |
| 4282 #ifdef VERIFY_HEAP | 4282 #ifdef VERIFY_HEAP |
| 4283 DCHECK(pending_layout_change_object_ == nullptr); | 4283 DCHECK(pending_layout_change_object_ == nullptr); |
| 4284 pending_layout_change_object_ = object; | 4284 pending_layout_change_object_ = object; |
| 4285 #endif | 4285 #endif |
| 4286 } | 4286 } |
| 4287 | 4287 |
| 4288 #ifdef VERIFY_HEAP | 4288 #ifdef VERIFY_HEAP |
| 4289 void Heap::VerifyObjectLayoutChange(HeapObject* object, Map* new_map) { | 4289 void Heap::VerifyObjectLayoutChange(HeapObject* object, Map* new_map) { |
| 4290 if (pending_layout_change_object_ == nullptr) { | 4290 if (pending_layout_change_object_ == nullptr) { |
| (...skipping 2237 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6528 case LO_SPACE: | 6528 case LO_SPACE: |
| 6529 return "LO_SPACE"; | 6529 return "LO_SPACE"; |
| 6530 default: | 6530 default: |
| 6531 UNREACHABLE(); | 6531 UNREACHABLE(); |
| 6532 } | 6532 } |
| 6533 return NULL; | 6533 return NULL; |
| 6534 } | 6534 } |
| 6535 | 6535 |
| 6536 } // namespace internal | 6536 } // namespace internal |
| 6537 } // namespace v8 | 6537 } // namespace v8 |
| OLD | NEW |