aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar David Tellenbach <david.tellenbach@me.com>2020-10-29 07:28:28 +0100
committerGravatar David Tellenbach <david.tellenbach@me.com>2020-10-29 07:28:28 +0100
commit09f015852bac3c28849aa9bbcf0e3cc1c2fb6808 (patch)
treec1bc9c99ec60db40cc6f3052af57605af33a9b51
parente265f7ed8e59c26e15f2c35162c6b8da1c5d594f (diff)
Replace numext::as_uint with numext::bit_cast<numext::uint32_t>
-rw-r--r--Eigen/src/Core/NumTraits.h3
-rw-r--r--Eigen/src/Core/arch/Default/BFloat16.h8
-rw-r--r--Eigen/src/Core/arch/Default/GenericPacketMathFunctions.h2
3 files changed, 5 insertions, 8 deletions
diff --git a/Eigen/src/Core/NumTraits.h b/Eigen/src/Core/NumTraits.h
index 16bd74b1d..609e11402 100644
--- a/Eigen/src/Core/NumTraits.h
+++ b/Eigen/src/Core/NumTraits.h
@@ -96,9 +96,6 @@ EIGEN_STRONG_INLINE EIGEN_DEVICE_FUNC Tgt bit_cast(const Src& src) {
memcpy(&tgt, &src, sizeof(Tgt));
return tgt;
}
-
-/** \internal extract the bits of the float \a x */
-EIGEN_STRONG_INLINE EIGEN_DEVICE_FUNC numext::uint32_t as_uint(float x) { return bit_cast<numext::uint32_t>(x); }
} // namespace numext
/** \class NumTraits
diff --git a/Eigen/src/Core/arch/Default/BFloat16.h b/Eigen/src/Core/arch/Default/BFloat16.h
index 95a84e488..63ceace1e 100644
--- a/Eigen/src/Core/arch/Default/BFloat16.h
+++ b/Eigen/src/Core/arch/Default/BFloat16.h
@@ -460,14 +460,14 @@ EIGEN_STRONG_INLINE EIGEN_DEVICE_FUNC __bfloat16_raw float_to_bfloat16_rtne<true
#if (defined(EIGEN_HAS_CUDA_BF16) && defined(EIGEN_HAS_HIP_BF16))
// Nothing to do here
#else
- unsigned int input = numext::as_uint(ff);
+ numext::uint32_t input = numext::bit_cast<numext::uint32_t>(ff);
__bfloat16_raw output;
// Least significant bit of resulting bfloat.
- unsigned int lsb = (input >> 16) & 1;
- unsigned int rounding_bias = 0x7fff + lsb;
+ numext::uint32_t lsb = (input >> 16) & 1;
+ numext::uint32_t rounding_bias = 0x7fff + lsb;
input += rounding_bias;
- output.value = static_cast<unsigned short>(input >> 16);
+ output.value = static_cast<numext::uint16_t>(input >> 16);
return output;
#endif
}
diff --git a/Eigen/src/Core/arch/Default/GenericPacketMathFunctions.h b/Eigen/src/Core/arch/Default/GenericPacketMathFunctions.h
index 37b424ebf..6d92d1c72 100644
--- a/Eigen/src/Core/arch/Default/GenericPacketMathFunctions.h
+++ b/Eigen/src/Core/arch/Default/GenericPacketMathFunctions.h
@@ -461,7 +461,7 @@ inline float trig_reduce_huge (float xf, int *quadrant)
0x10e41000, 0xe4100000
};
- uint32_t xi = numext::as_uint(xf);
+ uint32_t xi = numext::bit_cast<uint32_t>(xf);
// Below, -118 = -126 + 8.
// -126 is to get the exponent,
// +8 is to enable alignment of 2/pi's bits on 8 bits.