[PATCH] D143990: [llvm] Deprecate {Bits,Float,Double}To{Bits,Float,Double} (NFC)

Kazu Hirata via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Feb 14 09:52:42 PST 2023


This revision was landed with ongoing or failed builds.
This revision was automatically updated to reflect the committed changes.
Closed by commit rG0f52c1f86c62: [llvm] Deprecate {Bits,Float,Double}To{Bits,Float,Double} (NFC) (authored by kazu).

Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D143990/new/

https://reviews.llvm.org/D143990

Files:
  llvm/include/llvm/Support/MathExtras.h
  llvm/unittests/Support/MathExtrasTest.cpp


Index: llvm/unittests/Support/MathExtrasTest.cpp
===================================================================
--- llvm/unittests/Support/MathExtrasTest.cpp
+++ llvm/unittests/Support/MathExtrasTest.cpp
@@ -162,16 +162,6 @@
   EXPECT_EQ(CTLog2<1ULL << 15>(), 15U);
 }
 
-TEST(MathExtras, FloatBits) {
-  static const float kValue = 5632.34f;
-  EXPECT_FLOAT_EQ(kValue, BitsToFloat(FloatToBits(kValue)));
-}
-
-TEST(MathExtras, DoubleBits) {
-  static const double kValue = 87987234.983498;
-  EXPECT_DOUBLE_EQ(kValue, BitsToDouble(DoubleToBits(kValue)));
-}
-
 TEST(MathExtras, MinAlign) {
   EXPECT_EQ(1u, MinAlign(2, 3));
   EXPECT_EQ(2u, MinAlign(2, 4));
Index: llvm/include/llvm/Support/MathExtras.h
===================================================================
--- llvm/include/llvm/Support/MathExtras.h
+++ llvm/include/llvm/Support/MathExtras.h
@@ -403,12 +403,14 @@
 }
 
 /// This function takes a 64-bit integer and returns the bit equivalent double.
+LLVM_DEPRECATED("use llvm::bit_cast instead", "llvm::bit_cast<double>")
 inline double BitsToDouble(uint64_t Bits) {
   static_assert(sizeof(uint64_t) == sizeof(double), "Unexpected type sizes");
   return llvm::bit_cast<double>(Bits);
 }
 
 /// This function takes a 32-bit integer and returns the bit equivalent float.
+LLVM_DEPRECATED("use llvm::bit_cast instead", "llvm::bit_cast<float>")
 inline float BitsToFloat(uint32_t Bits) {
   static_assert(sizeof(uint32_t) == sizeof(float), "Unexpected type sizes");
   return llvm::bit_cast<float>(Bits);
@@ -417,6 +419,7 @@
 /// This function takes a double and returns the bit equivalent 64-bit integer.
 /// Note that copying doubles around changes the bits of NaNs on some hosts,
 /// notably x86, so this routine cannot be used if these bits are needed.
+LLVM_DEPRECATED("use llvm::bit_cast instead", "llvm::bit_cast<uint64_t>")
 inline uint64_t DoubleToBits(double Double) {
   static_assert(sizeof(uint64_t) == sizeof(double), "Unexpected type sizes");
   return llvm::bit_cast<uint64_t>(Double);
@@ -425,6 +428,7 @@
 /// This function takes a float and returns the bit equivalent 32-bit integer.
 /// Note that copying floats around changes the bits of NaNs on some hosts,
 /// notably x86, so this routine cannot be used if these bits are needed.
+LLVM_DEPRECATED("use llvm::bit_cast instead", "llvm::bit_cast<uint32_t>")
 inline uint32_t FloatToBits(float Float) {
   static_assert(sizeof(uint32_t) == sizeof(float), "Unexpected type sizes");
   return llvm::bit_cast<uint32_t>(Float);


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D143990.497368.patch
Type: text/x-patch
Size: 2517 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20230214/455671fb/attachment.bin>


More information about the llvm-commits mailing list