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/FLINT/const-arith/const-arith-sig.sml
ViewVC logotype

Diff of /sml/trunk/compiler/FLINT/const-arith/const-arith-sig.sml

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

revision 4539, Sat Apr 21 17:13:52 2018 UTC revision 4540, Wed Apr 25 17:06:35 2018 UTC
# Line 39  Line 39 
39      type width = int      type width = int
40    
41    (* narrow a signed-constant to fit within the given number of bits.  Depending on the    (* narrow a signed-constant to fit within the given number of bits.  Depending on the
42     * semantics of the structure implementing this signature, this operation may raise Overflow.     * semantics of the structure implementing this signature, this operation may raise
43       * Overflow.
44     *)     *)
45      val sNarrow : width * t -> t      val sNarrow : width * t -> t
46    
# Line 56  Line 57 
57      val sNeg  : width * t -> t          (* unary negation *)      val sNeg  : width * t -> t          (* unary negation *)
58      val sAbs  : width * t -> t          (* absolute value *)      val sAbs  : width * t -> t          (* absolute value *)
59    
60    (* narrow an unsigned-constant to fit within the given number of bits.  Depending on the    (* narrow an unsigned-constant to fit within the given number of bits.  Depending on
61     * semantics of the structure implementing this signature, this operation may raise Overflow.     * the semantics of the structure implementing this signature, this operation may
62       * raise Overflow.
63     *)     *)
64      val uNarrow : int * IntInf.int -> IntInf.int      val uNarrow : int * IntInf.int -> IntInf.int
65    
# Line 70  Line 72 
72      val uShL  : width * t * t -> t      (* shift left *)      val uShL  : width * t * t -> t      (* shift left *)
73      val uShR  : width * t * t -> t      (* shift right (zero-extend) *)      val uShR  : width * t * t -> t      (* shift right (zero-extend) *)
74    
75      (* unsigned comparisons, which correctly handle negative arguments *)
76        val uLess   : width * t * t -> bool
77        val uLessEq : width * t * t -> bool
78    
79    (* bitwise operations (these never trap) *)    (* bitwise operations (these never trap) *)
80      val bAnd : width * t * t -> t      val bAnd : width * t * t -> t
81      val bOr  : width * t * t -> t      val bOr  : width * t * t -> t

Legend:
Removed from v.4539  
changed lines
  Added in v.4540

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