libstdc++: Support aarch64-w64-mingw32 target in fast_float
This patch resolves the GCC compilation issue for the C++ language targeting aarch64-w64-mingw32. The change in fast_float has been upstreamed. https://github.com/fastfloat/fast_float/pull/269 libstdc++-v3/ChangeLog: * src/c++17/fast_float/fast_float.h (full_multiplication): Support aarch64-w64-mingw32 target.
This commit is contained in:
parent
648d5c26e2
commit
c3ba75f6ac
1 changed files with 2 additions and 1 deletions
|
@ -275,7 +275,8 @@ fastfloat_really_inline value128 full_multiplication(uint64_t a,
|
|||
// But MinGW on ARM64 doesn't have native support for 64-bit multiplications
|
||||
answer.high = __umulh(a, b);
|
||||
answer.low = a * b;
|
||||
#elif defined(FASTFLOAT_32BIT) || (defined(_WIN64) && !defined(__clang__))
|
||||
#elif defined(FASTFLOAT_32BIT) || \
|
||||
(defined(_WIN64) && !defined(__clang__) && !defined(_M_ARM64))
|
||||
answer.low = _umul128(a, b, &answer.high); // _umul128 not available on ARM64
|
||||
#elif defined(FASTFLOAT_64BIT)
|
||||
__uint128_t r = ((__uint128_t)a) * b;
|
||||
|
|
Loading…
Add table
Reference in a new issue