aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Bitcode/Reader/BitcodeReader.cpp
diff options
context:
space:
mode:
authorDuncan P. N. Exon Smith <dexonsmith@apple.com>2015-02-13 01:42:09 +0000
committerDuncan P. N. Exon Smith <dexonsmith@apple.com>2015-02-13 01:42:09 +0000
commit0c5c0124acc84754fdf81bf5a98a807ee33c9bae (patch)
treebba3cae61af33ef739b738ccfa01f20febddbad2 /llvm/lib/Bitcode/Reader/BitcodeReader.cpp
parent72fe2d0b7928257881bdaba31984ccfc127eed08 (diff)
downloadllvm-0c5c0124acc84754fdf81bf5a98a807ee33c9bae.zip
llvm-0c5c0124acc84754fdf81bf5a98a807ee33c9bae.tar.gz
llvm-0c5c0124acc84754fdf81bf5a98a807ee33c9bae.tar.bz2
AsmWriter/Bitcode: MDExpression
llvm-svn: 229023
Diffstat (limited to 'llvm/lib/Bitcode/Reader/BitcodeReader.cpp')
-rw-r--r--llvm/lib/Bitcode/Reader/BitcodeReader.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/llvm/lib/Bitcode/Reader/BitcodeReader.cpp b/llvm/lib/Bitcode/Reader/BitcodeReader.cpp
index 5dee2f9..98b4803 100644
--- a/llvm/lib/Bitcode/Reader/BitcodeReader.cpp
+++ b/llvm/lib/Bitcode/Reader/BitcodeReader.cpp
@@ -1552,6 +1552,16 @@ std::error_code BitcodeReader::ParseMetadata() {
NextMDValueNo++);
break;
}
+ case bitc::METADATA_EXPRESSION: {
+ if (Record.size() < 1)
+ return Error("Invalid record");
+
+ MDValueList.AssignValue(
+ GET_OR_DISTINCT(MDExpression, Record[0],
+ (Context, makeArrayRef(Record).slice(1))),
+ NextMDValueNo++);
+ break;
+ }
case bitc::METADATA_STRING: {
std::string String(Record.begin(), Record.end());
llvm::UpgradeMDStringConstant(String);