equal
deleted
inserted
replaced
553 // In support of multi-threaded concurrent phases |
553 // In support of multi-threaded concurrent phases |
554 YieldingFlexibleWorkGang* _conc_workers; |
554 YieldingFlexibleWorkGang* _conc_workers; |
555 |
555 |
556 // Performance Counters |
556 // Performance Counters |
557 CollectorCounters* _gc_counters; |
557 CollectorCounters* _gc_counters; |
558 CollectorCounters* _cgc_counters; |
|
559 |
558 |
560 // Initialization Errors |
559 // Initialization Errors |
561 bool _completed_initialization; |
560 bool _completed_initialization; |
562 |
561 |
563 // In support of ExplicitGCInvokesConcurrent |
562 // In support of ExplicitGCInvokesConcurrent |
928 static void check_correct_thread_executing() PRODUCT_RETURN; |
927 static void check_correct_thread_executing() PRODUCT_RETURN; |
929 |
928 |
930 NOT_PRODUCT(bool is_cms_reachable(HeapWord* addr);) |
929 NOT_PRODUCT(bool is_cms_reachable(HeapWord* addr);) |
931 |
930 |
932 // Performance Counter Support |
931 // Performance Counter Support |
933 CollectorCounters* counters() { return _gc_counters; } |
932 CollectorCounters* counters() { return _gc_counters; } |
934 CollectorCounters* cgc_counters() { return _cgc_counters; } |
|
935 |
933 |
936 // Timer stuff |
934 // Timer stuff |
937 void startTimer() { assert(!_timer.is_active(), "Error"); _timer.start(); } |
935 void startTimer() { assert(!_timer.is_active(), "Error"); _timer.start(); } |
938 void stopTimer() { assert( _timer.is_active(), "Error"); _timer.stop(); } |
936 void stopTimer() { assert( _timer.is_active(), "Error"); _timer.stop(); } |
939 void resetTimer() { assert(!_timer.is_active(), "Error"); _timer.reset(); } |
937 void resetTimer() { assert(!_timer.is_active(), "Error"); _timer.reset(); } |