diff -r bf1133e7dfba -r b22d8ae270a2 src/hotspot/share/runtime/vmOperations.hpp --- a/src/hotspot/share/runtime/vmOperations.hpp Thu Feb 21 14:24:44 2019 +0100 +++ b/src/hotspot/share/runtime/vmOperations.hpp Fri Feb 22 14:20:06 2019 +0100 @@ -41,6 +41,7 @@ // Note: When new VM_XXX comes up, add 'XXX' to the template table. #define VM_OPS_DO(template) \ template(None) \ + template(Cleanup) \ template(ThreadStop) \ template(ThreadDump) \ template(PrintThreads) \ @@ -213,7 +214,7 @@ // Debugging virtual void print_on_error(outputStream* st) const; - const char* name() const { return _names[type()]; } + virtual const char* name() const { return _names[type()]; } static const char* name(int type) { assert(type >= 0 && type < VMOp_Terminating, "invalid VM operation type"); return _names[type]; @@ -223,6 +224,21 @@ #endif }; +class VM_None: public VM_Operation { + const char* _reason; + public: + VM_None(const char* reason) : _reason(reason) {} + const char* name() const { return _reason; } + VMOp_Type type() const { return VMOp_None; } + void doit() {}; +}; + +class VM_Cleanup: public VM_Operation { + public: + VMOp_Type type() const { return VMOp_Cleanup; } + void doit() {}; +}; + class VM_ThreadStop: public VM_Operation { private: oop _thread; // The Thread that the Throwable is thrown against