提交 82fa2be3 编写于 作者: I iveresov

6984056: C1: incorrect code for integer constant addition on x64

Summary: Fix add/sub of constants to ints on x64
Reviewed-by: kvn
上级 e2a54fd3
...@@ -2066,11 +2066,11 @@ void LIR_Assembler::arith_op(LIR_Code code, LIR_Opr left, LIR_Opr right, LIR_Opr ...@@ -2066,11 +2066,11 @@ void LIR_Assembler::arith_op(LIR_Code code, LIR_Opr left, LIR_Opr right, LIR_Opr
jint c = right->as_constant_ptr()->as_jint(); jint c = right->as_constant_ptr()->as_jint();
switch (code) { switch (code) {
case lir_add: { case lir_add: {
__ increment(lreg, c); __ incrementl(lreg, c);
break; break;
} }
case lir_sub: { case lir_sub: {
__ decrement(lreg, c); __ decrementl(lreg, c);
break; break;
} }
default: ShouldNotReachHere(); default: ShouldNotReachHere();
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册