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

Diff of /sml/trunk/src/MLRISC/instructions/stream.sig

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

revision 409, Fri Sep 3 00:21:52 1999 UTC revision 815, Fri May 4 05:09:10 2001 UTC
# Line 10  Line 10 
10  sig  sig
11    
12     structure P : PSEUDO_OPS     structure P : PSEUDO_OPS
    structure B : BLOCK_NAMES  
13    
14     datatype ('a,'b,'c) stream =     datatype ('a,'b,'c) stream =
15        STREAM of        STREAM of
16           { init        : int -> unit,        { beginCluster: int -> unit,             (* start new compilation unit *)
17             finish      : 'c -> unit,          endCluster  : 'b -> unit,              (* end compilation unit *)
18             emit        : (int -> int) -> 'a -> unit,          emit        : 'a -> unit,              (* emit instruction *)
19             pseudoOp    : P.pseudo_op -> unit,          pseudoOp    : P.pseudo_op -> unit,     (* emit a pseudo op *)
20             defineLabel : Label.label -> unit,          defineLabel : Label.label -> unit,     (* define a local label *)
21             entryLabel  : Label.label -> unit,          entryLabel  : Label.label -> unit,     (* define an external label *)
22             comment     : string -> unit,          comment     : string -> unit,          (* emit comment *)
23             blockName   : B.name -> unit,          annotation  : Annotations.annotation -> unit, (* add annotation *)
24             annotation  : Annotations.annotation -> unit,          getAnnotations: unit -> Annotations.propList ref,  (* get annotations*)
25             exitBlock   : 'b -> unit          exitBlock   : 'c -> unit              (* mark the end of a procedure *)
26           }           }
27    
28       (* Note:
29        o  Each compilation unit should be wrapped between beginCluster/endCluster.
30    
31        o  The method annotation adds an annotation to the current basic block,
32           not to the current instruction.
33    
34        o  The method comment add a comment to the current basic block.
35           Usually comment(msg) is the same as
36              annotation(BasicAnnotations.COMMENT msg).
37        *)
38    
39  end  end

Legend:
Removed from v.409  
changed lines
  Added in v.815

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