diff options
author | Mehdi Amini <mehdi.amini@apple.com> | 2015-12-02 04:34:28 +0000 |
---|---|---|
committer | Mehdi Amini <mehdi.amini@apple.com> | 2015-12-02 04:34:28 +0000 |
commit | accfde3ad612bb30e426b1bc13760549a28fd9df (patch) | |
tree | 7bcc48a7353b79ab6778f8dc88842ca1c4a9fc47 /tools/llvm-link | |
parent | 569415a25bdab720be12062c3a0540ba026453db (diff) |
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 <mehdi.amini@apple.com>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@254486 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/llvm-link')
-rw-r--r-- | tools/llvm-link/llvm-link.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/tools/llvm-link/llvm-link.cpp b/tools/llvm-link/llvm-link.cpp index 2b63649cec2..9a373c25cc5 100644 --- a/tools/llvm-link/llvm-link.cpp +++ b/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<const GlobalValue *> FunctionToImport; + FunctionToImport.insert(F); + if (L.linkInModule(*M, Linker::Flags::None, Index.get(), + &FunctionToImport)) return false; } return true; |