src/cpu/sparc/vm/templateTable_sparc.cpp

Print this page
rev 2238 : [mq]: code-review-comments-vladimir

@@ -55,11 +55,15 @@
   switch (barrier) {
 #ifndef SERIALGC
     case BarrierSet::G1SATBCT:
     case BarrierSet::G1SATBCTLogging:
       {
-        __ g1_write_barrier_pre( base, index, offset, tmp, /*preserve_o_regs*/true);
+        // Load and record the previous value.
+        __ g1_write_barrier_pre(base, index, offset, 
+                                noreg /* pre_val */, 
+                                tmp, true /*preserve_o_regs*/);
+
         if (index == noreg ) {
           assert(Assembler::is_simm13(offset), "fix this code");
           __ store_heap_oop(val, base, offset);
         } else {
           __ store_heap_oop(val, base, index);