From: Mehdi Amini Date: Fri, 23 Dec 2016 05:16:19 +0000 (+0000) Subject: [ThinLTO] Verify lazy-loaded source module for function importing when assertions... X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=90dfd72f2970daa8ff317eaf910910d2306f2bf1;p=llvm [ThinLTO] Verify lazy-loaded source module for function importing when assertions are enabled (NFC) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@290416 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Transforms/IPO/FunctionImport.cpp b/lib/Transforms/IPO/FunctionImport.cpp index c57435e284a..9489f8d699b 100644 --- a/lib/Transforms/IPO/FunctionImport.cpp +++ b/lib/Transforms/IPO/FunctionImport.cpp @@ -697,6 +697,14 @@ Expected FunctionImporter::importFunctions( } } +#ifndef DEBUG + // Note: this can't be done after `renameModuleForThinLTO` as it leaves the + // module in a state that does not pass the verifier (for example aliases + // pointing to available_externally functions). + if (verifyModule(*SrcModule, &errs())) + report_fatal_error("Invalid lazy-loaded source module for importing"); +#endif + // Link in the specified functions. if (renameModuleForThinLTO(*SrcModule, Index, &GlobalsToImport)) return true;