| Index: src/heap.cc
|
| diff --git a/src/heap.cc b/src/heap.cc
|
| index ecd959da6716ee680e1c8307dc7594dfce8c2d46..a87cce2289fa90ce73055ca901cc170232b2b6fe 100644
|
| --- a/src/heap.cc
|
| +++ b/src/heap.cc
|
| @@ -1150,8 +1150,6 @@ void Heap::MarkCompact(GCTracer* tracer) {
|
|
|
| isolate_->counters()->objs_since_last_full()->Set(0);
|
|
|
| - contexts_disposed_ = 0;
|
| -
|
| flush_monomorphic_ics_ = false;
|
| }
|
|
|
| @@ -5761,6 +5759,7 @@ bool Heap::IdleNotification(int hint) {
|
| size_factor * IncrementalMarking::kAllocatedThreshold;
|
|
|
| if (contexts_disposed_ > 0) {
|
| + contexts_disposed_ = 0;
|
| if (hint >= kMaxHint) {
|
| // The embedder is requesting a lot of GC work after context disposal,
|
| // we age inline caches so that they don't keep objects from
|
| @@ -5775,8 +5774,8 @@ bool Heap::IdleNotification(int hint) {
|
| "idle notification: contexts disposed");
|
| } else {
|
| AdvanceIdleIncrementalMarking(step_size);
|
| - contexts_disposed_ = 0;
|
| }
|
| +
|
| // After context disposal there is likely a lot of garbage remaining, reset
|
| // the idle notification counters in order to trigger more incremental GCs
|
| // on subsequent idle notifications.
|
|
|