| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2023-11-09 | Fix typo in internal.rs | Ikko Eltociear Ashimine | -1/+1 | |
| covert -> convert | ||||
| 2023-10-24 | Use IndexMap for handling stable Ty | Celina G. Val | -2/+2 | |
| 2023-10-24 | Remove fold code and add Const::internal() | Celina G. Val | -8/+15 | |
| 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-23 | Add test and remove double ref | Celina G. Val | -3/+3 | |
| 2023-10-23 | Remove unsafe and `Rc` | Celina G. Val | -13/+9 | |
| 2023-10-23 | Add `internal()` method counterpart to `stable()` | Celina G. Val | -1/+5 | |
| Note: We do not expect to provide internalizing methods for all StableMIR constructs. They exist only to help migrating efforts to allow users to mix StableMIR and internal constructs. | ||||
| 2023-10-23 | Add method to convert internal to stable constructs | Celina G. Val | -12/+46 | |
| 2023-10-23 | Avoid having `rustc_smir` depend on `rustc_interface` or `rustc_driver` | Oli Scherer | -58/+72 | |
| 2023-10-21 | Rollup merge of #116964 - celinval:smir-mono-body, r=oli-obk | Matthias Krüger | -0/+71 | |
| Add stable Instance::body() and RustcInternal trait The `Instance::body()` returns a monomorphized body. For that, we had to implement visitor that monomorphize types and constants. We are also introducing the RustcInternal trait that will allow us to convert back from Stable to Internal. Note that this trait is not yet visible for our users as it depends on Tables. We should probably add a new trait that can be exposed. The tests here are very simple, and I'm planning on creating more exhaustive tests in the project-mir repo. But I was hoping to get some feedback here first. r? ```@oli-obk``` | ||||
| 2023-10-20 | s/generator/coroutine/ | Oli Scherer | -1/+1 | |
| 2023-10-20 | s/Generator/Coroutine/ | Oli Scherer | -2/+2 | |
| 2023-10-19 | Add stable Instance::body() and RustcInternal trait | Celina G. Val | -0/+71 | |
| The `Instance::body()` returns a monomorphized body. For that, we had to implement visitor that monomorphize types and constants. We are also introducing the RustcInternal trait that will allow us to convert back from Stable to Internal. Note that this trait is not yet visible for our users as it depends on Tables. We should probably add a new trait that can be exposed. | ||||
| 2023-10-16 | Add MonoItems and Instance to stable_mir | Celina G. Val | -4/+24 | |
| Also add a few methods to instantiate instances and get an instance definition. We're still missing support to actually monomorphize the instance body. | ||||
| 2023-10-10 | add new wrapper for FxIndexMap | Oğuz Ağcayazı | -28/+38 | |
| 2023-10-09 | spans are now indexmapped | Oğuz Ağcayazı | -10/+8 | |
| 2023-10-09 | alloc id is indexmapped | Oğuz Ağcayazı | -7/+8 | |
| 2023-10-09 | defids are indexmapped | Oğuz Ağcayazı | -10/+15 | |
| 2023-10-06 | Remove unnecessary `pub`. | Nicholas Nethercote | -1/+1 | |
| 2023-09-28 | add RegionDef | ouz-a | -0/+4 | |
| 2023-09-25 | Split out the stable part of smir into its own crate to prevent accidental ↵ | Oli Scherer | -3/+3 | |
| usage of forever unstable things | ||||
| 2023-09-25 | Move `Opaque` to `stable_mir` | Oli Scherer | -21/+0 | |
| 2023-09-25 | Eliminate escape hatch | Oli Scherer | -0/+9 | |
| 2023-09-25 | Eliminate `with_tables` helper | Oli Scherer | -58/+1 | |
| 2023-09-14 | span is index | ouz-a | -1/+16 | |
| 2023-09-10 | Remove EarlyErrorHandler argument from after_analysis callback | bjorn3 | -2/+0 | |
| It is only used by miri which can create a new one using the Session. | ||||
| 2023-09-05 | Add tests and use ControlFlow | Celina G. Val | -32/+27 | |
| 2023-09-05 | SMIR: Allow users to pick if compilation continues | Celina G. Val | -8/+20 | |
| Currently we stop compilation, but some users might want to keep going. This is needed for us to test against rustc tests. Other tools, such as Kani, also implements parts of their logic as a backend so it is important for compilation to continue. | ||||
| 2023-09-05 | Diferentiate between ICE and compilation error | Celina G. Val | -6/+8 | |
| 2023-09-05 | Adjust StableMIR interface to return and not crash | Celina G. Val | -10/+25 | |
| Invoking StableMir::run() on a crate that has any compilation error was crashing the entire process. Instead, return a `CompilerError` so the user knows compilation did not succeed. I believe ICE will also be converted to `CompilerError`. I'm also adding a return value to the callback, because I think it will be handy for users (at least it was for my current task of implementing a tool to validate stable-mir). However, if people disagree, I can remove that. | ||||
| 2023-09-03 | Auto merge of #115470 - ericmarkmartin:stable-prov, r=oli-obk | bors | -1/+16 | |
| add stable provenance r? `@spastorino` implements rust-lang/project-stable-mir#22 | ||||
| 2023-09-02 | add stable provenance | Eric Mark Martin | -1/+16 | |
| 2023-09-01 | Create a SMIR visitor | Oli Scherer | -3/+15 | |
| 2023-08-29 | Rollup merge of #115300 - spastorino:smir-tweaks, r=oli-obk | Matthias Krüger | -17/+11 | |
| Tweaks and improvements on SMIR around generics_of and predicates_of r? `@oli-obk` This allows an API like the following ... ```rust let trait_decls = stable_mir::all_trait_decls().iter().map(|trait_def| { let trait_decl = stable_mir::trait_decl(trait_def); let generics = trait_decl.generics_of(); let predicates = trait_decl.predicates_of().predicates; ``` I didn't like that much `trait_def.trait_decl()` which is it possible but adding a method to a def_id that loads up a whole trait definition looks backwards to me. | ||||
| 2023-08-29 | Create StableMir replacer for SMirCalls | ouz-a | -0/+41 | |
| 2023-08-29 | Index def_ids directly | Santiago Pastorino | -17/+1 | |
| 2023-08-29 | Add stable_mir::DefId as new type wrapper | Santiago Pastorino | -6/+16 | |
| 2023-08-22 | add generics_of to smir | ouz-a | -0/+8 | |
| 2023-08-10 | Add impl trait declarations to SMIR | Santiago Pastorino | -0/+12 | |
| 2023-08-09 | Convert Const to Allocation in smir | ouz-a | -0/+4 | |
| 2023-08-07 | Convert trait declaration to SMIR | Santiago Pastorino | -0/+4 | |
| 2023-07-24 | Dynamic for smir | Eric Mark Martin | -0/+8 | |
| 2023-07-22 | add Alias for smir | Eric Mark Martin | -0/+8 | |
| 2023-07-20 | Add FnPtr ty to SMIR | Santiago Pastorino | -0/+16 | |
| 2023-07-19 | Add Generator to SMIR | Santiago Pastorino | -0/+8 | |
| 2023-07-19 | Add Closure ty to SMIR | Santiago Pastorino | -0/+8 | |
| 2023-07-19 | Add FnDef ty to SMIR | Santiago Pastorino | -0/+8 | |
| 2023-07-18 | Add Foreign to SMIR | Santiago Pastorino | -0/+8 | |
| 2023-07-13 | Add Adt to SMIR | Santiago Pastorino | -2/+14 | |
| 2023-07-10 | Implement a few more rvalue translation to smir | Celina G. Val | -0/+10 | |
| - Introduce an Opaque type for adding information that is still internal to the compiler. | ||||
| 2023-05-08 | Encode types in SMIR | Oli Scherer | -1/+1 | |
