RFR: Avoid double-enqueueing store values in runtime

Roman Kennke rkennke at redhat.com
Thu Jun 14 18:08:55 UTC 2018


In ShBarrierSet, we accidentally enqueue objects twice. No need to do that.

Roman


# HG changeset patch
# User rkennke
# Date 1528999581 -7200
#      Thu Jun 14 20:06:21 2018 +0200
# Node ID 96bdf0be39a10cba5b5ffee2f23f44d7d75f5f32
# Parent  468e91da7c499b08f927ab70d1c0d923f783d03f
Avoid double-enqueueing store values in runtime

diff --git a/src/hotspot/share/gc/shenandoah/shenandoahBarrierSet.cpp
b/src/hotspot/share/gc/shenandoah/shenandoahBarrierSet.cpp
--- a/src/hotspot/share/gc/shenandoah/shenandoahBarrierSet.cpp
+++ b/src/hotspot/share/gc/shenandoah/shenandoahBarrierSet.cpp
@@ -305,9 +305,6 @@
       enqueue(obj);
     }
   }
-  if (ShenandoahStoreValEnqueueBarrier && !CompressedOops::is_null(obj)) {
-    enqueue(obj);
-  }
   if (ShenandoahStoreValReadBarrier) {
     obj = resolve_forwarded(obj);
   }



More information about the shenandoah-dev mailing list