about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorAlex Crichton <alex@alexcrichton.com>2015-01-15 14:12:04 -0800
committerAlex Crichton <alex@alexcrichton.com>2015-01-15 14:12:04 -0800
commit09c03421162e1773f07394a74b4d8a4bdffe490d (patch)
tree41c798c68e76566b1d4a20e3b78ce17352675793 /src
parent782c3917898a70ff9f52815c2a48cdef38cb8139 (diff)
parent2c71adaaa21e5d9e4fe80625e41982ac83303df8 (diff)
downloadrust-09c03421162e1773f07394a74b4d8a4bdffe490d.tar.gz
rust-09c03421162e1773f07394a74b4d8a4bdffe490d.zip
rollup merge of #21191: Zoxc/lto
Fixes #21184
Diffstat (limited to 'src')
-rw-r--r--src/librustc_trans/back/lto.rs3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/librustc_trans/back/lto.rs b/src/librustc_trans/back/lto.rs
index d7148bdaa1f..c0b1492a784 100644
--- a/src/librustc_trans/back/lto.rs
+++ b/src/librustc_trans/back/lto.rs
@@ -167,7 +167,10 @@ pub fn run(sess: &session::Session, llmod: ModuleRef,
         llvm::LLVMRustAddAnalysisPasses(tm, pm, llmod);
         llvm::LLVMRustAddPass(pm, "verify\0".as_ptr() as *const _);
 
+        let opt = sess.opts.cg.opt_level.unwrap_or(0) as libc::c_uint;
+
         let builder = llvm::LLVMPassManagerBuilderCreate();
+        llvm::LLVMPassManagerBuilderSetOptLevel(builder, opt);
         llvm::LLVMPassManagerBuilderPopulateLTOPassManager(builder, pm,
             /* Internalize = */ False,
             /* RunInliner = */ True);