Home | History | Annotate | Download | only in mips

Lines Matching full:dividend

975   Register dividend = ToRegister(instr->dividend());
977 DCHECK(dividend.is(ToRegister(instr->result())));
990 __ Branch(&dividend_is_not_negative, ge, dividend, Operand(zero_reg));
992 __ subu(dividend, zero_reg, dividend);
993 __ And(dividend, dividend, Operand(mask));
995 DeoptimizeIf(eq, instr, Deoptimizer::kMinusZero, dividend,
999 __ subu(dividend, zero_reg, dividend);
1003 __ And(dividend, dividend, Operand(mask));
1009 Register dividend = ToRegister(instr->dividend());
1012 DCHECK(!dividend.is(result));
1019 __ TruncatingDiv(result, dividend, Abs(divisor));
1021 __ Subu(result, dividend, Operand(result));
1028 DeoptimizeIf(lt, instr, Deoptimizer::kMinusZero, dividend,
1067 // If we care about -0, test if the dividend is <0 and the result is 0.
1078 Register dividend = ToRegister(instr->dividend());
1082 DCHECK(!result.is(dividend));
1087 DeoptimizeIf(eq, instr, Deoptimizer::kMinusZero, dividend,
1092 DeoptimizeIf(eq, instr, Deoptimizer::kOverflow, dividend, Operand(kMinInt));
1098 __ And(at, dividend, Operand(mask));
1103 __ Subu(result, zero_reg, dividend);
1108 __ Move(result, dividend);
1110 __ srl(result, dividend, 31);
1111 __ Addu(result, dividend, Operand(result));
1113 __ sra(result, dividend, 31);
1115 __ Addu(result, dividend, Operand(result));
1123 Register dividend = ToRegister(instr->dividend());
1126 DCHECK(!dividend.is(result));
1136 DeoptimizeIf(eq, instr, Deoptimizer::kMinusZero, dividend,
1140 __ TruncatingDiv(result, dividend, Abs(divisor));
1145 __ Subu(scratch0(), scratch0(), dividend);
1155 Register dividend = ToRegister(instr->dividend());
1162 __ Div(remainder, result, dividend, divisor);
1173 __ Branch(&left_not_zero, ne, dividend, Operand(zero_reg));
1183 __ Branch(&left_not_min_int, ne, dividend, Operand(kMinInt));
1208 Register dividend = ToRegister(instr->dividend());
1211 Register scratch = result.is(dividend) ? scratch0() : dividend;
1212 DCHECK(!result.is(dividend) || !scratch.is(dividend));
1214 // If the divisor is 1, return the dividend.
1216 __ Move(result, dividend);
1224 __ sra(result, dividend, shift);
1230 // dividend can be the same register as result so save the value of it
1232 __ Move(scratch, dividend);
1234 __ Subu(result, zero_reg, dividend);
1266 Register dividend = ToRegister(instr->dividend());
1269 DCHECK(!dividend.is(result));
1279 DeoptimizeIf(eq, instr, Deoptimizer::kMinusZero, dividend,
1283 // Easy case: We need no dynamic check for the dividend and the flooring
1287 __ TruncatingDiv(result, dividend, Abs(divisor));
1295 DCHECK(!temp.is(dividend) && !temp.is(result));
1298 dividend, Operand(zero_reg));
1299 __ TruncatingDiv(result, dividend, Abs(divisor));
1303 __ Addu(temp, dividend, Operand(divisor > 0 ? 1 : -1));
1314 Register dividend = ToRegister(instr->dividend());
1320 __ Div(remainder, result, dividend, divisor);
1331 __ Branch(&left_not_zero, ne, dividend, Operand(zero_reg));
1341 __ Branch(&left_not_min_int, ne, dividend, Operand(kMinInt));