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/compiler/ElabData/prim/primop.sig
ViewVC logotype

Diff of /sml/trunk/compiler/ElabData/prim/primop.sig

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

sml/branches/SMLNJ/src/compiler/FLINT/kernel/primop.sig revision 93, Tue May 12 21:56:22 1998 UTC sml/trunk/src/compiler/FLINT/kernel/primop.sig revision 251, Mon Apr 19 02:55:26 1999 UTC
# Line 184  Line 184 
184    | CALLCC | CAPTURE | THROW   (* continuation operations *)    | CALLCC | CAPTURE | THROW   (* continuation operations *)
185    | ISOLATE                    (* isolating a function *)    | ISOLATE                    (* isolating a function *)
186    | DEREF                      (* dereferencing *)    | DEREF                      (* dereferencing *)
187    | ASSIGN                     (* assignment; shorthand for update(a, 0, v) *)    | ASSIGN                     (* assignment *)
188      | UNBOXEDASSIGN              (* assignment to integer reference *)
189    | UPDATE                     (* array update (maybe boxed) *)    | UPDATE                     (* array update (maybe boxed) *)
190    | INLUPDATE                  (* inline array update (maybe boxed) *)    | INLUPDATE                  (* inline array update (maybe boxed) *)
191    | BOXEDUPDATE                (* boxed array update *)    | BOXEDUPDATE                (* boxed array update *)
# Line 209  Line 210 
210    | MKETAG                     (* make a new exception tag *)    | MKETAG                     (* make a new exception tag *)
211    | WRAP                       (* box a value by wrapping it *)    | WRAP                       (* box a value by wrapping it *)
212    | UNWRAP                     (* unbox a value by unwrapping it *)    | UNWRAP                     (* unbox a value by unwrapping it *)
213    (* Primops to support new array representations *)
214      | NEW_ARRAY0                  (* allocate zero-length array header *)
215      | GET_SEQ_DATA                (* get data pointer from arr/vec header *)
216      | SUBSCRIPT_REC               (* record subscript operation *)
217      | SUBSCRIPT_RAW64             (* raw64 subscript operation *)
218    
219    
220  val IADD : primop  (* default integer addition *)  val IADD : primop  (* default integer addition *)
# Line 229  Line 235 
235  val prPrimop: primop -> string  val prPrimop: primop -> string
236  val purePrimop : primop -> bool  val purePrimop : primop -> bool
237  val mayRaise : primop -> bool  val mayRaise : primop -> bool
238    (* This should return more than just a boolean.
239     * True means "can not be dead-code eliminated" *)
240    val effect : primop -> bool
241    
242  end (* signature PRIM_OP *)  end (* signature PRIM_OP *)
243    
   
 (*  
  * $Log: primop.sig,v $  
  * Revision 1.1.1.1  1998/04/08 18:39:40  george  
  * Version 110.5  
  *  
  *)  

Legend:
Removed from v.93  
changed lines
  Added in v.251

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