diff ir/irclass.cpp @ 1555:ed0cffe895ec

use the new NamedMDNode class this will need a LLVM >= r77619
author Benjamin Kramer <benny.kra@gmail.com>
date Thu, 30 Jul 2009 20:54:03 +0200
parents d6e8d5db259f
children 3adcb70700cb
line wrap: on
line diff
--- a/ir/irclass.cpp	Thu Jul 30 15:25:10 2009 +0200
+++ b/ir/irclass.cpp	Thu Jul 30 20:54:03 2009 +0200
@@ -85,10 +85,10 @@
         mdVals[CD_Finalize] = LLConstantInt::get(LLType::Int1Ty, hasDestructor);
         mdVals[CD_CustomDelete] = LLConstantInt::get(LLType::Int1Ty, hasCustomDelete);
         // Construct the metadata
-        llvm::MDNode* metadata = gIR->context().getMDNode(mdVals, CD_NumFields);
+        llvm::MetadataBase* metadata = gIR->context().getMDNode(mdVals, CD_NumFields);
         // Insert it into the module
-        new llvm::GlobalVariable(*gIR->module, metadata->getType(), true,
-            METADATA_LINKAGE_TYPE, metadata, CD_PREFIX + initname);
+        std::string metaname = CD_PREFIX + initname;
+        llvm::NamedMDNode::Create(metaname, &metadata, 1, gIR->module);
     }
 
     return classInfo;