From dc3bc90d5b08e408171b51dbb2da286082d8318a Mon Sep 17 00:00:00 2001 From: Ryan Prichard Date: Thu, 19 Feb 2015 02:07:45 -0800 Subject: [PATCH 1/2] 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 c88e76f427073..8a4059d1972ac 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); From 9167c62c1adf7effb48cd1cc66ab45f7751d0d6c Mon Sep 17 00:00:00 2001 From: Ryan Prichard Date: Mon, 23 Feb 2015 23:42:42 -0800 Subject: [PATCH 2/2] Disable run-pass/sepcomp-lib-lto.rs on Android until #18800 is fixed --- src/test/run-pass/sepcomp-lib-lto.rs | 1 + 1 file changed, 1 insertion(+) diff --git a/src/test/run-pass/sepcomp-lib-lto.rs b/src/test/run-pass/sepcomp-lib-lto.rs index f0b6a505929c6..b159b128333f0 100644 --- a/src/test/run-pass/sepcomp-lib-lto.rs +++ b/src/test/run-pass/sepcomp-lib-lto.rs @@ -14,6 +14,7 @@ // aux-build:sepcomp_lib.rs // compile-flags: -C lto // no-prefer-dynamic +// ignore-android FIXME #18800 extern crate sepcomp_lib; use sepcomp_lib::a::one;