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

"unwinding" crate fails to compile after LLVM 15 #101121

Closed
Gaelan opened this issue Aug 28, 2022 · 2 comments · Fixed by #101312
Closed

"unwinding" crate fails to compile after LLVM 15 #101121

Gaelan opened this issue Aug 28, 2022 · 2 comments · Fixed by #101312
Assignees
Labels
A-LLVM Area: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues. C-bug Category: This is a bug. I-crash Issue: The compiler crashes (SIGSEGV, SIGABRT, etc). Use I-ICE instead when the compiler panics. P-high High priority regression-from-stable-to-nightly Performance or correctness regression from stable to nightly. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.

Comments

@Gaelan
Copy link

Gaelan commented Aug 28, 2022

The unwinding crate compiles on nightlies before e2b52ff (the LLVM 15 upgrade), but now it fails with this:

$ cargo +nightly build --target x86_64-unknown-linux-gnu
   Compiling libc v0.2.132
   Compiling gimli v0.26.2
   Compiling unwinding v0.1.4 (/private/tmp/unwinding)
inlinable function call in a function with debug info must have a !dbg location
  call void @_Unwind_Resume(ptr %81) #15
inlinable function call in a function with debug info must have a !dbg location
  call void @_Unwind_Resume(ptr %101) #15
inlinable function call in a function with debug info must have a !dbg location
  call void @_Unwind_Resume(ptr %144) #15
inlinable function call in a function with debug info must have a !dbg location
  call void @_Unwind_Resume(ptr %111) #15
LLVM ERROR: Broken module found, compilation aborted!
error: could not compile `unwinding`

The error happens both when natively compiling on Arch Linux, and when cross compiling from macOS as shown here.

Meta

rustc --version --verbose:

rustc 1.65.0-nightly (c07a8b4e0 2022-08-26)
binary: rustc
commit-hash: c07a8b4e09f356c7468b69c50cac7fc5b5000b8a
commit-date: 2022-08-26
host: x86_64-apple-darwin
release: 1.65.0-nightly
LLVM version: 15.0.0

Bisect output

searched nightlies: from nightly-2022-08-12 to nightly-2022-08-14 [originally searched from 2022-07-01; reduced range shown here because I restarted bisect due to a crash half way through]
regressed nightly: nightly-2022-08-13
searched commit range: 20ffea6...f22819b
regressed commit: e2b52ff

bisected with cargo-bisect-rustc v0.6.4

Host triple: x86_64-unknown-linux-gnu
Reproduce with:

cargo bisect-rustc --end=2022-08-14 
@Gaelan Gaelan added the C-bug Category: This is a bug. label Aug 28, 2022
@nikic nikic added A-LLVM Area: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues. I-crash Issue: The compiler crashes (SIGSEGV, SIGABRT, etc). Use I-ICE instead when the compiler panics. regression-from-stable-to-nightly Performance or correctness regression from stable to nightly. labels Aug 31, 2022
@rustbot rustbot added the I-prioritize Issue: Indicates that prioritization has been requested for this issue. label Aug 31, 2022
@apiraino
Copy link
Contributor

apiraino commented Aug 31, 2022

WG-prioritization assigning priority (Zulip discussion).

@rustbot label -I-prioritize +P-high T-compiler

@rustbot rustbot added P-high High priority T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. and removed I-prioritize Issue: Indicates that prioritization has been requested for this issue. labels Aug 31, 2022
@nikic
Copy link
Contributor

nikic commented Aug 31, 2022

Upstream issue: llvm/llvm-project#57469

Not sure why this starts with LLVM 15, as the issue itself is not new.

@nikic nikic self-assigned this Aug 31, 2022
bors added a commit to rust-lang-ci/rust that referenced this issue Sep 4, 2022
Update LLVM submodule

This updates to the current 15.x branch plus one cherry-pick.

Fixes rust-lang#100834.
Fixes rust-lang#101121.
@bors bors closed this as completed in 8bed0f2 Sep 4, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-LLVM Area: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues. C-bug Category: This is a bug. I-crash Issue: The compiler crashes (SIGSEGV, SIGABRT, etc). Use I-ICE instead when the compiler panics. P-high High priority regression-from-stable-to-nightly Performance or correctness regression from stable to nightly. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants