< prev index next >

src/share/vm/opto/compile.cpp

Print this page

        

*** 3812,3821 **** --- 3812,3822 ---- bool Compile::Constant::operator==(const Constant& other) { if (type() != other.type() ) return false; if (can_be_reused() != other.can_be_reused()) return false; // For floating point values we compare the bit pattern. switch (type()) { + case T_INT: case T_FLOAT: return (_v._value.i == other._v._value.i); case T_LONG: case T_DOUBLE: return (_v._value.j == other._v._value.j); case T_OBJECT: case T_ADDRESS: return (_v._value.l == other._v._value.l);
*** 3826,3835 **** --- 3827,3837 ---- return false; } static int type_to_size_in_bytes(BasicType t) { switch (t) { + case T_INT: return sizeof(jint ); case T_LONG: return sizeof(jlong ); case T_FLOAT: return sizeof(jfloat ); case T_DOUBLE: return sizeof(jdouble); case T_METADATA: return sizeof(Metadata*); // We use T_VOID as marker for jump-table entries (labels) which
*** 3894,3903 **** --- 3896,3906 ---- MacroAssembler _masm(&cb); for (int i = 0; i < _constants.length(); i++) { Constant con = _constants.at(i); address constant_addr = NULL; switch (con.type()) { + case T_INT: constant_addr = _masm.int_constant( con.get_jint() ); break; case T_LONG: constant_addr = _masm.long_constant( con.get_jlong() ); break; case T_FLOAT: constant_addr = _masm.float_constant( con.get_jfloat() ); break; case T_DOUBLE: constant_addr = _masm.double_constant(con.get_jdouble()); break; case T_OBJECT: { jobject obj = con.get_jobject();
< prev index next >