Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(260)

Side by Side Diff: src/heap/spaces.cc

Issue 2758563002: [gn] Enable stricter build flags (Closed)
Patch Set: Address comment Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/heap/spaces.h ('k') | src/heap/spaces-inl.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2011 the V8 project authors. All rights reserved. 1 // Copyright 2011 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/spaces.h" 5 #include "src/heap/spaces.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "src/base/bits.h" 9 #include "src/base/bits.h"
10 #include "src/base/platform/platform.h" 10 #include "src/base/platform/platform.h"
(...skipping 490 matching lines...) Expand 10 before | Expand all | Expand 10 after
501 } 501 }
502 502
503 controller->TakeControl(&reservation); 503 controller->TakeControl(&reservation);
504 return base; 504 return base;
505 } 505 }
506 506
507 void Page::InitializeAsAnchor(Space* space) { 507 void Page::InitializeAsAnchor(Space* space) {
508 set_owner(space); 508 set_owner(space);
509 set_next_chunk(this); 509 set_next_chunk(this);
510 set_prev_chunk(this); 510 set_prev_chunk(this);
511 SetFlags(0, ~0); 511 SetFlags(0, static_cast<uintptr_t>(~0));
512 SetFlag(ANCHOR); 512 SetFlag(ANCHOR);
513 } 513 }
514 514
515 MemoryChunk* MemoryChunk::Initialize(Heap* heap, Address base, size_t size, 515 MemoryChunk* MemoryChunk::Initialize(Heap* heap, Address base, size_t size,
516 Address area_start, Address area_end, 516 Address area_start, Address area_end,
517 Executability executable, Space* owner, 517 Executability executable, Space* owner,
518 base::VirtualMemory* reservation) { 518 base::VirtualMemory* reservation) {
519 MemoryChunk* chunk = FromAddress(base); 519 MemoryChunk* chunk = FromAddress(base);
520 520
521 DCHECK(base == chunk->address()); 521 DCHECK(base == chunk->address());
(...skipping 1108 matching lines...) Expand 10 before | Expand all | Expand 10 after
1630 while (actual_pages < expected_pages) { 1630 while (actual_pages < expected_pages) {
1631 actual_pages++; 1631 actual_pages++;
1632 current_page = 1632 current_page =
1633 heap()->memory_allocator()->AllocatePage<MemoryAllocator::kPooled>( 1633 heap()->memory_allocator()->AllocatePage<MemoryAllocator::kPooled>(
1634 Page::kAllocatableMemory, this, executable()); 1634 Page::kAllocatableMemory, this, executable());
1635 if (current_page == nullptr) return false; 1635 if (current_page == nullptr) return false;
1636 DCHECK_NOT_NULL(current_page); 1636 DCHECK_NOT_NULL(current_page);
1637 current_page->InsertAfter(anchor()); 1637 current_page->InsertAfter(anchor());
1638 current_page->ClearLiveness(); 1638 current_page->ClearLiveness();
1639 current_page->SetFlags(anchor()->prev_page()->GetFlags(), 1639 current_page->SetFlags(anchor()->prev_page()->GetFlags(),
1640 Page::kCopyAllFlags); 1640 static_cast<uintptr_t>(Page::kCopyAllFlags));
1641 heap()->CreateFillerObjectAt(current_page->area_start(), 1641 heap()->CreateFillerObjectAt(current_page->area_start(),
1642 static_cast<int>(current_page->area_size()), 1642 static_cast<int>(current_page->area_size()),
1643 ClearRecordedSlots::kNo); 1643 ClearRecordedSlots::kNo);
1644 } 1644 }
1645 } 1645 }
1646 return true; 1646 return true;
1647 } 1647 }
1648 1648
1649 AllocationInfo LocalAllocationBuffer::Close() { 1649 AllocationInfo LocalAllocationBuffer::Close() {
1650 if (IsValid()) { 1650 if (IsValid()) {
(...skipping 436 matching lines...) Expand 10 before | Expand all | Expand 10 after
2087 } 2087 }
2088 2088
2089 void SemiSpace::RemovePage(Page* page) { 2089 void SemiSpace::RemovePage(Page* page) {
2090 if (current_page_ == page) { 2090 if (current_page_ == page) {
2091 current_page_ = page->prev_page(); 2091 current_page_ = page->prev_page();
2092 } 2092 }
2093 page->Unlink(); 2093 page->Unlink();
2094 } 2094 }
2095 2095
2096 void SemiSpace::PrependPage(Page* page) { 2096 void SemiSpace::PrependPage(Page* page) {
2097 page->SetFlags(current_page()->GetFlags(), Page::kCopyAllFlags); 2097 page->SetFlags(current_page()->GetFlags(),
2098 static_cast<uintptr_t>(Page::kCopyAllFlags));
2098 page->set_owner(this); 2099 page->set_owner(this);
2099 page->InsertAfter(anchor()); 2100 page->InsertAfter(anchor());
2100 pages_used_++; 2101 pages_used_++;
2101 } 2102 }
2102 2103
2103 void SemiSpace::Swap(SemiSpace* from, SemiSpace* to) { 2104 void SemiSpace::Swap(SemiSpace* from, SemiSpace* to) {
2104 // We won't be swapping semispaces without data in them. 2105 // We won't be swapping semispaces without data in them.
2105 DCHECK_NE(from->anchor_.next_page(), &from->anchor_); 2106 DCHECK_NE(from->anchor_.next_page(), &from->anchor_);
2106 DCHECK_NE(to->anchor_.next_page(), &to->anchor_); 2107 DCHECK_NE(to->anchor_.next_page(), &to->anchor_);
2107 2108
(...skipping 1173 matching lines...) Expand 10 before | Expand all | Expand 10 after
3281 object->ShortPrint(); 3282 object->ShortPrint();
3282 PrintF("\n"); 3283 PrintF("\n");
3283 } 3284 }
3284 printf(" --------------------------------------\n"); 3285 printf(" --------------------------------------\n");
3285 printf(" Marked: %x, LiveCount: %x\n", mark_size, LiveBytes()); 3286 printf(" Marked: %x, LiveCount: %x\n", mark_size, LiveBytes());
3286 } 3287 }
3287 3288
3288 #endif // DEBUG 3289 #endif // DEBUG
3289 } // namespace internal 3290 } // namespace internal
3290 } // namespace v8 3291 } // namespace v8
OLDNEW
« no previous file with comments | « src/heap/spaces.h ('k') | src/heap/spaces-inl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698