Lines Matching refs:left
274 // We only have `dst_slot` and `dst_object` left as distinct registers so we
2971 // Make scratch1 the space we have left. The stack might already be overflowed
3196 void TurboAssembler::AddOverflow_d(Register dst, Register left,
3211 DCHECK(left != scratch2 && right_reg != scratch2 && dst != scratch2 &&
3213 DCHECK(overflow != left && overflow != right_reg);
3215 if (dst == left || dst == right_reg) {
3216 add_d(scratch2, left, right_reg);
3217 xor_(overflow, scratch2, left);
3222 add_d(dst, left, right_reg);
3223 xor_(overflow, dst, left);
3229 void TurboAssembler::SubOverflow_d(Register dst, Register left,
3244 DCHECK(left != scratch2 && right_reg != scratch2 && dst != scratch2 &&
3246 DCHECK(overflow != left && overflow != right_reg);
3248 if (dst == left || dst == right_reg) {
3249 Sub_d(scratch2, left, right_reg);
3250 xor_(overflow, left, scratch2);
3251 xor_(scratch, left, right_reg);
3255 sub_d(dst, left, right_reg);
3256 xor_(overflow, left, dst);
3257 xor_(scratch, left, right_reg);
3262 void TurboAssembler::MulOverflow_w(Register dst, Register left,
3277 DCHECK(left != scratch2 && right_reg != scratch2 && dst != scratch2 &&
3279 DCHECK(overflow != left && overflow != right_reg);
3281 if (dst == left || dst == right_reg) {
3282 Mul_w(scratch2, left, right_reg);
3283 Mulh_w(overflow, left, right_reg);
3286 Mul_w(dst, left, right_reg);
3287 Mulh_w(overflow, left, right_reg);