< prev index next >

src/hotspot/share/code/codeBlob.hpp

Print this page
*** 24,10 ***
--- 24,11 ---
  
  #ifndef SHARE_CODE_CODEBLOB_HPP
  #define SHARE_CODE_CODEBLOB_HPP
  
  #include "asm/codeBuffer.hpp"
+ #include "code/aotCodeCache.hpp"
  #include "compiler/compilerDefinitions.hpp"
  #include "compiler/oopMap.hpp"
  #include "runtime/javaFrameAnchor.hpp"
  #include "runtime/frame.hpp"
  #include "runtime/handles.hpp"

*** 173,11 ***
    void post_restore_impl();
  
  public:
  
    ~CodeBlob() {
!     assert(_oop_maps == nullptr, "Not flushed");
    }
  
    // Returns the space needed for CodeBlob
    static unsigned int allocation_size(CodeBuffer* cb, int header_size);
    static unsigned int align_code_offset(int offset);
--- 174,11 ---
    void post_restore_impl();
  
  public:
  
    ~CodeBlob() {
!     assert(_oop_maps == nullptr || AOTCodeCache::is_address_in_aot_cache((address)_oop_maps), "Not flushed");
    }
  
    // Returns the space needed for CodeBlob
    static unsigned int allocation_size(CodeBuffer* cb, int header_size);
    static unsigned int align_code_offset(int offset);

*** 245,11 ***
    void set_ctable_begin(address ctable) { S390_ONLY(_ctable_offset = ctable - header_begin();) }
  
    // Sizes
    int size() const               { return _size; }
    int header_size() const        { return _header_size; }
!   int relocation_size() const    { return pointer_delta_as_int((address) relocation_end(), (address) relocation_begin()); }
    int content_size() const       { return pointer_delta_as_int(content_end(), content_begin()); }
    int code_size() const          { return pointer_delta_as_int(code_end(), code_begin()); }
  
    // Only used from CodeCache::free_unused_tail() after the Interpreter blob was trimmed
    void adjust_size(size_t used) {
--- 246,11 ---
    void set_ctable_begin(address ctable) { S390_ONLY(_ctable_offset = ctable - header_begin();) }
  
    // Sizes
    int size() const               { return _size; }
    int header_size() const        { return _header_size; }
!   int relocation_size() const    { return _relocation_size; }
    int content_size() const       { return pointer_delta_as_int(content_end(), content_begin()); }
    int code_size() const          { return pointer_delta_as_int(code_end(), code_begin()); }
  
    // Only used from CodeCache::free_unused_tail() after the Interpreter blob was trimmed
    void adjust_size(size_t used) {

*** 316,16 ***
    void post_restore();
    CodeBlob* restore(address code_cache_buffer, const char* name, address archived_reloc_data, ImmutableOopMapSet* archived_oop_maps);
    static CodeBlob* create(CodeBlob* archived_blob,
                            const char* name,
                            address archived_reloc_data,
!                           ImmutableOopMapSet* archived_oop_maps
- #ifndef PRODUCT
-                           , AsmRemarks& archived_asm_remarks
-                           , DbgStrings& archived_dbg_strings
- #endif // PRODUCT
-                          );
  };
  
  //----------------------------------------------------------------------------------------------------
  // RuntimeBlob: used for non-compiled method code (adapters, stubs, blobs)
  
--- 317,11 ---
    void post_restore();
    CodeBlob* restore(address code_cache_buffer, const char* name, address archived_reloc_data, ImmutableOopMapSet* archived_oop_maps);
    static CodeBlob* create(CodeBlob* archived_blob,
                            const char* name,
                            address archived_reloc_data,
!                           ImmutableOopMapSet* archived_oop_maps);
  };
  
  //----------------------------------------------------------------------------------------------------
  // RuntimeBlob: used for non-compiled method code (adapters, stubs, blobs)
  
< prev index next >