1.1 --- a/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.hpp Mon Mar 16 11:49:32 2015 -0700 1.2 +++ b/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.hpp Thu Oct 12 21:27:07 2017 +0800 1.3 @@ -1326,6 +1326,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 @@ -1360,6 +1363,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 }