src/cpu/x86/vm/c1_FrameMap_x86.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File 8068945-8u-patched Cdiff src/cpu/x86/vm/c1_FrameMap_x86.cpp

src/cpu/x86/vm/c1_FrameMap_x86.cpp

Print this page
rev 7386 : 8068945: Use RBP register as proper frame pointer in JIT compiled code on x86
Summary: Introduce the PreserveFramePointer flag to control if RBP is used as the frame pointer or as a general purpose register.
Reviewed-by: kvn, roland, dlong, enevill, shade

*** 341,356 **** LIR_Opr FrameMap::stack_pointer() { return FrameMap::rsp_opr; } - // JSR 292 LIR_Opr FrameMap::method_handle_invoke_SP_save_opr() { ! assert(rbp == rbp_mh_SP_save, "must be same register"); ! return rbp_opr; } - bool FrameMap::validate_frame() { return true; } --- 341,355 ---- LIR_Opr FrameMap::stack_pointer() { return FrameMap::rsp_opr; } // JSR 292 + // On x86, there is no need to save the SP, because neither + // method handle intrinsics, nor compiled lambda forms modify it. LIR_Opr FrameMap::method_handle_invoke_SP_save_opr() { ! return LIR_OprFact::illegalOpr; } bool FrameMap::validate_frame() { return true; }
src/cpu/x86/vm/c1_FrameMap_x86.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File