src/hotspot/share/gc/g1/g1ParScanThreadState.cpp
changeset 49722 a47d1e21b3f1
parent 49713 456e51e56ea2
child 49911 358be4680d12
equal deleted inserted replaced
49721:ea0cc7c74e75 49722:a47d1e21b3f1
   280       }
   280       }
   281       if (old_mark->has_displaced_mark_helper()) {
   281       if (old_mark->has_displaced_mark_helper()) {
   282         // In this case, we have to install the mark word first,
   282         // In this case, we have to install the mark word first,
   283         // otherwise obj looks to be forwarded (the old mark word,
   283         // otherwise obj looks to be forwarded (the old mark word,
   284         // which contains the forward pointer, was copied)
   284         // which contains the forward pointer, was copied)
   285         obj->set_mark(old_mark);
   285         obj->set_mark_raw(old_mark);
   286         markOop new_mark = old_mark->displaced_mark_helper()->set_age(age);
   286         markOop new_mark = old_mark->displaced_mark_helper()->set_age(age);
   287         old_mark->set_displaced_mark_helper(new_mark);
   287         old_mark->set_displaced_mark_helper(new_mark);
   288       } else {
   288       } else {
   289         obj->set_mark(old_mark->set_age(age));
   289         obj->set_mark_raw(old_mark->set_age(age));
   290       }
   290       }
   291       _age_table.add(age, word_sz);
   291       _age_table.add(age, word_sz);
   292     } else {
   292     } else {
   293       obj->set_mark(old_mark);
   293       obj->set_mark_raw(old_mark);
   294     }
   294     }
   295 
   295 
   296     if (G1StringDedup::is_enabled()) {
   296     if (G1StringDedup::is_enabled()) {
   297       const bool is_from_young = state.is_young();
   297       const bool is_from_young = state.is_young();
   298       const bool is_to_young = dest_state.is_young();
   298       const bool is_to_young = dest_state.is_young();