< prev index next >

src/share/vm/code/codeBlob.hpp

Print this page

        

*** 118,127 **** --- 118,128 ---- virtual bool is_adapter_blob() const { return false; } virtual bool is_method_handles_adapter_blob() const { return false; } virtual bool is_compiled_by_c2() const { return false; } virtual bool is_compiled_by_c1() const { return false; } + virtual bool is_compiled_by_jvmci() const { return false; } // Casting nmethod* as_nmethod_or_null() { return is_nmethod() ? (nmethod*) this : NULL; } // Boundaries
*** 378,387 **** --- 379,394 ---- int _unpack_with_exception; int _unpack_with_reexecution; int _unpack_with_exception_in_tls; + #if INCLUDE_JVMCI + // Offsets when JVMCI calls uncommon_trap. + int _uncommon_trap_offset; + int _implicit_exception_uncommon_trap_offset; + #endif + // Creation support DeoptimizationBlob( CodeBuffer* cb, int size, OopMapSet* oop_maps,
*** 427,436 **** --- 434,458 ---- void set_unpack_with_exception_in_tls_offset(int offset) { _unpack_with_exception_in_tls = offset; assert(code_contains(code_begin() + _unpack_with_exception_in_tls), "must be PC inside codeblob"); } address unpack_with_exception_in_tls() const { return code_begin() + _unpack_with_exception_in_tls; } + + #if INCLUDE_JVMCI + // Offsets when JVMCI calls uncommon_trap. + void set_uncommon_trap_offset(int offset) { + _uncommon_trap_offset = offset; + assert(contains(code_begin() + _uncommon_trap_offset), "must be PC inside codeblob"); + } + address uncommon_trap() const { return code_begin() + _uncommon_trap_offset; } + + void set_implicit_exception_uncommon_trap_offset(int offset) { + _implicit_exception_uncommon_trap_offset = offset; + assert(contains(code_begin() + _implicit_exception_uncommon_trap_offset), "must be PC inside codeblob"); + } + address implicit_exception_uncommon_trap() const { return code_begin() + _implicit_exception_uncommon_trap_offset; } + #endif // INCLUDE_JVMCI }; //---------------------------------------------------------------------------------------------------- // UncommonTrapBlob (currently only used by Compiler 2)
< prev index next >