29 #include "memory/generation.hpp" |
29 #include "memory/generation.hpp" |
30 #include "memory/space.hpp" |
30 #include "memory/space.hpp" |
31 #include "oops/oop.inline.hpp" |
31 #include "oops/oop.inline.hpp" |
32 #include "runtime/java.hpp" |
32 #include "runtime/java.hpp" |
33 #include "runtime/os.hpp" |
33 #include "runtime/os.hpp" |
34 #ifndef SERIALGC |
34 #include "utilities/macros.hpp" |
|
35 #if INCLUDE_ALL_GCS |
35 #include "gc_implementation/g1/concurrentMark.hpp" |
36 #include "gc_implementation/g1/concurrentMark.hpp" |
36 #include "gc_implementation/g1/g1SATBCardTableModRefBS.hpp" |
37 #include "gc_implementation/g1/g1SATBCardTableModRefBS.hpp" |
37 #endif |
38 #endif // INCLUDE_ALL_GCS |
38 |
39 |
39 CardTableRS::CardTableRS(MemRegion whole_heap, |
40 CardTableRS::CardTableRS(MemRegion whole_heap, |
40 int max_covered_regions) : |
41 int max_covered_regions) : |
41 GenRemSet(), |
42 GenRemSet(), |
42 _cur_youngergen_card_val(youngergenP1_card), |
43 _cur_youngergen_card_val(youngergenP1_card), |
43 _regions_to_iterate(max_covered_regions - 1) |
44 _regions_to_iterate(max_covered_regions - 1) |
44 { |
45 { |
45 #ifndef SERIALGC |
46 #if INCLUDE_ALL_GCS |
46 if (UseG1GC) { |
47 if (UseG1GC) { |
47 _ct_bs = new G1SATBCardTableLoggingModRefBS(whole_heap, |
48 _ct_bs = new G1SATBCardTableLoggingModRefBS(whole_heap, |
48 max_covered_regions); |
49 max_covered_regions); |
49 } else { |
50 } else { |
50 _ct_bs = new CardTableModRefBSForCTRS(whole_heap, max_covered_regions); |
51 _ct_bs = new CardTableModRefBSForCTRS(whole_heap, max_covered_regions); |