diff options
| author | Michael Woerister <michaelwoerister@posteo> | 2018-07-06 13:58:25 +0200 |
|---|---|---|
| committer | Michael Woerister <michaelwoerister@posteo> | 2018-07-06 13:58:25 +0200 |
| commit | 72df804d8e649950ef082034e147bd8fc5ee162d (patch) | |
| tree | 06049af3a46a2c228c0db36916cb5b20d4ffd7a3 /src/librustc_codegen_llvm/back | |
| parent | 65ff4141a5ed69223b29634a49a499b9415993ee (diff) | |
| download | rust-72df804d8e649950ef082034e147bd8fc5ee162d.tar.gz rust-72df804d8e649950ef082034e147bd8fc5ee162d.zip | |
When doing linker-plugin based LTO, write LLVM bitcode obj-files
instead of embedding the bitcode into the regular object file.
Diffstat (limited to 'src/librustc_codegen_llvm/back')
| -rw-r--r-- | src/librustc_codegen_llvm/back/write.rs | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/librustc_codegen_llvm/back/write.rs b/src/librustc_codegen_llvm/back/write.rs index baab3c618be..42b772b8a5d 100644 --- a/src/librustc_codegen_llvm/back/write.rs +++ b/src/librustc_codegen_llvm/back/write.rs @@ -288,10 +288,10 @@ impl ModuleConfig { self.no_builtins = no_builtins || sess.target.target.options.no_builtins; self.time_passes = sess.time_passes(); self.inline_threshold = sess.opts.cg.inline_threshold; - self.obj_is_bitcode = sess.target.target.options.obj_is_bitcode; + self.obj_is_bitcode = sess.target.target.options.obj_is_bitcode || + sess.opts.debugging_opts.cross_lang_lto.enabled(); let embed_bitcode = sess.target.target.options.embed_bitcode || - sess.opts.debugging_opts.embed_bitcode || - sess.opts.debugging_opts.cross_lang_lto.embed_bitcode(); + sess.opts.debugging_opts.embed_bitcode; if embed_bitcode { match sess.opts.optimize { config::OptLevel::No | @@ -1365,7 +1365,7 @@ fn execute_work_item(cgcx: &CodegenContext, // Don't run LTO passes when cross-lang LTO is enabled. The linker // will do that for us in this case. let needs_lto = needs_lto && - !cgcx.opts.debugging_opts.cross_lang_lto.embed_bitcode(); + !cgcx.opts.debugging_opts.cross_lang_lto.enabled(); if needs_lto { Ok(WorkItemResult::NeedsLTO(module)) |
