From ffe2e4aae021964c8d7f83a362c5b51d83e48d56 Mon Sep 17 00:00:00 2001 From: Mehdi Amini Date: Wed, 2 Dec 2015 04:34:28 +0000 Subject: Change ModuleLinker to take a set of GlobalValues to import instead of a single one For efficiency reason, when importing multiple functions for the same Module, we can avoid reparsing it every time. Differential Revision: http://reviews.llvm.org/D15102 From: Mehdi Amini llvm-svn: 254486 --- llvm/tools/llvm-link/llvm-link.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'llvm/tools/llvm-link') diff --git a/llvm/tools/llvm-link/llvm-link.cpp b/llvm/tools/llvm-link/llvm-link.cpp index 2b63649cec2..9a373c25cc5 100644 --- a/llvm/tools/llvm-link/llvm-link.cpp +++ b/llvm/tools/llvm-link/llvm-link.cpp @@ -198,7 +198,10 @@ static bool importFunctions(const char *argv0, LLVMContext &Context, } // Link in the specified function. - if (L.linkInModule(*M, Linker::Flags::None, Index.get(), F)) + DenseSet FunctionToImport; + FunctionToImport.insert(F); + if (L.linkInModule(*M, Linker::Flags::None, Index.get(), + &FunctionToImport)) return false; } return true; -- cgit v1.2.3