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

SCM Repository

[smlnj] View of /sml/trunk/src/MLRISC/gc-safety/gc-type.sig
ViewVC logotype

View of /sml/trunk/src/MLRISC/gc-safety/gc-type.sig

Parent Directory Parent Directory | Revision Log Revision Log


Revision 469 - (download) (as text) (annotate)
Wed Nov 10 22:42:52 1999 UTC (19 years, 9 months ago) by monnier
Original Path: sml/branches/SMLNJ/src/MLRISC/gc-safety/gc-type.sig
File size: 893 byte(s)
version 110.23
(*
 * Abstract interface for GC types.
 *)
signature GC_TYPE =
sig

   structure O : OBJ_TYPE (* client defined object representation type *)

   type ty = int

   datatype gctype = 
     CONST of int                 (* integer constant *)
   | NONREF of O.objtype ref      (* non-reference value *)
   | REF of O.objtype ref         (* a reference, pointer to a gc object *)
   | ADD of ty * gctype * gctype  (* address arithmetic + *)
   | SUB of ty * gctype * gctype  (* address arithmetic - *)
   | BOT
   | TOP

   type gcmap = gctype Intmap.intmap

   exception GCTYPE

   val toString     : gctype -> string
   val mapToString  : gcmap -> (int -> string)

   (*
    * Annotations.
    *)
   val GCMAP       : gcmap Annotations.property 
                       (* gc-map for a program (per cluster) *)
   val GCSAFEPOINT : Annotations.flag    (* marks all gcpoints (per block) *)
  
end

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