about summary refs log tree commit diff
path: root/compiler/stable_mir/src/visitor.rs
AgeCommit message (Collapse)AuthorLines
2025-07-14rename `stable_mir` to `rustc_public`, and `rustc_smir` to `rustc_public_bridge`Makai-224/+0
2025-07-06move `stable_mir` back to its own crate and move `rustc_internal` to ↵Makai-0/+224
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-04-05let `rustc_smir` host `stable_mir` for refactoringMakai-224/+0
2025-02-22Fix bugs due to unhandled ControlFlowMichael Goulet-1/+1
2024-12-14Encode coroutine-closures in SMIRMichael Goulet-0/+1
2024-10-14Fix match_same_arms in stable_mirMichal Piotrowski-9/+7
2024-09-22Reformat using the new identifier sorting from rustfmtMichael Goulet-1/+1
2024-07-29Reformat `use` declarations.Nicholas Nethercote-2/+2
The previous commit updated `rustfmt.toml` appropriately. This commit is the outcome of running `x fmt --all` with the new formatting options.
2024-06-04Split smir `Const` into `TyConst` and `MirConst`Boxy-5/+25
2024-04-08Actually create ranged int types in the type system.Oli Scherer-0/+1
2023-11-10add CoroutineWitness to covered typesOğuz Ağcayazı-0/+1
2023-10-26Specialize ZeroSized constantsCelina G. Val-1/+1
ZeroSized constants can be represented as `mir::Const::Val` even if their layout is not yet known. In those cases, CrateItem::body() was crashing when trying to convert a `ConstValue::ZeroSized` into its stable counterpart `ConstantKind::Allocated`. Instead, we now map `ConstValue::ZeroSized` into a new variant: `ConstantKind::ZeroSized`.
2023-10-24Remove fold code and add Const::internal()Celina G. Val-2/+2
We are not planning to support user generated constant in the foreseeable future, so we are removing the Fold logic for now in favor of the Instance::resolve logic. The Instance::resolve was however incomplete, since we weren't handling internalizing constants yet. Thus, I added that. I decided to keep the Const fields private in case we decide to translate them lazily.
2023-10-20s/Generator/Coroutine/Oli Scherer-1/+1
2023-09-28simplify visitouz-a-28/+2
2023-09-28visit and fold ty::refouz-a-1/+4
2023-09-28add visitor for Regionouz-a-2/+35
2023-09-28make reg public and add visit, foldouz-a-1/+7
2023-09-25Split out the stable part of smir into its own crate to prevent accidental ↵Oli Scherer-0/+187
usage of forever unstable things