Skip to content

Conversation

makai410
Copy link
Contributor

Resolves: rust-lang/project-stable-mir#81.

I am unsure if we should add a MutableBody like Kani did.
Currently, I use &mut Body in MutMirVisitor::visit_body().

r? @celinval

@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. labels Mar 15, 2025
@rustbot
Copy link
Collaborator

rustbot commented Mar 15, 2025

This PR changes Stable MIR

cc @oli-obk, @celinval, @ouz-a

@celinval
Copy link
Contributor

Resolves: rust-lang/project-stable-mir#81.

I am unsure if we should add a MutableBody like Kani did. Currently, I use &mut Body in MutMirVisitor::visit_body().

I like the overall solution. I'll review the implementation when I'm in my laptop. Thanks!

Copy link
Contributor

@celinval celinval left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good! Thanks! Please r=me after you change the visibility of the new body methods.

Implement `make_mir_visitor` macro to generate `MirVisitor` and `MutMirVisitor`.

Add `ret_local_mut()`, `arg_locals_mut()` and `inner_locals_mut()` to `Body`, specifically for `MutMirVisitor`.
@makai410
Copy link
Contributor Author

@bors r=celinval

@bors
Copy link
Collaborator

bors commented Mar 18, 2025

@makai410: 🔑 Insufficient privileges: Not in reviewers

@makai410
Copy link
Contributor Author

Looks good! Thanks! Please r=me after you change the visibility of the new body methods.

Sorry that I am not a team member actually😥

@celinval
Copy link
Contributor

@bors r+ rollup

I didn't know you needed one.... Thanks again!

@bors
Copy link
Collaborator

bors commented Mar 18, 2025

📌 Commit ad315f6 has been approved by celinval

It is now in the queue for this repository.

@bors
Copy link
Collaborator

bors commented Mar 18, 2025

🌲 The tree is currently closed for pull requests below priority 100. This pull request will be tested once the tree is reopened.

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Mar 18, 2025
jieyouxu added a commit to jieyouxu/rust that referenced this pull request Mar 20, 2025
stable_mir: Add `MutMirVisitor`

Resolves: [rust-lang/project-stable-mir#81](rust-lang/project-stable-mir#81).

I am unsure if we should add a `MutableBody` like Kani did.
Currently, I use `&mut Body` in `MutMirVisitor::visit_body()`.

r? `@celinval`
bors added a commit to rust-lang-ci/rust that referenced this pull request Mar 20, 2025
Rollup of 15 pull requests

Successful merges:

 - rust-lang#138321 ([bootstrap] Distribute split debuginfo if present)
 - rust-lang#138364 (ports the compiler test cases to new rust_intrinsic format)
 - rust-lang#138410 (Couple mir building cleanups)
 - rust-lang#138435 (Add support for postfix yield expressions)
 - rust-lang#138536 (stable_mir: Add `MutMirVisitor`)
 - rust-lang#138623 ([bootstrap] Use llvm_runtimes for compiler-rt)
 - rust-lang#138650 (Optimize `io::Write::write_fmt` for constant strings)
 - rust-lang#138652 (Reintroduce remote-test support in run-make tests)
 - rust-lang#138685 (Use `Option<Ident>` for lowered param names.)
 - rust-lang#138694 (Fix: add ohos target notes)
 - rust-lang#138700 (Suggest `-Whelp` when pass `--print lints` to rustc)
 - rust-lang#138709 (Update GCC submodule)
 - rust-lang#138724 (Check attrs: Don't try to retrieve the name of list stems)
 - rust-lang#138731 (coverage: Add LLVM plumbing for expansion regions)
 - rust-lang#138732 (Use `def_path_str` for def id arg in `UnsupportedOpInfo`)

r? `@ghost`
`@rustbot` modify labels: rollup
Kobzol added a commit to Kobzol/rust that referenced this pull request Mar 21, 2025
stable_mir: Add `MutMirVisitor`

Resolves: [rust-lang/project-stable-mir#81](rust-lang/project-stable-mir#81).

I am unsure if we should add a `MutableBody` like Kani did.
Currently, I use `&mut Body` in `MutMirVisitor::visit_body()`.

r? ``@celinval``
matthiaskrgr added a commit to matthiaskrgr/rust that referenced this pull request Mar 21, 2025
stable_mir: Add `MutMirVisitor`

Resolves: [rust-lang/project-stable-mir#81](rust-lang/project-stable-mir#81).

I am unsure if we should add a `MutableBody` like Kani did.
Currently, I use `&mut Body` in `MutMirVisitor::visit_body()`.

r? ```@celinval```
matthiaskrgr added a commit to matthiaskrgr/rust that referenced this pull request Mar 21, 2025
stable_mir: Add `MutMirVisitor`

Resolves: [rust-lang/project-stable-mir#81](rust-lang/project-stable-mir#81).

I am unsure if we should add a `MutableBody` like Kani did.
Currently, I use `&mut Body` in `MutMirVisitor::visit_body()`.

r? ````@celinval````
bors added a commit to rust-lang-ci/rust that referenced this pull request Mar 22, 2025
…iaskrgr

Rollup of 8 pull requests

Successful merges:

 - rust-lang#136769 (Provide optional `Read`/`Write` methods for stdio)
 - rust-lang#138410 (Couple mir building cleanups)
 - rust-lang#138490 (Forward `stream_position` in `Arc<File>` as well)
 - rust-lang#138535 (Cleanup `LangString::parse`)
 - rust-lang#138536 (stable_mir: Add `MutMirVisitor`)
 - rust-lang#138673 (Fix build failure on Trusty)
 - rust-lang#138750 (Make `crate_hash` not iterate over `hir_crate` owners anymore)
 - rust-lang#138763 (jsondocck: Replace `jsonpath_lib` with `jsonpath-rust`)

r? `@ghost`
`@rustbot` modify labels: rollup
tgross35 added a commit to tgross35/rust that referenced this pull request Mar 22, 2025
stable_mir: Add `MutMirVisitor`

Resolves: [rust-lang/project-stable-mir#81](rust-lang/project-stable-mir#81).

I am unsure if we should add a `MutableBody` like Kani did.
Currently, I use `&mut Body` in `MutMirVisitor::visit_body()`.

r? `````@celinval`````
bors added a commit to rust-lang-ci/rust that referenced this pull request Mar 22, 2025
Rollup of 10 pull requests

Successful merges:

 - rust-lang#137736 (Don't attempt to export compiler-builtins symbols from rust dylibs)
 - rust-lang#138236 (uefi: Add OwnedEvent abstraction)
 - rust-lang#138321 ([bootstrap] Distribute split debuginfo if present)
 - rust-lang#138410 (Couple mir building cleanups)
 - rust-lang#138490 (Forward `stream_position` in `Arc<File>` as well)
 - rust-lang#138535 (Cleanup `LangString::parse`)
 - rust-lang#138536 (stable_mir: Add `MutMirVisitor`)
 - rust-lang#138580 (resolve: Avoid some unstable iteration 2)
 - rust-lang#138601 (add FCW to warn about wasm ABI transition)
 - rust-lang#138631 (Update test for SGX now implementing `read_buf`)

r? `@ghost`
`@rustbot` modify labels: rollup
bors added a commit to rust-lang-ci/rust that referenced this pull request Mar 22, 2025
…iaskrgr

Rollup of 7 pull requests

Successful merges:

 - rust-lang#138410 (Couple mir building cleanups)
 - rust-lang#138490 (Forward `stream_position` in `Arc<File>` as well)
 - rust-lang#138535 (Cleanup `LangString::parse`)
 - rust-lang#138536 (stable_mir: Add `MutMirVisitor`)
 - rust-lang#138673 (Fix build failure on Trusty)
 - rust-lang#138750 (Make `crate_hash` not iterate over `hir_crate` owners anymore)
 - rust-lang#138763 (jsondocck: Replace `jsonpath_lib` with `jsonpath-rust`)

r? `@ghost`
`@rustbot` modify labels: rollup
@bors bors merged commit 1cb17dd into rust-lang:master Mar 22, 2025
6 checks passed
@rustbot rustbot added this to the 1.87.0 milestone Mar 22, 2025
rust-timer added a commit to rust-lang-ci/rust that referenced this pull request Mar 22, 2025
Rollup merge of rust-lang#138536 - makai410:mut-mir-visitor, r=celinval

stable_mir: Add `MutMirVisitor`

Resolves: [rust-lang/project-stable-mir#81](rust-lang/project-stable-mir#81).

I am unsure if we should add a `MutableBody` like Kani did.
Currently, I use `&mut Body` in `MutMirVisitor::visit_body()`.

r? ``````@celinval``````
github-actions bot pushed a commit to model-checking/verify-rust-std that referenced this pull request Apr 2, 2025
…iaskrgr

Rollup of 7 pull requests

Successful merges:

 - rust-lang#138410 (Couple mir building cleanups)
 - rust-lang#138490 (Forward `stream_position` in `Arc<File>` as well)
 - rust-lang#138535 (Cleanup `LangString::parse`)
 - rust-lang#138536 (stable_mir: Add `MutMirVisitor`)
 - rust-lang#138673 (Fix build failure on Trusty)
 - rust-lang#138750 (Make `crate_hash` not iterate over `hir_crate` owners anymore)
 - rust-lang#138763 (jsondocck: Replace `jsonpath_lib` with `jsonpath-rust`)

r? `@ghost`
`@rustbot` modify labels: rollup
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Create a MutMirVisitor
4 participants