| Index: test/cctest/test-heap.cc
|
| diff --git a/test/cctest/test-heap.cc b/test/cctest/test-heap.cc
|
| index 64075d26b4367bf17939c26c972b98bc2c868549..0576fc7ffefb98c5fb4449fe5fc2e0fcb95d2380 100644
|
| --- a/test/cctest/test-heap.cc
|
| +++ b/test/cctest/test-heap.cc
|
| @@ -1061,8 +1061,8 @@ TEST(TestCodeFlushing) {
|
| Handle<JSFunction> function(JSFunction::cast(func_value));
|
| CHECK(function->shared()->is_compiled());
|
|
|
| - // The code will survive at least two GCs.
|
| - HEAP->CollectAllGarbage(Heap::kAbortIncrementalMarkingMask);
|
| + // The code will survive at least one GC (it will be pre-aged so may not
|
| + // survive further).
|
| HEAP->CollectAllGarbage(Heap::kAbortIncrementalMarkingMask);
|
| CHECK(function->shared()->is_compiled());
|
|
|
| @@ -1110,7 +1110,17 @@ TEST(TestCodeFlushingIncremental) {
|
| Handle<JSFunction> function(JSFunction::cast(func_value));
|
| CHECK(function->shared()->is_compiled());
|
|
|
| - // The code will survive at least two GCs.
|
| + // The code will survive at least one GC (it will be pre-aged so may not
|
| + // survive further).
|
| + HEAP->CollectAllGarbage(Heap::kAbortIncrementalMarkingMask);
|
| + CHECK(function->shared()->is_compiled());
|
| +
|
| + // Execute the function again to ensure it is reset to the young age.
|
| + { v8::HandleScope scope(CcTest::isolate());
|
| + CompileRun("foo();");
|
| + }
|
| +
|
| + // The code will survive at least two GC now that it is young again.
|
| HEAP->CollectAllGarbage(Heap::kAbortIncrementalMarkingMask);
|
| HEAP->CollectAllGarbage(Heap::kAbortIncrementalMarkingMask);
|
| CHECK(function->shared()->is_compiled());
|
| @@ -1247,9 +1257,9 @@ TEST(TestCodeFlushingIncrementalAbort) {
|
| Handle<JSFunction> function(JSFunction::cast(func_value));
|
| CHECK(function->shared()->is_compiled());
|
|
|
| - // The code will survive at least two GCs.
|
| - heap->CollectAllGarbage(Heap::kAbortIncrementalMarkingMask);
|
| - heap->CollectAllGarbage(Heap::kAbortIncrementalMarkingMask);
|
| + // The code will survive at least one GC (it will be pre-aged so may not
|
| + // survive further).
|
| + HEAP->CollectAllGarbage(Heap::kAbortIncrementalMarkingMask);
|
| CHECK(function->shared()->is_compiled());
|
|
|
| // Bump the code age so that flushing is triggered.
|
|
|