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

SCM Repository

[smlnj] Diff of /sml/trunk/src/MLRISC/mltree/mltree-mult.sml
ViewVC logotype

Diff of /sml/trunk/src/MLRISC/mltree/mltree-mult.sml

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 428, Wed Sep 8 09:47:00 1999 UTC revision 429, Wed Sep 8 09:47:00 1999 UTC
# Line 12  Line 12 
12    
13     val intTy : int (* width of integer type *)     val intTy : int (* width of integer type *)
14    
15     type argi = {r:I.C.register, i:int, d:I.C.register}     type argi = {r:I.C.cell, i:int, d:I.C.cell}
16     type arg  = {r1:I.C.register, r2:I.C.register, d:I.C.register}     type arg  = {r1:I.C.cell, r2:I.C.cell, d:I.C.cell}
17    
18       (* these are always non-overflow trapping *)       (* these are always non-overflow trapping *)
19     val mov   : {r:I.C.register,d:I.C.register} -> I.instruction     val mov   : {r:I.C.cell,d:I.C.cell} -> I.instruction
20     val add   : arg -> I.instruction     val add   : arg -> I.instruction
21     val slli  : argi -> I.instruction list     val slli  : argi -> I.instruction list
22     val srli  : argi -> I.instruction list     val srli  : argi -> I.instruction list
23     val srai  : argi -> I.instruction list     val srai  : argi -> I.instruction list
24    )    )
25    (val trapping : bool (* trap on overflow? *)    (val trapping : bool (* trap on overflow? *)
    val signed   : bool (* signed? *)  
26     val multCost : int ref  (* cost of multiplication *)     val multCost : int ref  (* cost of multiplication *)
27    
28         (* basic ops; these have to implemented by the architecture *)         (* basic ops; these have to implemented by the architecture *)
# Line 39  Line 38 
38     val sh1addv  : (arg -> I.instruction list) option (* a*2 + b *)     val sh1addv  : (arg -> I.instruction list) option (* a*2 + b *)
39     val sh2addv  : (arg -> I.instruction list) option (* a*4 + b *)     val sh2addv  : (arg -> I.instruction list) option (* a*4 + b *)
40     val sh3addv  : (arg -> I.instruction list) option (* a*8 + b *)     val sh3addv  : (arg -> I.instruction list) option (* a*8 + b *)
41      )
42      (val signed   : bool (* signed? *)
43    )  : MLTREE_MULT_DIV =    )  : MLTREE_MULT_DIV =
44  struct  struct
45     structure T = T     structure T = T

Legend:
Removed from v.428  
changed lines
  Added in v.429

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