Uh oh!
There was an error while loading. Please reload this page.
Change reachability module to use StableMIR - #2894
Conversation
Keep this under a feature for now until we can assess perfomance. This is still not working: - Stub error handling
a2e6b8d to
63795a0CompareUh oh!
There was an error while loading. Please reload this page.
adpaco
left a comment
There was a problem hiding this comment.
It's looking really good. I wonder if we could add links to the stable MIR project or its APIs so it's clear what's going on here. But I'm not sure how much you'll use these APIs in other parts of the compiler, maybe it's better to add that elsewhere.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Co-authored-by: Adrian Palacios <73246657+adpaco-aws@users.noreply.github.com>
zhassan-aws
commented
Nov 28, 2023
I second this request. It's a bit difficult for me to understand the changes given my lack of knowledge of how the stable/internal MIR APIs compare. |
celinval
commented
Nov 28, 2023
Sure. Right now I will add more information to the code and to |
celinval
commented
Nov 30, 2023
@zhassan-aws and @adpaco-aws, I added some documentation to our wiki instead. I hope that's what you were looking for. Cheers! |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Co-authored-by: Zyad Hassan <88045115+zhassan-aws@users.noreply.github.com>
Rewrite the reachability module to use Stable APIs wherever possible. Note that in StableMIR the instance body is already monomorphized and constants are already evaluated, which simplifies the code for most of it, except to handle stubbing issue #2589.
For the stubbing issue, we still use a mix of stable and internal APIs to detect an invalid monomorphization.
Call-outs
This change requires the newest version of the Rust toolchain. Thus, it is upgrading the version as well.Creating this as a draft until Fix smir'sTy::Refpretty printing rust-lang/rust#118274 is merged.By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 and MIT licenses.