Mercurial > hg > truffle
comparison src/share/vm/gc_implementation/parNew/parNewGeneration.cpp @ 14308:870aedf4ba4f
8032379: Remove the is_scavenging flag to process_strong_roots
Summary: Refactor the strong root processing to avoid using a boolean in addition to the ScanOption enum.
Reviewed-by: stefank, tschatzl, ehelin, jmasa
author | mgerdin |
---|---|
date | Tue, 14 Jan 2014 16:40:33 +0100 |
parents | 86e6d691f2e1 |
children | 63a4eb8bcd23 |
comparison
equal
deleted
inserted
replaced
14307:7ab52431bc9f | 14308:870aedf4ba4f |
---|---|
610 par_scan_state.set_young_old_boundary(_young_old_boundary); | 610 par_scan_state.set_young_old_boundary(_young_old_boundary); |
611 | 611 |
612 KlassScanClosure klass_scan_closure(&par_scan_state.to_space_root_closure(), | 612 KlassScanClosure klass_scan_closure(&par_scan_state.to_space_root_closure(), |
613 gch->rem_set()->klass_rem_set()); | 613 gch->rem_set()->klass_rem_set()); |
614 | 614 |
615 int so = SharedHeap::SO_AllClasses | SharedHeap::SO_Strings | SharedHeap::SO_CodeCache; | 615 int so = SharedHeap::SO_AllClasses | SharedHeap::SO_Strings | SharedHeap::SO_ScavengeCodeCache; |
616 | 616 |
617 par_scan_state.start_strong_roots(); | 617 par_scan_state.start_strong_roots(); |
618 gch->gen_process_strong_roots(_gen->level(), | 618 gch->gen_process_strong_roots(_gen->level(), |
619 true, // Process younger gens, if any, | 619 true, // Process younger gens, if any, |
620 // as strong roots. | 620 // as strong roots. |
621 false, // no scope; this is parallel code | 621 false, // no scope; this is parallel code |
622 true, // is scavenging | |
623 SharedHeap::ScanningOption(so), | 622 SharedHeap::ScanningOption(so), |
624 &par_scan_state.to_space_root_closure(), | 623 &par_scan_state.to_space_root_closure(), |
625 true, // walk *all* scavengable nmethods | 624 true, // walk *all* scavengable nmethods |
626 &par_scan_state.older_gen_closure(), | 625 &par_scan_state.older_gen_closure(), |
627 &klass_scan_closure); | 626 &klass_scan_closure); |