Modules§
- debuginfo
- drop_
flag_ 🔒effects - errors 🔒
- fmt
- Custom formatting traits used when outputting Graphviz diagrams with the results of a dataflow analysis.
- framework 🔒
- A framework that can express both gen-kill and generic dataflow problems.
- graphviz
- A helpful diagram for debugging dataflow problems.
- impls
- lattice
- Traits used to represent lattices for use as the domain of a dataflow analysis.
- move_
paths MovePaths track the initialization state of places and their sub-paths.- points
- rustc_
peek - un_
derefer 🔒 - value_
analysis
Structs§
- Backward
- Dataflow that runs from the exit of a block (terminator), to its entry (the first statement).
- Forward
- Dataflow that runs from the entry of a block (the first statement), to its exit (terminator).
- Move
Data Typing Env - Results
Cursor - Allows random access inspection of the results of a dataflow analysis. Use this when you want
to inspect domain values only in certain locations; use
ResultsVisitorif you want to inspect domain values in many or all locations.
Enums§
- Drop
Flag State - The value of an inserted drop flag.
- Maybe
Reachable - Extend a lattice with a bottom value to represent an unreachable execution.
Statics§
- DEFAULT_
LOCALE_ RESOURCE - Raw content of Fluent resource for this crate, generated by
fluent_messagesmacro, imported byrustc_driverto include all crates’ resources in one bundle.
Traits§
- Analysis
- A dataflow problem with an arbitrarily complex transfer function.
- Direction
- GenKill
- The legal operations for a transfer function in a gen/kill problem.
- Join
Semi Lattice - A partially ordered set that has a least upper bound for any pair of elements in the set.
- Results
Visitor - A visitor over the results of an
Analysis. Use this when you want to inspect domain values in many or all locations; useResultsCursorif you want to inspect domain values only in certain locations.
Functions§
- drop_
flag_ effects_ for_ function_ entry - drop_
flag_ effects_ for_ location - move_
path_ children_ matching - on_
all_ children_ bits - on_
lookup_ result_ bits - visit_
reachable_ results - Like
visit_results, but only for reachable blocks. - visit_
results - Calls the corresponding method in
ResultsVisitorfor every location in amir::Bodywith the dataflow state at that location.
Type Aliases§
- Results
- The results of a dataflow analysis that has converged to fixpoint. It only holds the domain
values at the entry of each basic block. Domain values in other parts of the block are
recomputed on the fly by visitors (i.e.
ResultsCursor, orResultsVisitorimpls).