Mercurial > hg > graal-jvmci-8
comparison src/share/vm/gc_implementation/g1/g1RemSet.cpp @ 23224:79b13c9a93e8
8075210: Refactor strong root processing in order to allow G1 to evolve separately from GenCollectedHeap
Summary: Create a G1RootProcessor and move SharedHeap root processing to GenCollectedHeap
Reviewed-by: brutisso, tschatzl, ehelin
author | mgerdin |
---|---|
date | Mon, 01 Dec 2014 15:24:56 +0100 |
parents | 8f8f1d578796 |
children | ea47136e6ea4 |
comparison
equal
deleted
inserted
replaced
23223:8f8f1d578796 | 23224:79b13c9a93e8 |
---|---|
76 _cg1r(g1->concurrent_g1_refine()), | 76 _cg1r(g1->concurrent_g1_refine()), |
77 _cset_rs_update_cl(NULL), | 77 _cset_rs_update_cl(NULL), |
78 _cards_scanned(NULL), _total_cards_scanned(0), | 78 _cards_scanned(NULL), _total_cards_scanned(0), |
79 _prev_period_summary() | 79 _prev_period_summary() |
80 { | 80 { |
81 _seq_task = new SubTasksDone(NumSeqTasks); | |
82 guarantee(n_workers() > 0, "There should be some workers"); | 81 guarantee(n_workers() > 0, "There should be some workers"); |
83 _cset_rs_update_cl = NEW_C_HEAP_ARRAY(G1ParPushHeapRSClosure*, n_workers(), mtGC); | 82 _cset_rs_update_cl = NEW_C_HEAP_ARRAY(G1ParPushHeapRSClosure*, n_workers(), mtGC); |
84 for (uint i = 0; i < n_workers(); i++) { | 83 for (uint i = 0; i < n_workers(); i++) { |
85 _cset_rs_update_cl[i] = NULL; | 84 _cset_rs_update_cl[i] = NULL; |
86 } | 85 } |
88 _prev_period_summary.initialize(this); | 87 _prev_period_summary.initialize(this); |
89 } | 88 } |
90 } | 89 } |
91 | 90 |
92 G1RemSet::~G1RemSet() { | 91 G1RemSet::~G1RemSet() { |
93 delete _seq_task; | |
94 for (uint i = 0; i < n_workers(); i++) { | 92 for (uint i = 0; i < n_workers(); i++) { |
95 assert(_cset_rs_update_cl[i] == NULL, "it should be"); | 93 assert(_cset_rs_update_cl[i] == NULL, "it should be"); |
96 } | 94 } |
97 FREE_C_HEAP_ARRAY(G1ParPushHeapRSClosure*, _cset_rs_update_cl, mtGC); | 95 FREE_C_HEAP_ARRAY(G1ParPushHeapRSClosure*, _cset_rs_update_cl, mtGC); |
98 } | 96 } |