File tree 3 files changed +12
-1
lines changed
3 files changed +12
-1
lines changed Original file line number Diff line number Diff line change 11
11
#define V8_MAJOR_VERSION 6
12
12
#define V8_MINOR_VERSION 1
13
13
#define V8_BUILD_NUMBER 534
14
- #define V8_PATCH_LEVEL 42
14
+ #define V8_PATCH_LEVEL 43
15
15
16
16
// Use 1 for candidates and 0 otherwise.
17
17
// (Boolean macro values are not supported by all preprocessors.)
Original file line number Diff line number Diff line change @@ -1716,6 +1716,12 @@ void Heap::Scavenge() {
1716
1716
IncrementalMarking::PauseBlackAllocationScope pause_black_allocation (
1717
1717
incremental_marking ());
1718
1718
1719
+ if (mark_compact_collector ()->sweeper ().sweeping_in_progress () &&
1720
+ memory_allocator_->unmapper ()->NumberOfDelayedChunks () >
1721
+ kMaxSemiSpaceSizeInKB / Page::kPageSize ) {
1722
+ mark_compact_collector ()->EnsureSweepingCompleted ();
1723
+ }
1724
+
1719
1725
mark_compact_collector ()->sweeper ().EnsureNewSpaceCompleted ();
1720
1726
1721
1727
SetGCState (SCAVENGE);
Original file line number Diff line number Diff line change @@ -1226,6 +1226,11 @@ class V8_EXPORT_PRIVATE MemoryAllocator {
1226
1226
1227
1227
bool has_delayed_chunks () { return delayed_regular_chunks_.size () > 0 ; }
1228
1228
1229
+ int NumberOfDelayedChunks () {
1230
+ base::LockGuard<base::Mutex> guard (&mutex_);
1231
+ return static_cast <int >(delayed_regular_chunks_.size ());
1232
+ }
1233
+
1229
1234
private:
1230
1235
static const int kReservedQueueingSlots = 64 ;
1231
1236
static const int kMaxUnmapperTasks = 24 ;
You can’t perform that action at this time.
0 commit comments