Home My Page Projects Code Snippets Project Openings SML/NJ
 Summary Activity Forums Tracker Lists Tasks Docs Surveys News SCM Files

# SCM Repository

[smlnj] Diff of /sml/trunk/src/MLRISC/ir-moved/djgraph.sig
 [smlnj] / sml / trunk / src / MLRISC / ir-moved / djgraph.sig

# Diff of /sml/trunk/src/MLRISC/ir-moved/djgraph.sig

revision 694, Thu Jul 27 16:00:25 2000 UTC revision 695, Mon Aug 7 23:57:38 2000 UTC
# Line 1  Line 1
1  (*  (*
2   *  Use the DJ-graph algorithm to compute dominance frontiers   *  This signature describes DJ-graph and related algorithms.
*  and iterated-dominance frontiers in O(n) time.
*  Here, the dominator tree is treated as a DJ-graph.
3   *   *
4   *  -- Allen   *  -- Allen
5   *)   *)
# Line 11  Line 9
9
10      structure Dom : DOMINATOR_TREE      structure Dom : DOMINATOR_TREE
11
12      type ('n,'e,'g) dj_graph = ('n,'e,'g) Dom.dominator_tree      type ('n,'e,'g) dj_graph (* abstract type now! *)
13
14        val DJ : ('n,'e,'g) Dom.dominator_tree -> ('n,'e,'g) dj_graph
15
16      val DF : ('n,'e,'g) dj_graph -> Graph.node_id -> Graph.node_id list      val DF : ('n,'e,'g) dj_graph -> Graph.node_id -> Graph.node_id list
17
# Line 27  Line 27
27            {defs        : Graph.node_id list, (* blocks with definitions *)            {defs        : Graph.node_id list, (* blocks with definitions *)
28             localLiveIn : Graph.node_id list  (* blocks that are local live in *)             localLiveIn : Graph.node_id list  (* blocks that are local live in *)
29            } -> Graph.node_id list            } -> Graph.node_id list
end
30
31    end

Legend:
 Removed from v.694 changed lines Added in v.695