src/share/vm/code/codeBlob.hpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File hotspot Cdiff src/share/vm/code/codeBlob.hpp

src/share/vm/code/codeBlob.hpp

Print this page
rev 7312 : 8059624: Test task: WhiteBox API for testing segmented codecache feature
Reviewed-by:

*** 81,90 **** --- 81,91 ---- CodeStrings _strings; public: // Returns the space needed for CodeBlob static unsigned int allocation_size(CodeBuffer* cb, int header_size); + static unsigned int align_code_offset(int offset); // Creation // a) simple CodeBlob // frame_complete is the offset from the beginning of the instructions // to where the frame setup (from stackwalk viewpoint) is complete.
*** 205,229 **** void set_strings(CodeStrings& strings) { _strings.assign(strings); } }; ! //---------------------------------------------------------------------------------------------------- // BufferBlob: used to hold non-relocatable machine code such as the interpreter, stubroutines, etc. class BufferBlob: public CodeBlob { friend class VMStructs; friend class AdapterBlob; friend class MethodHandlesAdapterBlob; private: // Creation support BufferBlob(const char* name, int size); BufferBlob(const char* name, int size, CodeBuffer* cb); void* operator new(size_t s, unsigned size) throw(); public: // Creation static BufferBlob* create(const char* name, int buffer_size); static BufferBlob* create(const char* name, CodeBuffer* cb); --- 206,233 ---- void set_strings(CodeStrings& strings) { _strings.assign(strings); } }; ! class WhiteBox; //---------------------------------------------------------------------------------------------------- // BufferBlob: used to hold non-relocatable machine code such as the interpreter, stubroutines, etc. class BufferBlob: public CodeBlob { friend class VMStructs; friend class AdapterBlob; friend class MethodHandlesAdapterBlob; + friend class WhiteBox; private: // Creation support BufferBlob(const char* name, int size); BufferBlob(const char* name, int size, CodeBuffer* cb); void* operator new(size_t s, unsigned size) throw(); + // placement + inline void* operator new(size_t s, void* p) throw() { return p; } public: // Creation static BufferBlob* create(const char* name, int buffer_size); static BufferBlob* create(const char* name, CodeBuffer* cb);
src/share/vm/code/codeBlob.hpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File