RFR (XS) 8223448: Shenandoah disabled barriers blocks omit LRB

Aleksey Shipilev shade at redhat.com
Tue May 7 10:22:08 UTC 2019


Bug:
  https://bugs.openjdk.java.net/browse/JDK-8223448

This looks like a trivial omission, but it breaks x86_32 (when specifically enabled), which does not
have all the barriers implemented yet.

Fix:

diff -r 3a75a903a488 src/hotspot/share/gc/shenandoah/shenandoahArguments.cpp
--- a/src/hotspot/share/gc/shenandoah/shenandoahArguments.cpp Mon May 06 19:20:26 2019 +0200
+++ b/src/hotspot/share/gc/shenandoah/shenandoahArguments.cpp Mon May 06 19:25:02 2019 +0200
@@ -45,6 +45,7 @@
   FLAG_SET_DEFAULT(ShenandoahGCHeuristics, "passive");

   FLAG_SET_DEFAULT(ShenandoahSATBBarrier, false);
+  FLAG_SET_DEFAULT(ShenandoahLoadRefBarrier, false);
   FLAG_SET_DEFAULT(ShenandoahKeepAliveBarrier, false);
   FLAG_SET_DEFAULT(ShenandoahStoreValEnqueueBarrier, false);
   FLAG_SET_DEFAULT(ShenandoahCASBarrier, false);
@@ -106,6 +107,7 @@
   // C2 barrier verification is only reliable when all default barriers are enabled
   if (ShenandoahVerifyOptoBarriers &&
           (!FLAG_IS_DEFAULT(ShenandoahSATBBarrier) ||
+           !FLAG_IS_DEFAULT(ShenandoahLoadRefBarrier) ||
            !FLAG_IS_DEFAULT(ShenandoahKeepAliveBarrier) ||
            !FLAG_IS_DEFAULT(ShenandoahStoreValEnqueueBarrier) ||
            !FLAG_IS_DEFAULT(ShenandoahCASBarrier) ||

Testing: hotspot_gc_shenandoah

-- 
Thanks,
-Aleksey



More information about the shenandoah-dev mailing list