1.1 --- a/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.hpp Thu Sep 29 09:54:38 2016 +0800 1.2 +++ b/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.hpp Sat Oct 08 09:31:28 2016 -0400 1.3 @@ -1322,6 +1322,9 @@ 1.4 const int obj_size = obj->size(); 1.5 if (mark_bitmap()->mark_obj(obj, obj_size)) { 1.6 _summary_data.add_obj(obj, obj_size); 1.7 +#ifdef MIPS64 1.8 + if (Use3A2000) OrderAccess::fence(); 1.9 +#endif 1.10 return true; 1.11 } else { 1.12 return false; 1.13 @@ -1356,6 +1359,9 @@ 1.14 oop obj = oopDesc::decode_heap_oop_not_null(heap_oop); 1.15 if (mark_bitmap()->is_unmarked(obj) && mark_obj(obj)) { 1.16 cm->push(obj); 1.17 +#ifdef MIPS64 1.18 + if (Use3A2000) OrderAccess::fence(); 1.19 +#endif 1.20 } 1.21 } 1.22 }