From dc3bc90d5b08e408171b51dbb2da286082d8318a Mon Sep 17 00:00:00 2001 From: Ryan Prichard Date: Thu, 19 Feb 2015 02:07:45 -0800 Subject: [PATCH] Use sess.opts.optimize instead of sess.opts.cg.opt_level for LTO optlevel Fixes #22525 --- src/librustc_trans/back/lto.rs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/librustc_trans/back/lto.rs b/src/librustc_trans/back/lto.rs index c88e76f42707..8a4059d1972a 100644 --- a/src/librustc_trans/back/lto.rs +++ b/src/librustc_trans/back/lto.rs @@ -167,7 +167,12 @@ 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 opt = match sess.opts.optimize { + config::No => 0, + config::Less => 1, + config::Default => 2, + config::Aggressive => 3, + }; let builder = llvm::LLVMPassManagerBuilderCreate(); llvm::LLVMPassManagerBuilderSetOptLevel(builder, opt);