hotspot/src/cpu/sparc/vm/templateInterpreterGenerator_sparc.cpp
changeset 46369 3bf4544bec14
parent 44406 a46a6c4d1dd9
parent 46338 e84b501fa52e
child 46381 020219e46c86
equal deleted inserted replaced
44470:d10b1eca0b45 46369:3bf4544bec14
   372   __ ld_ptr(cache, ConstantPoolCache::base_offset() + ConstantPoolCacheEntry::flags_offset(), flags);
   372   __ ld_ptr(cache, ConstantPoolCache::base_offset() + ConstantPoolCacheEntry::flags_offset(), flags);
   373   const Register parameter_size = flags;
   373   const Register parameter_size = flags;
   374   __ and3(flags, ConstantPoolCacheEntry::parameter_size_mask, parameter_size);  // argument size in words
   374   __ and3(flags, ConstantPoolCacheEntry::parameter_size_mask, parameter_size);  // argument size in words
   375   __ sll(parameter_size, Interpreter::logStackElementSize, parameter_size);     // each argument size in bytes
   375   __ sll(parameter_size, Interpreter::logStackElementSize, parameter_size);     // each argument size in bytes
   376   __ add(Lesp, parameter_size, Lesp);                                           // pop arguments
   376   __ add(Lesp, parameter_size, Lesp);                                           // pop arguments
       
   377 
       
   378   __ check_and_handle_popframe(Gtemp);
       
   379   __ check_and_handle_earlyret(Gtemp);
       
   380 
   377   __ dispatch_next(state, step);
   381   __ dispatch_next(state, step);
   378 
   382 
   379   return entry;
   383   return entry;
   380 }
   384 }
   381 
   385 
   464   __ dispatch_via(vtos, Interpreter::normal_table(vtos));
   468   __ dispatch_via(vtos, Interpreter::normal_table(vtos));
   465   return entry;
   469   return entry;
   466 }
   470 }
   467 
   471 
   468 
   472 
   469 address TemplateInterpreterGenerator::generate_continuation_for(TosState state) {
       
   470   address entry = __ pc();
       
   471   __ dispatch_next(state);
       
   472   return entry;
       
   473 }
       
   474 
       
   475 //
   473 //
   476 // Helpers for commoning out cases in the various type of method entries.
   474 // Helpers for commoning out cases in the various type of method entries.
   477 //
   475 //
   478 
   476 
   479 // increment invocation count & check for overflow
   477 // increment invocation count & check for overflow