< prev index next >

src/hotspot/cpu/ppc/sharedRuntime_ppc.cpp

Print this page
rev 56744 : 8233078: fix minimal VM build on Linux ppc64(le)

*** 569,587 **** __ load_const(Rtemp, destination); __ mtctr(Rtemp); __ bctr(); } - #ifdef COMPILER2 static int reg2slot(VMReg r) { return r->reg2stack() + SharedRuntime::out_preserve_stack_slots(); } static int reg2offset(VMReg r) { return (r->reg2stack() + SharedRuntime::out_preserve_stack_slots()) * VMRegImpl::stack_slot_size; } - #endif // --------------------------------------------------------------------------- // Read the array of BasicTypes from a signature, and compute where the // arguments should go. Values in the VMRegPair regs array refer to 4-byte // quantities. Values less than VMRegImpl::stack0 are registers, those above --- 569,585 ----
*** 1303,1313 **** gen_c2i_adapter(masm, total_args_passed, comp_args_on_stack, sig_bt, regs, call_interpreter, ientry); return AdapterHandlerLibrary::new_entry(fingerprint, i2c_entry, c2i_entry, c2i_unverified_entry, c2i_no_clinit_check_entry); } - #ifdef COMPILER2 // An oop arg. Must pass a handle not the oop itself. static void object_move(MacroAssembler* masm, int frame_size_in_slots, OopMap* oop_map, int oop_handle_offset, bool is_receiver, int* receiver_offset, --- 1301,1310 ----
*** 1811,1822 **** // Figure out which address we are really jumping to: MethodHandles::generate_method_handle_dispatch(masm, iid, receiver_reg, member_reg, /*for_compiler_entry:*/ true); } - #endif // COMPILER2 - // --------------------------------------------------------------------------- // Generate a native wrapper for a given method. The method takes arguments // in the Java compiled code convention, marshals them to the native // convention (handlizes oops, etc), transitions to native, makes the call, // returns to java state (possibly blocking), unhandlizes any result and --- 1808,1817 ----
*** 1849,1859 **** int compile_id, BasicType *in_sig_bt, VMRegPair *in_regs, BasicType ret_type, address critical_entry) { - #ifdef COMPILER2 if (method->is_method_handle_intrinsic()) { vmIntrinsics::ID iid = method->intrinsic_id(); intptr_t start = (intptr_t)__ pc(); int vep_offset = ((intptr_t)__ pc()) - start; gen_special_dispatch(masm, --- 1844,1853 ----
*** 2106,2116 **** // -------------------------------------------------------------------------- assert(start_pc == (intptr_t)__ pc(), "uep must be at start"); // Check ic: object class == cached class? if (!method_is_static) { ! Register ic = as_Register(Matcher::inline_cache_reg_encode()); Register receiver_klass = r_temp_1; __ cmpdi(CCR0, R3_ARG1, 0); __ beq(CCR0, ic_miss); __ verify_oop(R3_ARG1); --- 2100,2110 ---- // -------------------------------------------------------------------------- assert(start_pc == (intptr_t)__ pc(), "uep must be at start"); // Check ic: object class == cached class? if (!method_is_static) { ! Register ic = R19_inline_cache_reg; Register receiver_klass = r_temp_1; __ cmpdi(CCR0, R3_ARG1, 0); __ beq(CCR0, ic_miss); __ verify_oop(R3_ARG1);
*** 2636,2646 **** __ blr(); // Handler for pending exceptions (out-of-line). // -------------------------------------------------------------------------- ! // Since this is a native call, we know the proper exception handler // is the empty function. We just pop this frame and then jump to // forward_exception_entry. if (!is_critical_native) { __ align(InteriorEntryAlignment); --- 2630,2642 ---- __ blr(); // Handler for pending exceptions (out-of-line). // -------------------------------------------------------------------------- ! #ifndef COMPILER2 ! intx InteriorEntryAlignment = 16; ! #endif // Since this is a native call, we know the proper exception handler // is the empty function. We just pop this frame and then jump to // forward_exception_entry. if (!is_critical_native) { __ align(InteriorEntryAlignment);
*** 2681,2694 **** if (is_critical_native) { nm->set_lazy_critical_native(true); } return nm; - #else - ShouldNotReachHere(); - return NULL; - #endif // COMPILER2 } // This function returns the adjust size (in number of words) to a c2i adapter // activation for use during deoptimization. int Deoptimization::last_frame_adjust(int callee_parameters, int callee_locals) { --- 2677,2686 ----
*** 2861,2871 **** // will replace the address of the deopt_handler in the call // to Deoptimization::fetch_unroll_info below. // We can't grab a free register here, because all registers may // contain live values, so let the RegisterSaver do the adjustment // of the return pc. ! const int return_pc_adjustment_no_exception = -HandlerImpl::size_deopt_handler(); // Push the "unpack frame" // Save everything in sight. map = RegisterSaver::push_frame_reg_args_and_save_live_registers(masm, &first_frame_size_in_bytes, --- 2853,2864 ---- // will replace the address of the deopt_handler in the call // to Deoptimization::fetch_unroll_info below. // We can't grab a free register here, because all registers may // contain live values, so let the RegisterSaver do the adjustment // of the return pc. ! //const int return_pc_adjustment_no_exception = -HandlerImpl::size_deopt_handler(); ! const int return_pc_adjustment_no_exception = -MacroAssembler::bl64_patchable_size; // Push the "unpack frame" // Save everything in sight. map = RegisterSaver::push_frame_reg_args_and_save_live_registers(masm, &first_frame_size_in_bytes,
< prev index next >