[15] RFR(S): 8241909: Remove useless code cache lookup in frame::patch_pc
Tobias Hartmann
tobias.hartmann at oracle.com
Tue Mar 31 08:45:28 UTC 2020
Hi,
please review the following patch:
https://bugs.openjdk.java.net/browse/JDK-8241909
http://cr.openjdk.java.net/~thartmann/8241909/webrev.00/
The code cache lookup in frame::patch_pc [1] is useless because the method is only called from
frame::deoptimize and vframeArrayElement::unpack_on_stack where pc is always part of _cb.
If the method is called from frame::deoptimize [2], pc is either _cb->deopt_mh_handler_begin() or
_cb->deopt_handler_begin(). Both are part of _cb.
If the method is called from vframeArrayElement::unpack_on_stack [3], _frame is an interpreter frame
and therefore _frame._cb is the interpreter buffer blob. pc is only set in this method and always
points to an interpreter entry which is part of the interpreter buffer blob.
Thanks,
Tobias
[1] http://hg.openjdk.java.net/jdk/jdk/file/ee44884f3ab8/src/hotspot/cpu/x86/frame_x86.cpp#l265
[2] http://hg.openjdk.java.net/jdk/jdk/file/ee44884f3ab8/src/hotspot/share/runtime/frame.cpp#l287
[3] http://hg.openjdk.java.net/jdk/jdk/file/ee44884f3ab8/src/hotspot/share/runtime/vframeArray.cpp#l303
More information about the hotspot-compiler-dev
mailing list