1.1 --- a/src/share/vm/code/codeBlob.hpp Mon Jan 08 08:32:04 2018 -0800 1.2 +++ b/src/share/vm/code/codeBlob.hpp Fri Mar 30 20:09:45 2018 +0000 1.3 @@ -1,5 +1,5 @@ 1.4 /* 1.5 - * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved. 1.6 + * Copyright (c) 1998, 2018, Oracle and/or its affiliates. All rights reserved. 1.7 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 1.8 * 1.9 * This code is free software; you can redistribute it and/or modify it 1.10 @@ -101,6 +101,7 @@ 1.11 virtual bool is_exception_stub() const { return false; } 1.12 virtual bool is_safepoint_stub() const { return false; } 1.13 virtual bool is_adapter_blob() const { return false; } 1.14 + virtual bool is_vtable_blob() const { return false; } 1.15 virtual bool is_method_handles_adapter_blob() const { return false; } 1.16 1.17 virtual bool is_compiled_by_c2() const { return false; } 1.18 @@ -202,6 +203,7 @@ 1.19 class BufferBlob: public CodeBlob { 1.20 friend class VMStructs; 1.21 friend class AdapterBlob; 1.22 + friend class VtableBlob; 1.23 friend class MethodHandlesAdapterBlob; 1.24 1.25 private: 1.26 @@ -246,6 +248,18 @@ 1.27 virtual bool is_adapter_blob() const { return true; } 1.28 }; 1.29 1.30 +//--------------------------------------------------------------------------------------------------- 1.31 +class VtableBlob: public BufferBlob { 1.32 +private: 1.33 + VtableBlob(const char*, int); 1.34 + 1.35 +public: 1.36 + // Creation 1.37 + static VtableBlob* create(const char* name, int buffer_size); 1.38 + 1.39 + // Typing 1.40 + virtual bool is_vtable_blob() const { return true; } 1.41 +}; 1.42 1.43 //---------------------------------------------------------------------------------------------------- 1.44 // MethodHandlesAdapterBlob: used to hold MethodHandles adapters