IR: Add MDSubprogram::replaceFunction()
[oota-llvm.git] / lib / IR / DebugInfoMetadata.cpp
index 3d6ebbce1b4efa5148e300956f34979e0092151a..f6dfbf6cfa560678964710228b84f20854dea617 100644 (file)
@@ -14,6 +14,7 @@
 #include "llvm/IR/DebugInfoMetadata.h"
 #include "LLVMContextImpl.h"
 #include "MetadataImpl.h"
+#include "llvm/IR/Function.h"
 
 using namespace llvm;
 
@@ -264,6 +265,11 @@ MDSubprogram *MDSubprogram::getImpl(
                        Ops);
 }
 
+void MDSubprogram::replaceFunction(Function *F) {
+  replaceFunction(F ? ConstantAsMetadata::get(F)
+                    : static_cast<ConstantAsMetadata *>(nullptr));
+}
+
 MDLexicalBlock *MDLexicalBlock::getImpl(LLVMContext &Context, Metadata *Scope,
                                         Metadata *File, unsigned Line,
                                         unsigned Column, StorageType Storage,