< prev index next >

src/hotspot/share/opto/output.cpp

Print this page

        

*** 575,588 **** // the word in the even single-register is stored to the first // memory word. (Note that register numbers are completely // arbitrary, and are not tied to any machine-level encodings.) #ifdef _LP64 if( t->base() == Type::DoubleBot || t->base() == Type::DoubleCon ) { ! array->append(new ConstantIntValue(0)); array->append(new_loc_value( _regalloc, regnum, Location::dbl )); } else if ( t->base() == Type::Long ) { ! array->append(new ConstantIntValue(0)); array->append(new_loc_value( _regalloc, regnum, Location::lng )); } else if ( t->base() == Type::RawPtr ) { // jsr/ret return address which must be restored into a the full // width 64-bit stack slot. array->append(new_loc_value( _regalloc, regnum, Location::lng )); --- 575,588 ---- // the word in the even single-register is stored to the first // memory word. (Note that register numbers are completely // arbitrary, and are not tied to any machine-level encodings.) #ifdef _LP64 if( t->base() == Type::DoubleBot || t->base() == Type::DoubleCon ) { ! array->append(new ConstantIntValue((jint)0)); array->append(new_loc_value( _regalloc, regnum, Location::dbl )); } else if ( t->base() == Type::Long ) { ! array->append(new ConstantIntValue((jint)0)); array->append(new_loc_value( _regalloc, regnum, Location::lng )); } else if ( t->base() == Type::RawPtr ) { // jsr/ret return address which must be restored into a the full // width 64-bit stack slot. array->append(new_loc_value( _regalloc, regnum, Location::lng ));
*** 661,671 **** break; } case Type::DoubleCon: { jdouble d = t->is_double_constant()->getd(); #ifdef _LP64 ! array->append(new ConstantIntValue(0)); array->append(new ConstantDoubleValue(d)); #else // Repack the double as two jints. // The convention the interpreter uses is that the second local // holds the first raw word of the native double representation. --- 661,671 ---- break; } case Type::DoubleCon: { jdouble d = t->is_double_constant()->getd(); #ifdef _LP64 ! array->append(new ConstantIntValue((jint)0)); array->append(new ConstantDoubleValue(d)); #else // Repack the double as two jints. // The convention the interpreter uses is that the second local // holds the first raw word of the native double representation.
*** 681,691 **** break; } case Type::Long: { jlong d = t->is_long()->get_con(); #ifdef _LP64 ! array->append(new ConstantIntValue(0)); array->append(new ConstantLongValue(d)); #else // Repack the long as two jints. // The convention the interpreter uses is that the second local // holds the first raw word of the native double representation. --- 681,691 ---- break; } case Type::Long: { jlong d = t->is_long()->get_con(); #ifdef _LP64 ! array->append(new ConstantIntValue((jint)0)); array->append(new ConstantLongValue(d)); #else // Repack the long as two jints. // The convention the interpreter uses is that the second local // holds the first raw word of the native double representation.
< prev index next >