Lines Matching refs:U
31 template <typename T, typename U>
33 std::enable_if_t<std::is_integral_v<T> && std::is_integral_v<U>>;
36 template <typename T, typename U, typename = enableif_int<T, U>>
38 std::common_type_t<std::make_unsigned_t<T>, std::make_unsigned_t<U>>;
39 template <typename T, typename U, typename = enableif_int<T, U>>
41 std::common_type_t<std::make_signed_t<T>, std::make_signed_t<U>>;
365 template <typename U, typename V, typename T = common_uint<U, V>>
366 constexpr T MinAlign(U A, V B) { in MinAlign()
402 template <typename U, typename V, typename T = common_uint<U, V>>
403 constexpr T divideCeil(U Numerator, V Denominator) { in divideCeil()
418 template <typename U, typename V>
419 constexpr bool divideSignedWouldOverflow(U Numerator, V Denominator) { in divideSignedWouldOverflow()
420 return Numerator == std::numeric_limits<U>::min() && Denominator == -1; in divideSignedWouldOverflow()
425 template <typename U, typename V, typename T = common_sint<U, V>>
426 constexpr T divideCeilSigned(U Numerator, V Denominator) { in divideCeilSigned()
441 template <typename U, typename V, typename T = common_sint<U, V>>
442 constexpr T divideFloorSigned(U Numerator, V Denominator) { in divideFloorSigned()
457 template <typename U, typename V, typename T = common_sint<U, V>>
458 constexpr T mod(U Numerator, V Denominator) { in mod()
466 template <typename U, typename V, typename T = common_uint<U, V>>
467 constexpr T divideNearest(U Numerator, V Denominator) { in divideNearest()
486 template <typename U, typename V, typename T = common_uint<U, V>>
487 constexpr T alignTo(U Value, V Align) { in alignTo()
523 template <typename U, typename V, typename W,
524 typename T = common_uint<common_uint<U, V>, W>>
525 constexpr T alignTo(U Value, V Align, W Skew) { in alignTo()
545 template <typename U, typename V, typename W = uint8_t,
546 typename T = common_uint<common_uint<U, V>, W>>
547 constexpr T alignDown(U Value, V Align, W Skew = 0) {
591 template <typename U, typename V, typename T = common_uint<U, V>>
592 constexpr T AbsoluteDifference(U X, V Y) { in AbsoluteDifference()
698 using U = std::make_unsigned_t<T>; in AddOverflow()
699 const U UX = static_cast<U>(X); in AddOverflow()
700 const U UY = static_cast<U>(Y); in AddOverflow()
701 const U UResult = UX + UY; in AddOverflow()
724 using U = std::make_unsigned_t<T>; in SubOverflow()
725 const U UX = static_cast<U>(X); in SubOverflow()
726 const U UY = static_cast<U>(Y); in SubOverflow()
727 const U UResult = UX - UY; in SubOverflow()
750 using U = std::make_unsigned_t<T>; in MulOverflow()
751 const U UX = X < 0 ? (0 - static_cast<U>(X)) : static_cast<U>(X); in MulOverflow()
752 const U UY = Y < 0 ? (0 - static_cast<U>(Y)) : static_cast<U>(Y); in MulOverflow()
753 const U UResult = UX * UY; in MulOverflow()
767 return UX > (static_cast<U>(std::numeric_limits<T>::max()) + U(1)) / UY; in MulOverflow()
769 return UX > (static_cast<U>(std::numeric_limits<T>::max())) / UY; in MulOverflow()