rust/compiler/rustc_middle/src/mir
bors 97d328012b Auto merge of #111673 - cjgillot:dominator-preprocess, r=cjgillot,tmiasko
Preprocess and cache dominator tree

Preprocessing dominators has a very strong effect for https://github.com/rust-lang/rust/pull/111344.
That pass checks that assignments dominate their uses repeatedly. Using the unprocessed dominator tree caused a quadratic runtime (number of bbs x depth of the dominator tree).

This PR also caches the dominator tree and the pre-processed dominators in the MIR cfg cache.

Rebase of https://github.com/rust-lang/rust/pull/107157
cc `@tmiasko`
2023-05-24 16:18:21 +00:00
..
interpret Finish move of query.rs 2023-05-17 01:57:21 +02:00
basic_blocks.rs Merge DominatorTree and Dominators. 2023-05-17 10:37:29 +00:00
coverage.rs Replace enum ==s with matches where it makes sense 2023-01-30 12:26:26 +00:00
generic_graph.rs Replace Body::basic_blocks() with field access 2022-08-26 14:27:08 +02:00
generic_graphviz.rs Remove redundant graphviz escaping 2022-11-14 15:11:18 +01:00
graphviz.rs Remove WithOptconstParam. 2023-04-20 17:48:32 +00:00
mod.rs Rollup merge of #111619 - cjgillot:profile-pass, r=WaffleLapkin 2023-05-20 12:20:59 +05:30
mono.rs Split {Idx, IndexVec, IndexSlice} into their own modules 2023-04-24 13:53:35 +00:00
patch.rs Split {Idx, IndexVec, IndexSlice} into their own modules 2023-04-24 13:53:35 +00:00
pretty.rs Implement references VarDebugInfo. 2023-05-13 10:12:14 +00:00
query.rs Split {Idx, IndexVec, IndexSlice} into their own modules 2023-04-24 13:53:35 +00:00
spanview.rs Rename Abort terminator to Terminate 2023-04-06 09:34:16 +01:00
syntax.rs Drive-by cleanup: debug::term_type => TerminatorKind::name 2023-05-17 11:27:37 +00:00
tcx.rs offset_of 2023-04-21 02:14:02 -07:00
terminator.rs Rename Abort terminator to Terminate 2023-04-06 09:34:16 +01:00
traversal.rs Convert manual loop into while let 2023-04-09 23:22:14 +02:00
type_foldable.rs intern offsetof fields 2023-04-21 02:14:03 -07:00
visit.rs Implement references VarDebugInfo. 2023-05-13 10:12:14 +00:00