about summary refs log tree commit diff
path: root/src/librustc_mir/dataflow/framework/engine.rs
AgeCommit message (Collapse)AuthorLines
2020-08-30mv compiler to compiler/mark-411/+0
2020-08-17rust_ast::ast => rustc_astUjjwal Sharma-1/+1
2020-08-08Eliminate the `SessionGlobals` from `librustc_ast`.Nicholas Nethercote-1/+1
By moving `{known,used}_attrs` from `SessionGlobals` to `Session`. This means they are accessed via the `Session`, rather than via TLS. A few `Attr` methods and `librustc_ast` functions are now methods of `Session`. All of this required passing a `Session` to lots of functions that didn't already have one. Some of these functions also had arguments removed, because those arguments could be accessed directly via the `Session` argument. `contains_feature_attr()` was dead, and is removed. Some functions were moved from `librustc_ast` elsewhere because they now need to access `Session`, which isn't available in that crate. - `entry_point_type()` --> `librustc_builtin_macros` - `global_allocator_spans()` --> `librustc_metadata` - `is_proc_macro_attr()` --> `Session`
2020-08-04rustc_ast: `(Nested)MetaItem::check_name` -> `has_name`Vadim Petrochenkov-2/+2
For consistency with `Attribute::has_name` which doesn't mark the attribute as used either. Replace all uses of `check_name` with `has_name` outside of rustc
2020-07-08Stop adding unreachable basic blocks to dataflow work queueDylan MacKenzie-9/+0
Also adds some debug assertions to prevent API consumers from visiting those basic blocks by accident.
2020-07-08Add `reachable` and friends to `mir::traversal` moduleDylan MacKenzie-0/+9
2020-06-02Rename the crates in source codeVadim Petrochenkov-0/+1
2020-05-03Support backward dataflow analysesDylan MacKenzie-236/+102
2020-04-01Rollup merge of #70627 - spastorino:use-place-directly-its-copy, r=oli-obkMazdak Farrokhzad-7/+7
Use place directly its copy r? @oli-obk
2020-04-01Rollup merge of #70511 - ecstatic-morse:mir-dataflow-graphviz, r=davidtwcoMazdak Farrokhzad-1/+20
Add `-Z dump-mir-dataflow` flag for dumping dataflow results visualization Previously, to visualize the results of a MIR dataflow pass, one had to add a `#[rustc_mir(borrowck_graphviz_postflow)]` attribute to functions of interest. However, there is no way to specify this attribute on closures and generators, so it was impossible to view results for these MIR bodies. This PR adds a flag, `-Z dump-mir-dataflow`, which will output the dataflow results for any functions specified in `-Z dump-mir` to the output directory specified by `-Z dump-mir-dir`. This behavior is modeled on the `-Z dump-mir-graphviz` flag.
2020-03-31Use Place directly on Operand::place and friends, it's CopySantiago Pastorino-7/+7
2020-03-30rustc -> rustc_middle part 3 (rustfmt)Mazdak Farrokhzad-2/+2
2020-03-30rustc -> rustc_middle part 2Mazdak Farrokhzad-2/+2
2020-03-28Ensure output dir for dataflow results existsDylan MacKenzie-0/+5
2020-03-28Dump graphviz dataflow results with flagDylan MacKenzie-1/+15
2020-03-26Rename `dataflow::generic` to `dataflow::framework`Dylan MacKenzie-0/+525