summaryrefslogtreecommitdiffstats
path: root/llvm/unittests/IR/MetadataTest.cpp
diff options
context:
space:
mode:
authorAdrian Prantl <aprantl@apple.com>2016-11-03 19:42:02 +0000
committerAdrian Prantl <aprantl@apple.com>2016-11-03 19:42:02 +0000
commitdbfda63695272c2d12a6a61b18b52d3961d8e1a8 (patch)
tree84e60fd946f3806394c80e3b796986b6a5bf6f13 /llvm/unittests/IR/MetadataTest.cpp
parent8a569174928c79af07459fb92751b36624baedde (diff)
downloadbcm5719-llvm-dbfda63695272c2d12a6a61b18b52d3961d8e1a8.tar.gz
bcm5719-llvm-dbfda63695272c2d12a6a61b18b52d3961d8e1a8.zip
Add DWARF debug info support for C++11 inline namespaces.
This implements the DWARF 5 DW_AT_export_symbols feature: http://dwarfstd.org/ShowIssue.php?issue=141212.1 <rdar://problem/18616046> llvm-svn: 285959
Diffstat (limited to 'llvm/unittests/IR/MetadataTest.cpp')
-rw-r--r--llvm/unittests/IR/MetadataTest.cpp20
1 files changed, 14 insertions, 6 deletions
diff --git a/llvm/unittests/IR/MetadataTest.cpp b/llvm/unittests/IR/MetadataTest.cpp
index 014a22cf64b..0a3442e6c19 100644
--- a/llvm/unittests/IR/MetadataTest.cpp
+++ b/llvm/unittests/IR/MetadataTest.cpp
@@ -1706,20 +1706,28 @@ TEST_F(DINamespaceTest, get) {
DIFile *File = getFile();
StringRef Name = "namespace";
unsigned Line = 5;
+ bool ExportSymbols = true;
- auto *N = DINamespace::get(Context, Scope, File, Name, Line);
+ auto *N = DINamespace::get(Context, Scope, File, Name, Line, ExportSymbols);
EXPECT_EQ(dwarf::DW_TAG_namespace, N->getTag());
EXPECT_EQ(Scope, N->getScope());
EXPECT_EQ(File, N->getFile());
EXPECT_EQ(Name, N->getName());
EXPECT_EQ(Line, N->getLine());
- EXPECT_EQ(N, DINamespace::get(Context, Scope, File, Name, Line));
+ EXPECT_EQ(N,
+ DINamespace::get(Context, Scope, File, Name, Line, ExportSymbols));
- EXPECT_NE(N, DINamespace::get(Context, getFile(), File, Name, Line));
- EXPECT_NE(N, DINamespace::get(Context, Scope, getFile(), Name, Line));
- EXPECT_NE(N, DINamespace::get(Context, Scope, File, "other", Line));
- EXPECT_NE(N, DINamespace::get(Context, Scope, File, Name, Line + 1));
+ EXPECT_NE(N,
+ DINamespace::get(Context, getFile(), File, Name, Line, ExportSymbols));
+ EXPECT_NE(N,
+ DINamespace::get(Context, Scope, getFile(), Name, Line, ExportSymbols));
+ EXPECT_NE(N,
+ DINamespace::get(Context, Scope, File, "other", Line, ExportSymbols));
+ EXPECT_NE(N,
+ DINamespace::get(Context, Scope, File, Name, Line + 1, ExportSymbols));
+ EXPECT_NE(N,
+ DINamespace::get(Context, Scope, File, Name, Line, !ExportSymbols));
TempDINamespace Temp = N->clone();
EXPECT_EQ(N, MDNode::replaceWithUniqued(std::move(Temp)));
OpenPOWER on IntegriCloud