| 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/v8.h" | 5 #include "src/v8.h" |
| 6 | 6 |
| 7 #include "src/base/atomicops.h" | 7 #include "src/base/atomicops.h" |
| 8 #include "src/base/bits.h" | 8 #include "src/base/bits.h" |
| 9 #include "src/code-stubs.h" | 9 #include "src/code-stubs.h" |
| 10 #include "src/compilation-cache.h" | 10 #include "src/compilation-cache.h" |
| (...skipping 4204 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4215 GCTracer::Scope sweep_scope(heap()->tracer(), | 4215 GCTracer::Scope sweep_scope(heap()->tracer(), |
| 4216 GCTracer::Scope::MC_SWEEP_MAP); | 4216 GCTracer::Scope::MC_SWEEP_MAP); |
| 4217 SweepSpace(heap()->map_space(), SEQUENTIAL_SWEEPING); | 4217 SweepSpace(heap()->map_space(), SEQUENTIAL_SWEEPING); |
| 4218 } | 4218 } |
| 4219 | 4219 |
| 4220 // Deallocate unmarked objects and clear marked bits for marked objects. | 4220 // Deallocate unmarked objects and clear marked bits for marked objects. |
| 4221 heap_->lo_space()->FreeUnmarkedObjects(); | 4221 heap_->lo_space()->FreeUnmarkedObjects(); |
| 4222 | 4222 |
| 4223 // Deallocate evacuated candidate pages. | 4223 // Deallocate evacuated candidate pages. |
| 4224 ReleaseEvacuationCandidates(); | 4224 ReleaseEvacuationCandidates(); |
| 4225 CodeRange* code_range = heap()->isolate()->code_range(); |
| 4226 if (code_range != NULL && code_range->valid()) { |
| 4227 code_range->ReserveEmergencyBlock(); |
| 4228 } |
| 4225 | 4229 |
| 4226 if (FLAG_print_cumulative_gc_stat) { | 4230 if (FLAG_print_cumulative_gc_stat) { |
| 4227 heap_->tracer()->AddSweepingTime(base::OS::TimeCurrentMillis() - | 4231 heap_->tracer()->AddSweepingTime(base::OS::TimeCurrentMillis() - |
| 4228 start_time); | 4232 start_time); |
| 4229 } | 4233 } |
| 4230 } | 4234 } |
| 4231 | 4235 |
| 4232 | 4236 |
| 4233 void MarkCompactCollector::ParallelSweepSpaceComplete(PagedSpace* space) { | 4237 void MarkCompactCollector::ParallelSweepSpaceComplete(PagedSpace* space) { |
| 4234 PageIterator it(space); | 4238 PageIterator it(space); |
| (...skipping 214 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4449 SlotsBuffer* buffer = *buffer_address; | 4453 SlotsBuffer* buffer = *buffer_address; |
| 4450 while (buffer != NULL) { | 4454 while (buffer != NULL) { |
| 4451 SlotsBuffer* next_buffer = buffer->next(); | 4455 SlotsBuffer* next_buffer = buffer->next(); |
| 4452 DeallocateBuffer(buffer); | 4456 DeallocateBuffer(buffer); |
| 4453 buffer = next_buffer; | 4457 buffer = next_buffer; |
| 4454 } | 4458 } |
| 4455 *buffer_address = NULL; | 4459 *buffer_address = NULL; |
| 4456 } | 4460 } |
| 4457 } | 4461 } |
| 4458 } // namespace v8::internal | 4462 } // namespace v8::internal |
| OLD | NEW |