Home My Page Projects Code Snippets Project Openings diderot
Summary Activity Tracker Tasks SCM

SCM Repository

[diderot] View of /branches/lamont_dev/src/compiler/IL/ssa-fn.sml
ViewVC logotype

View of /branches/lamont_dev/src/compiler/IL/ssa-fn.sml

Parent Directory Parent Directory | Revision Log Revision Log


Revision 129 - (download) (annotate)
Thu Jul 1 18:03:54 2010 UTC (9 years, 4 months ago) by jhr
Original Path: trunk/src/compiler/IL/ssa-fn.sml
File size: 730 byte(s)
  Parameterize the SSA representation over the operators
(* ssa.sml
 *
 * COPYRIGHT (c) 2010 The Diderot Project (http://diderot.cs.uchicago.edu)
 * All rights reserved.
 *)

functor SSAFn (Op : OPERATORS) =
  struct

    datatype var = V of {
	name : string
      }

    datatype block = BLK of {
	id : label,
	preds : block list ref,
	phi : (var * var list) list ref,
	stms : stm list ref,
	xfer : transfer ref
      }

    and stm
      = ASSIGN of var * exp

    and xfer
      = GOTO of label			(* unconditional transfer *)
      | COND of var * label * label	(* conditional transfer *)
      | DIE				(* actor termination *)
      | STABILIZE			(* actor stabilization node *)
      | EXIT				(* exit node *)

    and exp
      = VAR of var
      | OP of Op.rator * var list

  end

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