From ba263ee4fa21e4ee0085d094a5a76e330b2a438d Mon Sep 17 00:00:00 2001 From: Ryan Foster Date: Sun, 16 Apr 2023 20:28:26 -0400 Subject: [PATCH] Revert "libobs: Improve util_mul_div64 outside MSVC" This reverts commit c977417747992e3fed32b775073503b25fb82599. Reverted due to a regression. --- libobs/util/util_uint64.h | 12 +----------- 1 file changed, 1 insertion(+), 11 deletions(-) diff --git a/libobs/util/util_uint64.h b/libobs/util/util_uint64.h index 2db3d4f3d..19a9a07a7 100644 --- a/libobs/util/util_uint64.h +++ b/libobs/util/util_uint64.h @@ -22,17 +22,7 @@ static inline uint64_t util_mul_div64(uint64_t num, uint64_t mul, uint64_t div) { -#if !defined(_MSC_VER) -#if defined(__x86_64__) - uint64_t rax, rdx; - __asm__("mulq %2" : "=a"(rax), "=d"(rdx) : "r"(num), "a"(mul)); - __asm__("divq %1" : "=a"(rax) : "r"(div), "a"(rax), "d"(rdx)); - return rax; -#else - return (uint64_t)(((__uint128_t)num * (__uint128_t)mul) / - (__uint128_t)div); -#endif -#elif defined(_M_X64) && (_MSC_VER >= 1920) +#if defined(_MSC_VER) && defined(_M_X64) && (_MSC_VER >= 1920) unsigned __int64 high; const unsigned __int64 low = _umul128(num, mul, &high); unsigned __int64 rem;