OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 523 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
534 } | 534 } |
535 return freed_bytes; | 535 return freed_bytes; |
536 } | 536 } |
537 | 537 |
538 | 538 |
539 bool MarkCompactCollector::AreSweeperThreadsActivated() { | 539 bool MarkCompactCollector::AreSweeperThreadsActivated() { |
540 return heap()->isolate()->sweeper_threads() != NULL; | 540 return heap()->isolate()->sweeper_threads() != NULL; |
541 } | 541 } |
542 | 542 |
543 | 543 |
| 544 bool MarkCompactCollector::IsConcurrentSweepingInProgress() { |
| 545 return SweeperThread::sweeping_pending(); |
| 546 } |
| 547 |
| 548 |
544 void MarkCompactCollector::MarkInParallel() { | 549 void MarkCompactCollector::MarkInParallel() { |
545 for (int i = 0; i < FLAG_marking_threads; i++) { | 550 for (int i = 0; i < FLAG_marking_threads; i++) { |
546 heap()->isolate()->marking_threads()[i]->StartMarking(); | 551 heap()->isolate()->marking_threads()[i]->StartMarking(); |
547 } | 552 } |
548 } | 553 } |
549 | 554 |
550 | 555 |
551 void MarkCompactCollector::WaitUntilMarkingCompleted() { | 556 void MarkCompactCollector::WaitUntilMarkingCompleted() { |
552 for (int i = 0; i < FLAG_marking_threads; i++) { | 557 for (int i = 0; i < FLAG_marking_threads; i++) { |
553 heap()->isolate()->marking_threads()[i]->WaitForMarkingThread(); | 558 heap()->isolate()->marking_threads()[i]->WaitForMarkingThread(); |
(...skipping 3492 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4046 while (buffer != NULL) { | 4051 while (buffer != NULL) { |
4047 SlotsBuffer* next_buffer = buffer->next(); | 4052 SlotsBuffer* next_buffer = buffer->next(); |
4048 DeallocateBuffer(buffer); | 4053 DeallocateBuffer(buffer); |
4049 buffer = next_buffer; | 4054 buffer = next_buffer; |
4050 } | 4055 } |
4051 *buffer_address = NULL; | 4056 *buffer_address = NULL; |
4052 } | 4057 } |
4053 | 4058 |
4054 | 4059 |
4055 } } // namespace v8::internal | 4060 } } // namespace v8::internal |
OLD | NEW |