src/cpu/x86/vm/interp_masm_x86.hpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File
*** old/src/cpu/x86/vm/interp_masm_x86.hpp	Thu Dec 17 17:52:05 2015
--- new/src/cpu/x86/vm/interp_masm_x86.hpp	Thu Dec 17 17:52:04 2015

*** 34,44 **** --- 34,43 ---- typedef ByteSize (*OffsetFunction)(uint); class InterpreterMacroAssembler: public MacroAssembler { #ifndef CC_INTERP protected: // Interpreter specific version of call_VM_base virtual void call_VM_leaf_base(address entry_point, int number_of_arguments);
*** 52,81 **** --- 51,70 ---- virtual void check_and_handle_popframe(Register java_thread); virtual void check_and_handle_earlyret(Register java_thread); // base routine for all dispatches void dispatch_base(TosState state, address* table, bool verifyoop = true); #endif // CC_INTERP public: InterpreterMacroAssembler(CodeBuffer* code) : MacroAssembler(code), _locals_register(LP64_ONLY(r14) NOT_LP64(rdi)), _bcp_register(LP64_ONLY(r13) NOT_LP64(rsi)) {} void jump_to_entry(address entry); void load_earlyret_value(TosState state); #ifdef CC_INTERP void save_bcp() { /* not needed in c++ interpreter and harmless */ } void restore_bcp() { /* not needed in c++ interpreter and harmless */ } // Helpers for runtime call arguments/results void get_method(Register reg); #else // Interpreter-specific registers void save_bcp() { movptr(Address(rbp, frame::interpreter_frame_bcp_offset * wordSize), _bcp_register); }
*** 217,235 **** --- 206,221 ---- // and installing an exception. void remove_activation(TosState state, Register ret_addr, bool throw_monitor_exception = true, bool install_monitor_exception = true, bool notify_jvmdi = true); #endif // CC_INTERP void get_method_counters(Register method, Register mcs, Label& skip); // Object locking void lock_object (Register lock_reg); void unlock_object(Register lock_reg); #ifndef CC_INTERP // Interpreter profiling operations void set_method_data_pointer_for_bcp(); void test_method_data_pointer(Register mdp, Label& zero_continue); void verify_method_data_pointer();
*** 283,294 **** --- 269,278 ---- // only if +VerifyOops && state == atos void verify_oop(Register reg, TosState state = atos); // only if +VerifyFPU && (state == ftos || state == dtos) void verify_FPU(int stack_depth, TosState state = ftos); #endif // !CC_INTERP typedef enum { NotifyJVMTI, SkipNotifyJVMTI } NotifyMethodExitMode; // support for jvmti/dtrace void notify_method_entry(); void notify_method_exit(TosState state, NotifyMethodExitMode mode);
*** 297,311 **** --- 281,293 ---- Register _locals_register; // register that contains the pointer to the locals Register _bcp_register; // register that contains the bcp public: #ifndef CC_INTERP void profile_obj_type(Register obj, const Address& mdo_addr); void profile_arguments_type(Register mdp, Register callee, Register tmp, bool is_virtual); void profile_return_type(Register mdp, Register ret, Register tmp); void profile_parameters_type(Register mdp, Register tmp1, Register tmp2); #endif /* !CC_INTERP */ }; #endif // CPU_X86_VM_INTERP_MASM_X86_HPP

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