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

SCM Repository

[smlnj] Annotation of /sml/branches/SMLNJ/src/MLRISC/ir-moved/ssa.sig
ViewVC logotype

Annotation of /sml/branches/SMLNJ/src/MLRISC/ir-moved/ssa.sig

Parent Directory Parent Directory | Revision Log Revision Log


Revision 245 - (view) (download) (as text)

1 : monnier 245 signature STATIC_SINGLE_ASSIGNMENT_FORM =
2 :     sig
3 :    
4 :     structure Dom : DOMINATOR_TREE
5 :    
6 :     type var = int
7 :     type phi = var * var * var list (* orig def/def/uses *)
8 :     type renamer = {defs : var list, uses: var list} ->
9 :     {defs : var list, uses: var list}
10 :     type copy = {dst : var list, src: var list} -> unit
11 :    
12 :     (*
13 :     * Given a set of definitions for each block,
14 :     * Compute the set of phi nodes.
15 :     *)
16 :     val compute_ssa :
17 :     ('n,'e,'g) Dom.dominator_tree ->
18 :     { max_var : var,
19 :     defs : 'n Graph.node -> var list,
20 :     is_live : var * int -> bool,
21 :     rename_var : var -> var,
22 :     rename_stmt : {rename:renamer,copy:copy} -> 'n Graph.node -> unit,
23 :     insert_phi : {block : 'n Graph.node,
24 :     in_edges : 'e Graph.edge list,
25 :     phis : phi list
26 :     } -> unit
27 :     } -> unit
28 :     end
29 :    
30 :     (*
31 :     * $Log$
32 :     *)

root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0