-
Notifications
You must be signed in to change notification settings - Fork 13k
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
Generator drop glue jumps from is_cleanup:false -> is_cleanup:true and the other way #58892
Labels
A-MIR
Area: Mid-level IR (MIR) - https://blog.rust-lang.org/2016/04/19/MIR.html
T-compiler
Relevant to the compiler team, which will review and decide on the PR/issue.
Comments
I noticed this, because cg_clif crashed with a verifier error about a jump to an undefined bb. (cg_clif omits |
jonas-schievink
added
T-compiler
Relevant to the compiler team, which will review and decide on the PR/issue.
A-MIR
Area: Mid-level IR (MIR) - https://blog.rust-lang.org/2016/04/19/MIR.html
labels
Mar 3, 2019
Pretty printed shim (not fully transformed)
|
Forgot |
Centril
added a commit
to Centril/rust
that referenced
this issue
Mar 19, 2019
…cks, r=davidtwco Fixes for the generator transform * Moves cleanup annotations in pretty printed MIR so that they can be tested * Correctly determines which drops are in cleanup blocks when elaborating generator drops * Use the correct state for poisoning a generator Closes rust-lang#58892
bors
added a commit
that referenced
this issue
Mar 21, 2019
…dtwco Fixes for the generator transform * Moves cleanup annotations in pretty printed MIR so that they can be tested * Correctly determines which drops are in cleanup blocks when elaborating generator drops * Use the correct state for poisoning a generator Closes #58892
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
A-MIR
Area: Mid-level IR (MIR) - https://blog.rust-lang.org/2016/04/19/MIR.html
T-compiler
Relevant to the compiler team, which will review and decide on the PR/issue.
I only tested this with
-Cpanic=abort
.Wrong jumps: bb1 -> bb5, bb4 -> bb6, bb5 -> bb2.
Note: made mir dump below using
println!("{:#?}")
, becauserustc_mir::util::write_mir_pretty
doesn't work correctly for shims.Mir for `Instance { def: DropGlue(DefId(2/0:691 ~ core[479c]::ptr[0]::real_drop_in_place[0]), Some([generator@/Users/bjorn/Documents/rustc_codegen_cranelift/rust/src/test/run-pass/generator/panic-drops.rs:8:19: 10:6 {()}])), substs: [[generator@/Users/bjorn/Documents/rustc_codegen_cranelift/rust/src/test/run-pass/generator/panic-drops.rs:8:19: 10:6 {()}]] } _ZN4core3ptr18real_drop_in_place17h0fdaf8ce1f626024E`
The text was updated successfully, but these errors were encountered: