< prev index next >

src/share/vm/c1/c1_LIRGenerator.cpp

Print this page
rev 12113 : 8166561: [s390] Adaptions needed for s390 port in C1 and C2.

*** 604,614 **** arithmetic_op(code, result, left, right, is_strictfp, tmp); } void LIRGenerator::shift_op(Bytecodes::Code code, LIR_Opr result_op, LIR_Opr value, LIR_Opr count, LIR_Opr tmp) { ! if (TwoOperandLIRForm && value != result_op) { assert(count != result_op, "malformed"); __ move(value, result_op); value = result_op; } --- 604,617 ---- arithmetic_op(code, result, left, right, is_strictfp, tmp); } void LIRGenerator::shift_op(Bytecodes::Code code, LIR_Opr result_op, LIR_Opr value, LIR_Opr count, LIR_Opr tmp) { ! ! if (TwoOperandLIRForm && value != result_op ! // Only 32bit right shifts require two operand form on S390. ! S390_ONLY(&& (code == Bytecodes::_ishr || code == Bytecodes::_iushr))) { assert(count != result_op, "malformed"); __ move(value, result_op); value = result_op; }
< prev index next >