< prev index next >

src/hotspot/share/gc/shenandoah/shenandoahTraversalGC.inline.hpp

Print this page

        

*** 52,62 **** if (oopDesc::equals_raw(obj, forw)) { forw = _heap->evacuate_object(obj, thread); } shenandoah_assert_forwarded_except(p, obj, _heap->cancelled_gc()); // Update reference. ! ShenandoahHeap::cas_oop(forw, p, obj); obj = forw; } shenandoah_assert_not_forwarded(p, obj); shenandoah_assert_not_in_cset_except(p, obj, _heap->cancelled_gc()); --- 52,62 ---- if (oopDesc::equals_raw(obj, forw)) { forw = _heap->evacuate_object(obj, thread); } shenandoah_assert_forwarded_except(p, obj, _heap->cancelled_gc()); // Update reference. ! _heap->atomic_compare_exchange_oop(forw, p, obj); obj = forw; } shenandoah_assert_not_forwarded(p, obj); shenandoah_assert_not_in_cset_except(p, obj, _heap->cancelled_gc());
< prev index next >