| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2020-08-30 | mv compiler to compiler/ | mark | -547/+0 | |
| 2020-08-03 | Remove redundant assignment from CfgSimplifier | Tomasz Miąsko | -2/+0 | |
| 2020-08-03 | Fix change detection in CfgSimplifier::collapse_goto_chain | Tomasz Miąsko | -1/+1 | |
| Check that the old target is different from the new collapsed one, before concluding that anything changed. | ||||
| 2020-08-01 | Replace a recursive algorithm with an iterative one and a stack. | Oliver Scherer | -26/+43 | |
| 2020-04-23 | Clean up fragile checks of optimized away constants | Santiago Pastorino | -25/+10 | |
| 2020-04-22 | Use `Body` everywhere | Dylan MacKenzie | -7/+6 | |
| 2020-04-16 | Respond to code review feedback | Wesley Wiser | -1/+9 | |
| - Remove reads of indirect `Place`s - Add comments explaining what the algorithm does | ||||
| 2020-04-15 | Directly modify the `used_locals` vec | Wesley Wiser | -14/+12 | |
| Fixes perf regression in `optimized_mir` query | ||||
| 2020-04-15 | Run `SimplifyLocals` iteratively until we get to a fixedpoint | Wesley Wiser | -27/+131 | |
| 2020-04-15 | Remove other Rvalues | Wesley Wiser | -12/+30 | |
| 2020-04-11 | Pass the `PlaceElem::Index` local to `visit_local` | Jonas Schievink | -7/+0 | |
| 2020-04-02 | Remove unused discriminant reads from MIR bodies | Wesley Wiser | -11/+15 | |
| Allow the `SimplifyLocals` pass to remove reads of discriminants if the read is never used. | ||||
| 2020-03-30 | rustc -> rustc_middle part 3 (rustfmt) | Mazdak Farrokhzad | -2/+2 | |
| 2020-03-30 | rustc -> rustc_middle part 2 | Mazdak Farrokhzad | -3/+3 | |
| 2020-03-29 | Use `&` to do deref coercion for `ReadOnlyBodyAndCache` | Dylan MacKenzie | -1/+1 | |
| 2020-03-29 | Make `Visitor::visit_body` take a simple `Body` | Dylan MacKenzie | -1/+1 | |
| 2020-03-12 | Auto merge of #68551 - Marwes:allocations_mir, r=ecstatic-morse | bors | -7/+23 | |
| perf: Reuse a Vec in mir simplification Just moves the vec out of the outer loop so it is reused every iteration | ||||
| 2020-03-03 | Use .next() instead of .nth(0) on iterators. | Matthias Krüger | -1/+1 | |
| 2020-03-02 | s/merged_block_count/statements_to_merge/g | Markus Westerlind | -3/+3 | |
| 2020-02-16 | Clarify mir block merging | Markus Westerlind | -1/+5 | |
| 2020-02-13 | perf(mir): Reserve enough space for the merged blocks before appending | Markus Westerlind | -4/+17 | |
| 2020-02-13 | Avoid an intermediate Vec in mir simplify | Markus Westerlind | -7/+6 | |
| 2020-02-13 | Use Vec::append | Markus Westerlind | -1/+1 | |
| 2020-02-13 | Reuse a Vec in mir simplification | Markus Westerlind | -2/+2 | |
| 2020-01-10 | Remove PlaceBase enum and make Place base field be local: Local | Santiago Pastorino | -3/+1 | |
| 2020-01-10 | Remove Static from PlaceBase | Santiago Pastorino | -7/+3 | |
| 2019-12-22 | Format the world | Mark Rousskov | -81/+62 | |
| 2019-12-11 | Rollup merge of #67134 - oli-obk:const_prop_zst, r=wesleywiser | Yuki Okushi | -4/+9 | |
| Ensure that we get a hard error on generic ZST constants if their bod… …y causes an error during evaluation cc #67083 (does not fix because we still need the beta backport) r? @wesleywiser cc @RalfJung | ||||
| 2019-12-08 | Ensure that we get a hard error on generic ZST constants if their body ↵ | Oliver Scherer | -4/+9 | |
| causes an error during evaluation | ||||
| 2019-12-05 | rustc: Apply clearer naming to BodyAndCache, fix Deref impl, remove unneeded ↵ | Paul Daniel Faria | -5/+5 | |
| Index impl, remove body fn rustc_codegen_ssa: Fix BodyAndCache reborrow to Body and change instances of body() call to derefence rustc_mir: Fix BodyAndCache reborrow to Body and change intances of body() call to derefence | ||||
| 2019-12-02 | Remove HasLocalDecls impl from BodyCache's, properly reborrow to Body, ↵ | Paul Daniel Faria | -23/+23 | |
| rename all body_cache back to body | ||||
| 2019-12-02 | Remove BodyCache.body and rely on Deref as much as possible for ↵ | Paul Daniel Faria | -2/+2 | |
| ReadOnlyBodyCache | ||||
| 2019-12-02 | Fix tidy errors | Paul Daniel Faria | -2/+6 | |
| 2019-12-02 | Fix remaining compilation issues | Paul Daniel Faria | -1/+2 | |
| 2019-12-02 | Simplify BodyCache impl and fix all remaining type errors in librustc_mir ↵ | Paul Daniel Faria | -23/+23 | |
| (lifetime errors still exist) | ||||
| 2019-12-02 | Address nits and remove unneeded pass | Paul Daniel Faria | -5/+3 | |
| 2019-12-02 | Move predecessors cache invalidation back to basic_blocks_mut, add a couple ↵ | Paul Daniel Faria | -37/+36 | |
| more ensure_predecessors to prevent panics | ||||
| 2019-12-02 | Address linting errors caught by CI | Paul Daniel Faria | -2/+2 | |
| 2019-12-02 | Stop invalidating predecessors cache when accessing unique basic block, ↵ | Paul Daniel Faria | -33/+37 | |
| invalidate cache when accessing unique terminator | ||||
| 2019-11-27 | rustc: move debug info from LocalDecl and UpvarDecl into a dedicated ↵ | Eduard-Mihai Burtescu | -8/+0 | |
| VarDebugInfo. | ||||
| 2019-11-08 | [mir-opt] Handle aggregates in SimplifyLocals pass | Wesley Wiser | -8/+15 | |
| 2019-10-22 | Intern place projection | Santiago Pastorino | -3/+8 | |
| 2019-10-20 | Improve SimplifyLocals pass so it can remove unused consts | Wesley Wiser | -22/+54 | |
| The `ConstProp` can cause many locals to be initialized to a constant value and then never read from. `ConstProp` can also evaluate ZSTs into constant values. Previously, many of these would be removed by other parts of the MIR optimization pipeline. However, evaluating ZSTs (especially `()`) into constant values defeated those parts of the optimizer and so in a2e3ed5c054b544df6ceeb9e612d39af819f4aae, I added a hack to `ConstProp` that skips evaluating ZSTs to avoid that regression. This commit changes `SimplifyLocals` so that it doesn't consider writes of const values to a local to be a use of that local. In doing so, `SimplifyLocals` is able to remove otherwise unused locals left behind by other optimization passes (`ConstProp` in particular). | ||||
| 2019-10-18 | Use Cow to handle modifications of projection in preparation for interning | Santiago Pastorino | -5/+6 | |
| 2019-10-17 | Add process_* place hooks to improve code reutilization | Santiago Pastorino | -16/+8 | |
| 2019-10-17 | Prepare simplify MutVisitor to have projections interned | Santiago Pastorino | -0/+20 | |
| 2019-09-29 | remove indexed_vec re-export from rustc_data_structures | csmoe | -1/+1 | |
| 2019-09-29 | remove bit_set re-export from rustc_data_structures | csmoe | -1/+1 | |
| 2019-08-22 | Move 'tcx lifetime on MirPass | Wesley Wiser | -4/+4 | |
| 2019-07-03 | Remove needless lifetimes | Jeremy Stucki | -1/+1 | |
