--- old/src/hotspot/share/code/codeBlob.hpp Thu Mar 29 19:50:52 2018 +++ new/src/hotspot/share/code/codeBlob.hpp Thu Mar 29 19:50:51 2018 @@ -132,6 +132,7 @@ virtual bool is_exception_stub() const { return false; } virtual bool is_safepoint_stub() const { return false; } virtual bool is_adapter_blob() const { return false; } + virtual bool is_vtable_blob() const { return false; } virtual bool is_method_handles_adapter_blob() const { return false; } virtual bool is_aot() const { return false; } virtual bool is_compiled() const { return false; } @@ -380,6 +381,7 @@ class BufferBlob: public RuntimeBlob { friend class VMStructs; friend class AdapterBlob; + friend class VtableBlob; friend class MethodHandlesAdapterBlob; friend class WhiteBox; @@ -425,7 +427,19 @@ virtual bool is_adapter_blob() const { return true; } }; +//--------------------------------------------------------------------------------------------------- +class VtableBlob: public BufferBlob { +private: + VtableBlob(const char*, int); +public: + // Creation + static VtableBlob* create(const char* name, int buffer_size); + + // Typing + virtual bool is_vtable_blob() const { return true; } +}; + //---------------------------------------------------------------------------------------------------- // MethodHandlesAdapterBlob: used to hold MethodHandles adapters