Mercurial > hg > graal-jvmci-8
diff src/share/vm/code/nmethod.hpp @ 22239:7ca4c8c37ca9
nmethod::is_deopt_entry should use NativeCall::instruction_size
author | twisti |
---|---|
date | Fri, 17 Jul 2015 08:45:25 -0700 |
parents | be896a1983c0 |
children | c28cb37b2e1d |
line wrap: on
line diff
--- a/src/share/vm/code/nmethod.hpp Fri Jul 17 11:41:55 2015 +0200 +++ b/src/share/vm/code/nmethod.hpp Fri Jul 17 08:45:25 2015 -0700 @@ -694,24 +694,7 @@ // Deopt // Return true is the PC is one would expect if the frame is being deopted. bool is_deopt_pc (address pc) { return is_deopt_entry(pc) || is_deopt_mh_entry(pc); } - - // (thomaswue) When using jvmci, the address might be off by 5 (because this is the size of the call instruction. - // (thomaswue) TODO: Replace this by a more general mechanism. - // (sanzinger) SPARC has another offset, looked for some variable existing in HotSpot which describes this offset, but i have not - // found anything. - bool is_deopt_entry (address pc) { - return pc == deopt_handler_begin() -#ifdef JVMCI - || pc == deopt_handler_begin() + -#ifdef TARGET_ARCH_sparc - 8 -#endif // sparc -#ifdef TARGET_ARCH_x86 - 5 -#endif // x86 -#endif // JVMCI - ; - } + bool is_deopt_entry(address pc); bool is_deopt_mh_entry(address pc) { return pc == deopt_mh_handler_begin(); } // Accessor/mutator for the original pc of a frame before a frame was deopted. address get_original_pc(const frame* fr) { return *orig_pc_addr(fr); }