Description of the change list is misleading.

ic_age has nothing to do with _code_ flushing, it affects only _ic_ flushing.

It seems you don't need to enable code flushing (it would not be able to flush a lot (if anything) because everything is marked and no candidate collected) but
instead you should move

if (shared->ic_age() != heap->global_ic_age()) {
  shared->ResetForNewContext(heap->global_ic_age());
}

from

VisitSharedFunctionInfoAndFlushCodeGeneric

to the beginning of

VisitSharedFunctionInfoAndFlushCode

to clear those shared-function-infos that are marked after incremental marking
is complete.



https://chromiumcodereview.appspot.com/10258001/diff/2002/test/cctest/test-heap.cc
File test/cctest/test-heap.cc (right):

https://chromiumcodereview.appspot.com/10258001/diff/2002/test/cctest/test-heap.cc#newcode1660
test/cctest/test-heap.cc:1660: HEAP->CollectAllGarbage(Heap::kNoGCFlags,
It seems that if !IsStopped() and !should_hurry() we will postpone a
full gc at this point.

Maybe force should_hurry?

https://chromiumcodereview.appspot.com/10258001/

--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to