aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Kretz <m.kretz@gsi.de>2023-02-03 17:47:05 +0100
committerMatthias Kretz <m.kretz@gsi.de>2023-02-16 15:58:34 +0100
commita5de17d9120dde7e6598a05ea4d1556c2783c69b (patch)
tree56769380b66a4944a7a530b5911c3426341f19a6
parent1fd3836463c65f695831ef04c7dbda1e7a1794ba (diff)
downloadgcc-a5de17d9120dde7e6598a05ea4d1556c2783c69b.zip
gcc-a5de17d9120dde7e6598a05ea4d1556c2783c69b.tar.gz
gcc-a5de17d9120dde7e6598a05ea4d1556c2783c69b.tar.bz2
libstdc++: Fix incorrect function call in -ffast-math optimization
Signed-off-by: Matthias Kretz <m.kretz@gsi.de> libstdc++-v3/ChangeLog: * include/experimental/bits/simd_math.h (__hypot): Bitcasting between scalars requires the __bit_cast helper function instead of simd_bit_cast.
-rw-r--r--libstdc++-v3/include/experimental/bits/simd_math.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/libstdc++-v3/include/experimental/bits/simd_math.h b/libstdc++-v3/include/experimental/bits/simd_math.h
index c20315e..c91f05f 100644
--- a/libstdc++-v3/include/experimental/bits/simd_math.h
+++ b/libstdc++-v3/include/experimental/bits/simd_math.h
@@ -1010,7 +1010,7 @@ template <typename _VV, typename = __detail::__odr_helper>
using _IV = rebind_simd_t<_Ip, _V>;
const auto __as_int = simd_bit_cast<_IV>(__hi_exp);
const _V __scale
- = simd_bit_cast<_V>(2 * simd_bit_cast<_Ip>(_Tp(1)) - __as_int);
+ = simd_bit_cast<_V>(2 * __bit_cast<_Ip>(_Tp(1)) - __as_int);
#else
const _V __scale = (__hi_exp ^ __inf) * _Tp(.5);
#endif
@@ -1181,7 +1181,7 @@ _GLIBCXX_SIMD_CVTING2(hypot)
using _IV = rebind_simd_t<_Ip, _V>;
const auto __as_int = simd_bit_cast<_IV>(__hi_exp);
const _V __scale
- = simd_bit_cast<_V>(2 * simd_bit_cast<_Ip>(_Tp(1)) - __as_int);
+ = simd_bit_cast<_V>(2 * __bit_cast<_Ip>(_Tp(1)) - __as_int);
#else
const _V __scale = (__hi_exp ^ __inf) * _Tp(.5);
#endif