src/hotspot/cpu/sparc/templateInterpreterGenerator_sparc.cpp
changeset 47916 bdbef8638948
parent 47881 0ce0ac68ace7
child 49368 2ed1c37df3a5
equal deleted inserted replaced
47915:d4af6b80aec3 47916:bdbef8638948
   311 
   311 
   312   return entry;
   312   return entry;
   313 }
   313 }
   314 
   314 
   315 
   315 
   316 address TemplateInterpreterGenerator::generate_deopt_entry_for(TosState state, int step) {
   316 address TemplateInterpreterGenerator::generate_deopt_entry_for(TosState state, int step, address continuation) {
   317   address entry = __ pc();
   317   address entry = __ pc();
   318   __ get_constant_pool_cache(LcpoolCache); // load LcpoolCache
   318   __ get_constant_pool_cache(LcpoolCache); // load LcpoolCache
   319 #if INCLUDE_JVMCI
   319 #if INCLUDE_JVMCI
   320   // Check if we need to take lock at entry of synchronized method.  This can
   320   // Check if we need to take lock at entry of synchronized method.  This can
   321   // only occur on method entry so emit it only for vtos with step 0.
   321   // only occur on method entry so emit it only for vtos with step 0.
   348     __ br_null_short(Gtemp, Assembler::pt, L);
   348     __ br_null_short(Gtemp, Assembler::pt, L);
   349     __ call_VM(noreg, CAST_FROM_FN_PTR(address, InterpreterRuntime::throw_pending_exception));
   349     __ call_VM(noreg, CAST_FROM_FN_PTR(address, InterpreterRuntime::throw_pending_exception));
   350     __ should_not_reach_here();
   350     __ should_not_reach_here();
   351     __ bind(L);
   351     __ bind(L);
   352   }
   352   }
   353   __ dispatch_next(state, step);
   353   if (continuation == NULL) {
       
   354     __ dispatch_next(state, step);
       
   355   } else {
       
   356     __ jump_to_entry(continuation);
       
   357   }
   354   return entry;
   358   return entry;
   355 }
   359 }
   356 
   360 
   357 // A result handler converts/unboxes a native call result into
   361 // A result handler converts/unboxes a native call result into
   358 // a java interpreter/compiler result. The current frame is an
   362 // a java interpreter/compiler result. The current frame is an