Blob Blame History Raw
diff -r bca222181d07 src/cpu/ppc/vm/templateTable_ppc_64.cpp
--- openjdk/hotspot/src/cpu/ppc/vm/templateTable_ppc_64.cpp	Mon Apr 18 07:12:53 2016 +0100
+++ openjdk/hotspot/src/cpu/ppc/vm/templateTable_ppc_64.cpp	Mon Apr 18 08:26:52 2016 +0100
@@ -2898,9 +2898,10 @@
   __ stbx(R17_tos, Rclass_or_obj, Roffset);
   if (!is_static) { patch_bytecode(Bytecodes::_fast_zputfield, Rbc, Rscratch, true, byte_no); }
   if (!support_IRIW_for_not_multiple_copy_atomic_cpu) {
-    __ beq(CR_is_vol, Lvolatile); // Volatile?
+    __ bne(CR_is_vol, Lexit); // Non-volatile?
+    __ fence();
   }
-  __ dispatch_epilog(vtos, Bytecodes::length_for(bytecode()));
+  __ b(Lexit);
 
   __ align(32, 28, 28); // Align pop.
   // __ bind(Lctos);