src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File hsx24-atomic Cdiff src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp

src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp

Print this page
rev 4213 : 8008382: Remove redundant use of Atomic::add(jlong, jlong *) in create_new_gc_id()
Summary: There is no need to use atomics in create_new_gc_id() since it is not called by multiple threads in parallel. Also, Atomic::add(jlong, jlong *) is broken for ARM.
Reviewed-by:

*** 2283,2294 **** switch (_collectorState) { case InitialMarking: { ReleaseForegroundGC x(this); stats().record_cms_begin(); - register_gc_start(GCCause::_cms_concurrent_mark); - VM_CMS_Initial_Mark initial_mark_op(this); VMThread::execute(&initial_mark_op); } // The collector state may be any legal state at this point // since the background collector may have yielded to the --- 2283,2292 ----
*** 2421,2431 **** } } void CMSCollector::register_gc_start(GCCause::Cause cause) { _cms_start_registered = true; - CollectedHeap* heap = GenCollectedHeap::heap(); _gc_timer_cm->register_gc_start(os::elapsed_counter()); _gc_tracer_cm->report_gc_start(cause, _gc_timer_cm->gc_start()); } void CMSCollector::register_gc_end() { --- 2419,2428 ----
src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File