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-cells.sig
ViewVC logotype

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 586 - (download) (as text) (annotate)
Thu Mar 30 05:08:07 2000 UTC (19 years, 4 months ago) by leunga
File size: 764 byte(s)

   Fixed a slight problem with gc types annotations.

   To turn on gc types, do this:

       CM.autoload "sml/compiler.cm";
       Compiler.Control.MLRISC.getFlag "mlrisc-gc-types" := true;
(*
 * This module provides few helper functions for annotating virtual registers
 * with gc type information. 
 *)

signature GC_CELLS =
sig

   structure C  : CELLS
   structure GC : GC_TYPE
   structure GCMap : GC_MAP
      sharing GCMap.GC = GC

   val newGCMap : unit -> GCMap.gcmap  (* create a new gc map *)
   val setGCMap : GCMap.gcmap -> unit  (* set the current gc map *)
   val getGCMap : unit -> GCMap.gcmap  (* get the current gc map *)
   val clearGCMap : unit -> unit       (* remove current gc map *) 

   (*
    * Generate a virtual register and update the gc map at the same time.
    * Important note: the gc map must be set by setGCMap before this 
    * function can be invoked.
    *)
   val newCell  : C.cellkind -> GC.gctype -> C.cell

end

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