diff options
26 files changed, 55 insertions, 59 deletions
diff --git a/llvm/include/llvm/ExecutionEngine/ExecutionEngine.h b/llvm/include/llvm/ExecutionEngine/ExecutionEngine.h index a7302602dcd..205938863e2 100644 --- a/llvm/include/llvm/ExecutionEngine/ExecutionEngine.h +++ b/llvm/include/llvm/ExecutionEngine/ExecutionEngine.h @@ -565,7 +565,7 @@ public: } /// setOptLevel - Set the optimization level for the JIT. This option - /// defaults to CodeGenOpt::Default. + /// defaults to CodeGenOpt::Default.- EngineBuilder &setOptLevel(CodeGenOpt::Level l) { OptLevel = l; return *this; diff --git a/llvm/test/Bitcode/module_hash.ll b/llvm/test/Bitcode/module_hash.ll index fda6030a903..56f3fdc4b7e 100644 --- a/llvm/test/Bitcode/module_hash.ll +++ b/llvm/test/Bitcode/module_hash.ll @@ -1,14 +1,14 @@ ; Check per module hash. -; RUN: llvm-as -module-hash %s -o - | llvm-bcanalyzer -dump | FileCheck %s --check-prefix=MOD1 +; RUN: opt -module-hash %s -o - | llvm-bcanalyzer -dump | FileCheck %s --check-prefix=MOD1 ; MOD1: <HASH op0={{[0-9]*}} op1={{[0-9]*}} op2={{[0-9]*}} op3={{[0-9]*}} op4={{[0-9]*}} (match)/> -; RUN: llvm-as -module-hash %p/Inputs/module_hash.ll -o - | llvm-bcanalyzer -dump | FileCheck %s --check-prefix=MOD2 +; RUN: opt -module-hash %p/Inputs/module_hash.ll -o - | llvm-bcanalyzer -dump | FileCheck %s --check-prefix=MOD2 ; MOD2: <HASH op0={{[0-9]*}} op1={{[0-9]*}} op2={{[0-9]*}} op3={{[0-9]*}} op4={{[0-9]*}} (match)/> ; Check that the hash matches in the combined index. ; First regenerate the modules with a summary -; RUN: llvm-as -module-hash -module-summary %s -o %t.m1.bc -; RUN: llvm-as -module-hash -module-summary %p/Inputs/module_hash.ll -o %t.m2.bc +; RUN: opt -module-hash -module-summary %s -o %t.m1.bc +; RUN: opt -module-hash -module-summary %p/Inputs/module_hash.ll -o %t.m2.bc ; Recover the hashes from the modules themselves. ; RUN: llvm-bcanalyzer -dump %t.m1.bc | grep '<HASH' > %t.hash diff --git a/llvm/test/Bitcode/thinlto-function-summary-callgraph-pgo.ll b/llvm/test/Bitcode/thinlto-function-summary-callgraph-pgo.ll index f4d02adbb00..dc9460849e7 100644 --- a/llvm/test/Bitcode/thinlto-function-summary-callgraph-pgo.ll +++ b/llvm/test/Bitcode/thinlto-function-summary-callgraph-pgo.ll @@ -1,7 +1,7 @@ ; Test to check the callgraph in summary when there is PGO -; RUN: llvm-as -module-summary %s -o %t.o +; RUN: opt -module-summary %s -o %t.o ; RUN: llvm-bcanalyzer -dump %t.o | FileCheck %s -; RUN: llvm-as -module-summary %p/Inputs/thinlto-function-summary-callgraph.ll -o %t2.o +; RUN: opt -module-summary %p/Inputs/thinlto-function-summary-callgraph.ll -o %t2.o ; RUN: llvm-lto -thinlto -o %t3 %t.o %t2.o ; RUN: llvm-bcanalyzer -dump %t3.thinlto.bc | FileCheck %s --check-prefix=COMBINED diff --git a/llvm/test/Bitcode/thinlto-function-summary-callgraph.ll b/llvm/test/Bitcode/thinlto-function-summary-callgraph.ll index 992f4475b51..e8533dbc055 100644 --- a/llvm/test/Bitcode/thinlto-function-summary-callgraph.ll +++ b/llvm/test/Bitcode/thinlto-function-summary-callgraph.ll @@ -1,7 +1,7 @@ ; Test to check the callgraph in summary -; RUN: llvm-as -module-summary %s -o %t.o +; RUN: opt -module-summary %s -o %t.o ; RUN: llvm-bcanalyzer -dump %t.o | FileCheck %s -; RUN: llvm-as -module-summary %p/Inputs/thinlto-function-summary-callgraph.ll -o %t2.o +; RUN: opt -module-summary %p/Inputs/thinlto-function-summary-callgraph.ll -o %t2.o ; RUN: llvm-lto -thinlto -o %t3 %t.o %t2.o ; RUN: llvm-bcanalyzer -dump %t3.thinlto.bc | FileCheck %s --check-prefix=COMBINED diff --git a/llvm/test/Bitcode/thinlto-function-summary-refgraph.ll b/llvm/test/Bitcode/thinlto-function-summary-refgraph.ll index d8698bf3766..0ae9f17b754 100644 --- a/llvm/test/Bitcode/thinlto-function-summary-refgraph.ll +++ b/llvm/test/Bitcode/thinlto-function-summary-refgraph.ll @@ -1,5 +1,5 @@ ; Test to check both the callgraph and refgraph in summary -; RUN: llvm-as -module-summary %s -o %t.o +; RUN: opt -module-summary %s -o %t.o ; RUN: llvm-bcanalyzer -dump %t.o | FileCheck %s ; See if the calls and other references are recorded properly using the diff --git a/llvm/test/Bitcode/thinlto-function-summary.ll b/llvm/test/Bitcode/thinlto-function-summary.ll index 25afa437483..04a316585a4 100644 --- a/llvm/test/Bitcode/thinlto-function-summary.ll +++ b/llvm/test/Bitcode/thinlto-function-summary.ll @@ -1,4 +1,4 @@ -; RUN: llvm-as -module-summary < %s | llvm-bcanalyzer -dump | FileCheck %s -check-prefix=BC +; RUN: opt -module-summary < %s | llvm-bcanalyzer -dump | FileCheck %s -check-prefix=BC ; Check for summary block/records. ; Check the value ids in the summary entries against the @@ -13,7 +13,7 @@ ; BC-NEXT: <FNENTRY {{.*}} op0=2 {{.*}}> record string = 'bar' ; BC-NEXT: <FNENTRY {{.*}} op0=4 {{.*}}> record string = 'f' -; RUN: llvm-as -module-summary < %s | llvm-dis | FileCheck %s +; RUN: opt -module-summary < %s | llvm-dis | FileCheck %s ; Check that this round-trips correctly. ; ModuleID = '<stdin>' diff --git a/llvm/test/Bitcode/thinlto-summary-linkage-types.ll b/llvm/test/Bitcode/thinlto-summary-linkage-types.ll index f0087495f19..6f4f3d57b1e 100644 --- a/llvm/test/Bitcode/thinlto-summary-linkage-types.ll +++ b/llvm/test/Bitcode/thinlto-summary-linkage-types.ll @@ -1,5 +1,5 @@ ; Check the linkage types in both the per-module and combined summaries. -; RUN: llvm-as -module-summary %s -o %t.o +; RUN: opt -module-summary %s -o %t.o ; RUN: llvm-bcanalyzer -dump %t.o | FileCheck %s ; RUN: llvm-lto -thinlto -o %t2 %t.o ; RUN: llvm-bcanalyzer -dump %t2.thinlto.bc | FileCheck %s --check-prefix=COMBINED diff --git a/llvm/test/Linker/funcimport.ll b/llvm/test/Linker/funcimport.ll index aec3f4cceb6..f88fcab8a21 100644 --- a/llvm/test/Linker/funcimport.ll +++ b/llvm/test/Linker/funcimport.ll @@ -1,13 +1,13 @@ ; First ensure that the ThinLTO handling in llvm-link and llvm-lto handles ; bitcode without summary sections gracefully. -; RUN: llvm-as %s -o %t.bc -; RUN: llvm-as %p/Inputs/funcimport.ll -o %t2.bc +; RUN: opt %s -o %t.bc +; RUN: opt %p/Inputs/funcimport.ll -o %t2.bc ; RUN: llvm-link %t.bc -summary-index=%t.bc -S ; RUN: llvm-lto -thinlto -o %t3 %t.bc %t2.bc ; Do setup work for all below tests: generate bitcode and combined index -; RUN: llvm-as -module-summary %s -o %t.bc -; RUN: llvm-as -module-summary %p/Inputs/funcimport.ll -o %t2.bc +; RUN: opt -module-summary %s -o %t.bc +; RUN: opt -module-summary %p/Inputs/funcimport.ll -o %t2.bc ; RUN: llvm-lto -thinlto -o %t3 %t.bc %t2.bc ; Ensure statics are promoted/renamed correctly from this file (all but diff --git a/llvm/test/Linker/funcimport2.ll b/llvm/test/Linker/funcimport2.ll index 14b853cff30..6c30dda0d85 100644 --- a/llvm/test/Linker/funcimport2.ll +++ b/llvm/test/Linker/funcimport2.ll @@ -1,5 +1,5 @@ -; RUN: llvm-as -module-summary %s -o %t1.bc -; RUN: llvm-as -module-summary %p/Inputs/funcimport2.ll -o %t2.bc +; RUN: opt -module-summary %s -o %t1.bc +; RUN: opt -module-summary %p/Inputs/funcimport2.ll -o %t2.bc ; RUN: llvm-lto -thinlto -o %t3 %t1.bc %t2.bc ; RUN: llvm-link -import=bar:%t2.bc %t1.bc -summary-index=%t3.thinlto.bc -S | FileCheck %s diff --git a/llvm/test/Linker/funcimport_appending_global.ll b/llvm/test/Linker/funcimport_appending_global.ll index 440424c5331..3284ef255be 100644 --- a/llvm/test/Linker/funcimport_appending_global.ll +++ b/llvm/test/Linker/funcimport_appending_global.ll @@ -1,5 +1,5 @@ -; RUN: llvm-as -module-summary %s -o %t.bc -; RUN: llvm-as -module-summary %p/Inputs/funcimport_appending_global.ll -o %t2.bc +; RUN: opt -module-summary %s -o %t.bc +; RUN: opt -module-summary %p/Inputs/funcimport_appending_global.ll -o %t2.bc ; RUN: llvm-lto -thinlto -o %t3 %t.bc %t2.bc ; Do the import now diff --git a/llvm/test/Linker/funcimport_comdat.ll b/llvm/test/Linker/funcimport_comdat.ll index 67d5027cb66..ecb28a2a200 100644 --- a/llvm/test/Linker/funcimport_comdat.ll +++ b/llvm/test/Linker/funcimport_comdat.ll @@ -1,6 +1,6 @@ ; Do setup work for all below tests: generate bitcode and combined index -; RUN: llvm-as -module-summary %s -o %t.bc -; RUN: llvm-as -module-summary %p/Inputs/funcimport_comdat.ll -o %t2.bc +; RUN: opt -module-summary %s -o %t.bc +; RUN: opt -module-summary %p/Inputs/funcimport_comdat.ll -o %t2.bc ; RUN: llvm-lto -thinlto -o %t3 %t.bc %t2.bc ; Ensure linking of comdat containing external linkage global and function diff --git a/llvm/test/Linker/thinlto_funcimport_debug.ll b/llvm/test/Linker/thinlto_funcimport_debug.ll index bac27d9c7cc..034f461dd5b 100644 --- a/llvm/test/Linker/thinlto_funcimport_debug.ll +++ b/llvm/test/Linker/thinlto_funcimport_debug.ll @@ -1,6 +1,6 @@ ; Do setup work for all below tests: generate bitcode and combined index -; RUN: llvm-as -module-summary %s -o %t.bc -; RUN: llvm-as -module-summary %p/Inputs/thinlto_funcimport_debug.ll -o %t2.bc +; RUN: opt -module-summary %s -o %t.bc +; RUN: opt -module-summary %p/Inputs/thinlto_funcimport_debug.ll -o %t2.bc ; RUN: llvm-lto -thinlto -o %t3 %t.bc %t2.bc ; If we import func1 and not func2 we should only link DISubprogram for func1 diff --git a/llvm/test/ThinLTO/X86/funcimport.ll b/llvm/test/ThinLTO/X86/funcimport.ll index 72627c511a2..ebb4d347b67 100644 --- a/llvm/test/ThinLTO/X86/funcimport.ll +++ b/llvm/test/ThinLTO/X86/funcimport.ll @@ -1,6 +1,6 @@ ; Do setup work for all below tests: generate bitcode and combined index -; RUN: llvm-as -module-summary %s -o %t.bc -; RUN: llvm-as -module-summary %p/Inputs/funcimport.ll -o %t2.bc +; RUN: opt -module-summary %s -o %t.bc +; RUN: opt -module-summary %p/Inputs/funcimport.ll -o %t2.bc ; RUN: llvm-lto -thinlto-action=thinlink -o %t3.bc %t.bc %t2.bc ; Ensure statics are promoted/renamed correctly from this file (all but diff --git a/llvm/test/ThinLTO/X86/odr_resolution.ll b/llvm/test/ThinLTO/X86/odr_resolution.ll index dc7a1e80639..1db966862d7 100644 --- a/llvm/test/ThinLTO/X86/odr_resolution.ll +++ b/llvm/test/ThinLTO/X86/odr_resolution.ll @@ -1,6 +1,6 @@ ; Do setup work for all below tests: generate bitcode and combined index -; RUN: llvm-as -module-summary %s -o %t.bc -; RUN: llvm-as -module-summary %p/Inputs/odr_resolution.ll -o %t2.bc +; RUN: opt -module-summary %s -o %t.bc +; RUN: opt -module-summary %p/Inputs/odr_resolution.ll -o %t2.bc ; RUN: llvm-lto -thinlto-action=thinlink -o %t3.bc %t.bc %t2.bc ; Verify that only one ODR is selected across modules, but non ODR are not affected. diff --git a/llvm/test/Transforms/FunctionImport/adjustable_threshold.ll b/llvm/test/Transforms/FunctionImport/adjustable_threshold.ll index d46585ed82d..adb8b0dffb0 100644 --- a/llvm/test/Transforms/FunctionImport/adjustable_threshold.ll +++ b/llvm/test/Transforms/FunctionImport/adjustable_threshold.ll @@ -1,6 +1,6 @@ ; Do setup work for all below tests: generate bitcode and combined index -; RUN: llvm-as -module-summary %s -o %t.bc -; RUN: llvm-as -module-summary %p/Inputs/adjustable_threshold.ll -o %t2.bc +; RUN: opt -module-summary %s -o %t.bc +; RUN: opt -module-summary %p/Inputs/adjustable_threshold.ll -o %t2.bc ; RUN: llvm-lto -thinlto -o %t3 %t.bc %t2.bc ; Test import with default progressive instruction factor diff --git a/llvm/test/Transforms/FunctionImport/funcimport.ll b/llvm/test/Transforms/FunctionImport/funcimport.ll index 4bbab2ce333..c56aeb55840 100644 --- a/llvm/test/Transforms/FunctionImport/funcimport.ll +++ b/llvm/test/Transforms/FunctionImport/funcimport.ll @@ -1,6 +1,6 @@ ; Do setup work for all below tests: generate bitcode and combined index -; RUN: llvm-as -module-summary %s -o %t.bc -; RUN: llvm-as -module-summary %p/Inputs/funcimport.ll -o %t2.bc +; RUN: opt -module-summary %s -o %t.bc +; RUN: opt -module-summary %p/Inputs/funcimport.ll -o %t2.bc ; RUN: llvm-lto -thinlto -print-summary-global-ids -o %t3 %t.bc %t2.bc 2>&1 | FileCheck %s --check-prefix=GUID ; Do the import now diff --git a/llvm/test/Transforms/FunctionImport/funcimport_alias.ll b/llvm/test/Transforms/FunctionImport/funcimport_alias.ll index ebb126768aa..7868e08d32f 100644 --- a/llvm/test/Transforms/FunctionImport/funcimport_alias.ll +++ b/llvm/test/Transforms/FunctionImport/funcimport_alias.ll @@ -1,6 +1,6 @@ ; Do setup work for all below tests: generate bitcode and combined index -; RUN: llvm-as -module-summary %s -o %t.bc -; RUN: llvm-as -module-summary %p/Inputs/funcimport_alias.ll -o %t2.bc +; RUN: opt -module-summary %s -o %t.bc +; RUN: opt -module-summary %p/Inputs/funcimport_alias.ll -o %t2.bc ; RUN: llvm-lto -thinlto -o %t3 %t.bc %t2.bc ; Do the import now. Ensures that the importer handles an external call diff --git a/llvm/test/Transforms/FunctionImport/funcimport_debug.ll b/llvm/test/Transforms/FunctionImport/funcimport_debug.ll index 00e46b72912..4d1068696ad 100644 --- a/llvm/test/Transforms/FunctionImport/funcimport_debug.ll +++ b/llvm/test/Transforms/FunctionImport/funcimport_debug.ll @@ -1,6 +1,6 @@ ; Do setup work for all below tests: generate bitcode and combined index -; RUN: llvm-as -module-summary %s -o %t.bc -; RUN: llvm-as -module-summary %p/Inputs/funcimport_debug.ll -o %t2.bc +; RUN: opt -module-summary %s -o %t.bc +; RUN: opt -module-summary %p/Inputs/funcimport_debug.ll -o %t2.bc ; RUN: llvm-lto -thinlto -o %t3 %t.bc %t2.bc ; Do the import now and confirm that metadata is linked for imported function. diff --git a/llvm/test/tools/gold/X86/pr19901_thinlto.ll b/llvm/test/tools/gold/X86/pr19901_thinlto.ll index 8274cb628be..f2532902577 100644 --- a/llvm/test/tools/gold/X86/pr19901_thinlto.ll +++ b/llvm/test/tools/gold/X86/pr19901_thinlto.ll @@ -1,5 +1,5 @@ ; RUN: llc %s -o %t.o -filetype=obj -relocation-model=pic -; RUN: llvm-as -module-summary %p/Inputs/pr19901-1.ll -o %t2.o +; RUN: opt -module-summary %p/Inputs/pr19901-1.ll -o %t2.o ; RUN: %gold -plugin %llvmshlibdir/LLVMgold.so \ ; RUN: --plugin-opt=thinlto \ ; RUN: -shared -m elf_x86_64 -o %t.so %t2.o %t.o diff --git a/llvm/test/tools/gold/X86/thinlto.ll b/llvm/test/tools/gold/X86/thinlto.ll index 19dcb1a4849..415b19e7ff3 100644 --- a/llvm/test/tools/gold/X86/thinlto.ll +++ b/llvm/test/tools/gold/X86/thinlto.ll @@ -13,8 +13,8 @@ ; RUN: llvm-nm %t4 | FileCheck %s --check-prefix=NM ; Next generate summary sections and test gold handling. -; RUN: llvm-as -module-summary %s -o %t.o -; RUN: llvm-as -module-summary %p/Inputs/thinlto.ll -o %t2.o +; RUN: opt -module-summary %s -o %t.o +; RUN: opt -module-summary %p/Inputs/thinlto.ll -o %t2.o ; Ensure gold generates an index and not a binary if requested. ; RUN: %gold -plugin %llvmshlibdir/LLVMgold.so \ diff --git a/llvm/test/tools/gold/X86/thinlto_linkonceresolution.ll b/llvm/test/tools/gold/X86/thinlto_linkonceresolution.ll index 2948f13661c..07cec098251 100644 --- a/llvm/test/tools/gold/X86/thinlto_linkonceresolution.ll +++ b/llvm/test/tools/gold/X86/thinlto_linkonceresolution.ll @@ -1,5 +1,5 @@ -; RUN: llvm-as -module-summary %s -o %t.o -; RUN: llvm-as -module-summary %p/Inputs/thinlto_linkonceresolution.ll -o %t2.o +; RUN: opt -module-summary %s -o %t.o +; RUN: opt -module-summary %p/Inputs/thinlto_linkonceresolution.ll -o %t2.o ; Ensure the plugin ensures that for ThinLTO the prevailing copy of a ; linkonce symbol is changed to weak to ensure it is not eliminated. diff --git a/llvm/test/tools/llvm-lto/thinlto.ll b/llvm/test/tools/llvm-lto/thinlto.ll index 652437c2f72..b41561841cc 100644 --- a/llvm/test/tools/llvm-lto/thinlto.ll +++ b/llvm/test/tools/llvm-lto/thinlto.ll @@ -1,6 +1,6 @@ ; Test combined function index generation for ThinLTO via llvm-lto. -; RUN: llvm-as -module-summary %s -o %t.o -; RUN: llvm-as -module-summary %p/Inputs/thinlto.ll -o %t2.o +; RUN: opt -module-summary %s -o %t.o +; RUN: opt -module-summary %p/Inputs/thinlto.ll -o %t2.o ; RUN: llvm-lto -thinlto -o %t3 %t.o %t2.o ; RUN: llvm-bcanalyzer -dump %t3.thinlto.bc | FileCheck %s --check-prefix=COMBINED ; RUN: not test -e %t3 diff --git a/llvm/tools/llvm-as/CMakeLists.txt b/llvm/tools/llvm-as/CMakeLists.txt index 9b9027b7061..1b2789a4de4 100644 --- a/llvm/tools/llvm-as/CMakeLists.txt +++ b/llvm/tools/llvm-as/CMakeLists.txt @@ -1,5 +1,4 @@ set(LLVM_LINK_COMPONENTS - Analysis AsmParser BitWriter Core diff --git a/llvm/tools/llvm-as/LLVMBuild.txt b/llvm/tools/llvm-as/LLVMBuild.txt index cef557ac7a2..542470bbdd8 100644 --- a/llvm/tools/llvm-as/LLVMBuild.txt +++ b/llvm/tools/llvm-as/LLVMBuild.txt @@ -19,4 +19,4 @@ type = Tool name = llvm-as parent = Tools -required_libraries = Analysis AsmParser BitWriter +required_libraries = AsmParser BitWriter diff --git a/llvm/tools/llvm-as/llvm-as.cpp b/llvm/tools/llvm-as/llvm-as.cpp index 89397cde3ef..1e795083992 100644 --- a/llvm/tools/llvm-as/llvm-as.cpp +++ b/llvm/tools/llvm-as/llvm-as.cpp @@ -15,7 +15,6 @@ // //===----------------------------------------------------------------------===// -#include "llvm/Analysis/ModuleSummaryAnalysis.h" #include "llvm/AsmParser/Parser.h" #include "llvm/Bitcode/ReaderWriter.h" #include "llvm/IR/LLVMContext.h" @@ -45,10 +44,6 @@ static cl::opt<bool> Force("f", cl::desc("Enable binary output on terminals")); static cl::opt<bool> DisableOutput("disable-output", cl::desc("Disable output"), cl::init(false)); -static cl::opt<bool> EmitSummaryIndex("module-summary", - cl::desc("Emit module summary index"), - cl::init(false)); - static cl::opt<bool> EmitModuleHash("module-hash", cl::desc("Emit module hash"), cl::init(false)); @@ -84,14 +79,9 @@ static void WriteOutputFile(const Module *M) { exit(1); } - if (Force || !CheckBitcodeOutputToConsole(Out->os(), true)) { - std::unique_ptr<ModuleSummaryIndex> Index; - if (EmitSummaryIndex) - Index = ModuleSummaryIndexBuilder(M).takeIndex(); - - WriteBitcodeToFile(M, Out->os(), PreserveBitcodeUseListOrder, Index.get(), + if (Force || !CheckBitcodeOutputToConsole(Out->os(), true)) + WriteBitcodeToFile(M, Out->os(), PreserveBitcodeUseListOrder, nullptr, EmitModuleHash); - } // Declare success. Out->keep(); diff --git a/llvm/tools/opt/opt.cpp b/llvm/tools/opt/opt.cpp index e374e1f5446..9a920ad6baf 100644 --- a/llvm/tools/opt/opt.cpp +++ b/llvm/tools/opt/opt.cpp @@ -158,6 +158,12 @@ DisableSLPVectorization("disable-slp-vectorization", cl::desc("Disable the slp vectorization pass"), cl::init(false)); +static cl::opt<bool> EmitSummaryIndex("module-summary", + cl::desc("Emit module summary index"), + cl::init(false)); + +static cl::opt<bool> EmitModuleHash("module-hash", cl::desc("Emit module hash"), + cl::init(false)); static cl::opt<bool> DisableSimplifyLibCalls("disable-simplify-libcalls", @@ -617,7 +623,8 @@ int main(int argc, char **argv) { if (OutputAssembly) Passes.add(createPrintModulePass(*OS, "", PreserveAssemblyUseListOrder)); else - Passes.add(createBitcodeWriterPass(*OS, PreserveBitcodeUseListOrder)); + Passes.add(createBitcodeWriterPass(*OS, PreserveBitcodeUseListOrder, + EmitSummaryIndex, EmitModuleHash)); } // Before executing passes, print the final values of the LLVM options. |