1.1 --- a/src/cpu/sparc/vm/assembler_sparc.hpp Wed Sep 30 13:25:39 2009 -0700 1.2 +++ b/src/cpu/sparc/vm/assembler_sparc.hpp Tue Oct 06 02:11:49 2009 -0700 1.3 @@ -1279,6 +1279,7 @@ 1.4 1.5 // 171 1.6 1.7 + inline void ldf(FloatRegisterImpl::Width w, Register s1, RegisterOrConstant s2, FloatRegister d); 1.8 inline void ldf(FloatRegisterImpl::Width w, Register s1, Register s2, FloatRegister d); 1.9 inline void ldf(FloatRegisterImpl::Width w, Register s1, int simm13a, FloatRegister d, RelocationHolder const& rspec = RelocationHolder()); 1.10 1.11 @@ -1535,7 +1536,8 @@ 1.12 1.13 // pp 222 1.14 1.15 - inline void stf( FloatRegisterImpl::Width w, FloatRegister d, Register s1, Register s2 ); 1.16 + inline void stf( FloatRegisterImpl::Width w, FloatRegister d, Register s1, RegisterOrConstant s2); 1.17 + inline void stf( FloatRegisterImpl::Width w, FloatRegister d, Register s1, Register s2); 1.18 inline void stf( FloatRegisterImpl::Width w, FloatRegister d, Register s1, int simm13a); 1.19 inline void stf( FloatRegisterImpl::Width w, FloatRegister d, const Address& a, int offset = 0); 1.20 1.21 @@ -2049,12 +2051,13 @@ 1.22 Register temp = noreg ); 1.23 void regcon_sll_ptr( RegisterOrConstant& dest, RegisterOrConstant src, 1.24 Register temp = noreg ); 1.25 - RegisterOrConstant ensure_rs2(RegisterOrConstant rs2, Register sethi_temp) { 1.26 - guarantee(sethi_temp != noreg, "constant offset overflow"); 1.27 - if (is_simm13(rs2.constant_or_zero())) 1.28 - return rs2; // register or short constant 1.29 - set(rs2.as_constant(), sethi_temp); 1.30 - return sethi_temp; 1.31 + 1.32 + RegisterOrConstant ensure_simm13_or_reg(RegisterOrConstant roc, Register Rtemp) { 1.33 + guarantee(Rtemp != noreg, "constant offset overflow"); 1.34 + if (is_simm13(roc.constant_or_zero())) 1.35 + return roc; // register or short constant 1.36 + set(roc.as_constant(), Rtemp); 1.37 + return RegisterOrConstant(Rtemp); 1.38 } 1.39 1.40 // --------------------------------------------------