Fix printing of function-local metadata in AsmWriter
authorVictor Hernandez <vhernandez@apple.com>
Thu, 14 Jan 2010 01:47:37 +0000 (01:47 +0000)
committerVictor Hernandez <vhernandez@apple.com>
Thu, 14 Jan 2010 01:47:37 +0000 (01:47 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93402 91177308-0d34-0410-b5e6-96231b3b80d8

lib/VMCore/AsmWriter.cpp

index 92dbd93d353c766c4ea1f1814425b79f1e89d189..eff2c772c2b3a656cd39412f0ea349ef752d61d1 100644 (file)
@@ -2062,8 +2062,9 @@ void Value::print(raw_ostream &ROS, AssemblyAnnotationWriter *AAW) const {
     else
       W.printAlias(cast<GlobalAlias>(GV));
   } else if (const MDNode *N = dyn_cast<MDNode>(this)) {
-    SlotTracker SlotTable((Function*)0);
-    AssemblyWriter W(OS, SlotTable, 0, AAW);
+    Function *F = N->getFunction();
+    SlotTracker SlotTable(F);
+    AssemblyWriter W(OS, SlotTable, getModuleFromVal(F), AAW);
     W.printMDNodeBody(N);
   } else if (const NamedMDNode *N = dyn_cast<NamedMDNode>(this)) {
     SlotTracker SlotTable(N->getParent());