/*
* This file is part of the GROMACS molecular simulation package.
*
- * Copyright (c) 2014,2015,2016,2017, by the GROMACS development team, led by
+ * Copyright (c) 2014,2015,2016,2017,2019, by the GROMACS development team, led by
* Mark Abraham, David van der Spoel, Berk Hess, and Erik Lindahl,
* and including many others, as listed in the AUTHORS file in the
* top-level source directory and at http://www.gromacs.org.
maskzRsqrt(SimdFloat x, SimdFBool m)
{
#ifndef NDEBUG
- x.simdInternal_ = _mm_or_ps(_mm_andnot_ps(m.simdInternal_, _mm_set1_ps(1.0f)), _mm_and_ps(m.simdInternal_, x.simdInternal_));
+ x.simdInternal_ = _mm_or_ps(_mm_andnot_ps(m.simdInternal_, _mm_set1_ps(1.0F)), _mm_and_ps(m.simdInternal_, x.simdInternal_));
#endif
return {
_mm_and_ps(_mm_rsqrt_ps(x.simdInternal_), m.simdInternal_)
maskzRcp(SimdFloat x, SimdFBool m)
{
#ifndef NDEBUG
- x.simdInternal_ = _mm_or_ps(_mm_andnot_ps(m.simdInternal_, _mm_set1_ps(1.0f)), _mm_and_ps(m.simdInternal_, x.simdInternal_));
+ x.simdInternal_ = _mm_or_ps(_mm_andnot_ps(m.simdInternal_, _mm_set1_ps(1.0F)), _mm_and_ps(m.simdInternal_, x.simdInternal_));
#endif
return {
_mm_and_ps(_mm_rcp_ps(x.simdInternal_), m.simdInternal_)
const __m128 exponentMask = _mm_castsi128_ps(_mm_set1_epi32(0x7F800000));
const __m128 mantissaMask = _mm_castsi128_ps(_mm_set1_epi32(0x807FFFFF));
const __m128i exponentBias = _mm_set1_epi32(126); // add 1 to make our definition identical to frexp()
- const __m128 half = _mm_set1_ps(0.5f);
+ const __m128 half = _mm_set1_ps(0.5F);
__m128i iExponent;
iExponent = _mm_castps_si128(_mm_and_ps(value.simdInternal_, exponentMask));