summaryrefslogtreecommitdiffstats
path: root/llvm/unittests/IR/MetadataTest.cpp
diff options
context:
space:
mode:
authorAdrian Prantl <aprantl@apple.com>2018-08-14 19:35:34 +0000
committerAdrian Prantl <aprantl@apple.com>2018-08-14 19:35:34 +0000
commit55f426299942abf1c5f90276aaf61846952387b7 (patch)
treea1c977ae2396cb5acff3bf38090492783e7b77c8 /llvm/unittests/IR/MetadataTest.cpp
parentb1546da0e8849d58fcdcf17fa1f2fab0cdae70a4 (diff)
downloadbcm5719-llvm-55f426299942abf1c5f90276aaf61846952387b7.tar.gz
bcm5719-llvm-55f426299942abf1c5f90276aaf61846952387b7.zip
[DebugInfoMetadata] Added DIFlags interface in DIBasicType.
Flags in DIBasicType will be used to pass attributes used in DW_TAG_base_type, such as DW_AT_endianity. Patch by Chirag Patel! Differential Revision: https://reviews.llvm.org/D49610 llvm-svn: 339714
Diffstat (limited to 'llvm/unittests/IR/MetadataTest.cpp')
-rw-r--r--llvm/unittests/IR/MetadataTest.cpp26
1 files changed, 17 insertions, 9 deletions
diff --git a/llvm/unittests/IR/MetadataTest.cpp b/llvm/unittests/IR/MetadataTest.cpp
index 84a7b02fa98..e160bbff280 100644
--- a/llvm/unittests/IR/MetadataTest.cpp
+++ b/llvm/unittests/IR/MetadataTest.cpp
@@ -997,26 +997,33 @@ typedef MetadataTest DIBasicTypeTest;
TEST_F(DIBasicTypeTest, get) {
auto *N =
- DIBasicType::get(Context, dwarf::DW_TAG_base_type, "special", 33, 26, 7);
+ DIBasicType::get(Context, dwarf::DW_TAG_base_type, "special", 33, 26, 7,
+ DINode::FlagZero);
EXPECT_EQ(dwarf::DW_TAG_base_type, N->getTag());
EXPECT_EQ("special", N->getName());
EXPECT_EQ(33u, N->getSizeInBits());
EXPECT_EQ(26u, N->getAlignInBits());
EXPECT_EQ(7u, N->getEncoding());
EXPECT_EQ(0u, N->getLine());
+ EXPECT_EQ(DINode::FlagZero, N->getFlags());
EXPECT_EQ(N, DIBasicType::get(Context, dwarf::DW_TAG_base_type, "special", 33,
- 26, 7));
+ 26, 7, DINode::FlagZero));
EXPECT_NE(N, DIBasicType::get(Context, dwarf::DW_TAG_unspecified_type,
- "special", 33, 26, 7));
+ "special", 33, 26, 7, DINode::FlagZero));
EXPECT_NE(N,
- DIBasicType::get(Context, dwarf::DW_TAG_base_type, "s", 33, 26, 7));
+ DIBasicType::get(Context, dwarf::DW_TAG_base_type, "s", 33, 26, 7,
+ DINode::FlagZero));
EXPECT_NE(N, DIBasicType::get(Context, dwarf::DW_TAG_base_type, "special", 32,
- 26, 7));
+ 26, 7, DINode::FlagZero));
EXPECT_NE(N, DIBasicType::get(Context, dwarf::DW_TAG_base_type, "special", 33,
- 25, 7));
+ 25, 7, DINode::FlagZero));
EXPECT_NE(N, DIBasicType::get(Context, dwarf::DW_TAG_base_type, "special", 33,
- 26, 6));
+ 26, 6, DINode::FlagZero));
+ EXPECT_NE(N, DIBasicType::get(Context, dwarf::DW_TAG_base_type, "special", 33,
+ 26, 7, DINode::FlagBigEndian));
+ EXPECT_NE(N, DIBasicType::get(Context, dwarf::DW_TAG_base_type, "special", 33,
+ 26, 7, DINode::FlagLittleEndian));
TempDIBasicType Temp = N->clone();
EXPECT_EQ(N, MDNode::replaceWithUniqued(std::move(Temp)));
@@ -1024,7 +1031,7 @@ TEST_F(DIBasicTypeTest, get) {
TEST_F(DIBasicTypeTest, getWithLargeValues) {
auto *N = DIBasicType::get(Context, dwarf::DW_TAG_base_type, "special",
- UINT64_MAX, UINT32_MAX - 1, 7);
+ UINT64_MAX, UINT32_MAX - 1, 7, DINode::FlagZero);
EXPECT_EQ(UINT64_MAX, N->getSizeInBits());
EXPECT_EQ(UINT32_MAX - 1, N->getAlignInBits());
}
@@ -1038,6 +1045,7 @@ TEST_F(DIBasicTypeTest, getUnspecified) {
EXPECT_EQ(0u, N->getAlignInBits());
EXPECT_EQ(0u, N->getEncoding());
EXPECT_EQ(0u, N->getLine());
+ EXPECT_EQ(DINode::FlagZero, N->getFlags());
}
typedef MetadataTest DITypeTest;
@@ -1045,7 +1053,7 @@ typedef MetadataTest DITypeTest;
TEST_F(DITypeTest, clone) {
// Check that DIType has a specialized clone that returns TempDIType.
DIType *N = DIBasicType::get(Context, dwarf::DW_TAG_base_type, "int", 32, 32,
- dwarf::DW_ATE_signed);
+ dwarf::DW_ATE_signed, DINode::FlagZero);
TempDIType Temp = N->clone();
EXPECT_EQ(N, MDNode::replaceWithUniqued(std::move(Temp)));
OpenPOWER on IntegriCloud