comparison src/share/vm/interpreter/templateInterpreter.hpp @ 900:9987d9d5eb0e

6833129: specjvm98 fails with NullPointerException in the compiler with -XX:DeoptimizeALot Summary: developed a reexecute logic for the interpreter to reexecute the bytecode when deopt happens Reviewed-by: kvn, never, jrose, twisti
author cfang
date Fri, 31 Jul 2009 17:12:33 -0700
parents be93aad57795
children 389049f3f393
comparison
equal deleted inserted replaced
899:55cb84cd1247 900:9987d9d5eb0e
169 // Safepoint support 169 // Safepoint support
170 static void notice_safepoints(); // stops the thread when reaching a safepoint 170 static void notice_safepoints(); // stops the thread when reaching a safepoint
171 static void ignore_safepoints(); // ignores safepoints 171 static void ignore_safepoints(); // ignores safepoints
172 172
173 // Deoptimization support 173 // Deoptimization support
174 static address continuation_for(methodOop method, 174 // Compute the entry address for continuation after
175 address bcp, 175 static address deopt_continue_after_entry(methodOop method,
176 int callee_parameters, 176 address bcp,
177 bool is_top_frame, 177 int callee_parameters,
178 bool& use_next_mdp); 178 bool is_top_frame);
179 // Deoptimization should reexecute this bytecode
180 static bool bytecode_should_reexecute(Bytecodes::Code code);
181 // Compute the address for reexecution
182 static address deopt_reexecute_entry(methodOop method, address bcp);
179 183
180 #include "incls/_templateInterpreter_pd.hpp.incl" 184 #include "incls/_templateInterpreter_pd.hpp.incl"
181 185
182 }; 186 };
183 187