966 static void fill_dense_prefix_end(SpaceId id); |
966 static void fill_dense_prefix_end(SpaceId id); |
967 |
967 |
968 // Clear the summary data source_region field for the specified addresses. |
968 // Clear the summary data source_region field for the specified addresses. |
969 static void clear_source_region(HeapWord* beg_addr, HeapWord* end_addr); |
969 static void clear_source_region(HeapWord* beg_addr, HeapWord* end_addr); |
970 |
970 |
|
971 #ifndef PRODUCT |
|
972 // Routines to provoke splitting a young gen space (ParallelOldGCSplitALot). |
|
973 |
|
974 // Fill the region [start, start + words) with live object(s). Only usable |
|
975 // for the old and permanent generations. |
|
976 static void fill_with_live_objects(SpaceId id, HeapWord* const start, |
|
977 size_t words); |
|
978 // Include the new objects in the summary data. |
|
979 static void summarize_new_objects(SpaceId id, HeapWord* start); |
|
980 |
|
981 // Add live objects and/or choose the dense prefix to provoke splitting. |
|
982 static void provoke_split(bool & maximum_compaction); |
|
983 #endif |
|
984 |
971 static void summarize_spaces_quick(); |
985 static void summarize_spaces_quick(); |
972 static void summarize_space(SpaceId id, bool maximum_compaction); |
986 static void summarize_space(SpaceId id, bool maximum_compaction); |
973 static void summary_phase(ParCompactionManager* cm, bool maximum_compaction); |
987 static void summary_phase(ParCompactionManager* cm, bool maximum_compaction); |
974 |
988 |
975 // Adjust addresses in roots. Does not adjust addresses in heap. |
989 // Adjust addresses in roots. Does not adjust addresses in heap. |