Skip to content

Commit 2e05ae8

Browse files
Aleksandar MicicAleksandar Micic
authored andcommitted
Remove store sync in PGC
A store sync was recently added, speculating that it's needed to synchronize the stores of region attributes before adding to the list of new regions, mid PGC. After all, such a sync should not be needed, because the locking operation associated with push-to-list operations has an implicit sync. While the frequency of this operation is rather low (no perf benefit from the change), it's not good to create a bad precedent that would be potentially cloned in other similar situations. Signed-off-by: Aleksandar Micic <Aleksandar_Micic@ca.ibm.com>
1 parent 3f5a860 commit 2e05ae8

1 file changed

Lines changed: 1 addition & 2 deletions

File tree

runtime/gc_vlhgc/CopyForwardScheme.cpp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -827,8 +827,7 @@ MM_CopyForwardScheme::acquireEmptyRegion(MM_EnvironmentVLHGC *env, MM_ReservedRe
827827
Assert_MM_true(newRegion->getReferenceObjectList()->isPhantomListEmpty());
828828

829829
setRegionAsSurvivor(env, newRegion, true);
830-
/* Make sure that all the attributes set are visible to other CPUs, before exposing the region in a globally visible list */
831-
MM_AtomicOperations::storeSync();
830+
832831
insertRegionIntoLockedList(env, regionList, newRegion);
833832
} else {
834833
/* record that we failed to expand so that we stop trying during this collection */

0 commit comments

Comments
 (0)