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

SCM Repository

[smlnj] Annotation of /sml/trunk/src/MLRISC/mltree/mltree-gen.sig
ViewVC logotype

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 555 - (view) (download) (as text)

1 : george 546 (*
2 :     * This module provides various generic MLTREE transformations.
3 :     * Basically, we want to support various non built-in datatype widths.
4 :     * This module handles the translation.
5 :     *
6 :     * -- Allen
7 :     *)
8 :     signature MLTREEGEN =
9 :     sig
10 :    
11 :     structure T : MLTREE
12 :    
13 :     exception SizeUnknown
14 :    
15 :     (*
16 :     * Return the size of an expression
17 :     *)
18 : george 555 val size : T.rexp -> T.ty
19 :     val fsize : T.fexp -> T.ty
20 : george 546
21 : george 555 val condOf : T.ccexp -> T.Basis.cond
22 :     val fcondOf : T.ccexp -> T.Basis.fcond
23 : george 546
24 :     (*
25 :     * Perform simplification
26 :     *)
27 : george 555 val compileRexp : T.rexp -> T.rexp
28 :     val compileFexp : T.fexp -> T.fexp
29 :     val compileStm : T.stm -> T.stm list
30 : george 546
31 :     (*
32 :     * Simulate conditional expression.
33 :     *)
34 :     val compileCond :
35 : george 555 {exp : T.ty * T.ccexp * T.rexp * T.rexp,
36 : george 546 an : Annotations.annotations,
37 :     rd : int
38 : george 555 } -> T.stm list
39 : george 546
40 :     val compileFcond :
41 : george 555 {exp : T.fty * T.ccexp * T.fexp * T.fexp,
42 : george 546 an : Annotations.annotations,
43 :     fd : int
44 : george 555 } -> T.stm list
45 : george 546
46 :    
47 :     end

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