comparison src/share/vm/classfile/javaClasses.cpp @ 931:72088be4b386

6873116: Modify reexecute implementation to use pcDesc to record the reexecute bit Summary: use PcDesc to keep record of the reexecute bit instead of using DebugInfoStreams Reviewed-by: kvn, never, twisti
author cfang
date Thu, 20 Aug 2009 12:42:57 -0700
parents 9987d9d5eb0e
children 489a4f8dcd0f
comparison
equal deleted inserted replaced
930:357d4e2eb4dd 931:72088be4b386
1227 methodOop method = NULL; 1227 methodOop method = NULL;
1228 int bci = 0; 1228 int bci = 0;
1229 1229
1230 // Compiled java method case. 1230 // Compiled java method case.
1231 if (decode_offset != 0) { 1231 if (decode_offset != 0) {
1232 bool dummy_reexecute = false;
1233 DebugInfoReadStream stream(nm, decode_offset); 1232 DebugInfoReadStream stream(nm, decode_offset);
1234 decode_offset = stream.read_int(); 1233 decode_offset = stream.read_int();
1235 method = (methodOop)nm->oop_at(stream.read_int()); 1234 method = (methodOop)nm->oop_at(stream.read_int());
1236 //fill_in_stack_trace does not need the reexecute information which is designed 1235 bci = stream.read_bci();
1237 //for the deopt to reexecute
1238 bci = stream.read_bci_and_reexecute(dummy_reexecute);
1239 } else { 1236 } else {
1240 if (fr.is_first_frame()) break; 1237 if (fr.is_first_frame()) break;
1241 address pc = fr.pc(); 1238 address pc = fr.pc();
1242 if (fr.is_interpreted_frame()) { 1239 if (fr.is_interpreted_frame()) {
1243 intptr_t bcx = fr.interpreter_frame_bcx(); 1240 intptr_t bcx = fr.interpreter_frame_bcx();