| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2018-07-13 | Make BitSlice's `Word` properly generic. | Nicholas Nethercote | -6/+6 | |
| Currently `Word` is `usize`, and there are various places in the code that assume this. This patch mostly just changes `usize` occurrences to `Word`. Most of the changes were found as compile errors when I changed `Word` to a type other than `usize`, but there was one non-obvious case in librustc_mir/dataflow/mod.rs that caused bounds check failures before I fixed it. | ||||
| 2018-04-15 | construct the `BorrowSet` outside of `borrows` | Niko Matsakis | -1/+0 | |
| 2018-04-15 | relocate `BorrowData` etc into `borrow_check::borrow_set` | Niko Matsakis | -0/+1 | |
| 2018-04-02 | avoid IdxSets containing garbage above the universe length | Ariel Ben-Yehuda | -2/+2 | |
| This makes sure that all bits in each IdxSet between the universe length and the end of the word are all zero instead of being in an indeterminate state. This fixes a crash with RUST_LOG=rustc_mir, and is probably a good idea anyway. | ||||
| 2018-02-03 | Auto merge of #47845 - Zoxc:gen-fixes, r=nikomatsakis | bors | -0/+4 | |
| Generator bugfixes r? @nikomatsakis | ||||
| 2018-01-30 | Force locals to be live after they are borrowed for immovable generators. ↵ | John Kåre Alsaker | -0/+4 | |
| Fixes #47736 | ||||
| 2018-01-29 | rustc: replace "lvalue" terminology with "place" in the code. | Eduard-Mihai Burtescu | -52/+52 | |
| 2017-12-13 | Refactoring: pull bitvector initialization out from other parts of dataflow. | Felix S. Klock II | -6/+6 | |
| This is meant to ease development of multi-stage dataflow analyses where the output from one analysis is used to initialize the state for the next; in such a context, you cannot start with `bottom_value` for all the bits. | ||||
| 2017-12-10 | avoid passing the gen/kill bits to `start_block_effects` | Ariel Ben-Yehuda | -12/+15 | |
| If the gen/kill bits are set there, the effects of `start_block_effects` will not be seen when using `FlowAtLocation` etc. to go over the MIR. EverInitializedLvals is the only pass that got this wrong, but this fixes the footgun for everyone. | ||||
| 2017-12-06 | work around weird match arm lifetimes | Ariel Ben-Yehuda | -3/+23 | |
| 2017-12-06 | handle gen/kill sets together | Ariel Ben-Yehuda | -50/+16 | |
| 2017-12-01 | MIR: s/lv(al(ue)?)?/place in function/variable/module names. | Eduard-Mihai Burtescu | -14/+14 | |
| 2017-12-01 | MIR: s/Lvalue/Place in type names. | Eduard-Mihai Burtescu | -6/+6 | |
| 2017-11-27 | Add initialization info to `MoveData` | Matthew Jasper | -54/+168 | |
| * Used for new dataflow to track if a variable has every been initialized * Used for other dataflows that need to be updated for initializations | ||||
| 2017-11-15 | fix comment, remove redundant code | Mikhail Modin | -1/+4 | |
| 2017-11-15 | add `StorageDead` handling | Mikhail Modin | -7/+14 | |
| 2017-11-09 | Add `TerminatorKind::DropAndReplace` handling | Mikhail Modin | -0/+13 | |
| 2017-11-08 | restore move out dataflow, add report of move out errors | Mikhail Modin | -1/+161 | |
| 2017-10-31 | make the dataflow / mir-borrowck types carry a `'tcx` lifetime | Niko Matsakis | -33/+33 | |
| Also, factor out `do_mir_borrowck`, which is the code that actually performs the MIR borrowck from within the scope of an inference context. This change should be a pure refactoring. | ||||
| 2017-09-13 | Analyse storage liveness and preserve it during generator transformation | John Kåre Alsaker | -0/+4 | |
| 2017-08-19 | rustc: Remove some dead code | Vadim Petrochenkov | -160/+1 | |
| 2017-08-16 | Added dataflow analysis for `Borrows`. | Felix S. Klock II | -0/+3 | |
| post-rebase: addressed review comment: rename `loc_map`/`location_map` and `rgn_map`/`region_map`. post-rebase: remove now unnecessary `mut` decl. post-rebase: address comments: bind iterator expr, and alpha-rename `loc`/`location` and `idx`/`index`. | ||||
| 2017-08-16 | Refactor `trait BitDenotation` to take `Location` instead of ↵ | Felix S. Klock II | -30/+20 | |
| `BasicBlock`/`usize` argument pairs. | ||||
| 2017-08-12 | Auto merge of #43794 - Eijebong:fix_typos, r=lukaramu,steveklanik,imperio | bors | -1/+1 | |
| Fix some typos I wrote a really naive script and found those typos in the documentation. | ||||
| 2017-08-11 | Fix some typos | Bastien Orivel | -1/+1 | |
| 2017-08-10 | For box expressions, use NZ drop instead of a free block | Ariel Ben-Yehuda | -9/+22 | |
| This falls naturally out of making drop elaboration work with `box` expressions, which is probably required for sane MIR borrow-checking. This is a pure refactoring with no intentional functional effects. | ||||
| 2017-07-30 | add new instructions for asserting when values are valid, and to describe ↵ | Ralf Jung | -0/+1 | |
| when we can rely on them being locked in memory | ||||
| 2017-06-28 | Shift mir-dataflow from `rustc_borrowck` to `rustc_mir` crate. | Felix S. Klock II | -0/+600 | |
| Turn `elaborate_drops` and `rustc_peek` implementations into MIR passes that also live in `rustc_mir` crate. Rewire things so `rustc_driver` uses the `ElaborateDrops` from `rustc_mir` crate. | ||||
