summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Bitcode/Reader/BitcodeReader.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/lib/Bitcode/Reader/BitcodeReader.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/lib/Bitcode/Reader/BitcodeReader.cpp')
-rw-r--r--llvm/lib/Bitcode/Reader/BitcodeReader.cpp10
1 files changed, 6 insertions, 4 deletions
diff --git a/llvm/lib/Bitcode/Reader/BitcodeReader.cpp b/llvm/lib/Bitcode/Reader/BitcodeReader.cpp
index 954d482c5a9..7cdeb01a28d 100644
--- a/llvm/lib/Bitcode/Reader/BitcodeReader.cpp
+++ b/llvm/lib/Bitcode/Reader/BitcodeReader.cpp
@@ -2628,11 +2628,13 @@ std::error_code BitcodeReader::parseMetadata(bool ModuleLevel) {
if (Record.size() != 5)
return error("Invalid record");
- IsDistinct = Record[0];
+ IsDistinct = Record[0] & 1;
+ bool ExportSymbols = Record[0] & 2;
MetadataList.assignValue(
- GET_OR_DISTINCT(DINamespace, (Context, getMDOrNull(Record[1]),
- getMDOrNull(Record[2]),
- getMDString(Record[3]), Record[4])),
+ GET_OR_DISTINCT(DINamespace,
+ (Context, getMDOrNull(Record[1]),
+ getMDOrNull(Record[2]), getMDString(Record[3]),
+ Record[4], ExportSymbols)),
NextMetadataNo++);
break;
}
OpenPOWER on IntegriCloud