Skip to content

Commit 160dcdb

Browse files
author
ImanHosseini
committed
Add tests.
1 parent e90a9c8 commit 160dcdb

File tree

1 file changed

+21
-7
lines changed

1 file changed

+21
-7
lines changed

llvm/unittests/ADT/APIntTest.cpp

Lines changed: 21 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -39,24 +39,24 @@ TEST(APIntTest, PowZeroTo5) {
3939

4040
// Test that 1^16 == 1
4141
TEST(APIntTest, PowOneTo16) {
42-
APInt One(32, 1);
42+
APInt One = APInt::getZero(32) + 1;
4343
APInt OneTo16 = APIntOps::pow(One, 16);
4444
EXPECT_EQ(One, OneTo16);
4545
}
4646

4747
// Test that 2^10 == 1024
4848
TEST(APIntTest, PowerTwoTo10) {
49-
APInt Two(32, 2);
49+
APInt Two = APInt::getZero(32) + 2;
5050
APInt TwoTo20 = APIntOps::pow(Two, 10);
51-
APInt V_1024(32, 1024);
51+
APInt V_1024 = APInt::getZero(32) + 1024;
5252
EXPECT_EQ(TwoTo20, V_1024);
5353
}
5454

5555
// Test that 3^3 == 27
5656
TEST(APIntTest, PowerThreeTo3) {
57-
APInt Three(32, 3);
57+
APInt Three = APInt::getZero(32) + 3;
5858
APInt ThreeTo3 = APIntOps::pow(Three, 3);
59-
APInt V_27(32, 27);
59+
APInt V_27 = APInt::getZero(32) + 27;
6060
EXPECT_EQ(ThreeTo3, V_27);
6161
}
6262

@@ -74,10 +74,24 @@ TEST(APIntTest, PowerMaxValue) {
7474
EXPECT_EQ(MaxValue, MaxTo3);
7575
}
7676

77-
// Test that 0^0 == 1
77+
// Test that SignedMinValue^3 == 0
78+
TEST(APIntTest, PowerSignedMinValueTo3) {
79+
APInt SignedMinValue = APInt::getSignedMinValue(32);
80+
APInt MaxTo3 = APIntOps::pow(SignedMinValue, 3);
81+
EXPECT_TRUE(MaxTo3.isZero());
82+
}
83+
84+
// Test that SignedMinValue^1 == SignedMinValue
85+
TEST(APIntTest, PowerSignedMinValueTo1) {
86+
APInt SignedMinValue = APInt::getSignedMinValue(32);
87+
APInt MinTo1 = APIntOps::pow(SignedMinValue, 1);
88+
EXPECT_EQ(SignedMinValue, MinTo1);
89+
}
90+
91+
// Test that MaxValue^3 == MaxValue
7892
TEST(APIntTest, ZeroToZero) {
7993
APInt Zero = APInt::getZero(32);
80-
APInt One(32, 1);
94+
APInt One = APInt::getZero(32) + 1;
8195
APInt ZeroToZero = APIntOps::pow(Zero, 0);
8296
EXPECT_EQ(ZeroToZero, One);
8397
}

0 commit comments

Comments
 (0)