about summary refs log tree commit diff
path: root/compiler/rustc_smir/src/stable_mir/alloc.rs
AgeCommit message (Collapse)AuthorLines
2025-07-06move `stable_mir` back to its own crate and move `rustc_internal` to ↵Makai-77/+0
the`stable_mir` crate As part of this reorganization, some traits need to be moved from `rustc_smir::context::traits` to `stable_mir::unstable::internal_cx`. These traits are specifically designed for `InternalCx` to clarify the behavior of different functions that share the same name. This move is necessary to avoid orphan rule violations.
2025-07-04refactor: implement a new bridge trait `Allocation`Makai-8/+1
2025-07-04refactor: move `convert` to `unstable`Makai-1/+1
We want to keep StableMIR definitions and logic separate from any sort of conversion and usage of internal rustc code. So we bundle all unstable items that have no stability guarantees into `stable_mir::unstable`.
2025-07-04refactor: unify `Tables` implementation with bridge types and re-export ↵Makai-1/+2
`IndexedVal` define bridge types for `***Def`s. consolidate scattered `Tables` implementations into single inherent impl.
2025-07-04refactor: remove the `tcx` field in `Tables`Makai-7/+4
the only functionality of `Tables` is caching results. this commit moves calls to rustc queries from `Tables` to `SmirCtxt`.
2025-07-04refactor: split `rustc_smir::alloc` into two partsMakai-0/+86
The previous `rustc_smir::alloc` had many direct calls to rustc queries. This commit splits it into two parts: `rustc_smir::alloc` and `stable_mir::alloc`. Following the same pattern as `SmirCtxt` and `SmirInterface`, the `rustc_smir::alloc` handles all direct interactions with rustc queries and performs the actual memory allocations, while the `stable_mir::alloc` is responsible for constructing stable components.