1
|
open Utils
|
2
|
open Lustre_types
|
3
|
|
4
|
val compute_unused_variables: node_desc -> IdentDepGraph.t -> ISet.t
|
5
|
|
6
|
type fanin = (ident, tag) Hashtbl.t
|
7
|
|
8
|
(* computes the in-degree for each local variable of node [n], according to dep
|
9
|
graph [g]. *)
|
10
|
val compute_fanin: node_desc -> IdentDepGraph.t -> fanin
|
11
|
|
12
|
val pp_fanin: Format.formatter -> fanin -> unit
|
13
|
|
14
|
val compute_reuse_policy: node_desc -> ident list list ->
|
15
|
Causality.Disjunction.disjoint_map -> IdentDepGraph.t -> (ident, var_decl) Hashtbl.t
|
16
|
|
17
|
(* replace variable [v] by [v'] in graph [g]. [v'] is a dead variable *)
|
18
|
val replace_in_dep_graph: ident -> ident -> IdentDepGraph.t -> unit
|