Modules§
- debuginfo
- drop_
flag_ 🔒effects - elaborate_
drops - 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 - 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
- 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
, orResultsVisitor
impls). - 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
ResultsVisitor
if you want to inspect domain values in many or all locations.
Enums§
- 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_messages
macro, imported byrustc_driver
to 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; useResultsCursor
if 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_
results - Calls the corresponding method in
ResultsVisitor
for every location in amir::Body
with the dataflow state at that location.