< prev index next >

src/hotspot/share/c1/c1_IR.hpp

Print this page

        

*** 230,253 **** IRScopeDebugInfo* caller() { return _caller; } //Whether we should reexecute this bytecode for deopt bool should_reexecute(); ! void record_debug_info(DebugInformationRecorder* recorder, int pc_offset, bool topmost, bool is_method_handle_invoke = false) { ! if (caller() != NULL) { ! // Order is significant: Must record caller first. ! caller()->record_debug_info(recorder, pc_offset, false/*topmost*/); ! } ! DebugToken* locvals = recorder->create_scope_values(locals()); ! DebugToken* expvals = recorder->create_scope_values(expressions()); ! DebugToken* monvals = recorder->create_monitor_values(monitors()); ! // reexecute allowed only for the topmost frame ! bool reexecute = topmost ? should_reexecute() : false; ! bool return_oop = false; // This flag will be ignored since it used only for C2 with escape analysis. ! bool rethrow_exception = false; ! recorder->describe_scope(pc_offset, methodHandle(), scope()->method(), bci(), reexecute, rethrow_exception, is_method_handle_invoke, return_oop, locvals, expvals, monvals); ! } }; class CodeEmitInfo: public CompilationResourceObj { friend class LinearScan; --- 230,240 ---- IRScopeDebugInfo* caller() { return _caller; } //Whether we should reexecute this bytecode for deopt bool should_reexecute(); ! void record_debug_info(DebugInformationRecorder* recorder, int pc_offset, bool topmost, bool is_method_handle_invoke = false, bool maybe_return_as_fields = false); }; class CodeEmitInfo: public CompilationResourceObj { friend class LinearScan;
*** 278,288 **** XHandlers* exception_handlers() const { return _exception_handlers; } ValueStack* stack() const { return _stack; } bool deoptimize_on_exception() const { return _deoptimize_on_exception; } void add_register_oop(LIR_Opr opr); ! void record_debug_info(DebugInformationRecorder* recorder, int pc_offset); bool is_method_handle_invoke() const { return _is_method_handle_invoke; } void set_is_method_handle_invoke(bool x) { _is_method_handle_invoke = x; } int interpreter_frame_size() const; --- 265,275 ---- XHandlers* exception_handlers() const { return _exception_handlers; } ValueStack* stack() const { return _stack; } bool deoptimize_on_exception() const { return _deoptimize_on_exception; } void add_register_oop(LIR_Opr opr); ! void record_debug_info(DebugInformationRecorder* recorder, int pc_offset, bool maybe_return_as_fields = false); bool is_method_handle_invoke() const { return _is_method_handle_invoke; } void set_is_method_handle_invoke(bool x) { _is_method_handle_invoke = x; } int interpreter_frame_size() const;
< prev index next >