src/hotspot/cpu/x86/templateInterpreterGenerator_x86.cpp
changeset 47916 bdbef8638948
parent 47881 0ce0ac68ace7
child 49027 8dc742d9bbab
equal deleted inserted replaced
47915:d4af6b80aec3 47916:bdbef8638948
   235 
   235 
   236   return entry;
   236   return entry;
   237 }
   237 }
   238 
   238 
   239 
   239 
   240 address TemplateInterpreterGenerator::generate_deopt_entry_for(TosState state, int step) {
   240 address TemplateInterpreterGenerator::generate_deopt_entry_for(TosState state, int step, address continuation) {
   241   address entry = __ pc();
   241   address entry = __ pc();
   242 
   242 
   243 #ifndef _LP64
   243 #ifndef _LP64
   244   if (state == ftos) {
   244   if (state == ftos) {
   245     __ MacroAssembler::verify_FPU(UseSSE >= 1 ? 0 : 1, "generate_deopt_entry_for in interpreter");
   245     __ MacroAssembler::verify_FPU(UseSSE >= 1 ? 0 : 1, "generate_deopt_entry_for in interpreter");
   289                CAST_FROM_FN_PTR(address,
   289                CAST_FROM_FN_PTR(address,
   290                                 InterpreterRuntime::throw_pending_exception));
   290                                 InterpreterRuntime::throw_pending_exception));
   291     __ should_not_reach_here();
   291     __ should_not_reach_here();
   292     __ bind(L);
   292     __ bind(L);
   293   }
   293   }
   294   __ dispatch_next(state, step);
   294   if (continuation == NULL) {
       
   295     __ dispatch_next(state, step);
       
   296   } else {
       
   297     __ jump_to_entry(continuation);
       
   298   }
   295   return entry;
   299   return entry;
   296 }
   300 }
   297 
   301 
   298 address TemplateInterpreterGenerator::generate_result_handler_for(
   302 address TemplateInterpreterGenerator::generate_result_handler_for(
   299         BasicType type) {
   303         BasicType type) {