Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

nightly does not produce dSYM files at all on OSX #46346

Closed
durka opened this issue Nov 28, 2017 · 32 comments
Closed

nightly does not produce dSYM files at all on OSX #46346

durka opened this issue Nov 28, 2017 · 32 comments
Labels
A-debuginfo Area: Debugging information in compiled programs (DWARF, PDB, etc.) C-bug Category: This is a bug. O-macos Operating system: macOS regression-from-stable-to-nightly Performance or correctness regression from stable to nightly. T-dev-tools Relevant to the dev-tools subteam, which will review and decide on the PR/issue.

Comments

@durka
Copy link
Contributor

durka commented Nov 28, 2017

Current report

Upstream LLVM bug

Original report

OSX backtrace line numbers, enabled in stable and beta, were lost (unintentionally???) starting with Thanksgiving's nightly.

$ for d in $(seq 21 27); do
    rustup install nightly-2017-11-$d
    rustc +nightly-2017-11-$d -vV
    RUST_BACKTRACE=1 cargo +nightly-2017-11-$d script -e 'fn foo() { panic!() } foo()' --clear-cache --debug
    rustup uninstall nightly-2017-11-$d
  done

[snip]

 nightly-2017-11-25-x86_64-apple-darwin installed - rustc 1.23.0-nightly (5f44c653c 2017-11-24)

rustc 1.23.0-nightly (5f44c653c 2017-11-24)
binary: rustc
commit-hash: 5f44c653cff61d0f55f53e07a188f755c7acddd1
commit-date: 2017-11-24
host: x86_64-apple-darwin
release: 1.23.0-nightly
LLVM version: 4.0
   Compiling expr v0.1.0 (file:///Users/alex/.cargo/script-cache/expr-c1e0a0b3aa579a73)
    Finished dev [unoptimized + debuginfo] target(s) in 2.23 secs
thread 'main' panicked at 'explicit panic', /Users/alex/.cargo/script-cache/expr-c1e0a0b3aa579a73/expr.rs:18:22
stack backtrace:
   0: std::sys::imp::backtrace::tracing::imp::unwind_backtrace
             at src/libstd/sys/unix/backtrace/tracing/gcc_s.rs:49
   1: std::sys_common::backtrace::_print
             at src/libstd/sys_common/backtrace.rs:68
   2: std::panicking::default_hook::{{closure}}
             at src/libstd/sys_common/backtrace.rs:57
             at src/libstd/panicking.rs:381
   3: std::panicking::default_hook
             at src/libstd/panicking.rs:397
   4: std::panicking::begin_panic
             at src/libstd/panicking.rs:577
   5: std::panicking::begin_panic
             at /Users/travis/build/rust-lang/rust/src/libstd/panicking.rs:538
   6: expr::try_main::foo
             at /Users/alex/.cargo/script-cache/expr-c1e0a0b3aa579a73/expr.rs:18
   7: expr::try_main
             at /Users/alex/.cargo/script-cache/expr-c1e0a0b3aa579a73/expr.rs:18
   8: expr::main
             at /Users/alex/.cargo/script-cache/expr-c1e0a0b3aa579a73/expr.rs:4
   9: panic_unwind::dwarf::eh::read_encoded_pointer
             at src/libpanic_unwind/lib.rs:101
  10: rust_panic
             at src/libstd/panicking.rs:459
             at src/libstd/panic.rs:365
             at src/libstd/rt.rs:58
  11: expr::try_main::foo
info: uninstalling toolchain 'nightly-2017-11-25-x86_64-apple-darwin'
info: toolchain 'nightly-2017-11-25-x86_64-apple-darwin' uninstalled
info: syncing channel updates for 'nightly-2017-11-26-x86_64-apple-darwin'
info: latest update on 2017-11-26, rust version 1.23.0-nightly (e97ba8328 2017-11-25)
info: downloading component 'rustc'
 36.3 MiB /  36.3 MiB (100 %)   3.5 MiB/s ETA:   0 s
info: downloading component 'rust-std'
 52.1 MiB /  52.1 MiB (100 %)   3.5 MiB/s ETA:   0 s
info: downloading component 'cargo'
  2.9 MiB /   2.9 MiB (100 %)   1.1 MiB/s ETA:   0 s
info: downloading component 'rust-docs'
  4.6 MiB /   4.6 MiB (100 %)   1.8 MiB/s ETA:   0 s
info: installing component 'rustc'
info: installing component 'rust-std'
info: installing component 'cargo'
info: installing component 'rust-docs'

  nightly-2017-11-26-x86_64-apple-darwin installed - rustc 1.23.0-nightly (e97ba8328 2017-11-25)

rustc 1.23.0-nightly (e97ba8328 2017-11-25)
binary: rustc
commit-hash: e97ba83287a6f0f85cc9cc7a51ab309487e17038
commit-date: 2017-11-25
host: x86_64-apple-darwin
release: 1.23.0-nightly
LLVM version: 4.0
   Compiling expr v0.1.0 (file:///Users/alex/.cargo/script-cache/expr-c1e0a0b3aa579a73)
    Finished dev [unoptimized + debuginfo] target(s) in 1.76 secs
thread 'main' panicked at 'explicit panic', /Users/alex/.cargo/script-cache/expr-c1e0a0b3aa579a73/expr.rs:18:22
stack backtrace:
   0: std::sys::unix::backtrace::tracing::imp::unwind_backtrace
   1: std::sys_common::backtrace::print
   2: _ZN3std9panicking12default_hook28_$u7b$$u7b$closure$u7d$$u7d$17haa05421012ac6c20E.llvm.5B51A422
   3: _ZN3std9panicking12default_hook17h2d0d0ff0f27771f9E.llvm.5B51A422
   4: std::panicking::rust_panic_with_hook
   5: std::panicking::begin_panic
   6: expr::try_main::foo
   7: expr::try_main
   8: expr::main
   9: __rust_maybe_catch_panic
  10: std::rt::lang_start
  11: main
info: uninstalling toolchain 'nightly-2017-11-26-x86_64-apple-darwin'
info: toolchain 'nightly-2017-11-26-x86_64-apple-darwin' uninstalled

[snip]

Here are the commits.

Wild guess: was this caused by #46008 somehow? cc @alexcrichton

cc @JohnColanduoni

@JohnColanduoni
Copy link
Contributor

Can you run du on the dSYM file if you get a chance?

@alexreg
Copy link
Contributor

alexreg commented Nov 29, 2017

Confirmed as an issue for me too. Thanks @durka for submitting this after our exchange on IRC.

@durka
Copy link
Contributor Author

durka commented Nov 29, 2017

@JohnColanduoni there is no dSYM file. Perhaps this is the issue :)

target/debug/expr.d refers to target/debug/expr.dSYM but it doesn't exist.

@durka durka changed the title OSX backtraces no longer have line numbers nightly does not produce dSYM files at all on OSX Nov 29, 2017
@durka
Copy link
Contributor Author

durka commented Nov 29, 2017

durska:~ alex$ cargo new --bin xxx
     Created binary (application) `xxx` project
durska:~ alex$ cd xxx
durska:xxx alex$ cargo +beta build
   Compiling xxx v0.1.0 (file:///Users/alex/xxx)
    Finished dev [unoptimized + debuginfo] target(s) in 2.70 secs
durska:xxx alex$ ls target/debug
build		deps		examples	incremental	native		xxx		xxx.d		xxx.dSYM
durska:xxx alex$ rm -rf target
durska:xxx alex$ cargo +nightly build
   Compiling xxx v0.1.0 (file:///Users/alex/xxx)
    Finished dev [unoptimized + debuginfo] target(s) in 1.53 secs
durska:xxx alex$ ls target/debug
build		deps		examples	incremental	native		xxx		xxx.d
durska:xxx alex$

@kennytm kennytm added A-debuginfo Area: Debugging information in compiled programs (DWARF, PDB, etc.) C-bug Category: This is a bug. O-macos Operating system: macOS regression-from-stable-to-nightly Performance or correctness regression from stable to nightly. labels Nov 29, 2017
@alexcrichton
Copy link
Member

I'm not able to reproduce this locally myself, can those who can reproduce this provide more info like an XCode version? Also what happens when you run dsymutil on the output binary manually?

@durka
Copy link
Contributor Author

durka commented Nov 29, 2017

I'm on OSX 10.9.5, with XCode 6.2.

$ dsymutil target/debug/xxx
warning: (x86_64) /Users/alex/xxx/target/debug/deps/xxx-80320c9e1df831ef.xxx0.rcgu.o unable to open object file
warning: (x86_64) /Users/alex/xxx/target/debug/deps/xxx-80320c9e1df831ef.xxx1.rcgu.o unable to open object file
error: 0x000135c8 has an attribute  AT_abstract_origin that is a reference to a invalid DIE 0x00024272

@alexreg
Copy link
Contributor

alexreg commented Nov 29, 2017

OS X 10.13.1, Xcode 9.1.

Example dsymutil output (on a test binary):

warning: (x86_64) /Users/alex/Software/decimate/target/debug/deps/decimate-ff27a6681266f295.decimate0.rcgu.o unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/Software/decimate/target/debug/deps/decimate-ff27a6681266f295.decimate1.rcgu.o unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/Software/decimate/target/debug/deps/decimate-ff27a6681266f295.decimate10.rcgu.o unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/Software/decimate/target/debug/deps/decimate-ff27a6681266f295.decimate11.rcgu.o unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/Software/decimate/target/debug/deps/decimate-ff27a6681266f295.decimate12.rcgu.o unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/Software/decimate/target/debug/deps/decimate-ff27a6681266f295.decimate13.rcgu.o unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/Software/decimate/target/debug/deps/decimate-ff27a6681266f295.decimate14.rcgu.o unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/Software/decimate/target/debug/deps/decimate-ff27a6681266f295.decimate15.rcgu.o unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/Software/decimate/target/debug/deps/decimate-ff27a6681266f295.decimate2.rcgu.o unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/Software/decimate/target/debug/deps/decimate-ff27a6681266f295.decimate3.rcgu.o unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/Software/decimate/target/debug/deps/decimate-ff27a6681266f295.decimate4.rcgu.o unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/Software/decimate/target/debug/deps/decimate-ff27a6681266f295.decimate5.rcgu.o unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/Software/decimate/target/debug/deps/decimate-ff27a6681266f295.decimate6.rcgu.o unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/Software/decimate/target/debug/deps/decimate-ff27a6681266f295.decimate7.rcgu.o unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/Software/decimate/target/debug/deps/decimate-ff27a6681266f295.decimate8.rcgu.o unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/Software/decimate/target/debug/deps/decimate-ff27a6681266f295.decimate9.rcgu.o unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libtest-a9fddd554d71fed8.rlib(test-a9fddd554d71fed8.test0-b772135dc56a8d40d5eef98e91195c08.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libtest-a9fddd554d71fed8.rlib(test-a9fddd554d71fed8.test1-b772135dc56a8d40d5eef98e91195c08.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libtest-a9fddd554d71fed8.rlib(test-a9fddd554d71fed8.test10-b772135dc56a8d40d5eef98e91195c08.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libtest-a9fddd554d71fed8.rlib(test-a9fddd554d71fed8.test11-b772135dc56a8d40d5eef98e91195c08.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libtest-a9fddd554d71fed8.rlib(test-a9fddd554d71fed8.test12-b772135dc56a8d40d5eef98e91195c08.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libtest-a9fddd554d71fed8.rlib(test-a9fddd554d71fed8.test13-b772135dc56a8d40d5eef98e91195c08.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libtest-a9fddd554d71fed8.rlib(test-a9fddd554d71fed8.test14-b772135dc56a8d40d5eef98e91195c08.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libtest-a9fddd554d71fed8.rlib(test-a9fddd554d71fed8.test15-b772135dc56a8d40d5eef98e91195c08.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libtest-a9fddd554d71fed8.rlib(test-a9fddd554d71fed8.test2-b772135dc56a8d40d5eef98e91195c08.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libtest-a9fddd554d71fed8.rlib(test-a9fddd554d71fed8.test3-b772135dc56a8d40d5eef98e91195c08.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libtest-a9fddd554d71fed8.rlib(test-a9fddd554d71fed8.test5-b772135dc56a8d40d5eef98e91195c08.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libtest-a9fddd554d71fed8.rlib(test-a9fddd554d71fed8.test6-b772135dc56a8d40d5eef98e91195c08.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libtest-a9fddd554d71fed8.rlib(test-a9fddd554d71fed8.test7-b772135dc56a8d40d5eef98e91195c08.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libtest-a9fddd554d71fed8.rlib(test-a9fddd554d71fed8.test8-b772135dc56a8d40d5eef98e91195c08.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libgetopts-1008a46126937249.rlib(getopts-1008a46126937249.getopts0-7c8fcfadff7e34aec95f2abee7854b9b.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libgetopts-1008a46126937249.rlib(getopts-1008a46126937249.getopts1-7c8fcfadff7e34aec95f2abee7854b9b.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libgetopts-1008a46126937249.rlib(getopts-1008a46126937249.getopts10-7c8fcfadff7e34aec95f2abee7854b9b.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libgetopts-1008a46126937249.rlib(getopts-1008a46126937249.getopts11-7c8fcfadff7e34aec95f2abee7854b9b.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libgetopts-1008a46126937249.rlib(getopts-1008a46126937249.getopts15-7c8fcfadff7e34aec95f2abee7854b9b.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libgetopts-1008a46126937249.rlib(getopts-1008a46126937249.getopts2-7c8fcfadff7e34aec95f2abee7854b9b.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libgetopts-1008a46126937249.rlib(getopts-1008a46126937249.getopts3-7c8fcfadff7e34aec95f2abee7854b9b.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libgetopts-1008a46126937249.rlib(getopts-1008a46126937249.getopts8-7c8fcfadff7e34aec95f2abee7854b9b.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libterm-34bc198f380b0ad1.rlib(term-34bc198f380b0ad1.term0-c1700708d6471fcf1b7fe668dbada2d0.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libterm-34bc198f380b0ad1.rlib(term-34bc198f380b0ad1.term1-c1700708d6471fcf1b7fe668dbada2d0.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libterm-34bc198f380b0ad1.rlib(term-34bc198f380b0ad1.term10-c1700708d6471fcf1b7fe668dbada2d0.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libterm-34bc198f380b0ad1.rlib(term-34bc198f380b0ad1.term13-c1700708d6471fcf1b7fe668dbada2d0.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libterm-34bc198f380b0ad1.rlib(term-34bc198f380b0ad1.term14-c1700708d6471fcf1b7fe668dbada2d0.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libterm-34bc198f380b0ad1.rlib(term-34bc198f380b0ad1.term15-c1700708d6471fcf1b7fe668dbada2d0.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libterm-34bc198f380b0ad1.rlib(term-34bc198f380b0ad1.term2-c1700708d6471fcf1b7fe668dbada2d0.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libterm-34bc198f380b0ad1.rlib(term-34bc198f380b0ad1.term3-c1700708d6471fcf1b7fe668dbada2d0.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libterm-34bc198f380b0ad1.rlib(term-34bc198f380b0ad1.term4-c1700708d6471fcf1b7fe668dbada2d0.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libterm-34bc198f380b0ad1.rlib(term-34bc198f380b0ad1.term5-c1700708d6471fcf1b7fe668dbada2d0.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libterm-34bc198f380b0ad1.rlib(term-34bc198f380b0ad1.term6-c1700708d6471fcf1b7fe668dbada2d0.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libterm-34bc198f380b0ad1.rlib(term-34bc198f380b0ad1.term7-c1700708d6471fcf1b7fe668dbada2d0.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libterm-34bc198f380b0ad1.rlib(term-34bc198f380b0ad1.term8-c1700708d6471fcf1b7fe668dbada2d0.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libstd-ffab6f0da90e7ceb.rlib(std-ffab6f0da90e7ceb.std0-5b162ba70691cc713a531b84135e10db.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libstd-ffab6f0da90e7ceb.rlib(std-ffab6f0da90e7ceb.std1-5b162ba70691cc713a531b84135e10db.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libstd-ffab6f0da90e7ceb.rlib(std-ffab6f0da90e7ceb.std10-5b162ba70691cc713a531b84135e10db.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libstd-ffab6f0da90e7ceb.rlib(std-ffab6f0da90e7ceb.std11-5b162ba70691cc713a531b84135e10db.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libstd-ffab6f0da90e7ceb.rlib(std-ffab6f0da90e7ceb.std12-5b162ba70691cc713a531b84135e10db.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libstd-ffab6f0da90e7ceb.rlib(std-ffab6f0da90e7ceb.std13-5b162ba70691cc713a531b84135e10db.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libstd-ffab6f0da90e7ceb.rlib(std-ffab6f0da90e7ceb.std14-5b162ba70691cc713a531b84135e10db.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libstd-ffab6f0da90e7ceb.rlib(std-ffab6f0da90e7ceb.std15-5b162ba70691cc713a531b84135e10db.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libstd-ffab6f0da90e7ceb.rlib(std-ffab6f0da90e7ceb.std2-5b162ba70691cc713a531b84135e10db.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libstd-ffab6f0da90e7ceb.rlib(std-ffab6f0da90e7ceb.std4-5b162ba70691cc713a531b84135e10db.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libstd-ffab6f0da90e7ceb.rlib(std-ffab6f0da90e7ceb.std5-5b162ba70691cc713a531b84135e10db.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libstd-ffab6f0da90e7ceb.rlib(std-ffab6f0da90e7ceb.std6-5b162ba70691cc713a531b84135e10db.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libstd-ffab6f0da90e7ceb.rlib(std-ffab6f0da90e7ceb.std7-5b162ba70691cc713a531b84135e10db.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libstd-ffab6f0da90e7ceb.rlib(std-ffab6f0da90e7ceb.std8-5b162ba70691cc713a531b84135e10db.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libstd-ffab6f0da90e7ceb.rlib(std-ffab6f0da90e7ceb.std9-5b162ba70691cc713a531b84135e10db.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libpanic_unwind-9d5f1e62ff3951d2.rlib(panic_unwind-9d5f1e62ff3951d2.panic_unwind0-958fe6d4f5cf04472f43dfd99357b3f3.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libpanic_unwind-9d5f1e62ff3951d2.rlib(panic_unwind-9d5f1e62ff3951d2.panic_unwind3-958fe6d4f5cf04472f43dfd99357b3f3.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libpanic_unwind-9d5f1e62ff3951d2.rlib(panic_unwind-9d5f1e62ff3951d2.panic_unwind4-958fe6d4f5cf04472f43dfd99357b3f3.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/liballoc_jemalloc-996631123851b625.rlib(alloc_jemalloc-996631123851b625.alloc_jemalloc0.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/liballoc_jemalloc-996631123851b625.rlib(jemalloc.pic.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/liballoc_jemalloc-996631123851b625.rlib(arena.pic.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/liballoc_jemalloc-996631123851b625.rlib(base.pic.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/liballoc_jemalloc-996631123851b625.rlib(bitmap.pic.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/liballoc_jemalloc-996631123851b625.rlib(chunk.pic.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/liballoc_jemalloc-996631123851b625.rlib(chunk_dss.pic.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/liballoc_jemalloc-996631123851b625.rlib(chunk_mmap.pic.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/liballoc_jemalloc-996631123851b625.rlib(ctl.pic.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/liballoc_jemalloc-996631123851b625.rlib(extent.pic.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/liballoc_jemalloc-996631123851b625.rlib(huge.pic.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/liballoc_jemalloc-996631123851b625.rlib(mutex.pic.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/liballoc_jemalloc-996631123851b625.rlib(nstime.pic.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/liballoc_jemalloc-996631123851b625.rlib(pages.pic.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/liballoc_jemalloc-996631123851b625.rlib(prof.pic.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/liballoc_jemalloc-996631123851b625.rlib(quarantine.pic.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/liballoc_jemalloc-996631123851b625.rlib(rtree.pic.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/liballoc_jemalloc-996631123851b625.rlib(stats.pic.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/liballoc_jemalloc-996631123851b625.rlib(tcache.pic.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/liballoc_jemalloc-996631123851b625.rlib(tsd.pic.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/liballoc_jemalloc-996631123851b625.rlib(util.pic.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/liballoc_jemalloc-996631123851b625.rlib(witness.pic.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libunwind-d4941731b4511d1c.rlib(unwind-d4941731b4511d1c.unwind0.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/liballoc_system-4cc58a80cbef01ab.rlib(alloc_system-4cc58a80cbef01ab.alloc_system0-71d84364b807c19d665fd353c22cc7f2.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/liballoc_system-4cc58a80cbef01ab.rlib(alloc_system-4cc58a80cbef01ab.alloc_system1-71d84364b807c19d665fd353c22cc7f2.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/liballoc_system-4cc58a80cbef01ab.rlib(alloc_system-4cc58a80cbef01ab.alloc_system3-71d84364b807c19d665fd353c22cc7f2.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/liballoc-95e54564d338940a.rlib(alloc-95e54564d338940a.alloc0-c3980850825c2c7f96eca4eb579c47e6.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/liballoc-95e54564d338940a.rlib(alloc-95e54564d338940a.alloc1-c3980850825c2c7f96eca4eb579c47e6.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/liballoc-95e54564d338940a.rlib(alloc-95e54564d338940a.alloc10-c3980850825c2c7f96eca4eb579c47e6.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/liballoc-95e54564d338940a.rlib(alloc-95e54564d338940a.alloc15-c3980850825c2c7f96eca4eb579c47e6.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/liballoc-95e54564d338940a.rlib(alloc-95e54564d338940a.alloc2-c3980850825c2c7f96eca4eb579c47e6.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/liballoc-95e54564d338940a.rlib(alloc-95e54564d338940a.alloc3-c3980850825c2c7f96eca4eb579c47e6.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/liballoc-95e54564d338940a.rlib(alloc-95e54564d338940a.alloc4-c3980850825c2c7f96eca4eb579c47e6.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/liballoc-95e54564d338940a.rlib(alloc-95e54564d338940a.alloc5-c3980850825c2c7f96eca4eb579c47e6.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/liballoc-95e54564d338940a.rlib(alloc-95e54564d338940a.alloc8-c3980850825c2c7f96eca4eb579c47e6.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libstd_unicode-ac292dfa9f4af6b1.rlib(std_unicode-ac292dfa9f4af6b1.std_unicode0-f8abc1f8814f527bdd385e2af790ab73.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libstd_unicode-ac292dfa9f4af6b1.rlib(std_unicode-ac292dfa9f4af6b1.std_unicode10-f8abc1f8814f527bdd385e2af790ab73.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libstd_unicode-ac292dfa9f4af6b1.rlib(std_unicode-ac292dfa9f4af6b1.std_unicode11-f8abc1f8814f527bdd385e2af790ab73.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libstd_unicode-ac292dfa9f4af6b1.rlib(std_unicode-ac292dfa9f4af6b1.std_unicode12-f8abc1f8814f527bdd385e2af790ab73.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libstd_unicode-ac292dfa9f4af6b1.rlib(std_unicode-ac292dfa9f4af6b1.std_unicode2-f8abc1f8814f527bdd385e2af790ab73.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libstd_unicode-ac292dfa9f4af6b1.rlib(std_unicode-ac292dfa9f4af6b1.std_unicode6-f8abc1f8814f527bdd385e2af790ab73.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libcore-5bd57917b923e1d7.rlib(core-5bd57917b923e1d7.core0-4e0bbec623726850980f2fb35d448527.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libcore-5bd57917b923e1d7.rlib(core-5bd57917b923e1d7.core1-4e0bbec623726850980f2fb35d448527.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libcore-5bd57917b923e1d7.rlib(core-5bd57917b923e1d7.core10-4e0bbec623726850980f2fb35d448527.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libcore-5bd57917b923e1d7.rlib(core-5bd57917b923e1d7.core11-4e0bbec623726850980f2fb35d448527.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libcore-5bd57917b923e1d7.rlib(core-5bd57917b923e1d7.core12-4e0bbec623726850980f2fb35d448527.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libcore-5bd57917b923e1d7.rlib(core-5bd57917b923e1d7.core13-4e0bbec623726850980f2fb35d448527.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libcore-5bd57917b923e1d7.rlib(core-5bd57917b923e1d7.core15-4e0bbec623726850980f2fb35d448527.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libcore-5bd57917b923e1d7.rlib(core-5bd57917b923e1d7.core2-4e0bbec623726850980f2fb35d448527.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libcore-5bd57917b923e1d7.rlib(core-5bd57917b923e1d7.core3-4e0bbec623726850980f2fb35d448527.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libcore-5bd57917b923e1d7.rlib(core-5bd57917b923e1d7.core4-4e0bbec623726850980f2fb35d448527.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libcore-5bd57917b923e1d7.rlib(core-5bd57917b923e1d7.core5-4e0bbec623726850980f2fb35d448527.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libcore-5bd57917b923e1d7.rlib(core-5bd57917b923e1d7.core6-4e0bbec623726850980f2fb35d448527.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libcore-5bd57917b923e1d7.rlib(core-5bd57917b923e1d7.core7-4e0bbec623726850980f2fb35d448527.rs.rcgu.o) unable to open object file: No such file or directory
warning: (x86_64) /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libcore-5bd57917b923e1d7.rlib(core-5bd57917b923e1d7.core9-4e0bbec623726850980f2fb35d448527.rs.rcgu.o) unable to open object file: No such file or directory

@durka
Copy link
Contributor Author

durka commented Nov 29, 2017

@alexreg that's all of it, just warnings without errors?

@alexcrichton
Copy link
Member

It looks like this may just be a resurgence of #45511, when running dsymutil by hand locally it segfaults and on Linux it has the same error message as #45511. I remember seeing no errors on #45511 when I landed the fix...

cc @philipc, mind helping to take a look here to see if it's the same issue as before?

@durka
Copy link
Contributor Author

durka commented Nov 29, 2017

Is there a way to turn off ThinLTO for testing? I already tried cargo rustc -- -C codegen-units=1; it kills the dsymutil warnings but the error remains.

@alexcrichton
Copy link
Member

No unfortunately this has to do with a libstd/libtest that is compiled with ThinLTO, nothing to down with downstream options.

@durka
Copy link
Contributor Author

durka commented Nov 29, 2017

Ah I see. Well if I can test something by building a compiler locally let me know.

@alexcrichton
Copy link
Member

One thing I don't understand is that CI is passing which at least at one point relies on filenames/line numbers in backtraces on OSX, so I don't know how that's working...

@durka
Copy link
Contributor Author

durka commented Nov 29, 2017 via email

@durka
Copy link
Contributor Author

durka commented Nov 29, 2017

dsymutil does segfault according to gdb, FWIW, though it somehow avoid printing "Segmentation fault" so it looks like the output just ends abruptly.

@durka
Copy link
Contributor Author

durka commented Nov 29, 2017

Running the command from #45511:

$ dwarfdump -i ~/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/libtest-df2fac180254d0b2.dylib
----------------------------------------------------------------------
 File: /Users/alex/.rustup/toolchains/nightly-x86_64-apple-darwin/lib/libtest-df2fac180254d0b2.dylib (x86_64)
----------------------------------------------------------------------
.debug_info contents:
< EMPTY >

@alexreg
Copy link
Contributor

alexreg commented Nov 30, 2017

@durka Yeah, that's all of it.

@philipc
Copy link
Contributor

philipc commented Nov 30, 2017

I've verified that the error from #45511 has been fixed for the minimal test case we had, but the error is still occurring for other code. Running the following gives about 6 files with offset errors:

find ~/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/ -name \*.so | xargs -t -n 1 /usr/bin/dwarfdump -i > /dev/null

The patch I did for #45511 fixed a problem with references within the abstract subprogram DIE, but the errors I'm seeing here are within non-inlined subprogram DIEs. So we'll need another LLVM patch. I'm worried that patching this in the same way isn't going to give any assurance that we've fixed all the cases in which this can occur.

@alexcrichton
Copy link
Member

@philipc ah that's unfortunate :(

I agree yeah that we may be chasing this for awhile, but out of curiosity do you know if a patch in LLVM for this bug would be a small/easy one? If so that may be the best way to go for now at least in the short term perhaps?

@philipc
Copy link
Contributor

philipc commented Nov 30, 2017

I expect it will be small, similar to the last patch.

@alexcrichton
Copy link
Member

Ok, nice! Would you be willing to help draw that up? I can try to help stir up action on the LLVM side of things to land it upstream.

@philipc
Copy link
Contributor

philipc commented Nov 30, 2017

Yes I'll look into it.

@alexcrichton
Copy link
Member

@philipc awesome, thanks!

@arielb1 arielb1 added the T-dev-tools Relevant to the dev-tools subteam, which will review and decide on the PR/issue. label Nov 30, 2017
@philipc
Copy link
Contributor

philipc commented Dec 1, 2017

Here's a reduced IR (from creduce/bugpoint/hand reduction). This may not be fully reduced, but it's hard to reduce further without understanding more about when the problem occurs.

I've found where I think it's going wrong, but it's not as easy to fix the same way. For #45511, the problem was this getOrCreateContextDIE call in DwarfCompileUnit::constructAbstractSubprogramScopeDIE. But as the comments there say, some of this code is duplicated from DwarfUnit::getOrCreateSubprogramDIE which also has a getOrCreateContextDIE call and based on print debugging this is where the problem occurs (ie if I lookup the CU for the ContextDIE, it is different from this).

The previous fix was to switch from using this to using ContextCU. It's not as easy to fix this time because the new DIE is being returned and further operated on by the callers, so the callers need fixing too, which I think will be rather messy. Might be time to ask upstream for ideas on how to fix it this time? My opinion is that it would be better if we could prevent getOrCreateContextDIE from sharing between CUs, but I'm not sure if that is feasible. I think it's been done for DWO though?

@philipc
Copy link
Contributor

philipc commented Dec 1, 2017

Another problem is that the unit that was specified for the DISubprogram is also used in DwarfDebug::endFunctionImpl, and this controls which CU the address range for the subprogram is assigned to. So if the subprogram is actually emitted in a different CU then the address range info is wrong, and I've verified this occurs for the reduced IR. So that further enforces my opinion that fixing in the same way as #45511 is wrong.

@alexcrichton
Copy link
Member

@philipc ok thanks for the investigation! I think maybe leaving a comment on the previous LLVM issue is a good place to start?

As a side note, do you know if it'd be possible to post-process IR and remove all debuginfo codegen units except one? It seems like this is pretty problematic behavior and forcing everything to be part of the same codegen unit may not be that bad in terms of debuginfo?

@philipc
Copy link
Contributor

philipc commented Dec 2, 2017

@alexcrichton If the codegen units are all from the same crate, then that's probably possible and even desirable, but my understanding of LLVM is lacking here. However, if we're doing ThinLTO for codegen units from multiple crates then I don't think that will work well.

@alexcrichton
Copy link
Member

Ah yeah my thinking is that after we do all ThinLTO optimizations we could rewrite all the debuginfo to point to the same codegen unit (the codegen unit for that ThinLTO module). This would run the risk of messing up inlined debuginfo but optimized debuginfo in LLVM is always pretty bad anyway right now...

I'm just not sure, though, how to take an LLVM module and postprocess it to change the debuginfo.

bors added a commit that referenced this issue Dec 2, 2017
rustc: Prepare to enable ThinLTO by default

This commit *almost* enables ThinLTO and multiple codegen units in release mode by
default but is blocked on #46346 now before pulling the trigger.
@alexcrichton
Copy link
Member

I've filed an upstream LLVM bug for this, @philipc please feel free to leave any extra commments there!

@durka
Copy link
Contributor Author

durka commented Dec 7, 2017 via email

@alexcrichton
Copy link
Member

Yeah we for sure don't want this to slip to beta/stable. My plan is that if we're a week or so out from the next beta branch we'll turn off ThinLTO for libstd/libtest (or someone can do it sooner) which should fix the symptoms. Turning ThinLTO back on would then be blocked on fixing this issue.

@durka
Copy link
Contributor Author

durka commented Dec 7, 2017 via email

alexcrichton added a commit to alexcrichton/rust that referenced this issue Dec 18, 2017
This commit implements a workaround for rust-lang#46346 which basically just
avoids triggering the situation that LLVM's bug
https://bugs.llvm.org/show_bug.cgi?id=35562 arises. More details can be
found in the code itself but this commit is also intended to ...

Closes rust-lang#46346
bors added a commit that referenced this issue Dec 21, 2017
rustc: Work around `DICompileUnit` bugs in LLVM

This commit implements a workaround for #46346 which basically just
avoids triggering the situation that LLVM's bug
https://bugs.llvm.org/show_bug.cgi?id=35562 arises. More details can be
found in the code itself but this commit is also intended to ...

Closes #46346
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-debuginfo Area: Debugging information in compiled programs (DWARF, PDB, etc.) C-bug Category: This is a bug. O-macos Operating system: macOS regression-from-stable-to-nightly Performance or correctness regression from stable to nightly. T-dev-tools Relevant to the dev-tools subteam, which will review and decide on the PR/issue.
Projects
None yet
Development

No branches or pull requests

7 participants