-
Notifications
You must be signed in to change notification settings - Fork 13.3k
async closure coroutine by move body MirPass refactoring #123668
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Conversation
This comment was marked as resolved.
This comment was marked as resolved.
Some changes occurred to MIR optimizations cc @rust-lang/wg-mir-opt |
This comment was marked as resolved.
This comment was marked as resolved.
@@ -233,6 +233,7 @@ impl<'tcx> MirPass<'tcx> for ByMoveBody { | |||
let mut by_move_body = body.clone(); | |||
MakeByMoveBody { tcx, field_remapping, by_move_coroutine_ty }.visit_body(&mut by_move_body); | |||
dump_mir(tcx, false, "coroutine_by_move", &0, &by_move_body, |_, _| Ok(())); | |||
// FIXME: use query feeding to generate the body right here and then only store the ``DefId` of the new body.` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
backticks
So this is gonna conflict w/ 8af94ce, where I pulled this out into a helper. I could adapt that to iterate over the child rather than the parent, but it doesn't seem to be much cleaner at that point. |
I guess it's fine though, and I can just rebase on top of this. r=me with the backticks fixed |
@rustbot author |
…nt captures to child captures
6ab363c
to
e14e795
Compare
@bors r=compiler-errors |
…iaskrgr Rollup of 7 pull requests Successful merges: - rust-lang#121884 (Port exit-code run-make test to use rust) - rust-lang#122200 (Unconditionally show update nightly hint on ICE) - rust-lang#123568 (Clean up tests/ui by removing `does-nothing.rs`) - rust-lang#123609 (Don't use bytepos offsets when computing semicolon span for removal) - rust-lang#123612 (Set target-abi module flag for RISC-V targets) - rust-lang#123633 (Store all args in the unsupported Command implementation) - rust-lang#123668 (async closure coroutine by move body MirPass refactoring) Failed merges: - rust-lang#123701 (Only assert for child/parent projection compatibility AFTER checking that theyre coming from the same place) r? `@ghost` `@rustbot` modify labels: rollup
Rollup merge of rust-lang#123668 - oli-obk:by_move_body_golfing, r=compiler-errors async closure coroutine by move body MirPass refactoring Unsure about the last commit, but I think the other changes help in simplifying the control flow
Unsure about the last commit, but I think the other changes help in simplifying the control flow