| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2018-07-25 | parameterize `BitVector` and `BitMatrix` by their index types | Niko Matsakis | -14/+17 | |
| 2018-05-17 | Rename trans to codegen everywhere. | Irina Popa | -1/+1 | |
| 2018-05-01 | rustc: return impl Iterator from Terminator(Kind)::successors(_mut). | Eduard-Mihai Burtescu | -5/+5 | |
| 2018-02-20 | rustc_mir: do not remove dead user variables if debuginfo needs them. | Eduard-Mihai Burtescu | -4/+13 | |
| 2017-12-03 | funnel all unwind paths through a single Resume block | Ariel Ben-Yehuda | -34/+0 | |
| This simplifies analysis and borrow-checking because liveness at the resume point can always be simply propagated. Later on, the "dead" Resumes are removed. | ||||
| 2017-12-01 | MIR: s/Lvalue/Place in type names. | Eduard-Mihai Burtescu | -4/+4 | |
| 2017-11-14 | rustc: split off BodyOwnerKind from MirSource. | Eduard-Mihai Burtescu | -2/+1 | |
| 2017-11-14 | rustc: move the MIR pass infrastructure and list to rustc_mir. | Eduard-Mihai Burtescu | -1/+2 | |
| 2017-09-04 | rustc_mir: use Local instead of Lvalue in Storage{Live,Dead}. | Eduard-Mihai Burtescu | -5/+2 | |
| 2017-09-03 | rustc_mir: implement visit_local instead/along visit_lvalue where possible. | Eduard-Mihai Burtescu | -14/+6 | |
| 2017-08-15 | use field init shorthand EVERYWHERE | Zack M. Davis | -2/+2 | |
| Like #43008 (f668999), but _much more aggressive_. | ||||
| 2017-08-01 | rustc_mir::transform::simplify - remove nops first | Ariel Ben-Yehuda | -2/+2 | |
| Removing nops can allow more basic blocks to be merged, but merging basic blocks can't allow for more nops to be removed, so we should remove nops first. This doesn't matter *that* much, because normally we run SimplifyCfg several times, but there's no reason not to do it. | ||||
| 2017-05-02 | simplify the MirPass traits and passes dramatically | Niko Matsakis | -23/+20 | |
| Overall goal: reduce the amount of context a mir pass needs so that it resembles a query. - The hooks are no longer "threaded down" to the pass, but rather run automatically from the top-level (we also thread down the current pass number, so that the files are sorted better). - The hook now receives a *single* callback, rather than a callback per-MIR. - The traits are no longer lifetime parameters, which moved to the methods -- given that we required `for<'tcx>` objecs, there wasn't much point to that. - Several passes now store a `String` instead of a `&'l str` (again, no point). | ||||
| 2017-05-02 | rework `MirPass` API to be stateless and extract helper fns | Niko Matsakis | -2/+2 | |
| 2017-04-22 | remove cleanup branches to the resume block | Ariel Ben-Yehuda | -0/+34 | |
| This improves LLVM performance by 10% lost during the shimmir transition. | ||||
| 2017-03-18 | apply pre-trans passes to Shim MIR | Ariel Ben-Yehuda | -5/+9 | |
| 2017-03-10 | Initial implementation of inlining for MIR | James Miller | -3/+15 | |
| Fairly basic implementation of inlining for MIR. Uses conservative heuristics for inlining. | ||||
| 2017-02-10 | SwitchInt over Switch | Simonas Kazlauskas | -1/+0 | |
| This removes another special case of Switch by replacing it with the more general SwitchInt. While this is more clunky currently, there’s no reason we can’t make it nice (and efficient) to use. | ||||
| 2017-02-10 | If is now always a SwitchInt in MIR | Simonas Kazlauskas | -1/+0 | |
| 2016-11-03 | A way to remove otherwise unused locals from MIR | Simonas Kazlauskas | -0/+349 | |
| Replaces the hack where a similar thing is done within trans. | ||||
