src/cpu/x86/vm/x86.ad
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File
*** old/src/cpu/x86/vm/x86.ad	Fri May 29 13:57:35 2015
--- new/src/cpu/x86/vm/x86.ad	Fri May 29 13:57:35 2015

*** 910,934 **** --- 910,919 ---- %} encode %{ enc_class preserve_SP %{ debug_only(int off0 = cbuf.insts_size()); MacroAssembler _masm(&cbuf); // RBP is preserved across all calls, even compiled calls. // Use it to preserve RSP in places where the callee might change the SP. __ movptr(rbp_mh_SP_save, rsp); debug_only(int off1 = cbuf.insts_size()); assert(off1 - off0 == preserve_SP_size(), "correct size prediction"); %} enc_class restore_SP %{ MacroAssembler _masm(&cbuf); __ movptr(rsp, rbp_mh_SP_save); %} enc_class call_epilog %{ if (VerifyStackAtCalls) { // Check that stack depth is unchanged: find majik cookie on stack int framesize = ra_->reg2offset_unchecked(OptoReg::add(ra_->_matcher._old_SP, -3*VMRegImpl::slots_per_word)); MacroAssembler _masm(&cbuf);

src/cpu/x86/vm/x86.ad
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File