Skip to main content

Module control_dependence

Module control_dependence 

Source
Expand description

Control-dependence query (does b execute on every path through a?).

Build a control-dependence Program:

use weir::control_dependence::control_dependence;

let program = control_dependence(4, "successor_pdom", "pdom_n", "out");

control_dependence - does b execute on every path through a?

Equivalent: b is control-dependent on a iff a does NOT post-dominate b AND a post-dominates SOME successor of b. Encoded as a per-node bitset dataflow consumers can intersect with sink sets for “guarded vs unguarded” analysis.

Structs§

ControlDependence
Soundness marker for control_dependence.

Functions§

control_dependence
Build a control-dependence query Program. Inputs: