Lines Matching refs:left

769   // We only have `dst_slot` and `dst_object` left as distinct registers so we
1580 // Make scratch the space we have left. The stack might already be overflowed
2288 void TurboAssembler::FloatMaxHelper(T result, T left, T right,
2292 DCHECK(left != right);
2296 VFPCompareAndSetFlags(left, right);
2298 vmaxnm(result, left, right);
2301 VFPCompareAndSetFlags(left, right);
2304 bool aliased_result_reg = result == left || result == right;
2306 Move(result, left, gt);
2309 VFPCompareAndSetFlags(left, 0.0);
2319 void TurboAssembler::FloatMaxOutOfLineHelper(T result, T left, T right) {
2320 DCHECK(left != right);
2322 // ARMv8: At least one of left and right is a NaN.
2323 // Anything else: At least one of left and right is a NaN, or both left and
2326 // If left and right are +/-0, select the one with the most positive sign.
2327 // If left or right are NaN, vadd propagates the appropriate one.
2328 vadd(result, left, right);
2332 void TurboAssembler::FloatMinHelper(T result, T left, T right,
2336 DCHECK(left != right);
2340 VFPCompareAndSetFlags(left, right);
2342 vminnm(result, left, right);
2345 VFPCompareAndSetFlags(left, right);
2348 bool aliased_result_reg = result == left || result == right;
2349 Move(result, left, aliased_result_reg ? mi : al);
2353 VFPCompareAndSetFlags(left, 0.0);
2358 // At this point, both left and right are either 0 or -0.
2362 if (left == result) {
2364 vneg(result, left);
2368 DCHECK(left != result);
2370 vsub(result, result, left);
2378 void TurboAssembler::FloatMinOutOfLineHelper(T result, T left, T right) {
2379 DCHECK(left != right);
2381 // At least one of left and right is a NaN. Use vadd to propagate the NaN
2383 vadd(result, left, right);
2386 void TurboAssembler::FloatMax(SwVfpRegister result, SwVfpRegister left,
2388 FloatMaxHelper(result, left, right, out_of_line);
2391 void TurboAssembler::FloatMin(SwVfpRegister result, SwVfpRegister left,
2393 FloatMinHelper(result, left, right, out_of_line);
2396 void TurboAssembler::FloatMax(DwVfpRegister result, DwVfpRegister left,
2398 FloatMaxHelper(result, left, right, out_of_line);
2401 void TurboAssembler::FloatMin(DwVfpRegister result, DwVfpRegister left,
2403 FloatMinHelper(result, left, right, out_of_line);
2406 void TurboAssembler::FloatMaxOutOfLine(SwVfpRegister result, SwVfpRegister left,
2408 FloatMaxOutOfLineHelper(result, left, right);
2411 void TurboAssembler::FloatMinOutOfLine(SwVfpRegister result, SwVfpRegister left,
2413 FloatMinOutOfLineHelper(result, left, right);
2416 void TurboAssembler::FloatMaxOutOfLine(DwVfpRegister result, DwVfpRegister left,
2418 FloatMaxOutOfLineHelper(result, left, right);
2421 void TurboAssembler::FloatMinOutOfLine(DwVfpRegister result, DwVfpRegister left,
2423 FloatMinOutOfLineHelper(result, left, right);