hotspot/src/share/vm/gc/parallel/psMarkSweep.cpp
changeset 35939 05df7e64ecfc
parent 35864 40e215ce799a
child 37073 c39d0903390b
equal deleted inserted replaced
35938:a734965f7634 35939:05df7e64ecfc
   154   if (VerifyObjectStartArray &&
   154   if (VerifyObjectStartArray &&
   155       VerifyBeforeGC) {
   155       VerifyBeforeGC) {
   156     old_gen->verify_object_start_array();
   156     old_gen->verify_object_start_array();
   157   }
   157   }
   158 
   158 
   159   heap->pre_full_gc_dump(_gc_timer);
       
   160 
       
   161   // Filled in below to track the state of the young gen after the collection.
   159   // Filled in below to track the state of the young gen after the collection.
   162   bool eden_empty;
   160   bool eden_empty;
   163   bool survivors_empty;
   161   bool survivors_empty;
   164   bool young_gen_empty;
   162   bool young_gen_empty;
   165 
   163 
   166   {
   164   {
   167     HandleMark hm;
   165     HandleMark hm;
   168 
   166 
   169     GCTraceCPUTime tcpu;
   167     GCTraceCPUTime tcpu;
   170     GCTraceTime(Info, gc) t("Pause Full", NULL, gc_cause, true);
   168     GCTraceTime(Info, gc) t("Pause Full", NULL, gc_cause, true);
       
   169 
       
   170     heap->pre_full_gc_dump(_gc_timer);
       
   171 
   171     TraceCollectorStats tcs(counters());
   172     TraceCollectorStats tcs(counters());
   172     TraceMemoryManagerStats tms(true /* Full GC */,gc_cause);
   173     TraceMemoryManagerStats tms(true /* Full GC */,gc_cause);
   173 
   174 
   174     if (TraceOldGenTime) accumulated_time()->start();
   175     if (TraceOldGenTime) accumulated_time()->start();
   175 
   176 
   343     MetaspaceAux::print_metaspace_change(metadata_prev_used);
   344     MetaspaceAux::print_metaspace_change(metadata_prev_used);
   344 
   345 
   345     // Track memory usage and detect low memory
   346     // Track memory usage and detect low memory
   346     MemoryService::track_memory_usage();
   347     MemoryService::track_memory_usage();
   347     heap->update_counters();
   348     heap->update_counters();
       
   349 
       
   350     heap->post_full_gc_dump(_gc_timer);
   348   }
   351   }
   349 
   352 
   350   if (VerifyAfterGC && heap->total_collections() >= VerifyGCStartAt) {
   353   if (VerifyAfterGC && heap->total_collections() >= VerifyGCStartAt) {
   351     HandleMark hm;  // Discard invalid handles created during verification
   354     HandleMark hm;  // Discard invalid handles created during verification
   352     Universe::verify("After GC");
   355     Universe::verify("After GC");
   364 
   367 
   365   NOT_PRODUCT(ref_processor()->verify_no_references_recorded());
   368   NOT_PRODUCT(ref_processor()->verify_no_references_recorded());
   366 
   369 
   367   heap->print_heap_after_gc();
   370   heap->print_heap_after_gc();
   368   heap->trace_heap_after_gc(_gc_tracer);
   371   heap->trace_heap_after_gc(_gc_tracer);
   369 
       
   370   heap->post_full_gc_dump(_gc_timer);
       
   371 
   372 
   372 #ifdef TRACESPINNING
   373 #ifdef TRACESPINNING
   373   ParallelTaskTerminator::print_termination_counts();
   374   ParallelTaskTerminator::print_termination_counts();
   374 #endif
   375 #endif
   375 
   376