diff options
author | Matthias Springer <me@m-sp.org> | 2024-11-15 09:29:54 +0900 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-11-15 09:29:54 +0900 |
commit | 2f55de4e317ee93cdca839558acf8be2b5ac2b46 (patch) | |
tree | b17ec11d95569389d822fa971868250246e185eb /llvm/unittests/ADT/APFloatTest.cpp | |
parent | eec21ccee0950d52926a79685573db1996e3ba5b (diff) | |
download | llvm-2f55de4e317ee93cdca839558acf8be2b5ac2b46.zip llvm-2f55de4e317ee93cdca839558acf8be2b5ac2b46.tar.gz llvm-2f55de4e317ee93cdca839558acf8be2b5ac2b46.tar.bz2 |
[llvm] `APFloat`: Query `hasNanOrInf` from semantics (#116158)
Whether a floating point type supports NaN or infinity can be queried
from its semantics. No need to hard-code a list of types.
Diffstat (limited to 'llvm/unittests/ADT/APFloatTest.cpp')
-rw-r--r-- | llvm/unittests/ADT/APFloatTest.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/llvm/unittests/ADT/APFloatTest.cpp b/llvm/unittests/ADT/APFloatTest.cpp index 74aaf66..ab9db8e 100644 --- a/llvm/unittests/ADT/APFloatTest.cpp +++ b/llvm/unittests/ADT/APFloatTest.cpp @@ -832,7 +832,8 @@ TEST(APFloatTest, IsSmallestNormalized) { EXPECT_FALSE(APFloat::getZero(Semantics, false).isSmallestNormalized()); EXPECT_FALSE(APFloat::getZero(Semantics, true).isSmallestNormalized()); - if (APFloat::hasNanOrInf(Semantics)) { + if (APFloat::semanticsHasNanOrInf(Semantics)) { + // Types that do not support Inf will return NaN when asked for Inf. EXPECT_FALSE(APFloat::getInf(Semantics, false).isSmallestNormalized()); EXPECT_FALSE(APFloat::getInf(Semantics, true).isSmallestNormalized()); @@ -7344,7 +7345,8 @@ TEST(APFloatTest, getExactLog2) { EXPECT_EQ(INT_MIN, APFloat::getZero(Semantics, false).getExactLog2Abs()); EXPECT_EQ(INT_MIN, APFloat::getZero(Semantics, true).getExactLog2Abs()); - if (APFloat::hasNanOrInf(Semantics)) { + if (APFloat::semanticsHasNanOrInf(Semantics)) { + // Types that do not support Inf will return NaN when asked for Inf. EXPECT_EQ(INT_MIN, APFloat::getInf(Semantics).getExactLog2()); EXPECT_EQ(INT_MIN, APFloat::getInf(Semantics, true).getExactLog2()); EXPECT_EQ(INT_MIN, APFloat::getNaN(Semantics, false).getExactLog2()); |