equal
deleted
inserted
replaced
121 heap->set_has_forwarded_objects(has_forwarded_objects); |
121 heap->set_has_forwarded_objects(has_forwarded_objects); |
122 } |
122 } |
123 |
123 |
124 heap->make_parsable(true); |
124 heap->make_parsable(true); |
125 |
125 |
126 CodeCache::gc_prologue(); |
|
127 |
|
128 OrderAccess::fence(); |
126 OrderAccess::fence(); |
129 |
127 |
130 phase1_mark_heap(); |
128 phase1_mark_heap(); |
131 |
129 |
132 // Once marking is done, which may have fixed up forwarded objects, we can drop it. |
130 // Once marking is done, which may have fixed up forwarded objects, we can drop it. |
166 for (uint i = 0; i < heap->max_workers(); i++) { |
164 for (uint i = 0; i < heap->max_workers(); i++) { |
167 delete worker_slices[i]; |
165 delete worker_slices[i]; |
168 } |
166 } |
169 FREE_C_HEAP_ARRAY(ShenandoahHeapRegionSet*, worker_slices); |
167 FREE_C_HEAP_ARRAY(ShenandoahHeapRegionSet*, worker_slices); |
170 |
168 |
171 CodeCache::gc_epilogue(); |
|
172 JvmtiExport::gc_epilogue(); |
169 JvmtiExport::gc_epilogue(); |
173 |
170 |
174 heap->set_full_gc_move_in_progress(false); |
171 heap->set_full_gc_move_in_progress(false); |
175 heap->set_full_gc_in_progress(false); |
172 heap->set_full_gc_in_progress(false); |
176 |
173 |