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/system/smlnj/init/core.sml
ViewVC logotype

Diff of /sml/trunk/src/system/smlnj/init/core.sml

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

revision 1682, Tue Nov 9 23:48:09 2004 UTC revision 1683, Thu Nov 11 00:12:41 2004 UTC
# Line 124  Line 124 
124            val vecLen : 'a -> int = InLine.length            val vecLen : 'a -> int = InLine.length
125            val vecSub : 'a vector * int -> 'a = InLine.vecSub            val vecSub : 'a vector * int -> 'a = InLine.vecSub
126            val andb : int * int -> int = InLine.i31andb            val andb : int * int -> int = InLine.i31andb
           val lshift : int * int -> int = InLine.i31lshift  
127    
128            val width_tags = 7  (* 5 tag bits plus "10" *)            val width_tags = 0w7  (* 5 tag bits plus "10" *)
129    
130          (* the type annotation is just to work around an bug - sm *)          (* the type annotation is just to work around an bug - sm *)
131            val ltu : int * int -> bool = InLine.i31ltu            val ltu : int * int -> bool = InLine.i31ltu
# Line 136  Line 135 
135       (* limit of array, string, etc. element count is one greater than       (* limit of array, string, etc. element count is one greater than
136        * the maximum length field value (sign should be 0).        * the maximum length field value (sign should be 0).
137        *)        *)
138         val max_length = lshift(1, 31 - width_tags) - 1         val max_length =
139               let val op - = InLine.w31sub
140                   infix << val op << = InLine.w31lshift
141                   val int = InLine.copy_31_31_wi
142               in
143                   int ((0w1 << (0w31 - width_tags)) - 0w1)
144               end
145    
146         fun mkNormArray (n, init) =         fun mkNormArray (n, init) =
147               if ieql(n, 0) then InLine.newArray0()               if ieql(n, 0) then InLine.newArray0()

Legend:
Removed from v.1682  
changed lines
  Added in v.1683

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