diff options
| author | Yury Delendik <ydelendik@mozilla.com> | 2018-07-30 19:55:08 -0500 |
|---|---|---|
| committer | Yury Delendik <ydelendik@mozilla.com> | 2018-07-30 19:58:26 -0500 |
| commit | e9509d78bd1c790b49000bc469e8ad812ea88457 (patch) | |
| tree | bb80e5189a75af292d4ca7dd103d8348e1afa661 | |
| parent | 54628c8ea844956f3f4f416b82067c634eb09f7b (diff) | |
| download | rust-e9509d78bd1c790b49000bc469e8ad812ea88457.tar.gz rust-e9509d78bd1c790b49000bc469e8ad812ea88457.zip | |
Disable debug sections when optimization flags is set for LLD.
| -rw-r--r-- | src/librustc_codegen_llvm/back/linker.rs | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/librustc_codegen_llvm/back/linker.rs b/src/librustc_codegen_llvm/back/linker.rs index 5f2f3733ec7..7253b5346b9 100644 --- a/src/librustc_codegen_llvm/back/linker.rs +++ b/src/librustc_codegen_llvm/back/linker.rs @@ -1006,6 +1006,18 @@ impl<'a> Linker for WasmLd<'a> { OptLevel::Size => "-O2", OptLevel::SizeMin => "-O2" }); + match self.sess.opts.optimize { + OptLevel::No => (), + OptLevel::Less | + OptLevel::Default | + OptLevel::Aggressive | + OptLevel::Size | + OptLevel::SizeMin => { + // LLD generates incorrect debugging information when + // optimization is applied: strip debug sections. + self.cmd.arg("--strip-debug"); + } + } } fn pgo_gen(&mut self) { |
