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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 476 - (download) (as text) (annotate)
Wed Nov 10 22:59:58 1999 UTC (19 years, 11 months ago) by monnier
File size: 704 byte(s)
This commit was generated by cvs2svn to compensate for changes in r475,
which included commits to RCS files with non-trunk default branches.
(*
 * Let's generate good multiplication/division code!
 *
 * -- Allen 
 *)
signature MLTREE_MULT_DIV =
sig

   structure T : MLTREE
   structure I : INSTRUCTIONS
   structure C : CELLS
      sharing C = I.C
      sharing I.Constant = T.Constant

   exception TooComplex

   val multiply : {r:C.cell,i:int,d:C.cell} -> I.instruction list 

   (* The semantics of roundToZero{r,i,d} is:
    *   if r >= 0 then d <- r
    *   else d <- r + i
    *)

   val divide   : { mode:T.Basis.rounding_mode,
                    roundToZero : {ty:T.ty,r:C.cell,i:int,d:C.cell} 
                                    -> unit
                  } -> 
                  {r:C.cell,i:int,d:C.cell} -> I.instruction list

end

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