comparison src/share/vm/gc_implementation/parallelScavenge/psScavenge.cpp @ 17976:8e20ef014b08

8043239: G1: Missing post barrier in processing of j.l.ref.Reference objects Summary: Removed all write barriers during reference processing and added explicit write barriers when iterating through the discovered list. Reviewed-by: pliden, jmasa, tschatzl
author brutisso
date Wed, 11 Jun 2014 10:46:47 +0200
parents 78bbf4d43a14
children 52b4284cb496 0982ec23da03
comparison
equal deleted inserted replaced
17975:bd4d69d9cb7d 17976:8e20ef014b08
859 ParallelRefProcEnabled && (ParallelGCThreads > 1), // mt processing 859 ParallelRefProcEnabled && (ParallelGCThreads > 1), // mt processing
860 (int) ParallelGCThreads, // mt processing degree 860 (int) ParallelGCThreads, // mt processing degree
861 true, // mt discovery 861 true, // mt discovery
862 (int) ParallelGCThreads, // mt discovery degree 862 (int) ParallelGCThreads, // mt discovery degree
863 true, // atomic_discovery 863 true, // atomic_discovery
864 NULL, // header provides liveness info 864 NULL); // header provides liveness info
865 false); // next field updates do not need write barrier
866 865
867 // Cache the cardtable 866 // Cache the cardtable
868 BarrierSet* bs = Universe::heap()->barrier_set(); 867 BarrierSet* bs = Universe::heap()->barrier_set();
869 assert(bs->kind() == BarrierSet::CardTableModRef, "Wrong barrier set kind"); 868 assert(bs->kind() == BarrierSet::CardTableModRef, "Wrong barrier set kind");
870 _card_table = (CardTableExtension*)bs; 869 _card_table = (CardTableExtension*)bs;