112 template(ShenandoahDegeneratedGC) \
113 template(Exit) \
114 template(LinuxDllLoad) \
115 template(RotateGCLog) \
116 template(WhiteBoxOperation) \
117 template(JVMCIResizeCounters) \
118 template(ClassLoaderStatsOperation) \
119 template(ClassLoaderHierarchyOperation) \
120 template(DumpHashtable) \
121 template(DumpTouchedMethods) \
122 template(MarkActiveNMethods) \
123 template(PrintCompileQueue) \
124 template(PrintClassHierarchy) \
125 template(ThreadSuspend) \
126 template(ThreadsSuspendJVMTI) \
127 template(ICBufferFull) \
128 template(ScavengeMonitors) \
129 template(PrintMetadata) \
130 template(GTestExecuteAtSafepoint) \
131 template(JFROldObject) \
132
133 class VM_Operation: public CHeapObj<mtInternal> {
134 public:
135 enum Mode {
136 _safepoint, // blocking, safepoint, vm_op C-heap allocated
137 _no_safepoint, // blocking, no safepoint, vm_op C-Heap allocated
138 _concurrent, // non-blocking, no safepoint, vm_op C-Heap allocated
139 _async_safepoint // non-blocking, safepoint, vm_op C-Heap allocated
140 };
141
142 enum VMOp_Type {
143 VM_OPS_DO(VM_OP_ENUM)
144 VMOp_Terminating
145 };
146
147 private:
148 Thread* _calling_thread;
149 long _timestamp;
150 VM_Operation* _next;
151 VM_Operation* _prev;
|
112 template(ShenandoahDegeneratedGC) \
113 template(Exit) \
114 template(LinuxDllLoad) \
115 template(RotateGCLog) \
116 template(WhiteBoxOperation) \
117 template(JVMCIResizeCounters) \
118 template(ClassLoaderStatsOperation) \
119 template(ClassLoaderHierarchyOperation) \
120 template(DumpHashtable) \
121 template(DumpTouchedMethods) \
122 template(MarkActiveNMethods) \
123 template(PrintCompileQueue) \
124 template(PrintClassHierarchy) \
125 template(ThreadSuspend) \
126 template(ThreadsSuspendJVMTI) \
127 template(ICBufferFull) \
128 template(ScavengeMonitors) \
129 template(PrintMetadata) \
130 template(GTestExecuteAtSafepoint) \
131 template(JFROldObject) \
132 template(EpsilonCollect) \
133
134 class VM_Operation: public CHeapObj<mtInternal> {
135 public:
136 enum Mode {
137 _safepoint, // blocking, safepoint, vm_op C-heap allocated
138 _no_safepoint, // blocking, no safepoint, vm_op C-Heap allocated
139 _concurrent, // non-blocking, no safepoint, vm_op C-Heap allocated
140 _async_safepoint // non-blocking, safepoint, vm_op C-Heap allocated
141 };
142
143 enum VMOp_Type {
144 VM_OPS_DO(VM_OP_ENUM)
145 VMOp_Terminating
146 };
147
148 private:
149 Thread* _calling_thread;
150 long _timestamp;
151 VM_Operation* _next;
152 VM_Operation* _prev;
|