Disable compaction.

Introduce flag to control code compaction.

R=danno@chromium.org

Review URL: http://codereview.chromium.org/8037022

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9420 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
This commit is contained in:
vegorov@chromium.org 2011-09-26 08:53:27 +00:00
parent b9d39c48b8
commit 1046b1a464
2 changed files with 6 additions and 2 deletions

View File

@ -287,8 +287,9 @@ DEFINE_bool(lazy_sweeping, true,
"Use lazy sweeping for old pointer and data spaces") "Use lazy sweeping for old pointer and data spaces")
DEFINE_bool(cleanup_caches_in_maps_at_gc, true, DEFINE_bool(cleanup_caches_in_maps_at_gc, true,
"Flush code caches in maps during mark compact cycle.") "Flush code caches in maps during mark compact cycle.")
DEFINE_bool(never_compact, false, DEFINE_bool(never_compact, true,
"Never perform compaction on full GC - testing only") "Never perform compaction on full GC - testing only")
DEFINE_bool(compact_code_space, true, "Compact code space")
DEFINE_bool(cleanup_code_caches_at_gc, true, DEFINE_bool(cleanup_code_caches_at_gc, true,
"Flush inline caches prior to mark compact collection and " "Flush inline caches prior to mark compact collection and "
"flush code caches in maps during mark compact cycle.") "flush code caches in maps during mark compact cycle.")

View File

@ -244,7 +244,10 @@ bool MarkCompactCollector::StartCompaction() {
CollectEvacuationCandidates(heap()->old_pointer_space()); CollectEvacuationCandidates(heap()->old_pointer_space());
CollectEvacuationCandidates(heap()->old_data_space()); CollectEvacuationCandidates(heap()->old_data_space());
CollectEvacuationCandidates(heap()->code_space());
if (FLAG_compact_code_space) {
CollectEvacuationCandidates(heap()->code_space());
}
heap()->old_pointer_space()->EvictEvacuationCandidatesFromFreeLists(); heap()->old_pointer_space()->EvictEvacuationCandidatesFromFreeLists();
heap()->old_data_space()->EvictEvacuationCandidatesFromFreeLists(); heap()->old_data_space()->EvictEvacuationCandidatesFromFreeLists();