70 OptTermination,
71 Other,
72 GCWorkerTotal,
73 GCWorkerEnd,
74 RedirtyCards,
75 FreeCollectionSet,
76 YoungFreeCSet,
77 NonYoungFreeCSet,
78 ResizeThreadLABs,
79 RebuildFreeList,
80 SampleCollectionSetCandidates,
81 MergePSS,
82 RestoreEvacuationFailedRegions,
83 RemoveSelfForwards,
84 ClearCardTable,
85 RecalculateUsed,
86 #if COMPILER2_OR_JVMCI
87 UpdateDerivedPointers,
88 #endif
89 EagerlyReclaimHumongousObjects,
90 RestorePreservedMarks,
91 ProcessEvacuationFailedRegions,
92 ResetMarkingState,
93 NoteStartOfMark,
94 GCParPhasesSentinel
95 };
96
97 static const GCParPhases ExtRootScanSubPhasesFirst = ThreadRoots;
98 static const GCParPhases ExtRootScanSubPhasesLast = GCParPhases(MergeER - 1);
99
100 static constexpr GCParPhases strong_oopstorage_phase(OopStorageSet::StrongId id) {
101 size_t index = EnumRange<OopStorageSet::StrongId>().index(id);
102 return GCParPhases(StrongOopStorageSetRoots + index);
103 }
104
105 enum GCMergeRSWorkItems : uint {
106 MergeRSMergedInline = 0,
107 MergeRSMergedArrayOfCards,
108 MergeRSMergedHowl,
109 MergeRSMergedFull,
110 MergeRSHowlInline,
|
70 OptTermination,
71 Other,
72 GCWorkerTotal,
73 GCWorkerEnd,
74 RedirtyCards,
75 FreeCollectionSet,
76 YoungFreeCSet,
77 NonYoungFreeCSet,
78 ResizeThreadLABs,
79 RebuildFreeList,
80 SampleCollectionSetCandidates,
81 MergePSS,
82 RestoreEvacuationFailedRegions,
83 RemoveSelfForwards,
84 ClearCardTable,
85 RecalculateUsed,
86 #if COMPILER2_OR_JVMCI
87 UpdateDerivedPointers,
88 #endif
89 EagerlyReclaimHumongousObjects,
90 ProcessEvacuationFailedRegions,
91 ResetMarkingState,
92 NoteStartOfMark,
93 GCParPhasesSentinel
94 };
95
96 static const GCParPhases ExtRootScanSubPhasesFirst = ThreadRoots;
97 static const GCParPhases ExtRootScanSubPhasesLast = GCParPhases(MergeER - 1);
98
99 static constexpr GCParPhases strong_oopstorage_phase(OopStorageSet::StrongId id) {
100 size_t index = EnumRange<OopStorageSet::StrongId>().index(id);
101 return GCParPhases(StrongOopStorageSetRoots + index);
102 }
103
104 enum GCMergeRSWorkItems : uint {
105 MergeRSMergedInline = 0,
106 MergeRSMergedArrayOfCards,
107 MergeRSMergedHowl,
108 MergeRSMergedFull,
109 MergeRSHowlInline,
|