[Constant] Add tests for ConstantVector::get (NFC)
authorJuneyoung Lee <aqjune@gmail.com>
Thu, 7 Jan 2021 01:08:01 +0000 (10:08 +0900)
committerJuneyoung Lee <aqjune@gmail.com>
Thu, 7 Jan 2021 01:08:01 +0000 (10:08 +0900)
llvm/unittests/IR/ConstantsTest.cpp

index afae154..9eabc7c 100644 (file)
@@ -631,9 +631,17 @@ TEST(ConstantsTest, isElementWiseEqual) {
 
   Type *Int32Ty = Type::getInt32Ty(Context);
   Constant *CU = UndefValue::get(Int32Ty);
+  Constant *CP = PoisonValue::get(Int32Ty);
   Constant *C1 = ConstantInt::get(Int32Ty, 1);
   Constant *C2 = ConstantInt::get(Int32Ty, 2);
 
+  Constant *CUU = ConstantVector::get({CU, CU});
+  Constant *CPP = ConstantVector::get({CP, CP});
+  Constant *CUP = ConstantVector::get({CU, CP});
+  EXPECT_EQ(CUU, UndefValue::get(CUU->getType()));
+  EXPECT_EQ(CPP, PoisonValue::get(CPP->getType()));
+  EXPECT_NE(CUP, UndefValue::get(CUP->getType()));
+
   Constant *C1211 = ConstantVector::get({C1, C2, C1, C1});
   Constant *C12U1 = ConstantVector::get({C1, C2, CU, C1});
   Constant *C12U2 = ConstantVector::get({C1, C2, CU, C2});