--- a/src/hotspot/cpu/s390/gc/g1/g1BarrierSetAssembler_s390.cpp Thu Jun 07 09:18:39 2018 +0100
+++ b/src/hotspot/cpu/s390/gc/g1/g1BarrierSetAssembler_s390.cpp Thu Jun 07 11:20:18 2018 +0200
@@ -273,16 +273,14 @@
// Does store cross heap regions?
// It does if the two addresses specify different grain addresses.
- if (G1RSBarrierRegionFilter) {
- if (VM_Version::has_DistinctOpnds()) {
- __ z_xgrk(Rtmp1, Rstore_addr, Rnew_val);
- } else {
- __ z_lgr(Rtmp1, Rstore_addr);
- __ z_xgr(Rtmp1, Rnew_val);
- }
- __ z_srag(Rtmp1, Rtmp1, HeapRegion::LogOfHRGrainBytes);
- __ z_bre(filtered);
+ if (VM_Version::has_DistinctOpnds()) {
+ __ z_xgrk(Rtmp1, Rstore_addr, Rnew_val);
+ } else {
+ __ z_lgr(Rtmp1, Rstore_addr);
+ __ z_xgr(Rtmp1, Rnew_val);
}
+ __ z_srag(Rtmp1, Rtmp1, HeapRegion::LogOfHRGrainBytes);
+ __ z_bre(filtered);
// Crosses regions, storing NULL?
if (not_null) {