Home | History | Annotate | Download | only in arm

Lines Matching refs:dividend

966   Register dividend = ToRegister(instr->dividend());
968 DCHECK(dividend.is(ToRegister(instr->result())));
980 __ cmp(dividend, Operand::Zero());
983 __ rsb(dividend, dividend, Operand::Zero());
984 __ and_(dividend, dividend, Operand(mask));
985 __ rsb(dividend, dividend, Operand::Zero(), SetCC);
993 __ and_(dividend, dividend, Operand(mask));
999 dividend = ToRegister(instr->dividend());
1002 DCHECK(!dividend.is(result));
1009 __ TruncatingDiv(result, dividend, Abs(divisor));
1012 __ sub(result, dividend, result, SetCC);
1019 __ cmp(dividend, Operand::Zero());
1067 // If we care about -0, test if the dividend is <0 and the result is 0.
1085 DwVfpRegister dividend = ToDoubleRegister(instr->temp());
1087 DCHECK(!divisor.is(dividend));
1089 DCHECK(!quotient.is(dividend));
1105 __ vcvt_f64_s32(dividend, double_scratch0().low());
1113 __ vdiv(quotient, dividend, divisor);
1123 // If we care about -0, test if the dividend is <0 and the result is 0.
1135 Register dividend = ToRegister(instr->dividend());
1139 DCHECK(!result.is(dividend));
1144 __ cmp(dividend, Operand::Zero());
1149 __ cmp(dividend, Operand(kMinInt));
1156 __ tst(dividend, Operand(mask));
1161 __ rsb(result, dividend, Operand(0));
1166 __ mov(result, dividend);
1168 __ add(result, dividend, Operand(dividend, LSR, 31));
1170 __ mov(result, Operand(dividend, ASR, 31));
1171 __ add(result, dividend, Operand(result, LSR, 32 - shift));
1179 Register dividend = ToRegister(instr->dividend());
1182 DCHECK(!dividend.is(result));
1192 __ cmp(dividend, Operand::Zero());
1196 __ TruncatingDiv(result, dividend, Abs(divisor));
1202 __ sub(scratch0(), scratch0(), dividend, SetCC);
1211 Register dividend = ToRegister(instr->dividend());
1229 __ cmp(dividend, Operand::Zero());
1240 __ cmp(dividend, Operand(kMinInt));
1247 __ sdiv(result, dividend, divisor);
1251 __ vmov(double_scratch0().low(), dividend);
1263 __ Mls(remainder, result, divisor, dividend);
1295 Register dividend = ToRegister(instr->dividend());
1299 // If the divisor is 1, return the dividend.
1301 __ Move(result, dividend);
1309 __ mov(result, Operand(dividend, ASR, shift));
1314 __ rsb(result, dividend, Operand::Zero(), SetCC);
1339 Register dividend = ToRegister(instr->dividend());
1342 DCHECK(!dividend.is(result));
1352 __ cmp(dividend, Operand::Zero());
1356 // Easy case: We need no dynamic check for the dividend and the flooring
1360 __ TruncatingDiv(result, dividend, Abs(divisor));
1368 DCHECK(!temp.is(dividend) && !temp.is(result));
1370 __ cmp(dividend, Operand::Zero());
1372 __ TruncatingDiv(result, dividend, Abs(divisor));
1376 __ add(temp, dividend, Operand(divisor > 0 ? 1 : -1));
1387 Register left = ToRegister(instr->dividend());