src/share/vm/c1/c1_IR.cpp
Index
Unified diffs
Context diffs
Sdiffs
Wdiffs
Patch
New
Old
Previous File
Next File
*** old/src/share/vm/c1/c1_IR.cpp Tue Jul 21 15:54:16 2009
--- new/src/share/vm/c1/c1_IR.cpp Tue Jul 21 15:54:15 2009
*** 206,215 ****
--- 206,224 ----
scope = scope->caller();
}
return scope->caller_bci();
}
+ bool IRScopeDebugInfo::should_reexecute() {
+ ciMethod* cur_method = scope()->method();
+ int cur_bci = bci();
+ if (cur_method != NULL && cur_bci != SynchronizationEntryBCI) {
+ Bytecodes::Code code = cur_method->java_code_at_bci(cur_bci);
+ return Interpreter::bytecode_should_reexecute(code);
+ } else
+ return false;
+ }
// Implementation of CodeEmitInfo
// Stack must be NON-null
*** 251,261 ****
--- 260,270 ----
void CodeEmitInfo::record_debug_info(DebugInformationRecorder* recorder, int pc_offset) {
// record the safepoint before recording the debug info for enclosing scopes
recorder->add_safepoint(pc_offset, _oop_map->deep_copy());
! _scope_debug_info->record_debug_info(recorder, pc_offset, true/*topmost*/);
recorder->end_safepoint(pc_offset);
}
void CodeEmitInfo::add_register_oop(LIR_Opr opr) {
src/share/vm/c1/c1_IR.cpp
Index
Unified diffs
Context diffs
Sdiffs
Wdiffs
Patch
New
Old
Previous File
Next File