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/HISTORY
ViewVC logotype

Diff of /sml/trunk/HISTORY

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

revision 1537, Tue Jul 13 18:49:54 2004 UTC revision 1638, Wed Sep 29 19:07:58 2004 UTC
# Line 14  Line 14 
14    
15  ----------------------------------------------------------------------  ----------------------------------------------------------------------
16  Name: Matthias Blume (blume (at) tti - c (dot) org)  Name: Matthias Blume (blume (at) tti - c (dot) org)
17    Date: 2004/09/29 14:00:00 CDT
18    Tag: blume-20040929-autoversion
19    Description:
20    
21    Implemented some CM magic to have
22        file src/compiler/TopLevel/main/version.sml
23    generated automagically.
24    The version is taken from two files: config/version and config/release.
25    The first is expected to contain a two-part version number such as 110.49.
26    The second should contain a single number, but it may be missing.
27    
28    If the environment variable VERSIONTOOL_BUMP_RELEASE is defined at the
29    time the version tool is loaded (which is the first time you say CMB.make),
30    then the tool will increment the value stored in config/release every
31    time CMB.make is invoked.
32    
33    The binfile format is now insensitive to anything beyond the first
34    two components of a version number, so bumping the release does not render
35    binfiles incompatible.  Auto-bumping can be used to keep track of versions
36    during development without invalidating existing binfiles.
37    
38    In any case, every CMB.make updates the date information in version.sml.
39    (This is the date that is printed in the banner.)
40    
41    ----------------------------------------------------------------------
42    Name: Matthias Blume (blume (at) tti - c (dot) org)
43    Date: 2004/09/28 10:53:00 CDT
44    Tag: blume-20040928-controls
45    Description:
46    
47    Some cleanup of the controls code.
48    
49    ----------------------------------------------------------------------
50    Name: Matthias Blume (blume (at) tti - c (dot) org)
51    Date: 2004/09/27 22:08:00 CDT
52    Tag: blume-20040927-controls
53    Description:
54    
55    Added two pieces of functionality to the Controls interface:
56    
57    1.   val save'restore: 'a control -> unit -> unit
58    
59       grabs the current value of the control in stage 1 and restores it
60       in stage 2.
61    
62    2.   val set' : 'a control * 'a -> unit -> unit
63    
64       stores the given value into the control in stage 2 (i.e., delayed)
65       but does all error checking in stage 1.
66       (This is for string controls that need to do parse their argument --
67        something that might fail.  In some cases, notably in CM, one
68        already knows the intended argument but wants to delay the actual
69        assignment until a time when error recovery would be more difficult.)
70    
71    Changed the handling of controls in tool arguments to classes "sml" and
72    "lazysml":
73       - use Controls.save'restore as a more robust way of restoring the
74         old value (in particular: without having to re-parse the string)
75       - use controls to handle the "overload" keyword in the init group
76         (I believe this change actually fixes a long-standing obscure bug.)
77    
78    ----------------------------------------------------------------------
79    Name: Matthias Blume (blume (at) tti - c (dot) org)
80    Date: 2004/09/27 17:00:00 CDT
81    Tag: blume-20040927-lazysml
82    Description:
83    
84    Added a new tool class called "lazysml" to CM's tool chest.  The only
85    difference to "sml" is that compilation is done with Control.lazysml
86    set to true.  A source of class "lazysml" is automatically recognized
87    by a file name suffix of ".lml".
88    
89    In addition to the above feature, the original class "sml" now also
90    supports a tool argument "lazy" which has the same effect.  As a
91    result, the following three lines are equivalent:
92    
93        foo.sml : lazysml
94        foo.sml : sml (lazy)
95        foo.sml (lazy)
96    
97    The setting goes into effect both during parsing and during
98    compilation.  The original setting is restored right after parsing and
99    after compilation, respectively.
100    
101    In addition to all the above, there is also a general mechanism to set
102    ANY of the "controls" that are available at the command line via
103    "-C..." on a per-sml-file basis.  The same rules that apply for "lazy"
104    apply as well. (In fact, "lazy" is implemented as a special case of
105    the general mechanism.)
106    
107    The .cm file syntax uses a new keyword tool argument called "with".
108    There are several ways of indicating the desired settings:
109    
110        foo.sml (with:parser.quotations=true)
111        foo.sml (with:(name:parser.quotations value:true))
112        foo.sml (with:(name:name1 value:value1 name:name2 value:value2 ...))
113        foo.sml (with:(name1=value1 name2=value2 ...))
114        foo.sml (with:(name1=value1 name:name2 value:value2 name3=value3 ...))
115    
116        etc.
117    
118    Another possible abbreviation is to leave out the =v or value:v part
119    if the name refers to a boolean control (in which case the value is
120    taken to be true).  Thus, one could get lazy sml also by saying:
121    
122        foo.sml (with:parser.lazy-keyword=true)
123        foo.sml (with:parser.lazy-keyword)
124        foo.sml (with:(name:parser.lazy-keyword value:true))
125        foo.sml (with:(name:parser.lazy-keyword))
126    
127    ----------------------------------------------------------------------
128    Name: Matthias Blume (blume (at) tti - c (dot) org)
129    Date: 2004/09/24 16:22:00 CDT
130    Tag: blume-20040924-ppc-long-branch
131    Description:
132    
133    Turned message about "emiting long form of branch" off by default.
134    Added a control flag to turn it back on when desired.
135    
136    ----------------------------------------------------------------------
137    Name: Matthias Blume (blume (at) tti - c (dot) org)
138    Date: 2004/09/24 16:05:00 CDT
139    Tag: blume-20040924-rounding
140    Description:
141    
142    Applied patch for setting rounding modes under Mac OS X.  Thanks to
143    Melissa O'Neill for providing the code!
144    
145    ----------------------------------------------------------------------
146    Name: Matthias Blume (blume (at) tti - c (dot) org)
147    Date: 2004/09/23 17:30:00 CDT
148    Tag: blume-20040923-envvars
149    Description:
150    
151    1. Changed definition of type ControlRegistry.registry_tree to
152       include control_info (i.e., the name of the controlling environment
153       variable).
154    
155    2. Added command-line flags -e and -E to print the names of environment
156       variables that can be used to control internal settings.
157       (This uses the new API mentioned in 1.)
158    
159    ----------------------------------------------------------------------
160    Name: Matthias Blume (blume (at) tti - c (dot) org)
161    Date: 2004/09/13 16:50:00 CDT
162    Tag: Release_110_49
163    Description:
164    
165    New working version (110.49).  NEW BOOTFILES!
166    
167    ----------------------------------------------------------------------
168    Name: Matthias Blume
169    Date: 2004/09/13 16:20:00 CDT
170    Tag: blume-20040913-config-mlrisc
171    Description:
172    
173    Put target "mlrisc" back into the default list.
174    (There is no harm in having it, and some users have expressed their
175    wish to have "mlrisc" included by default.)
176    
177    ----------------------------------------------------------------------
178    Name: John Reppy
179    Date: 2004/09/13
180    Tag: jhr-20040913-signals
181    Description:
182    
183    Fixed the signal masking code to properly nest mask/unmask operations
184    on a per-signal basis.
185    
186    ----------------------------------------------------------------------
187    Name: Matthias Blume (blume (at) tti - c (dot) org)
188    Date: 2004/09/08 13:20:00 CDT
189    Tag: blume-20040908-heap-magic
190    Description:
191    
192    Bumped the heap macig number to 0x09082004 to account for the changed
193    layout of the ML frame under MacOS X.
194    
195    ----------------------------------------------------------------------
196    Name: Allen Leung (leunga (at) reservoir (dot) com)
197    Date: 2004/09/03 11:26:00 EST
198    Tag: leunga-20040903-cygwin-install
199    Description:
200    
201       Added a patch to _arch-n-opsys to enable the Cygwin runtime.
202    The Cygwin runtime is turned on by setting the environment
203    variable SMLNJ_CYGWIN_RUNTIME to 1.
204    
205    ----------------------------------------------------------------------
206    Name: Matthias Blume (blume (at) tti - c (dot) org)
207    Date: 2004/08/31 17:15:00 CDT
208    Tag: blume-20040831-core
209    Description:
210    
211    Added some exports to src/compiler/core.cm upon request by J. Joemann.
212    
213    ----------------------------------------------------------------------
214    Name: Matthias Blume (blume (at) tti - c (dot) org)
215    Date: 2004/08/30 17:55:00 CDT
216    Tag: blume-20040830-installer
217    Description:
218    
219    Upon request by Johannes Joemann:
220    
221    - improved ML code of installer to fall back to coping when renaming
222      fails (i.e., when source and target are on different file systems);
223      the code compiles but has yet to be tested in anger
224    - removed mlrisc from list of default targets (config/targets)
225    
226    ----------------------------------------------------------------------
227    Name: Matthias Blume (blume (at) tti - c (dot) org)
228    Date: 2004/08/27 17:20:00 CDT
229    Tag: blume-20040827-ptreql
230    Description:
231    
232    Added ptreql primop to structure InlineT (upon request from Larry
233    Paulson).
234    
235    ----------------------------------------------------------------------
236    Name: Allen Leung (leunga (at) reservoir (dot) com)
237    Date: 2004/08/15 21:21:00 EST
238    Tag: leunga-110_48-udgraph
239    Description:
240    
241    Another bug fix from Carl Hauser:
242    
243    diff /net/niflab/smlnj48/src/MLRISC/graphs/udgraph.sml udgraph.sml
244    > 48c48
245    > <              | rmv((e as (k,_))::es,L) = rmv(es,if k = i then es else
246    > e::L)
247    > ---
248    > >              | rmv((e as (k,_))::es,L) = rmv(es,if k = i then L else e::L)
249    > Without this, any deletion of an edge in an undirected graph does severe
250    > violence to the graph.
251    
252    ----------------------------------------------------------------------
253    Name: Allen Leung (leunga (at) reservoir (dot) com)
254    Date: 2004/08/10 23:35:00 EST
255    Tag: leunga-110_48-ppc
256    Description:
257    
258       The IBM/MacOS syntax switch on PPC was incorrectly swapped.
259    
260    ----------------------------------------------------------------------
261    Name: Matthias Blume (blume (at) tti - c (dot) org)
262    Date: 2004/08/10 12:00:00 CDT
263    Tag: Release_110_48
264    Description:
265    
266    New working version (110.48).  NEW BOOTFILES!
267    
268    ----------------------------------------------------------------------
269    Name: Allen Leung (leunga (at) reservoir (dot) com)
270    Date: 2004/08/09 12:21:00 EST
271    Tag: leunga-110_47-dijsktra
272    Description:
273    
274    Bug fix from Carl Hauser:
275    
276    single_source_shortest_paths in dijkstra.sml was observed to get wrong
277    answers (by comparing to single_source_shortest_paths in bellman-ford.sml).
278    
279    The problem is that following the expression A.update(dist,s,Num.zero)
280    it is necessary to update the priority queue using Q.decreaseWeight(Q,s).
281    
282    ----------------------------------------------------------------------
283    Name: Matthias Blume (blume (at) tti - c (dot) org)
284    Date: 2004/08/06 18:10:00 CDT
285    Tag: blume-20040806-cmdline
286    Description:
287    
288    Fiddled with handling of command-line options:
289    
290      * sml now quits after processing the command line
291        if -H, -S, -h<n>, or -s<n> appears as the last
292        command-line argument
293      * a new option -q terminates the session when encountered on
294        the command line; subsequent arguments will be ignored
295      * bug fixes: short (erroneous) arguments are no longer ignored
296        completely
297    
298    ----------------------------------------------------------------------
299    Name: Allen Leung (leunga (at) reservoir (dot) com)
300    Date: 2004/08/04 18:17:00 EST
301    Tag: leunga-110_47-ppc-ibm-asm
302    Description:
303    
304      - Added minimal IBM assembly syntax support for PowerPC.
305    
306      - Cygwin: manually changed the file cygwin.def.  Some exported symbols have
307        been altered in the runtime.  We need an automatic way to keep the file
308        in sync.
309    
310    ----------------------------------------------------------------------
311    Name: Matthias Blume (blume (at) tti - c (dot) org)
312    Date: 2004/08/04 14:00:00 CDT
313    Tag: Release_110_47
314    Description:
315    
316    New working version (110.47).  NEW BOOTFILES!
317    
318    ----------------------------------------------------------------------
319    Name: Matthias Blume (blume (at) tti - c (dot) org)
320    Date: 2004/08/03 14:25:00 CDT
321    Tag: blume-20040803-callingconv
322    Description:
323    
324    Added low-level support for choosing C calling conventions by
325    twiddling the type of rawccall.  (See
326    src/compiler/Semant/types/cproto.sml for details.)
327    
328    ----------------------------------------------------------------------
329    Name: Matthias Blume (blume (at) tti - c (dot) org)
330    Date: 2004/08/02 15:55:00 CDT
331    Tag: blume-20040802-backout
332    Description:
333    
334    Backed out of change to win32-filesys.c.  The earlier patch to
335    get_file_time caused CM to produce files with the wrong time stamp.
336    
337    ----------------------------------------------------------------------
338    Name: Matthias Blume (blume (at) tti - c (dot) org)
339    Date: 2004/08/02 14:45:00 CDT
340    Tag: blume-20040802-nlffi-win32
341    Description:
342    
343    Added NLFFI support for Win32, adapted from a patch provided by David
344    Hansel.  This is currently completely untested.  Also, the issue
345    concerning stdcall vs. ccall is still unresolved.
346    
347    ----------------------------------------------------------------------
348    Name: Matthias Blume (blume (at) tti - c (dot) org)
349    Date: 2004/07/30 17:55:00 CDT
350    Tag: blume-20040730-various
351    Description:
352    
353    Gearing up towards 110.47...
354    
355    - various minor bugfixes to ml-nlffigen
356    - a beginning of a manual for nlffi
357    
358    - eliminated 'export name=value' in config/install.sh as this does
359      not work with certain versions of /bin/sh
360      (Thanks to David King at Motorola for catching this.)
361    
362    - several bugfixes provided or suggested by David Hansel at Reactive Systems:
363      - added a test for tm==NULL to gmtime.c and localtime.c
364      - applied patch for incorrect GetFileTime under win32
365      - toSeconds -> toMilliseconds in Win32/win32-process.sml
366    
367    ----------------------------------------------------------------------
368    Name: Matthias Blume (blume (at) tti - c (dot) org)
369    Date: 2004/07/21 18:20:00 CDT
370    Tag: blume-20040721-nlffigen
371    Description:
372    
373    - Fixed minor issue in ml-nlffigen: Now generate structure T_foo
374      for a typedef to an incomplete type, but leave out the "typ" member.
375      (This is just for consistency.)
376    - Started to produce what is supposed to become better (i.e., comprehensive)
377      documentation of what ml-nlffigen does and produces.
378    
379    ----------------------------------------------------------------------
380    Name: Matthias Blume (blume (at) tti - c (dot) org)
381    Date: 2004/07/14 16:25:00 CDT
382    Tag: blume-20040714-union
383    Description:
384    
385    Added C_UNION to c-calls/c-types.sml and updated the machinery
386    (ml-nlffigen, cproto.sml) that conveys C function interface
387    information to the code generator.
388    
389    However, the actual architecture-specific implementation of function
390    arguments and results that are C unions is still not implemented.
391    
392    ----------------------------------------------------------------------
393    Name: Allen Leung (leunga (at) reservoir (dot) com)
394    Date: 2004/07/14 14:38:00 EST
395    Tag: leunga-110_46_1-ppc-lwzu
396    Description:
397    
398        Added these instructions to the PowerPC architecture:
399        LBZU(X), LHZU(X), LWZU(X),
400        STWU(X), STFDU, STFSU
401    
402        etc...
403    
404        Note: I haven't added their instruction encoding into the description.
405    
406    ----------------------------------------------------------------------
407    Name: Allen Leung (leunga (at) reservoir (dot) com)
408    Date: 2004/07/13 15:04:00 EST
409    Tag: leunga-110_46_1-ppc-lwarx
410    Description:
411    
412       Added the two instructions LWARX and STWCX to the PowerPC
413    instruction set.
414    
415       A (untested) rewrite of loop-structure.sml.  The old version
416    is completely broken.
417    
418    ----------------------------------------------------------------------
419    Name: Matthias Blume (blume (at) tti - c (dot) org)
420  Date: 2004/07/13 13:50:00 CDT  Date: 2004/07/13 13:50:00 CDT
421  Tag: blume-20040713-nlffi  Tag: blume-20040713-nlffi
422  Description:  Description:

Legend:
Removed from v.1537  
changed lines
  Added in v.1638

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