hotspot/src/cpu/sparc/vm/templateInterpreterGenerator_sparc.cpp
changeset 46294 345a46524a19
parent 46263 1d8d6ddcc626
child 46327 91576389a517
equal deleted inserted replaced
46293:9a88f7fe04b5 46294:345a46524a19
     1 /*
     1 /*
     2  * Copyright (c) 1997, 2016, Oracle and/or its affiliates. All rights reserved.
     2  * Copyright (c) 1997, 2017, Oracle and/or its affiliates. All rights reserved.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     4  *
     4  *
     5  * This code is free software; you can redistribute it and/or modify it
     5  * This code is free software; you can redistribute it and/or modify it
     6  * under the terms of the GNU General Public License version 2 only, as
     6  * under the terms of the GNU General Public License version 2 only, as
     7  * published by the Free Software Foundation.
     7  * published by the Free Software Foundation.
   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