diff options
author | Devang Patel <dpatel@apple.com> | 2009-07-23 01:07:34 +0000 |
---|---|---|
committer | Devang Patel <dpatel@apple.com> | 2009-07-23 01:07:34 +0000 |
commit | 104cf9e02b0ed94d4173869a598af6c6972a8660 (patch) | |
tree | 424e9727423125da907cebf5f0ac9bc19d47e9fd /lib/VMCore/AsmWriter.cpp | |
parent | 0aaf4e91c2961585c160af0cc87f040301aafbd2 (diff) |
Derive MDNode from MetadataBase instead of Constant. Emit MDNodes into METADATA_BLOCK in bitcode file.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76834 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/VMCore/AsmWriter.cpp')
-rw-r--r-- | lib/VMCore/AsmWriter.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/lib/VMCore/AsmWriter.cpp b/lib/VMCore/AsmWriter.cpp index d9d8cc834d..ae55d5ba51 100644 --- a/lib/VMCore/AsmWriter.cpp +++ b/lib/VMCore/AsmWriter.cpp @@ -1132,6 +1132,11 @@ static void WriteAsOperandInternal(raw_ostream &Out, const Value *V, return; } + if (const MDNode *N = dyn_cast<MDNode>(V)) { + Out << '!' << Machine->getMetadataSlot(N); + return; + } + if (const MDString *MDS = dyn_cast<MDString>(V)) { Out << "!\""; PrintEscapedString(MDS->begin(), MDS->size(), Out); |