src/share/vm/c1/c1_IR.hpp
Index
Unified diffs
Context diffs
Sdiffs
Wdiffs
Patch
New
Old
Previous File
Next File
6833129 Cdiff src/share/vm/c1/c1_IR.hpp
src/share/vm/c1/c1_IR.hpp
Print this page
*** 237,255 ****
GrowableArray<ScopeValue*>* locals() { return _locals; }
GrowableArray<ScopeValue*>* expressions() { return _expressions; }
GrowableArray<MonitorValue*>* monitors() { return _monitors; }
IRScopeDebugInfo* caller() { return _caller; }
! void record_debug_info(DebugInformationRecorder* recorder, int pc_offset) {
if (caller() != NULL) {
// Order is significant: Must record caller first.
! caller()->record_debug_info(recorder, pc_offset);
}
DebugToken* locvals = recorder->create_scope_values(locals());
DebugToken* expvals = recorder->create_scope_values(expressions());
DebugToken* monvals = recorder->create_monitor_values(monitors());
! recorder->describe_scope(pc_offset, scope()->method(), bci(), locvals, expvals, monvals);
}
};
class CodeEmitInfo: public CompilationResourceObj {
--- 237,260 ----
GrowableArray<ScopeValue*>* locals() { return _locals; }
GrowableArray<ScopeValue*>* expressions() { return _expressions; }
GrowableArray<MonitorValue*>* monitors() { return _monitors; }
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) {
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;
! recorder->describe_scope(pc_offset, scope()->method(), bci(), reexecute, locvals, expvals, monvals);
}
};
class CodeEmitInfo: public CompilationResourceObj {
src/share/vm/c1/c1_IR.hpp
Index
Unified diffs
Context diffs
Sdiffs
Wdiffs
Patch
New
Old
Previous File
Next File