src/cpu/x86/vm/c1_LIRGenerator_x86.cpp

changeset 2203
c393f046f4c5
parent 2174
f02a8bbe6ed4
child 2228
07a218de38cb
equal deleted inserted replaced
2202:a932f331ef90 2203:c393f046f4c5
763 val.load_item_force(FrameMap::long1_opr); 763 val.load_item_force(FrameMap::long1_opr);
764 } else { 764 } else {
765 ShouldNotReachHere(); 765 ShouldNotReachHere();
766 } 766 }
767 767
768 LIR_Opr addr = new_pointer_register(); 768 LIR_Opr addr = (type == objectType) ? new_register(T_OBJECT) : new_pointer_register();
769 LIR_Address* a; 769 LIR_Address* a;
770 if(offset.result()->is_constant()) { 770 if(offset.result()->is_constant()) {
771 a = new LIR_Address(obj.result(), 771 a = new LIR_Address(obj.result(),
772 NOT_LP64(offset.result()->as_constant_ptr()->as_jint()) LP64_ONLY((int)offset.result()->as_constant_ptr()->as_jlong()), 772 NOT_LP64(offset.result()->as_constant_ptr()->as_jint()) LP64_ONLY((int)offset.result()->as_constant_ptr()->as_jlong()),
773 as_BasicType(type)); 773 as_BasicType(type));

mercurial