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/instructions/stream.sml
ViewVC logotype

Annotation of /sml/trunk/src/MLRISC/instructions/stream.sml

Parent Directory Parent Directory | Revision Log Revision Log


Revision 409 - (view) (download)

1 : monnier 409 (*
2 :     * This is a generic instruction stream datatype.
3 :     * Components such as assemblers, machine code emitters, instruction
4 :     * selection modules communicate with each via this interface.
5 :     *
6 :     * -- Allen
7 :     *)
8 :    
9 :     functor InstructionStreamFn(structure P : PSEUDO_OPS
10 :     structure B : BLOCK_NAMES
11 :     ) : INSTRUCTION_STREAM =
12 :     struct
13 :    
14 :     structure P = P
15 :     structure B = B
16 :    
17 :     datatype ('a,'b,'c) stream =
18 :     STREAM of
19 :     { init : int -> unit,
20 :     finish : 'c -> unit,
21 :     emit : (int -> int) -> 'a -> unit,
22 :     pseudoOp : P.pseudo_op -> unit,
23 :     defineLabel : Label.label -> unit,
24 :     entryLabel : Label.label -> unit,
25 :     comment : string -> unit,
26 :     blockName : B.name -> unit,
27 :     annotation : Annotations.annotation -> unit,
28 :     exitBlock : 'b -> unit
29 :     }
30 :    
31 :     end

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