diff options
author | Teresa Johnson <tejohnson@google.com> | 2015-11-02 21:39:10 +0000 |
---|---|---|
committer | Teresa Johnson <tejohnson@google.com> | 2015-11-02 21:39:10 +0000 |
commit | b1d4a39990f0abcd323cdb5631f46101d3e4e867 (patch) | |
tree | 664ce694467bfff09d982164948f39539853582b /llvm/lib/Bitcode/Reader/BitcodeReader.cpp | |
parent | def501d1cade2b8cd1e1c26b4971abf93ffac9a3 (diff) | |
download | llvm-b1d4a39990f0abcd323cdb5631f46101d3e4e867.zip llvm-b1d4a39990f0abcd323cdb5631f46101d3e4e867.tar.gz llvm-b1d4a39990f0abcd323cdb5631f46101d3e4e867.tar.bz2 |
Support for ThinLTO function importing and symbol linking.
Summary:
Support for necessary linkage changes and symbol renaming during
ThinLTO function importing.
Also includes llvm-link support for manually importing functions
and associated llvm-link based tests.
Note that this does not include support for intelligently importing
metadata, which is currently imported duplicate times. That support will
be in the follow-on patch, and currently is ignored by the tests.
Reviewers: dexonsmith, joker.eph, davidxl
Subscribers: tobiasvk, tejohnson, llvm-commits
Differential Revision: http://reviews.llvm.org/D13515
llvm-svn: 251837
Diffstat (limited to 'llvm/lib/Bitcode/Reader/BitcodeReader.cpp')
-rw-r--r-- | llvm/lib/Bitcode/Reader/BitcodeReader.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/llvm/lib/Bitcode/Reader/BitcodeReader.cpp b/llvm/lib/Bitcode/Reader/BitcodeReader.cpp index 1a63e08..4b8b554 100644 --- a/llvm/lib/Bitcode/Reader/BitcodeReader.cpp +++ b/llvm/lib/Bitcode/Reader/BitcodeReader.cpp @@ -5813,12 +5813,12 @@ llvm::getBitcodeTargetTriple(MemoryBufferRef Buffer, LLVMContext &Context, ErrorOr<std::unique_ptr<FunctionInfoIndex>> llvm::getFunctionInfoIndex(MemoryBufferRef Buffer, LLVMContext &Context, DiagnosticHandlerFunction DiagnosticHandler, - bool IsLazy) { + const Module *ExportingModule, bool IsLazy) { std::unique_ptr<MemoryBuffer> Buf = MemoryBuffer::getMemBuffer(Buffer, false); FunctionIndexBitcodeReader R(Buf.get(), Context, DiagnosticHandler, IsLazy); std::unique_ptr<FunctionInfoIndex> Index = - llvm::make_unique<FunctionInfoIndex>(); + llvm::make_unique<FunctionInfoIndex>(ExportingModule); auto cleanupOnError = [&](std::error_code EC) { R.releaseBuffer(); // Never take ownership on error. |