diff --git a/llvm/lib/YkIR/YkIRWriter.cpp b/llvm/lib/YkIR/YkIRWriter.cpp index e1dd354900b9f..953ccadb6740d 100644 --- a/llvm/lib/YkIR/YkIRWriter.cpp +++ b/llvm/lib/YkIR/YkIRWriter.cpp @@ -21,6 +21,7 @@ #include "llvm/MC/MCStreamer.h" #include "llvm/Support/ErrorHandling.h" #include "llvm/Transforms/Yk/ControlPoint.h" +#include "llvm/Transforms/Yk/ModuleClone.h" using namespace llvm; using namespace std; @@ -1742,7 +1743,10 @@ class YkIRWriter { OutStreamer.emitSizeT(M.size()); // funcs: for (llvm::Function &F : M) { - serialiseFunc(F); + // Skip cloned functions + if (!StringRef(F.getName()).startswith(YK_CLONE_PREFIX)) { + serialiseFunc(F); + } } // num_constants: