================
@@ -1047,36 +1047,37 @@ TEST(APFloatTest, IsSmallestNormalized) {
continue;
EXPECT_FALSE(APFloat::getZero(Semantics, false).isSmallestNormalized());
- EXPECT_FALSE(APFloat::getZero(Semantics, true).isSmallestNormalized());
+ if (Semantics.hasSignedRepr)
+ EXPECT_FALSE(APFloat::getZero(Semantics, true).isSmallestNormalized());
if (APFloat::semanticsHasNaN(Semantics)) {
// Types that do not support Inf will return NaN when asked for Inf.
// (But only if they support NaN.)
EXPECT_FALSE(APFloat::getInf(Semantics, false).isSmallestNormalized());
- EXPECT_FALSE(APFloat::getInf(Semantics, true).isSmallestNormalized());
+ if (Semantics.hasSignedRepr)
+ EXPECT_FALSE(APFloat::getInf(Semantics, true).isSmallestNormalized());
EXPECT_FALSE(APFloat::getQNaN(Semantics).isSmallestNormalized());
EXPECT_FALSE(APFloat::getSNaN(Semantics).isSmallestNormalized());
}
- EXPECT_FALSE(APFloat::getLargest(Semantics).isSmallestNormalized());
- EXPECT_FALSE(APFloat::getLargest(Semantics, true).isSmallestNormalized());
+ EXPECT_FALSE(APFloat::getLargest(Semantics, false).isSmallestNormalized());
+ if (Semantics.hasSignedRepr)
+ EXPECT_FALSE(APFloat::getLargest(Semantics,
true).isSmallestNormalized());
- EXPECT_FALSE(APFloat::getSmallest(Semantics).isSmallestNormalized());
- EXPECT_FALSE(APFloat::getSmallest(Semantics, true).isSmallestNormalized());
+ EXPECT_FALSE(APFloat::getSmallest(Semantics,
false).isSmallestNormalized());
+ if (Semantics.hasSignedRepr)
+ EXPECT_FALSE(
+ APFloat::getSmallest(Semantics, true).isSmallestNormalized());
EXPECT_FALSE(APFloat::getAllOnesValue(Semantics).isSmallestNormalized());
APFloat PosSmallestNormalized =
APFloat::getSmallestNormalized(Semantics, false);
- APFloat NegSmallestNormalized =
- APFloat::getSmallestNormalized(Semantics, true);
EXPECT_TRUE(PosSmallestNormalized.isSmallestNormalized());
- EXPECT_TRUE(NegSmallestNormalized.isSmallestNormalized());
EXPECT_EQ(fcPosNormal, PosSmallestNormalized.classify());
- EXPECT_EQ(fcNegNormal, NegSmallestNormalized.classify());
- for (APFloat *Val : {&PosSmallestNormalized, &NegSmallestNormalized}) {
----------------
durga4github wrote:
nit:
would initializing the list with Neg only for SignedRep will reduce the amount
of diff here?
something like this:
```
SmallVector<APFloat *> Vals = {&PosSmallestNormalized};
if (Semantics.hasSignedRepr) {
Init - NegSmallestNormalized();
EXPECT_TRUE(NegSmallestNormalized->isSmallestNormalized());
EXPECT_EQ(fcNegNormal, NegSmallestNormalized->classify());
Vals.push_back(&*NegSmallestNormalized);
}
for (APFloat *Val : Vals) {
// original loop body unchanged
}
```
https://github.com/llvm/llvm-project/pull/210720
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits