diff options
Diffstat (limited to 'llvm/unittests/Support/MathExtrasTest.cpp')
-rw-r--r-- | llvm/unittests/Support/MathExtrasTest.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/llvm/unittests/Support/MathExtrasTest.cpp b/llvm/unittests/Support/MathExtrasTest.cpp index 72c765d..2186558 100644 --- a/llvm/unittests/Support/MathExtrasTest.cpp +++ b/llvm/unittests/Support/MathExtrasTest.cpp @@ -41,6 +41,9 @@ TEST(MathExtras, onesMask) { TEST(MathExtras, isIntN) { EXPECT_TRUE(isIntN(16, 32767)); EXPECT_FALSE(isIntN(16, 32768)); + EXPECT_TRUE(isUIntN(0, 0)); + EXPECT_FALSE(isUIntN(0, 1)); + EXPECT_FALSE(isUIntN(0, -1)); } TEST(MathExtras, isUIntN) { @@ -48,6 +51,8 @@ TEST(MathExtras, isUIntN) { EXPECT_FALSE(isUIntN(16, 65536)); EXPECT_TRUE(isUIntN(1, 0)); EXPECT_TRUE(isUIntN(6, 63)); + EXPECT_TRUE(isUIntN(0, 0)); + EXPECT_FALSE(isUIntN(0, 1)); } TEST(MathExtras, maxIntN) { @@ -55,6 +60,7 @@ TEST(MathExtras, maxIntN) { EXPECT_EQ(2147483647, maxIntN(32)); EXPECT_EQ(std::numeric_limits<int32_t>::max(), maxIntN(32)); EXPECT_EQ(std::numeric_limits<int64_t>::max(), maxIntN(64)); + EXPECT_EQ(0, maxIntN(0)); } TEST(MathExtras, minIntN) { @@ -62,6 +68,7 @@ TEST(MathExtras, minIntN) { EXPECT_EQ(-64LL, minIntN(7)); EXPECT_EQ(std::numeric_limits<int32_t>::min(), minIntN(32)); EXPECT_EQ(std::numeric_limits<int64_t>::min(), minIntN(64)); + EXPECT_EQ(0, minIntN(0)); } TEST(MathExtras, maxUIntN) { @@ -70,6 +77,7 @@ TEST(MathExtras, maxUIntN) { EXPECT_EQ(0xffffffffffffffffULL, maxUIntN(64)); EXPECT_EQ(1ULL, maxUIntN(1)); EXPECT_EQ(0x0fULL, maxUIntN(4)); + EXPECT_EQ(0, maxUIntN(0)); } TEST(MathExtras, reverseBits) { |