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

Side by Side Diff: src/vm/object_memory_mark_sweep.cc

Issue 1659163007: Rename fletch -> dartino (Closed) Base URL: https://github.com/dartino/sdk.git@master
Patch Set: address comments Created 4 years, 10 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/vm/object_memory_copying.cc ('k') | src/vm/object_memory_test.cc » ('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 (c) 2015, the Dartino project authors. Please see the AUTHORS file 1 // Copyright (c) 2015, the Dartino project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE.md file. 3 // BSD-style license that can be found in the LICENSE.md file.
4 // Mark-sweep old-space. 4 // Mark-sweep old-space.
5 // * Uses worst-fit free-list allocation to get big chunks for fast bump 5 // * Uses worst-fit free-list allocation to get big chunks for fast bump
6 // allocation. 6 // allocation.
7 // * Non-moving for now. 7 // * Non-moving for now.
8 // * Has on-heap chained data structure keeping track of 8 // * Has on-heap chained data structure keeping track of
9 // promoted-and-not-yet-scanned areas. This is called PromotedTrack. 9 // promoted-and-not-yet-scanned areas. This is called PromotedTrack.
10 // * No remembered set yet. When scavenging we have to scan all of old space. 10 // * No remembered set yet. When scavenging we have to scan all of old space.
11 // We skip PromotedTrack areas because we know we will get to them later and 11 // We skip PromotedTrack areas because we know we will get to them later and
12 // they contain uninitialized memory. 12 // they contain uninitialized memory.
13 13
14 #include "src/vm/mark_sweep.h" 14 #include "src/vm/mark_sweep.h"
15 #include "src/vm/object_memory.h" 15 #include "src/vm/object_memory.h"
16 #include "src/vm/object.h" 16 #include "src/vm/object.h"
17 17
18 namespace fletch { 18 namespace dartino {
19 19
20 // In oldspace, the sentinel marks the end of each chunk, and never moves or is 20 // In oldspace, the sentinel marks the end of each chunk, and never moves or is
21 // overwritten. 21 // overwritten.
22 static Smi* chunk_end_sentinel() { return Smi::zero(); } 22 static Smi* chunk_end_sentinel() { return Smi::zero(); }
23 23
24 static bool HasSentinelAt(uword address) { 24 static bool HasSentinelAt(uword address) {
25 return *reinterpret_cast<Object**>(address) == chunk_end_sentinel(); 25 return *reinterpret_cast<Object**>(address) == chunk_end_sentinel();
26 } 26 }
27 27
28 OldSpace::OldSpace(int maximum_initial_size) 28 OldSpace::OldSpace(int maximum_initial_size)
(...skipping 196 matching lines...) Expand 10 before | Expand all | Expand 10 after
225 } 225 }
226 226
227 void SemiSpace::StartScavenge() { 227 void SemiSpace::StartScavenge() {
228 Flush(); 228 Flush();
229 229
230 for (Chunk* chunk = first(); chunk != NULL; chunk = chunk->next()) { 230 for (Chunk* chunk = first(); chunk != NULL; chunk = chunk->next()) {
231 chunk->set_scavenge_pointer(chunk->base()); 231 chunk->set_scavenge_pointer(chunk->base());
232 } 232 }
233 } 233 }
234 234
235 } // namespace fletch 235 } // namespace dartino
OLDNEW
« no previous file with comments | « src/vm/object_memory_copying.cc ('k') | src/vm/object_memory_test.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698