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/mltree/mltree-gen.sig
ViewVC logotype

View of /sml/trunk/src/MLRISC/mltree/mltree-gen.sig

Parent Directory Parent Directory | Revision Log Revision Log


Revision 546 - (download) (as text) (annotate)
Thu Feb 24 14:04:51 2000 UTC (21 years, 2 months ago) by george
File size: 1292 byte(s)
  Changes to MLTREE
(*
 * This module provides various generic MLTREE transformations.
 * Basically, we want to support various non built-in datatype widths.
 * This module handles the translation. 
 *
 * -- Allen
 *)
signature MLTREEGEN =
sig

   structure T : MLTREE

   exception SizeUnknown

   (*
    * Return the size of an expression
    *)
   val size  : ('s,'r,'f,'c) T.rexp -> T.ty
   val fsize : ('s,'r,'f,'c) T.fexp -> T.ty

   val condOf : ('s,'r,'f,'c) T.ccexp -> T.Basis.cond
   val fcondOf : ('s,'r,'f,'c) T.ccexp -> T.Basis.fcond

   (* 
    * Perform simplification
    *)
   val compileRexp : ('s,'r,'f,'c) T.rexp -> ('s,'r,'f,'c) T.rexp
   val compileFexp : ('s,'r,'f,'c) T.fexp -> ('s,'r,'f,'c) T.fexp
   val compileStm  : ('s,'r,'f,'c) T.stm  -> ('s,'r,'f,'c) T.stm list
  
   (*
    * Simulate conditional expression. 
    *)
   val compileCond : 
       {exp : T.ty * ('s,'r,'f,'c) T.ccexp * 
                     ('s,'r,'f,'c) T.rexp * ('s,'r,'f,'c) T.rexp,
        an  : Annotations.annotations,
        rd : int
       } -> ('s,'r,'f,'c) T.stm list

   val compileFcond : 
       {exp : T.fty * ('s,'r,'f,'c) T.ccexp * 
                     ('s,'r,'f,'c) T.fexp * ('s,'r,'f,'c) T.fexp,
        an  : Annotations.annotations,
        fd : int
       } -> ('s,'r,'f,'c) T.stm list


end

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