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

Diff of /sml/trunk/NOTES/HISTORY

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

sml/trunk/HISTORY revision 1638, Wed Sep 29 19:07:58 2004 UTC sml/trunk/NOTES/HISTORY revision 3898, Mon Jul 28 21:47:52 2014 UTC
# Line 1  Line 1 
1  This is the HISTORY file for the Yale SML/NJ CVS repository.  This is the HISTORY file for the SML/NJ repository.
2    
3  An entry should be made for _every_ commit to the repository.  An entry should be made for _every_ commit to the repository.
4  The entries in this file will be used when creating the README  The entries in this file will be used when creating the README
# Line 7  Line 7 
7    
8  The form of an entry should be:  The form of an entry should be:
9    
10  Name:  Name: Your Name (web page or e-mail)
11    Date: yyyy/mm/dd hh:mm:ss
12    Tag: cvs-tag-for-this-change
13    Description:
14    
15    Here is a test entry
16    
17    ----------------------------------------------------------------------
18    Name: John Reppy (http://cs.uchicago.edu/~jhr)
19  Date: yyyy/mm/dd  Date: yyyy/mm/dd
 Tag: <post-commit CVS tag>  
20  Description:  Description:
21    
22  ----------------------------------------------------------------------  ----------------------------------------------------------------------
23    Name: John Reppy (http://cs.uchicago.edu/~jhr)
24    Date: 2014/07/28
25    Description:
26    Switch to using MAP_ANONYMOUS to allocate memory on Linux systems.
27    This change avoids problems when "/dev" does not support execute
28    permission (as seems to be the case with some versions of Linux
29    running on ChromeBooks; bug #120).
30    
31    ----------------------------------------------------------------------
32    Name: John Reppy (http://cs.uchicago.edu/~jhr)
33    Date: 2014/06/28
34    Description:
35    Fix for bug 127 (Crash on windows with OS.Process.system).
36    
37    ----------------------------------------------------------------------
38    Name: John Reppy (http://cs.uchicago.edu/~jhr)
39    Date: 2014/06/07
40    Description:
41    Fixed a long-standing bug in Socket.recvVec, which prevented the result
42    from being used in a string pattern match (thanks to Vesa Norrman
43    for the fix).
44    
45    ----------------------------------------------------------------------
46    Name: John Reppy (http://cs.uchicago.edu/~jhr)
47    Date: 2014/05/01
48    Description:
49    Fixed minor issue in an error message; type variable name should be
50    printed with leading '
51    
52    ----------------------------------------------------------------------
53    Name: John Reppy (http://cs.uchicago.edu/~jhr)
54    Date: 2013/11/25
55    Description:
56    Added PackWord{16,32}{Big,Little} structures to the Unsafe module.
57    This change makes the UNSAFE signature closer to the MLton version,
58    although we still need the PackReal structures.
59    
60    ----------------------------------------------------------------------
61    Name: John Reppy (http://cs.uchicago.edu/~jhr)
62    Date: 2013/07/01
63    Description:
64    
65    *************************** Version 110.76 ***************************
66    
67    ----------------------------------------------------------------------
68    Name: Lars Bergstrom (larsberg@cs.uchicago.edu)
69    Date: 2013/06/04
70    Description:
71    Fix bug #115 (BinPrimIO writer method getPos doesn't work under CML).
72    Just needed to port the position update from mkReader code to the
73    mkWriter code.
74    
75    ----------------------------------------------------------------------
76    Name: Lars Bergstrom (larsberg@cs.uchicago.edu)
77    Date: 2013/06/04
78    Description:
79    Fix bug #111 (Socket.acceptNB returns somewhat broken sockets).
80    The problem was that under Win32, sockets returned from accept inherit
81    their parents' non-blocking status, whereas on UNIX they are always
82    blocking.
83    
84    ----------------------------------------------------------------------
85    Name: Lars Bergstrom (larsberg@cs.uchicago.edu)
86    Date: 2013/05/20
87    Description:
88    Fix bug #117 (BinIO.openAppend raises IO on non-existent file).
89    We were opening the file for append if it existed but not creating it
90    if it did not exist.
91    
92    ----------------------------------------------------------------------
93    Name: John Reppy (http://cs.uchicago.edu/~jhr)
94    Date: 2013/05/02
95    Description:
96    Fix bug #116 (Socket.sameDesc raises Match exception).
97    The problem is that on Windows the iodesc datatype (defined in
98    Basis/Implementation/Win32/pre-os.sml) has both an IODesc constructor
99    and a SockDesc constructor.  Updated the code in Win32/os-io.sml to
100    handle the SockDesc constructor.
101    
102    ----------------------------------------------------------------------
103    Name: John Reppy (http://cs.uchicago.edu/~jhr)
104    Date: 2013/04/19
105    Description:
106    Fix bug #113 (Socket.select waits exactly twice the indicated timeout)
107    
108    ----------------------------------------------------------------------
109    Name: Lars Bergstrom (larsberg@cs.uchicago.edu)
110    Date: 2013/01/19
111    Description:
112    Fix AMD64 code generator to properly sign-extend arguments to IDIVQ.
113    
114    ----------------------------------------------------------------------
115    Name: John Reppy (http://cs.uchicago.edu/~jhr)
116    Date: 2012/10/20
117    Description:
118    Fix bug #108 (off-by-one error in Util/dynamic-array.sml; iterators crash)
119    
120    ----------------------------------------------------------------------
121    Name: John Reppy (http://cs.uchicago.edu/~jhr)
122    Date: 2012/10/20
123    Description:
124    Fix bug #107 (Bogus Int64 comparison operators)
125    
126    ----------------------------------------------------------------------
127    Name: John Reppy (http://cs.uchicago.edu/~jhr)
128    Date: 2012/10/01
129    Description:
130    
131    *************************** Version 110.75 ***************************
132    
133    ----------------------------------------------------------------------
134    Name: John Reppy (http://cs.uchicago.edu/~jhr)
135    Date: 2012/09/28
136    Description:
137    Fixed bug #92.  IntInf.scan now handles the "0x" prefix correctly.
138    Also made minor improvements to the NumScan module.
139    
140    ----------------------------------------------------------------------
141    Name: John Reppy (http://cs.uchicago.edu/~jhr)
142    Date: 201209/24
143    Description:
144    Added Base64 module to SML/NJ Library to support encoding and decoding
145    Word8 vectors as base64 strings.
146    
147    ----------------------------------------------------------------------
148    Name: John Reppy (http://cs.uchicago.edu/~jhr)
149    Date: 2012/09/23
150    Description:
151    Additions to the SML/NJ Library.  Added exists, existsi, all, and alli
152    functions to ORD_MAP signature and implementations, and added all
153    function to ORD_SET signature and implementations.
154    
155    ----------------------------------------------------------------------
156    Name: John Reppy (http://cs.uchicago.edu/~jhr)
157    Date: 2012/09/21
158    Description:
159    Bug fix in ml-antlr to ensure that the generated toString function
160    for tokens is strictly legal SML code (i.e., non-printing characters
161    and UTF8 multibyte sequences are properly escaped).
162    
163    ----------------------------------------------------------------------
164    Name: John Reppy (http://cs.uchicago.edu/~jhr)
165    Date: 2012/09/11
166    Description:
167    Added getu function to ULexBuffer as a way to improve ulex performance.
168    This addition allows a fastpath for processing ascii characters, which
169    improved lexer performance by 3-4%.
170    
171    ----------------------------------------------------------------------
172    Name: John Reppy (http://cs.uchicago.edu/~jhr)
173    Date: 2012/08/02
174    Description:
175    Fixed bugs #89 and #96: Build Failure with Xcode 4.3
176    Also removed build support for MacOS X pre-10.5 (Leopard) on PPC and
177    pre-10.6 (Snow Leopard) on Intel.
178    
179    ----------------------------------------------------------------------
180    Name: John Reppy (http://cs.uchicago.edu/~jhr)
181    Date: 2012/02/05
182    Description:
183    Fixed bug #88.  The check for valid arcs on Unix systems now allows
184    any character other than slash or nul.
185    
186    ----------------------------------------------------------------------
187    Name: David MacQueen (dbm@cs.uchicago.edu)
188    Date: 2012/01/20
189    Description:
190    
191    *************************** Version 110.74 ***************************
192    
193    ----------------------------------------------------------------------
194    Name: John Reppy (http://cs.uchicago.edu/~jhr)
195    Date: 2012/01/20
196    Description:
197    
198    Fixed implementation of Real.signBit on little-endian machines.
199    
200    ----------------------------------------------------------------------
201    Name: David MacQueen (dbm@cs.uchicago.edu)
202    Date: 2012/1/19
203    Revision: 3664, 3665
204    Description:
205    
206    1) Fix for (gforge) bug #60
207       recalculate strictness for DEFtycs in functor bodies when functor
208       is applied  (Elaborator/modules/evalent.sml)
209    
210    2) Fix for (gforge) bug #77
211       separate ast representations for datatypes and datatype replications
212       in decs and specs (multiple files)
213    
214    3) set version to 110.74
215    
216    Details in NOTES/changes/dbm_2012_1.
217    
218    ----------------------------------------------------------------------
219    Name: David MacQueen (dbm@cs.uchicago.edu)
220    Date: 2012/1/12
221    Revision: 3648, 3652
222    Description:
223    
224    1) Change of SourceMap interface.
225       related to fix of off-by-one error in lexer (committed earlier?), and cleanup of noweb code
226       added by Norman Ramsey many years ago (but little used today).
227    
228    3) Slight cleanup of match compiler, eliminatiing compiler/FLINT/tempexpn.sml file that
229       was part of unused implementation of pattern templates (pattern macros).
230    
231    4) Modification of type checker to add "culprit tracking" for improved type error messages
232       (printing of additional culprit information is controlled by ElabControl.showTypeErrorCulprits
233        flag, default false, added in revision 3652).  The culprit tracking needs to be debugged
234        and improved, and the presentation of the culprits needs to be done better.
235    
236    Details in NOTES/changes/dbm_2012_1.
237    
238    ----------------------------------------------------------------------
239    Name: John Reppy (http://cs.uchicago.edu/~jhr)
240    Date: 2011/11/25
241    Description:
242    
243    Bug fixes for Unsafe.blastRead (#76):
244      1) proper error handling when reading from memory and there are
245         not enough bytes.
246      2) pass correct data pointer and length to BlastIn (code was using
247         old macros).
248    
249    ----------------------------------------------------------------------
250    Name: John Reppy (http://cs.uchicago.edu/~jhr)
251    Date: 2011/11/25
252    Description:
253    
254    Added hash-table-based implementation of sets to SML/NJ Library.
255    
256    ----------------------------------------------------------------------
257    Name: Lars Bergstrom (larsberg@cs.uchicago.edu)
258    Date: 2011/10/25
259    Description:
260    
261    Better error reporting under 32-bit linux for the missing dpkg
262    support (#70).
263    Enable 3.x kernels to build (#80, 81, 83).
264    
265    ----------------------------------------------------------------------
266    Name: John Reppy (http://cs.uchicago.edu/~jhr)
267    Date: 2011/05/23
268    Description:
269    
270    Added new S-expression library to SML/NJ Library
271    (contributed by Damon Wang)
272    
273    ----------------------------------------------------------------------
274    Name: John Reppy (http://cs.uchicago.edu/~jhr)
275    Date: 2011/05/17
276    Description:
277    
278    Fixed bug in JSON scanner (SML/NJ Library).  It didn't handle escaped
279    backslash or double quote correctly.
280    
281    ----------------------------------------------------------------------
282    Name: John Reppy (http://cs.uchicago.edu/~jhr)
283    Date: 2011/05/13
284    Description:
285    
286    *************************** Version 110.73 ***************************
287    
288    ----------------------------------------------------------------------
289    Name: John Reppy (http://cs.uchicago.edu/~jhr)
290    Date: 2011/05/10
291    Description:
292    
293    Added boolean literals (true and false) to the conditional-expression
294    syntax in CM.  Thus, you can write
295    
296    #if true
297      structure Foo
298    #endif
299    
300    in a CM file.  This change is meant to make it easier to use autoconf
301    to configure the build process of an SML application.
302    
303    ----------------------------------------------------------------------
304    Name: John Reppy (http://cs.uchicago.edu/~jhr)
305    Date: 2011/05/09
306    Description:
307    
308    Added missing String.scan function (#69).  This also fixes the handling
309    of certain corner cases by String.fromString.
310    
311    ----------------------------------------------------------------------
312    Name Mike Rainey (http://www.mpi-sws.org/~mrainey)
313    Date 2011/05/03
314    Description:
315    
316    Added the RTDSC and RTDSCP instructions to the amd64 code generator.
317    
318    ----------------------------------------------------------------------
319    Name: John Reppy (http://cs.uchicago.edu/~jhr)
320    Date: 2011/04/08
321    Description:
322    
323    Added fix for comments in code bug (#63).
324    Thanks to Michael Norrish.
325    
326    ----------------------------------------------------------------------
327    Name: John Reppy (http://cs.uchicago.edu/~jhr)
328    Date: 2011/04/08
329    Description:
330    
331    Fixed bug in Socket.acceptNB (bug #59)
332    
333    ----------------------------------------------------------------------
334    Name: John Reppy (http://cs.uchicago.edu/~jhr)
335    Date: 2011/03/31
336    Description:
337    
338    Fixed syntax error in ml-lex compatibility mode (bug #49)
339    
340    ----------------------------------------------------------------------
341    Name: John Reppy (http://cs.uchicago.edu/~jhr)
342    Date: 2011/03/22
343    Description:
344    
345    Update _arch-n-opsys script for Mac OS X Lion (10.7).
346    
347    ----------------------------------------------------------------------
348    Name: John Reppy (http://cs.uchicago.edu/~jhr)
349    Date: 2011/02/18
350    Description:
351    
352    Added Barriers module to CML.
353    
354    ----------------------------------------------------------------------
355    Name: Lars Bergstrom (larsberg@cs.uchicago.edu)
356    Date: 2011/02/10
357    Description:
358    
359    Fixed ml-yacc examples to respect the changed signatures with respect
360    to TextIO.inputLine.
361    
362    ----------------------------------------------------------------------
363    Name: Lars Bergstrom (larsberg@cs.uchicago.edu)
364    Date: 2010/09/16
365    Description:
366    
367    Changed the Win32 implementation of validArc to support directories
368    with extended characters (umlauts, etc.).
369    
370    ----------------------------------------------------------------------
371    Name: Lars Bergstrom (larsberg@cs.uchicago.edu)
372    Date: 2010/09/16
373    Description:
374    
375    Fixed the Win32 socket and polling implementation to work correctly
376    with CML. Signature of poll was wrong and didn't handle sockets at all.
377    
378    ----------------------------------------------------------------------
379    Name: John Reppy (http://cs.uchicago.edu/~jhr)
380    Date: 2010/06/16
381    Description:
382    
383    Fixed Real.toString and Real.fmt to include sign for negative zero.
384    
385    ----------------------------------------------------------------------
386    Name: Lars Bergstrom (larsberg@cs.uchicago.edu)
387    Date: 2010/03/23
388    Description:
389    
390    Fixed the bug with Win32 calls to OS.Process.system not quoting the string.
391    
392    ----------------------------------------------------------------------
393    Name: Jon Riehl (http://jonriehl.com/)
394    Date: 2010/02/11
395    Description:
396    
397    Applied patch for building on more recent NetBSD's.  See bug #39 in the
398    tracker:
399    
400    http://smlnj-gforge.cs.uchicago.edu/tracker/index.php?func=detail&aid=39&group_id=33&atid=215
401    
402    ----------------------------------------------------------------------
403    Name: Jon Riehl (http://jonriehl.com/)
404    Date: 2010/02/02
405    Description:
406    
407    Cutting version 110.72.  New bootfiles.
408    
409    ----------------------------------------------------------------------
410    Name John Reppy (http://cs.uchicago.edu/~jhr)
411    Date 2009/12/20
412    Description:
413    
414    Fixed performance bugs in List module by making @ and foldr be
415    tail recursive.
416    
417    ----------------------------------------------------------------------
418    Name: Lars Bergstrom (larsberg@cs.uchicago.edu)
419    Date: 2009/12/11
420    Description:
421    
422    Fixed the Win32 unable to print long strings bug.
423    ----------------------------------------------------------------------
424    Name: Lars Bergstrom (larsberg@cs.uchicago.edu)
425    Date: 2009/12/10
426    Description:
427    
428    Fixed an overrun during major GC. If the string arena was nearly full, it was possible
429    for alignment padding added during copy to the to-space to overrun the allocated
430    size.
431    ----------------------------------------------------------------------
432    Name John Reppy (http://cs.uchicago.edu/~jhr)
433    Date 2009/11/18
434    Description:
435    
436    The ml-antlr and ml-ulex programs have been ported to build under
437    mlton.
438    
439    ----------------------------------------------------------------------
440    Name John Reppy (http://cs.uchicago.edu/~jhr)
441    Date 2009/11/17
442    Description:
443    
444    Added %header directive to the ml-ulex scanner generator.  Also
445    updated the documentation.
446    
447    ----------------------------------------------------------------------
448    Name John Reppy (http://cs.uchicago.edu/~jhr)
449    Date 2009/11/17
450    Description:
451    
452    Added "@SMLsuffix" flag to sml command.  This can be used to get
453    the suffix for heap files.
454    
455    ----------------------------------------------------------------------
456    Name John Reppy (http://cs.uchicago.edu/~jhr)
457    Date 2009/11/17
458    Description:
459    
460    Added "--strict-sml" flag to ml-ulex for MLton compatibility.
461    
462    ----------------------------------------------------------------------
463    Name John Reppy (http://cs.uchicago.edu/~jhr)
464    Date 2009/11/10
465    Description:
466    
467    Added %header directive to the ml-antlr parser generator.  Also
468    updated the documentation.
469    
470    ----------------------------------------------------------------------
471    Name: Jon Riehl (http://www.jonriehl.com/)
472    Date: 2009/09/16
473    Description:
474    
475    Cutting version 110.71.  New bootfiles.
476    
477    ----------------------------------------------------------------------
478    Name John Reppy (http://cs.uchicago.edu/~jhr)
479    Date 2009/09/13
480    Description:
481    
482    Changes to support compiling the runtime system on Mac OS X 10.6
483    (aka Snow Leopard).
484    
485    ----------------------------------------------------------------------
486    Name Mike Rainey (http://cs.uchicago.edu/~mrainey)
487    Date 2009/08/19
488    Description:
489    
490    Fixed a bug in the register-spill generator that is part of the MLRISC
491    register allocator. The problem was that the code in RASpillWithRenaming
492    functor assumed incorrectly that dedicated registers would appear in
493    def/use information generated by ClusterRA. Thanks to Allen Leung for
494    helping with this bug.
495    
496    ----------------------------------------------------------------------
497    Name John Reppy (http://cs.uchicago.edu/~jhr)
498    Date 2009/07/09
499    Description:
500    
501    Removed redundant implementations of various top-level operations by
502    consolidating them in base/system/smlnj/init/pervasive.sml.  This
503    change also fixes a bug in that the top-level version of round was
504    incorrect.
505    
506    ----------------------------------------------------------------------
507    Name: Matthias Blume (http://www.tti-c.org/blume/)
508    Date: 2009/06/15 11:17:00 CDT
509    Description:
510    
511    Bumped version number to 110.70.  New bootfiles.
512    
513    ----------------------------------------------------------------------
514    Name: Matthias Blume (http://www.tti-c.org/blume/)
515    Date: 2009/06/12 11:02:00 CDT
516    Description:
517    
518    1. Corrected problem in config/actions that led to the so-called
519       "unpickling bug" which appeared in version 110.68.
520    
521    2. Provided fix for the 64-bit pattern match bug.
522    
523    ----------------------------------------------------------------------
524    Name John Reppy (http://cs.uchicago.edu/~jhr)
525    Date 2009/03/21
526    Description:
527    
528    Fixed bug in Int32.fmt when the argument was the minimum int and the
529    radix was something other than DEC.
530    
531    ----------------------------------------------------------------------
532    Name Aaron Turon (turon@ccs.neu.edu)
533    Date 2009/02/21
534    Description:
535    
536    Fixed bugs in how ml-antlr parsed ML types in %tokens specifications.
537    
538    ----------------------------------------------------------------------
539    Name: Jon Riehl (http://www.jonriehl.com/)
540    Date: 2009/01/13
541    Description:
542    
543    Picking up some additional fixes for 110.69, including a fix for
544    spaces in CM file paths.
545    
546    ----------------------------------------------------------------------
547    Name: Jon Riehl (http://www.jonriehl.com/)
548    Date: 2008/12/22
549    Description:
550    
551    Version bumped to 110.69.  New bootfiles.
552    
553    ----------------------------------------------------------------------
554    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
555    Date: 2008/12/06
556    Description:
557    
558    Re-enabled some CPS optimizations (first_contract and eta).  The most
559    important effect of this change is to make uses of SMLofNJ.Cont.capture
560    be properly tail recursive.
561    
562    ----------------------------------------------------------------------
563    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
564    Date: 2008/12/03
565    Description:
566    
567    New concurrency-related instructions for x86 and amd64 code
568    generators.
569      - PAUSE: Notify the CPU that the program is spin waiting.
570      - MFENCE: memory fence for reads and writes.
571      - SFENCE: memory fence for writes.
572      - LFENCE: memory fence for reads.
573    
574    ----------------------------------------------------------------------
575    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
576    Date: 2008/12/02
577    Description:
578    
579    Added makefile and other support for building runtime on OpenBSD.
580    
581    ----------------------------------------------------------------------
582    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
583    Date: 2008/08/13
584    Description:
585    
586    Version bumped to 110.68.  New bootfiles.
587    
588    ----------------------------------------------------------------------
589    Name Aaron Turon (turon@ccs.neu.edu)
590    Date 2008/08/11
591    Description:
592    
593    Minor fix to ml-ulex backend for regexps that match any character
594    and perform a single action.  Previously the emitted code would
595    not allow the regexps to match any character at all.
596    
597    ----------------------------------------------------------------------
598    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
599    Date: 2008/08/05
600    Description:
601    
602    Added build support for OpenBSD (thanks to Brian O'Hanlon).
603    
604    ----------------------------------------------------------------------
605    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
606    Date: 2008/07/12
607    Description:
608    
609    Fixed Int64.fromString to use base-10.
610    
611    ----------------------------------------------------------------------
612    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
613    Date: 2008/04/12
614    Description:
615    
616    Various updates to the ml-lpt tree.  The documentation has been updated;
617    bugs in the parsing of negation and character classes in ml-ulex have
618    been fixed; and changes have been made to make the ml-lpt tools more
619    compatible with MLton (and other SML implementations).  Thanks to
620    Matthew Fluet and Aaron Turon for their patches.
621    
622    ----------------------------------------------------------------------
623    Name: Lars Bergstrom (larsberg@cs.uchicago.edu)
624    Date: 2008/20/04
625    Description:
626    
627    Implemented timer-based profiling on Windows, with behavior as close
628    to the *nix ITIMER-based profiling as possible.
629    ----------------------------------------------------------------------
630    Name: Lars Bergstrom (larsberg@cs.uchicago.edu)
631    Date: 2008/07/04
632    Description:
633    
634    Finished off the Windows subset of the basis library. Added process
635    support and various configuration and system identification utils.
636    ----------------------------------------------------------------------
637    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
638    Date: 2008/03/18
639    Description:
640    
641    Major changes to the RegExp library: see smlnj-lib/CHANGES for details.
642    ----------------------------------------------------------------------
643    Name: Lars Bergstrom (larsberg@cs.uchicago.edu)
644    Date: 2008/02/14
645    Description:
646    
647    Added the Windows Status structure
648    ----------------------------------------------------------------------
649    Name: Lars Bergstrom (larsberg@cs.uchicago.edu)
650    Date: 2008/02/14
651    Description:
652    
653    Added the Windows DDE structure
654    ----------------------------------------------------------------------
655    Name: Lars Bergstrom (larsberg@cs.uchicago.edu)
656    Date: 2008/02/05
657    Description:
658    
659    Added the Windows Config structure
660    ----------------------------------------------------------------------
661    Name: Lars Bergstrom (larsberg@cs.uchicago.edu)
662    Date: 2008/01/31
663    Description:
664    
665    Added outline of the Windows basis library and the basic registry
666    functionality.
667    ----------------------------------------------------------------------
668    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
669    Date: 2008/01/23
670    Description:
671    
672    Fixed the amd64 code generator to compile with the current MLRISC.
673    ----------------------------------------------------------------------
674    Name: Lars Bergstrom (larsberg@cs.uchicago.edu)
675    Date: 2007/11/26
676    Description:
677    
678    nlffi was updated to work on Windows. It needed to pass in the correct
679    value for the name of the kernel32 DLL to obtain 'base' bindings.
680    Additionally updated the README for the most basic nlffi sample with
681    what you need to do on MacOSX and on Windows to make it work.
682    ----------------------------------------------------------------------
683    Name: Lars Bergstrom (larsberg@cs.uchicago.edu)
684    Date: 2007/11/21
685    Description:
686    
687    Overwrite the SMLNJ_HOME environment variable on installation
688    Properly change the package code so that subsequent version
689    installations prompt for uninstall (instead of 'repair/remove')
690    ----------------------------------------------------------------------
691    Name: Lars Bergstrom (larsberg@cs.uchicago.edu)
692    Date: 2007/11/14
693    Description:
694    
695    Cleaned up WININSTALL file for new MSI-based setup.
696    ----------------------------------------------------------------------
697    Name: Matthias Blume (http://www.tti-c.org/blume/)
698    Date: 2007/11/13 14:05:00 CST
699    Description:
700    
701    Version bumped to 110.67.  New bootfiles.
702    
703    ----------------------------------------------------------------------
704    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
705    Date: 2007/11/12
706    Description:
707    
708    Ensure that the size of the allocation space is at least 128K.
709    ----------------------------------------------------------------------
710    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
711    Date: 2007/11/05
712    Description:
713    
714    Fixed type error in ml-lpt library that occurs when compiling
715    against a basis that was compiled with the USE_64_BIT_POSITIONS
716    symbol set.
717    (Thanks to Johannes Joemann)
718    ----------------------------------------------------------------------
719    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
720    Date: 2007/11/03
721    Description:
722    
723    Fixed the amd64 code generator to compile with the current MLRISC.
724    ----------------------------------------------------------------------
725    Name: Lars Bergstrom (web page or e-mail)
726    Date: 2007/11/02
727    Description:
728    
729    Made sml.bat more resilient to either not having run the installer
730    and having no SMLNJ_HOME set or having just shuffled the directory
731    around.
732    ----------------------------------------------------------------------
733    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
734    Date: 2007/11/01
735    Description:
736    
737    A collection of bug fixes for machine.sml in the Reactive library.
738    (Thanks to Timothy Bourke)
739    ----------------------------------------------------------------------
740    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
741    Date: 2007/10/28
742    Description:
743    
744    Patches for Mac OS X 10.5 (Leopard).
745    ----------------------------------------------------------------------
746    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
747    Date: 2007/10/28
748    Description:
749    
750    Fixed some bugs in the AMD64 floating-point spilling code.
751    ----------------------------------------------------------------------
752    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
753    Date: 2007/10/25
754    Description:
755    
756    Added support for the atomic XCHG instruction.
757    ----------------------------------------------------------------------
758    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
759    Date: 2007/10/22
760    Description:
761    
762    Added AMD64 support for floating-point negation.
763    ----------------------------------------------------------------------
764    Name: Lars Bergstrom (web page or e-mail)
765    Date: 2007/10/22
766    Description:
767    
768    Fixed ^C handling in Windows
769    Added a Windows installer
770    Made it possible to build for Windows on a mapped drive from Parallels
771    ----------------------------------------------------------------------
772    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
773    Date: 2007/10/22
774    Description:
775    
776    Added AMD64 support for the atomic fetch and add instruction.
777    ----------------------------------------------------------------------
778    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
779    Date: 2007/10/18
780    Description:
781    
782    The GAS output now favors p2align over align, since the
783    former is guaranteed to be consistent over multiple architectures
784    and the latter is not.
785    ----------------------------------------------------------------------
786    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
787    Date: 2007/10/18
788    Description:
789    
790    Fixed a bug in register spilling.
791    ----------------------------------------------------------------------
792    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
793    Date: 2007/10/2
794    Description:
795    
796    Added demo support for AMD64 for quick testing and fixed support for
797    64-bit label constants.
798    ----------------------------------------------------------------------
799    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
800    Date: 2007/09/20
801    Description:
802    
803    Added support for the MLRISC COND instruction and the x86-64 CMOVCC
804    instruction.
805    ----------------------------------------------------------------------
806    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
807    Date: 2007/09/17
808    Description:
809    
810    Fixed an instruction-selection bug when loading 64-bit labels.
811    
812    ----------------------------------------------------------------------
813    Name: George Kuan (http://www.cs.uchicago.edu/~gkuan)
814    Date: 2007/09/14
815    Description:
816    
817    Fixed Elaborator and Translate performance bugs
818    
819    ----------------------------------------------------------------------
820    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
821    Date: 2007/09/12
822    Description:
823    
824    Fixed xorl memory argument bug.
825    
826    ----------------------------------------------------------------------
827    Name: George Kuan (http://www.cs.uchicago.edu/~gkuan)
828    Date: 2007/07/27
829    Description:
830    
831    Added f64sgn (for Real64.signBit) as a primop defined
832    in MLRiscGen. signBit(~0.0) not handled correctly.
833    
834    ----------------------------------------------------------------------
835    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
836    Date: 2007/06/21
837    Description:
838    
839    Fixed bug in {TextIO,BinIO}.StreamIO.endOfStream that would incorrectly
840    signal end of stream.
841    
842    ----------------------------------------------------------------------
843    Name: Matthias Blume (http://www.tti-c.org/blume/)
844    Date: 2007/06/12 11:22:00 CDT
845    Description:
846    
847    Eliminated config/allsources.  The information is now drawn directly
848    from config/actions.
849    
850    ----------------------------------------------------------------------
851    Name: Matthias Blume (http://www.tti-c.org/blume/)
852    Date: 2007/06/07 23:30:00 CDT
853    Tag: release-110.65
854    Description:
855    
856    Version 110.65. NEW BOOTFILES!
857    
858    ----------------------------------------------------------------------
859    Name: Matthias Blume (http://www.tti-c.org/blume/)
860    Date: 2007/06/06 21:45:00 CDT
861    Description:
862    
863    - Aaron: fixed a number of bugs in ml-ulex.
864    - Matthias:
865       - added CM control "cm.force-tools"; this is false by default;
866         when set to true, then tools like ml-yacc, ml-lex, ml-ulex, etc.
867         will be forced to run regardless of whether or not their targets
868         are up-to-date
869       - changed installer code so that config/install.sh will re-build
870         heap images for all tools even if those heap images already existed
871    
872    ----------------------------------------------------------------------
873    Name: Matthias Blume (http://www.tti-c.org/blume/)
874    Date: 2007/06/04 21:21:00 CDT
875    Description:
876    
877    After Aaron Turon's bug fix for ml-ulex (handling the ^ character
878    in legacy mode), re-ran the lexer generator on all lex input files
879    and committed the results.
880    
881    This should fix the problem with ckit and nlffi that was reported
882    by Vesa A. Norrman.
883    
884    ----------------------------------------------------------------------
885    Name: Matthias Blume (http://www.tti-c.org/blume/)
886    Date: 2007/05/31 11:40:00 CDT
887    Tag: release-110.64
888    Description:
889    
890    Version 110.64. NEW BOOTFILES!
891    
892    ----------------------------------------------------------------------
893    Name: Dave MacQueen (dbm@cs.uchicago.edu)
894    Date: 2007/05/31 14:55:00 CDT
895    Revision: 2650
896    Description:
897    
898    3rd merge of base from primop-branch-3 into the trunk.
899    Additional bug fixes included:
900    
901     * Timer.cpu_timer, etc. type printing corrected (by making
902         Timer have opaque sig constraint in basis/Implementation/timer.sml)
903     * Infinite loop in FLINT (tests/typing/tests/25.sml) (fix by
904         Stefan Monnier)
905    
906    ----------------------------------------------------------------------
907    Name: Matthias Blume (http://www.tti-c.org/blume/)
908    Date: 2007/05/31 11:40:00 CDT
909    Description:
910    
911    Fixed some bugs in new Div code in FLINT/trans/translate.sml.
912    
913    Also, changed the handling of "no core access":  When translate.sml
914    needs access to a core exception at a time when the core has not
915    been set up yet (this only happens when compiling system/smlnj/init/*),
916    then don't bother generating the corresponding tests.
917    
918    The old scheme was to generate a bogus value to be used in place of
919    the exception.  Unfortunately, that confuses the plambda type checker.
920    Moreover, it does not do any good, because at runtime we don't expect
921    such an exception to be ever raised.  (The code in system/smlnj/init/*
922    has to be written very carefully with this in mind!)
923    
924    ----------------------------------------------------------------------
925    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
926    Date: 2007/05/29
927    Description:
928    
929    Added FSQRT instructions for the AMD64 code generator.
930    
931    ----------------------------------------------------------------------
932    Name: Matthias Blume (http://www.tti-c.org/blume/)
933    Date: 2007/05/29 19:00:00 CDT
934    Description:
935    
936    FLINT/trans/translate.sml now wraps all DIV/MOD/QUOT/REM operations
937    with an explicit test for zero division.  This should fixes several
938    regressions and makes it possible for downstream optimization phases
939    to treat these operations as "pure" when they are applied to unsigned
940    operands.
941    
942    ----------------------------------------------------------------------
943    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
944    Date: 2007/05/29
945    Description:
946    
947    Added the new MLRISC code generator for the AMD64.  This version,
948    in contrast to the previous one, uses SSE registers and instructions
949    for all floating-point computations.
950    
951    ----------------------------------------------------------------------
952    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
953    Date: 2007/05/29
954    Description:
955    
956    A number of fixes related to the formatting of dates.  These include fixes
957    for bugs #1415 and #1416.  We also now correctly handle format characters that
958    lie outside the specified set.
959    
960    ----------------------------------------------------------------------
961    Name: Matthias Blume (http://www.tti-c.org/blume/)
962    Date: 2007/05/23 22:30:00 CDT
963    Description:
964    
965    CMB (and CM) now automatically defines the CM "preprocessor" symbol
966    NO_PLUGINS during "makeml -rebuild" or when CM operates in "slave" mode.
967    
968      (In addition, CMB_REBUILD_MODE is defined for makeml -rebuild,
969       CM_SLAVE_MODE is defined in attached slaves while running CM.make
970       or CM.rebuild, and CMB_SLAVE_MODE is defined in attached slaves
971       while running CMB.make.  The point is that the single symbol
972       NO_PLUGINS is definde in all three cases.)
973    
974    I changed the three locations within the sources that get compiled
975    during CMB.make where ml-yacc or ml-lex input is processed: When
976    NO_PLUGINS defined, then the use of the mlyacc and mllex tools
977    is bypassed.
978    
979    When bootstrapping new versions of the compiler, there can be
980    situations where the plugin tools for ml-yacc and ml-lex (or ml-ulex)
981    are not available or otherwise not operational.  In this case one can
982    manually define the NO_PLUGINS symbol prior to running CMB.make().  To
983    do so, the following command should be issued at the interactive
984    prompt:
985    
986       #set (CMB.symval "NO_PLUGINS") (SOME 1);
987    
988    A CMB.make with NO_PLUGINS defined relies on the existence of the
989    files that normally would be generated by ml-yacc and ml-lex.
990    (Copies of these files are in the repository.)
991    
992    ----------------------------------------------------------------------
993    Name: David MacQueen (dbm@cs.uchicago.edu)
994    Date: 2007/5/23 17:23:00 CDT
995    Revision: 2603
996    Description:
997    
998    2nd merge of base from primop-branch-3 into the trunk.
999    Additional bug fixes included:
1000     Date.scan and Date.fromString fixed;
1001     Overloading resolution fixed and some type printing problems corrected.
1002    
1003    ----------------------------------------------------------------------
1004    Name: Matthias Blume (http://www.tti-c.org/blume/)
1005    Date: 2007/05/23 09:50:00 CDT
1006    Description:
1007    
1008    Changed the installation mechanism for CM tool plugins.  These are
1009    just libaries and now get installed like ordinary libaries.
1010    
1011    There are now a number of new installation targets that give some
1012    fine-grain control over what classes and suffixes are known, and what
1013    they will map to.
1014    See config/targets for details.
1015    
1016    The code that caused plugin installation as part of running a
1017    tool's "build" script has been removed.  (The build script is for
1018    building, not for installing.)
1019    
1020    ----------------------------------------------------------------------
1021    Name: Matthias Blume (http://www.tti-c.org/blume/)
1022    Date: 2007/05/22 11:50:00 CDT
1023    Description:
1024    
1025    Added a boolean control named cm.tolerate-tool-failures (env. variable
1026    name: CM_TOLERATE_TOOL_FAILURES).  The default is false and makes
1027    CM fail if a shell tool reports a non-success exit status.  If
1028    the control is set to true, then CM will press on after tool failures
1029    in the event that the target files exist (even though they are
1030    considered outdated).  Turning the control to true can be useful for
1031    bootstrapping.
1032    
1033    ----------------------------------------------------------------------
1034    Name: Aaron Turon (http://www.cs.uchicago.edu/~adrassi)
1035    Date: 2007/05/19
1036    Description:
1037    
1038    Merge of ml-lpt revisions for 110.64.
1039    
1040    The name of several ml-lpt-lib modules has changed:
1041      Repair        => AntlrRepair
1042      StreamPos     => AntlrStreamPos
1043      ErrHandlerFn  => AntlrErrHandler
1044      EBNF          => AntlrEBNF
1045    
1046    The ml-antlr specification format has changed: declarations such as
1047    %tokens and nonterminal definitions can occur *multiple* times in the
1048    same specification.  The semantics are such that each new declaration
1049    extends the previous ones.  This does not apply to %start or %name,
1050    of course.
1051    
1052    Importing a grammar via %import now includes *all* declarations in from
1053    the imported grammar, except for %name, %entry, and %start.  Tokens
1054    and nonterminals can be dropped using the new %dropping clause of the
1055    %import directive; the separate %drop and %extend have been removed.
1056    
1057    We now allow optional type annotations on nonterminals, using the %nonterms
1058    directive as in ml-yacc.
1059    
1060    The refcell construct is now implemented using SML's regular reference
1061    cells, so the :== and !! notation has been deprecated.
1062    
1063    The ml-antlr tool now does much more checking of specifications, and
1064    its error messages have been greatly improved.  Error repair for
1065    generated parsers has been completely rewritten, and is now both
1066    much faster and more accurate.
1067    
1068    ml-ulex is now more lenient with escape codes (non-SML-standard
1069    escape codes are now interpreted literally, so e.g. \| denotes "|").
1070    Also, character classes may now include a "-" character at the beginning
1071    as is standard in most other regexp tools.
1072    
1073    All of these changes are documented in the user guide, which has
1074    been updated and improved with this merge.
1075    
1076    ----------------------------------------------------------------------
1077    Name: David MacQueen (http://www.cs.uchicago.edu/~jhr)
1078    Date: 2007/05/03
1079    Revision: r2492
1080    Description:
1081    
1082    Merge of the primop3 branch (base) into the trunk to create 110.63.1.
1083    Significant changes in FLINT and the front end, mostly having to do
1084    with a reorganized system for handling primops.  Various bug fixes
1085    and improvements in printing signatures.
1086    
1087    ----------------------------------------------------------------------
1088    Name: Aaron Turon (http://www.cs.uchicago.edu/~adrassi)
1089    Date: 2007/05/02
1090    Description:
1091    
1092    Preliminary commit of large ml-lpt revisions (more to come for 110.64).
1093    The ml-antlr specification format has changed: declarations such as
1094    %tokens and nonterminal definitions can occur *multiple* times in the
1095    same specification.  The semantics are such that each new declaration
1096    extends the previous ones.  Grammar extension constructs have also
1097    changed.  We now allow type annotations on nonterminals.  Finally,
1098    the refcell construct is now implemented using SML's regular reference
1099    cells, so the :== and !! notation has been deprecated.  All of these
1100    changes will appear in the 110.64 user guide for ml-lpt.
1101    
1102    The ml-antlr tool now does much more checking of specifications, and
1103    its error messages have been greatly improved.  There has also been
1104    some work on the error repair process for generated parsers, but this
1105    will be further improved in 110.64.
1106    
1107    ----------------------------------------------------------------------
1108    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1109    Date: 2007/04/24
1110    Description:
1111    
1112    More Basis fixes: The Char.fromString (etc.) functions did not handle
1113    the "\uxxxx" escape sequence.  There is still an outstanding bug with
1114    String.fromString the tail is a format escape.  I added a comment to
1115    this effect in Basis/Implementation/string.sml.
1116    Thanks to Andreas Rossberg.
1117    
1118    ----------------------------------------------------------------------
1119    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1120    Date: 2007/04/24
1121    Description:
1122    
1123    Added next function to Fifo and Queue modules in the SML/NJ Library.
1124    
1125    ----------------------------------------------------------------------
1126    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1127    Date: 2007/04/23
1128    Description:
1129    
1130    More Basis fixes: Time.fmt dropped the leading "~" for negative time
1131    values that had no whole part.
1132    
1133    ----------------------------------------------------------------------
1134    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1135    Date: 2007/04/23
1136    Description:
1137    
1138    More Basis fixes: the OS.Path module did not include the InvalidArc
1139    exception and did not do sufficient argument checking.
1140    Thanks to Stephen Weeks and Adam Chilpala.
1141    
1142    ----------------------------------------------------------------------
1143    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
1144    Date: 2007/04/16
1145    Description:
1146    
1147    Fixed an unbound functor bug in the AMD64 CM file.
1148    
1149    ----------------------------------------------------------------------
1150    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
1151    Date: 2007/04/12
1152    Description:
1153    
1154    Substantially changed the signature and implementation of AMD64
1155    SVID.  It now looks similar to the ia32 SVID, yet uses staged
1156    allocation.
1157    
1158    ----------------------------------------------------------------------
1159    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1160    Date: 2007/04/07
1161    Description:
1162    
1163    More Basis fixes: the WORD signature was missing {to,from}Large.
1164    Thanks to Andreas Rossberg.
1165    
1166    ----------------------------------------------------------------------
1167    Name: Matthias Blume (http://www.tti-c.org/blume/)
1168    Date: 2007/03/22 16:07:00 CDT
1169    Tag: release-110.63
1170    Description:
1171    
1172    Bumped version number to 110.63.
1173    
1174       !!!NEW BOOTFILES!!!
1175    
1176    ----------------------------------------------------------------------
1177    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
1178    Date: 2007/03/19
1179    Description:
1180    
1181    Fixed bogus operand sizes in AMD64 instruction spilling.
1182    
1183    ----------------------------------------------------------------------
1184    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1185    Date: 2007/03/19
1186    Description:
1187    
1188    Fixed a number of inconsistencies between the Posix.TTY structure
1189    and the Basis specification.  Thanks to Adam Chilpala.
1190    
1191    ----------------------------------------------------------------------
1192    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
1193    Date: 2007/02/26
1194    Description:
1195    
1196    Added preliminary support in MLRISC for Staged Allocation, a technique
1197    for specifying calling conventions (see
1198    http://www.eecs.harvard.edu/~nr/pubs/staged-abstract.html).
1199    Initially, we plan to use this code to generate C calls for the AMD64.
1200    
1201    The staged allocation code base resides in MLRISC/staged-allocation,
1202    and specialized calling conventions go in MLRISC/ARCH/staged-allocation.
1203    
1204    ----------------------------------------------------------------------
1205    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1206    Date: 2007/02/20
1207    Description:
1208    
1209      Bug fix: when SaveCState was called with two values to save, a subsequent
1210      GC could cause the RestoreCState to fail because the saved state had been
1211      promoted to tagless pair.
1212    
1213    ----------------------------------------------------------------------
1214    Name: Allen Leung (leunga (at) reservoir (dot) com)
1215    Date: 2007/02/20 19:08:00 EST
1216    Description:
1217    
1218        Bug triggered by:
1219    
1220        val a1 = Word8Array.array(a1, 0w0);
1221        val _  = Word8Array.update(a1, 0, 0w128);
1222    
1223        x86MCEmitter crashed when the immediate operand to MOVB was outside
1224    of the range -128 ... 127.  I've changed the code so that the range
1225    check is disabled.   Only the low order 8 bits of the immediate operand
1226    are now significant.
1227    
1228    
1229    ----------------------------------------------------------------------
1230    Name: Matthias Blume (http://www.tti-c.org/blume/)
1231    Date: 2007/02/15 09:20:00 CST
1232    Description:
1233    
1234    Eliminated any mention of lexgen.  (Lexgen was an early precursor
1235    to ml-ulex.)
1236    
1237    You should update your admin directory, so the shell scripts for
1238    maintaining your local copy of the repository reflect this change.
1239    
1240    ----------------------------------------------------------------------
1241    Name: Matthias Blume (http://www.tti-c.org/blume/)
1242    Date: 2007/02/14 15:45:00 CST
1243    Description:
1244    
1245    Fixed bug in CM's parallel make facility that failed to have
1246    the master re-link modules after letting slaves compile them.
1247    
1248    ----------------------------------------------------------------------
1249    Name: Matthias Blume (http://www.tti-c.org/blume/)
1250    Date: 2007/02/12 15:10:00 CST
1251    Description:
1252    
1253    Fixed typo in ml-build script that prevented library anchors
1254    from being registered.
1255    
1256    ----------------------------------------------------------------------
1257    Name: Matthias Blume (http://www.tti-c.org/blume/)
1258    Date: 2007/02/02 15:20:00 CST
1259    Tag: release-110.62
1260    Description:
1261    
1262    New working release (110.62).  NEW BOOTFILES!
1263    
1264    ----------------------------------------------------------------------
1265    Name: Aaron Turon (http://www.cs.uchicago.edu/~adrassi)
1266    Date: 2007/01/31
1267    Description:
1268    
1269    Brought ml-lpt manual up-to-date with the code.  Many minor
1270    improvements to the tools, and a few minor bugfixes.  Prepared
1271    ml-lpt-lib for integration with new UTF8 structure.  Changed
1272    the interface for creating streams in ml-ulex (we now support
1273    stream creation from several kinds of sources).  Overall, the
1274    tools are now quite stable, and their interfaces are unlikely to
1275    change in a way that would break compatibility.  More work,
1276    however, is needed in the documentation.
1277    
1278    ----------------------------------------------------------------------
1279    Name: Matthias Blume (http://www.tti-c.org/blume/)
1280    Date: 2007/02/01 10:05:00 CST
1281    Description:
1282    
1283    Implemented library installer.  Moved CM plugin code for
1284    ml-burg, ml-lex, and ml-yacc out of CM source tree and into
1285    their respective trees.  Implemented CM plugin for ml-ulex
1286    and ml-antlr.  Used library installer for ml-burg, ml-ulex,
1287    and ml-antlr.
1288    
1289    For ml-yacc and ml-lex we continue to have permanently "plugged-in"
1290    CM tools.  (It turns out to be too messy to do otherwise because
1291    there is too much code that during installation relies on the presence
1292    of these tools -- resulting in a tricky ordering problem.)
1293    
1294    ----------------------------------------------------------------------
1295    Name: Matthias Blume (http://www.tti-c.org/blume/)
1296    Date: 2007/01/30 11:05:00 CST
1297    Description:
1298    
1299    Added SMLofNJ.shiftArgs which is like a shell's "shift" command.
1300    Modified CM's startup code to use shiftArgs as it processes
1301    command line arguments.  This way, the init code in each .sml-file
1302    or library that is mentioned at the top level will see only
1303    those arguments that have not yet been processed at this point.
1304    In other words, the init code can "seize control" and process the
1305    remaining command line.
1306    
1307    ----------------------------------------------------------------------
1308    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1309    Date: 2007/01/30
1310    Description:
1311    
1312    Added fromList function to the ORD_SET interface and lookup to the
1313    ORD_MAP interface.  See the SML/NJ Library CHANGES file for details.
1314    
1315    ----------------------------------------------------------------------
1316    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1317    Date: 2007/01/28
1318    Description:
1319    
1320    Added the UTF8 structure and signature from the Moby compiler to
1321    the SML/NJ library (and the CML library).  These modules will replace
1322    the version in the ml-lpt-lib.
1323    
1324    ----------------------------------------------------------------------
1325    Name: Matthias Blume (http://www.tti-c.org/blume/)
1326    Date: 2007/01/26 15:10:00 CST
1327    Description:
1328    
1329    Added entries to handle ml-lpt-lib.cm in installer.
1330    
1331    ----------------------------------------------------------------------
1332    Name: Matthias Blume (http://www.tti-c.org/blume/)
1333    Date: 2006/12/15 11:10:00 CST
1334    Tag: release-110.61
1335    Description:
1336    
1337    New working release (110.61).  NEW BOOTFILES!
1338    
1339    This supersedes the pre-brown-paper-bug release (see below).
1340    
1341    ----------------------------------------------------------------------
1342    Name: Matthias Blume (http://www.tti-c.org/blume/)
1343    Date: 2006/12/15 11:00:00 CST
1344    Description:
1345    
1346    Fixed brown-paper-bag bug with CM's pathname handling, which made
1347    installation fail under Win32.
1348    
1349    ----------------------------------------------------------------------
1350    Name: Matthias Blume (http://www.tti-c.org/blume/)
1351    Date: 2006/12/14 12:00:00 CST
1352    Description:
1353    
1354    Obsolete!
1355    
1356    [New working release (110.61).  NEW BOOTFILES!]
1357    
1358    ----------------------------------------------------------------------
1359    Name: John Reppy (http://cs.uchicago.edu/~jhr)
1360    Date: 2006/14/06 09:50:00 CST
1361    Description:
1362    
1363    Fixed the code in runtime/c-libs/posix-tty/{tcgetattr,tcsetattr}.c to
1364    get the c_cc termios data copied correctly.  Also moved the allocation
1365    of the string to avoid problems if it caused a GC.
1366    
1367    Thanks to Timothy Bourke for the bug report and fix.
1368    
1369    ----------------------------------------------------------------------
1370    Name: Matthias Blume (http://www.tti-c.org/blume)
1371    Date: 2006/12/08 09:50:00 CST
1372    Description:
1373    
1374    Added code to CM's "standard shell tool" implementation which
1375    causes it to tolerate (with a warning) the situation where the shell
1376    command fails (e.g., due to the shell command's non-existence)
1377    as long as all target files exist.
1378    
1379    This makes it possible to, e.g., build ml-yacc from sources even if
1380    svn checkout messed up the time stamps on files in such a way that
1381    yacc.grm is younger than yacc.grm.sml or yacc.grm.sig.  (Ml-yacc would
1382    be needed to re-process yacc.grm, but obviously it might not yet be
1383    available at that time.)
1384    
1385    ----------------------------------------------------------------------
1386    Name: John Reppy (http://cs.uchicago.edu/~jhr)
1387    Date: 2006/12/06 12:06:00 CST
1388    Description:
1389    
1390    Fixed the types of recvVecFrom, recvVecFrom', recvVecFromNB, and
1391    recvVecFromNB' in the SOCKET signature.  This error is actually
1392    in the SML Basis specification too.
1393    
1394    ----------------------------------------------------------------------
1395    Name: Matthias Blume (http://www.tti-c.org/blume/)
1396    Date: 2006/12/05 22:40:00 CST
1397    Description:
1398    
1399    CM now reports undefined anchors as errors and aborts execution
1400    rather than silently pressing on using bogus values.
1401    
1402    ----------------------------------------------------------------------
1403    Name: Matthias Blume (http://www.tti-c.org/blume/)
1404    Date: 2006/11/29 10:00:00 CST
1405    Description:
1406    
1407    Use Say.vsay for printing the "[autoloading]" message, so
1408    #set CM.Control.verbose false (or -Ccm.verbose=false) can be used
1409    to suppress them.
1410    
1411    ----------------------------------------------------------------------
1412    Name: Matthias Blume (http://www.tti-c.org/blume/)
1413    Date: 2006/11/10 11:00:00 CST
1414    Description:
1415    
1416    Fixed bug in CM where "with:" specifications that affect compilation
1417    (as opposed to parsing) were ignored.
1418    
1419    ----------------------------------------------------------------------
1420    Name: Matthias Blume (http://www.tti-c.org/blume/)
1421    Date: 2006/11/09 14:30:00 CST
1422    Tag: release-110.60
1423    Description:
1424    
1425    New working release (110.60).  NEW BOOTFILES!
1426    
1427    This is the first subversion-hosted release.  There are also changes
1428    to the directory layout.  Here is a table:
1429    
1430    (All pathnames are relative to the SML/NJ "root" directory.)
1431    
1432      config -> config
1433    
1434      src/cm -> base/cm
1435      src/compiler -> base/compiler
1436      src/runtime -> base/runtime
1437      src/system -> base/system
1438    
1439      src/cm/pgraph -> pgraph
1440    
1441      src/READMES -> base/READMES
1442      src/$notefile -> base/NOTES/$notefile
1443         for <notefile> in BOOT CVSNOTES CYGWININSTALL HISTORY INSTALL
1444                           MACOSXINSTALL WININSTALL
1445    
1446      src/smlnj-lib -> smlnj-lib
1447      src/MLRISC -> MLRISC
1448      ckit -> ckit
1449      src/cml -> cml
1450      src/eXene -> eXene
1451      src/heap2asm -> heap2asm
1452      src/lexgen -> lexgen
1453      src/ml-burg -> ml-burg
1454      src/ml-lex -> ml-lex
1455      src/ml-yacc -> ml-yacc
1456      src/ml-nlffi-lib -> nlffi/lib
1457      src/ml-nlffigen -> nlffi/gen
1458      src/smlnj-c -> smlnj-c
1459      src/tools/TraceDebugProf -> trace-debug-profile
1460    
1461    In addition, there is also a new
1462    
1463      ml-lpt
1464    
1465    directory containing two new program generator tools: ml-ulex and
1466    ml-antlr (a lexer generator that handles unicode and an ANTRL-inspired
1467    LL(k) parser generator). These tools are currently "beta-quality"
1468    
1469    The latest versios of the sources can now be obtained anonymously
1470    via subversion.  For this, it is useful to first check out
1471    
1472       svn://smlnj-gforge.cs.uchicago.edu/smlnj/admin
1473    
1474    and put the resulting directory on your shell's PATH.  This provides
1475    access to three shell scripts: checkout-all.sh, stat-all.sh,
1476    and refresh-all.sh.
1477    
1478    To create a freshly checked-out copy of the sources, do
1479    
1480       checkout-all.sh [dir]
1481    
1482    where dir is the optional SML/NJ root directory (default is ".").
1483    
1484    This creates the above directory layout.  Each subdirectory of
1485    the root is under individual subversion control.  The stat-all.sh
1486    and refresh-al.sh scripts apply "svn stat" or "svn update" to
1487    each of these subtrees.
1488    
1489    ----------------------------------------------------------------------
1490    Name: Matthias Blume (http://www.tti-c.org/blume/)
1491    Date: 2006/11/02 12:20:00 CST
1492    Description:
1493    
1494    Reorganized directory layout.
1495    
1496    This is a temporary solution, more reorganization is to come.
1497    
1498    The basic idea is to have a number of toplevel trees, each corresponding
1499    to a well-defined part of the overall system.  Each part can be
1500    maintained individually, even in separate source repositories,
1501    although currently we still serve everything out of the main
1502    smlnj-gforge tree.
1503    
1504    Installer and and scripts have been updated to reflect the new
1505    layout.  The installer (base/src/system/smlnj/installer) is now
1506    "scriptable" to avoid burning too much knowledge about the
1507    layout into SML source code.  The main script used by the installer
1508    is in config/actions.
1509    
1510    The main change is that many of the subdirectories of what used to
1511    be known as "src" have moved to the toplevel.  The "src" directory
1512    itself has moved down into a subtree called "base".  (We may eventually
1513    get rid of the extra level of indirection represented by "src".)
1514    
1515    The layout is now as follows:
1516    
1517      toplevel tree name | default repository
1518                         | (using gf=svn://smlnj-gforge.cs.uchicago.edu/smlnj)
1519      -------------------+----------------------------------------------------
1520      config             | $gf/config/trunk
1521                         |
1522      base               | $gf/sml/trunk
1523                         |
1524      smlnj-lib          | $gf/smlnj-lib/trunk
1525      MLRISC             | $gf/MLRISC/trunk
1526                         |
1527      ml-yacc            | $gf/ml-yacc/trunk
1528      ml-lex             | $gf/ml-lex/trunk
1529      ml-burg            | $gf/ml-burg/trunk
1530      lexgen             | $gf/lexgen/trunk
1531      heap2asm           | $gf/heap2asm/trunk
1532                         |
1533      cml                | $gf/cml/trunk
1534      eXene              | $gf/eXene/trunk
1535      ckit               | $gf/ckit/trunk
1536      nlffi              | $gf/nlffi/trunk
1537                         |
1538      smlnj-c            | $gf/smlnj-c/trunk
1539    
1540    In $gf/admin there are a few useful shell scripts for checking out
1541    and maintaining the entire collection of trees:
1542    
1543       admin/checkout-all.sh [dir]
1544          -- optionally creates dir and checks out all trees from their
1545             default repositories; if dir is missing, checkout into .
1546       admin/refresh-all.sh [dir]
1547          -- looks at all trees (from the above list) in dir (default: .)
1548             and runs "svn update" if the tree exists and is under
1549             subversion control;
1550             non-existing or non-subversion trees are skipped
1551       admin/stat-all.sh [dir]
1552          -- like refresh-all.sh, but runs "svn stat" instead
1553    
1554    ----------------------------------------------------------------------
1555    Name: Matthias Blume (http://www.tti-c.org/blume/)
1556    Date: 2006/10/05 11:30:00 CDT
1557    Tag: blume-20061005-merge-amd64
1558    Description:
1559    
1560    Merged code for AMD64 backend (Mike Rainey's work).
1561    Everything is hooked up but untested.
1562    
1563    ----------------------------------------------------------------------
1564    Name: Matthias Blume (http://www.tti-c.org/blume/)
1565    Date: 2006/05/17 14:00:00 CST
1566    Tag: Release_110_59
1567    Description:
1568    
1569    New working version (110.59).  NEW BOOTFILES!
1570    
1571    I am freezing 110.59.  Changes other than the version-number increase:
1572    
1573      eXene:
1574    
1575         * committed changes to eXene from Alley Stoughton:
1576             "fixed bugs in X authorization and resource handling, as well
1577              as in the pile and viewport widgets"
1578    
1579      Runtime:
1580        * fixed linking problem with NetBSD 3.x.
1581    
1582      Lexgen:
1583        * lexgen tool handles non-ascii characters in 7-bit mode the same
1584          way that ml-lex does
1585    
1586        * lexgen propagates exceptions the same way that ml-lex does
1587    
1588      CML:
1589        * Fixed a bug in the SyncVar polling functions (iGetPoll,
1590          mTakePoll, and mGetPoll) that could lead to livelock.
1591    
1592    ----------------------------------------------------------------------
1593    Name: Matthias Blume (http://www.tti-c.org/blume/)
1594    Date: 2006/05/12 15:20:00 CST
1595    Tag: blume-20060515-makedepend
1596    Description:
1597    
1598    Implemented ml-makedepend (i.e., CM.sources) in a better (more robust)
1599    way.  This should hopefully fix the ml-makedepend problem permanently.
1600    
1601    ----------------------------------------------------------------------
1602    Name: Matthias Blume (http://www.tti-c.org/blume/)
1603    Date: 2006/05/12 15:15:00 CST
1604    Tag: blume-20060512-makedepend
1605    Description:
1606    
1607    Fixed long-standing bug with ml-makedepend where it would output a
1608    spurious dependency to a non-existing file.  (This is a simple fix.
1609    It might need further looking into.)
1610    
1611    ----------------------------------------------------------------------
1612    Name: Matthias Blume (http://www.tti-c.org/blume/)
1613    Date: 2006/04/20 10:30:00 CDT
1614    Tag: blume-20060420-heap2exec
1615    Description:
1616    
1617    Committed patches received from Johannes 5 Joemann (joemann@befree.free.de)
1618    that enable heap2exec under Linux and FreeBSD.
1619    
1620    ----------------------------------------------------------------------
1621    Name: John Reppy
1622    Date: 2006/04/14
1623    Tag:
1624    Description:
1625    
1626    MLRISC changes:
1627      1) renamed GAS_PSEUDO_OPS to AS_PSEUDO_OPS and put it in its own file.
1628      2) added support for NOTB and XORB operators in pseudo-op expressions
1629      3) added DarwinPseudoOp functor that supports Darwin's assembler syntax.
1630      4) added support for 64-bit integer literals
1631    
1632    ----------------------------------------------------------------------
1633    Name: Matthias Blume (http://www.tti-c.org/blume/)
1634    Date: yyyy/mm/dd
1635    Tag: Release_110_58
1636    Description:
1637    
1638    New working version (110.58).  NEW BOOTFILES!
1639    
1640    ----------------------------------------------------------------------
1641    Name: Matthias Blume (http://www.tti-c.org/blume/)
1642    Date: 2006/03/01 22:15:00 CST
1643    Tag: blume-20060301-lexgen
1644    Description:
1645    
1646    Incorporated several bugfixes to lexgen.  Compiler now compiles to
1647    fixpoint when using lexgen instead of ml-lex.
1648    
1649    ----------------------------------------------------------------------
1650    Name: Matthias Blume (http://www.tti-c.org/blume/)
1651    Date: 2006/02/28 22:45:00 CST
1652    Tag: blume-20060228-lexgen
1653    Description:
1654    
1655    Removed ml-flex and added lexgen instead, using Aaron Turon's newly
1656    provided tarball.  The generated lexers still have problems.
1657    
1658    ----------------------------------------------------------------------
1659    Name: Matthias Blume (http://www.tti-c.org/blume/)
1660    Date: 2006/02/26 23:30:00 CST
1661    Tag: blume-20060226-ml-flex
1662    Description:
1663    
1664    Removed ml-flex' dependency on regexp-lib.cm.  Turned installation
1665    of ml-flex on by default.
1666    
1667    ----------------------------------------------------------------------
1668    Name: Matthias Blume (http://www.tti-c.org/blume/)
1669    Date: 2006/02/24 16:30:00 CST
1670    Tag: blume-20060224-ml-flex
1671    Description:
1672    
1673    Added ml-flex sources.  Partially integrated, but should not be
1674    turned on yet!  (Read: leave it commented-out in config/targets!)
1675    
1676    ----------------------------------------------------------------------
1677    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1678    Date: 2006/02/23
1679    Tag: jhr-20060223-x86-64
1680    Description:
1681    Changes to support building on x86-64 systems (using the 32-bit mode).
1682    Also cleaned up signal handling on Linux.  Support for pre-2.2 Linux
1683    kernels dropped.
1684    
1685    ----------------------------------------------------------------------
1686    Name: Allen Leung (leunga (at) reservoir (dot) com)
1687    Date: 2006/02/22 15:07:00 EST
1688    Tag: leunga-20060222-mdl-gen
1689    Description:
1690    
1691      CM has changed.  Updated the script for rebuilding the MLRISC generated
1692    files.
1693    
1694    ----------------------------------------------------------------------
1695    Name: Matthias Blume (http://www.tti-c.org/blume/)
1696    Date: 2006/02/14 17:30:00 CST
1697    Tag: blume-20060214-intel-mac
1698    Description:
1699    
1700    Hooked code for Darwin-specific Intel ABI into main compiler.
1701    (This is a temporary solution which relies on the fact that the
1702    compiler itself does not use NLFFI.  Eventually we need to divorce
1703    intel mac from generic x86 unix code and make separate sets of binaries.)
1704    
1705    ----------------------------------------------------------------------
1706    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1707    Date: 2006/02/13
1708    Tag: jhr-20060213-intel-mac
1709    Description:
1710    Changed MLRISC x86 CCalls for partial support of MacOS X ABI.
1711    
1712    ----------------------------------------------------------------------
1713    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1714    Date: 2006/02/06
1715    Tag: jhr-20060206-intel-mac
1716    Description:
1717    Changes to support MacOS X on Intel hardware.  The C-calls support in
1718    MLRISC must also be updated to support the MacOS X ABI.
1719    
1720    ----------------------------------------------------------------------
1721    Name: Matthias Blume (http://www.tti-c.org/blume/)
1722    Date: 2005/12/16 00:15:00 CST
1723    Tag: blume-20051216-cm
1724    Description:
1725    
1726    Improved error reporting and handling in CM.
1727    
1728    ----------------------------------------------------------------------
1729    Name: Matthias Blume (http://www.tti-c.org/blume/)
1730    Date: 2005/11/21 14:00:00 CST
1731    Tag: blume-20051121-html-lib
1732    Description:
1733    
1734    Enabling $/html-lib.cm in config/preloads did not work.  This is fixed
1735    now.  (Since the anchor mapping for html-lib.cm is not yet in effect
1736    at the time when config/preloads is processed, the library has to
1737    be referred to by another name.  In 110.57 this would be
1738    $SMLNJ-LIB/HTML/html-lib.cm.  I arranged for $smlnj/smlnj-lib/html-lib.cm
1739    to be valid as well.)
1740    
1741    Thanks to Todd Wilson (Fresno) for alerting me to this issue.
1742    
1743    ----------------------------------------------------------------------
1744    Name: Matthias Blume (http://www.tti-c.org/blume/)
1745    Date: 2005/11/19 13:45:00 CST
1746    Tag: Release_110_57
1747    Description:
1748    
1749    Moved release tag for 110.57.
1750    
1751    ----------------------------------------------------------------------
1752    Name: Matthias Blume (http://www.tti-c.org/blume/)
1753    Date: 2005/11/19 23:35:00 CST
1754    Tag: blume-20051119-fish
1755    Description:
1756    
1757    Fixed a problem in config/install.sh where it tries to "fish" the
1758    name of the CM metadata directory from the wrong place (because
1759    the physical location of basis.cm has changed).  Also, corrected the
1760    path anchor for $/html-lib.cm.  (Thanks to M. Fluet for pointing out
1761    these problems.)
1762    
1763    ----------------------------------------------------------------------
1764    Name: Matthias Blume (http://www.tti-c.org/blume/)
1765    Date: 2005/11/16 14:30:00 CST
1766    Tag: blume-orig-110_57
1767    Description:
1768    
1769    New working version (110.57).  NEW BOOTFILES!
1770    
1771    UPDATE: The release tag has been moved to include a fix for a brown-paper-
1772            bag glitch (see above).
1773    
1774    ----------------------------------------------------------------------
1775    Name: Matthias Blume (http://www.tti-c.org/blume/)
1776    Date: 2005/11/16 10:25:00 CST
1777    Tag: blume-22051116-btrace
1778    Description:
1779    
1780    Fixed problem with bogus exception message when using back-trace
1781    facility.
1782    
1783    ----------------------------------------------------------------------
1784    Name: Matthias Blume (http://www.tti-c.org/blume/)
1785    Date: 2005/11/15 22:35:00 CST
1786    Tag: blume-22051115-array2copy
1787    Description:
1788    
1789    Added simple implementation of Array2.copy.  (Warning: mostly untested.)
1790    
1791    ----------------------------------------------------------------------
1792    Name: Matthias Blume (http://www.tti-c.org/blume/)
1793    Date: 2005/11/15 21:35:00 CST
1794    Tag: blume-22051115-versiontool
1795    Description:
1796    
1797    Reversed change to src/system/smlnj/internals/versiontool.cm.  This
1798    file gets loaded as a tool -- by the equivalent of CM.make during the
1799    run of CMB.make.  Thus, CMB's path configuration is meaningless for
1800    it.  Instead, it has the status of "user code", so it should use
1801    $/basis.cm to refer to the Basis library.  (At least that's true for
1802    the purpose of bootstrapping the previous change.  In the future it
1803    might make sense to have versiontool.cm refer to
1804    $smlnj/basis/basis.cm, i.e., the version of the Basis that the
1805    compiler itself uses.)
1806    
1807    Also patched src/system/testml to have it activate those extra anchor
1808    bindings in config/extrapathconfig.
1809    
1810    ----------------------------------------------------------------------
1811    Name: Matthias Blume (http://www.tti-c.org/blume/)
1812    Date: 2005/11/15 16:35:00 CST
1813    Tag: blume-22051115-libraries
1814    Description:
1815    
1816    This change affects the way the following libraries are tied into
1817    the system:
1818    
1819       $/basis.cm
1820       $/smlnj-lib.cm
1821       $/pp-lib.cm
1822       $/controls-lib.cm
1823       $/html-lib.cm
1824       $/ml-yacc-lib.cm
1825    
1826    These libraries are now internally (as seen from the source code
1827    of the implementation itself) known by the following names:
1828    
1829       $smlnj/basis/basis.cm
1830       $smlnj/smlnj-lib/smlnj-lib.cm
1831       $smlnj/smlnj-lib/pp-lib.cm
1832       $smlnj/smlnj-lib/controls-lib.cm
1833       $smlnj/smlnj-lib/html-lib.cm
1834       $smlnj/ml-yacc/ml-yacc-lib.cm
1835    
1836    This makes it possible to work with code that requires different
1837    versions of these libraries, and which refers to these libraries using
1838    their "default" names (i.e., the first set of names above).  In other
1839    words, one can un-define or re-define those default names without
1840    compromising the proper functioning of the compiler itself.
1841    
1842    A similar procedure had already been performed for several of the
1843    MLRISC libraries that are linked into the compiler.  I did some
1844    cleanup on this code.
1845    
1846    A new file in the config directory (named extrapathconfig) is
1847    responsible for setting up path anchors that the compiler itself does
1848    not need, but that are typically required by user code.
1849    
1850    ----------------------------------------------------------------------
1851    Name: Matthias Blume
1852    Date: 2005/11/07 17:05:00 CST
1853    Tag: blume-20051107-slice
1854    Description:
1855    
1856    Fixed erroneous out-of-bounds test in the "update" function of
1857    various *ArraySlice modules.  (Thanks to Vesa A. Norrman for pointing
1858    out the problem.)
1859    
1860    Pushed some Basis changes through ML-Lex, CML, and eXene.
1861    
1862    ----------------------------------------------------------------------
1863    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1864    Date: 2005/11/07
1865    Description:
1866    Fixed a Basis incompatibility: The depreciated function Substring.all
1867    was removed (use Substring.full instead).
1868    
1869    ----------------------------------------------------------------------
1870    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1871    Date: 2005/11/05
1872    Description:
1873    Tweaked interval set API in SML/NJ library; see the CHANGES file for details.
1874    
1875    ----------------------------------------------------------------------
1876    Name: Matthias Blume (http://www.tti-c.org/blume/)
1877    Date: 2005/11/02 16:25:00 CST
1878    Tag: blume-20051102-hex
1879    Description:
1880    
1881    * Runtime system bootstrap code now accepts hex digits in BOOTLIST
1882      in either upper case or lower case format.
1883    * Pushed changes to names of Pack<N>{Big,Little} structures through
1884      CML and eXene.
1885    
1886    ----------------------------------------------------------------------
1887    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1888    Date: 2005/11/02
1889    Description:
1890    Fixed a Basis incompatibility: Pack<N>{Big,Little} structures should
1891    be called PackWord<N>{Big,Little}.
1892    
1893    ----------------------------------------------------------------------
1894    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1895    Date: 2005/10/28
1896    Description:
1897    Fixed a minor Basis incompatibility: hex digits should be upper case.
1898    
1899    ----------------------------------------------------------------------
1900    Name: Matthias Blume (blume (at) tti - c (dot) org)
1901    Date: 2005/10/25 16:00:00 CDT
1902    Tag: Release_110_56
1903    Description:
1904    
1905    New working version (110.56).  NEW BOOTFILES!
1906    
1907    ----------------------------------------------------------------------
1908    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1909    Date: 2005/10/25
1910    Description:
1911    Added interval sets to utility library (signatures INTERVAL_DOMAIN
1912    and INTERVAL_SET, and functor IntervalSetFn).
1913    
1914    ----------------------------------------------------------------------
1915    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1916    Date: 2005/10/14
1917    Description:
1918    Add Zhong Shao's fix for datatype equality functions.
1919    
1920    ----------------------------------------------------------------------
1921    Name: Allen Leung (leunga (at) reservoir (dot) com)
1922    Date: 2005/10/14 12:30:00 EST
1923    Tag: leunga-20051014-x86-spill
1924    Description:
1925    
1926    Bug fix a bug found by Carl Hauser.
1927    There was a typo in the reload code for FCMP in x86SpillInstr.sml.
1928    
1929    ----------------------------------------------------------------------
1930    Name: Allen Leung (leunga (at) reservoir (dot) com)
1931    Date: 2005/10/14 11:15:00 EST
1932    Tag: leunga-20051014-x86-asm
1933    Description:
1934    
1935    Removed some debugging code in file x86Asm.sml.
1936    The function emit_operand was printing out debugging output.
1937    
1938    ----------------------------------------------------------------------
1939    Name: John Reppy
1940    Date: 2005/07/27
1941    Tag:
1942    Description:
1943    
1944    Fixed ml-lex to recognize "\r" as representing carriage return.
1945    
1946    ----------------------------------------------------------------------
1947    Name: John Reppy
1948    Date: 2005/07/27
1949    Tag:
1950    Description:
1951    
1952    Fixed ml-yacc to work on files with non-native end-of-line
1953    encodings (e.g., Windows text file on a Unix system).
1954    
1955    ----------------------------------------------------------------------
1956    Name: John Reppy
1957    Date: 2005/07/20
1958    Tag:
1959    Description:
1960    
1961    Added changes from Dominic Evans (oldmanuk (at) gmail (dot) com)
1962    to support HPUX 11.
1963    
1964    ----------------------------------------------------------------------
1965    Name: John Reppy
1966    Date: 2005/07/06
1967    Tag:
1968    Description:
1969    
1970    Changes to the SML/NJ library.  See smlnj-lib/CHANGES for details.
1971    
1972    ----------------------------------------------------------------------
1973    Name: Matthias Blume (blume (at) tti - c (dot) org)
1974    Date: 2005/07/06 00:45:00 CDT
1975    Tag: blume-20050706-slice-copy
1976    Description:
1977    
1978    Fixed reversed logic for deciding whether to "copy up" or "copy down"
1979    in *-array-slice.sml.
1980    
1981    ----------------------------------------------------------------------
1982    Name: Allen Leung (leunga (at) reservoir (dot) com)
1983    Date: 2005/05/31 17:00:00 EST
1984    Tag: leunga-20050531-cygwin-fault-2
1985    Description:
1986    
1987    A typo in the cygwin code fixed.
1988    
1989    ----------------------------------------------------------------------
1990    Name: Allen Leung (leunga (at) reservoir (dot) com)
1991    Date: 2005/05/31 16:47:00 EST
1992    Tag: leunga-20050531-cygwin-fault
1993    Description:
1994    
1995    Updated Cygwin's fault/signal handling to match the Windows version.
1996    Updated the export list.
1997    
1998    ----------------------------------------------------------------------
1999    Name: Matthias Blume (blume (at) tti - c (dot) org)
2000    Date: 2005/05/18 13:35:00 CDT
2001    Tag: Release_110_54
2002    Description:
2003    
2004    New working version (110.54).  NEW BOOTFILES!
2005    
2006    ----------------------------------------------------------------------
2007    Name: Matthias Blume (blume (at) tti - c (dot) org)
2008    Date: 2005/05/18 11:58:00 CDT
2009    Tag: blume-20050518-installer
2010    Description:
2011    
2012    Added support scripts for Mac OS X PackageMaker and modified
2013    config/install.sh so that it supports re-dumping a heap image
2014    after customization.
2015    
2016    ----------------------------------------------------------------------
2017    Name: Matthias Blume (blume (at) tti - c (dot) org)
2018    Date: 2005/05/18 10:55:00 CDT
2019    Tag: blume-20050518-realdiv-noovld
2020    Description:
2021    
2022    Un-overloaded / to work around bug in overloading resolution code.
2023    
2024    ----------------------------------------------------------------------
2025    Name: Matthias Blume (blume (at) tti - c (dot) org)
2026    Date: 2005/05/16 23:50:00 CDT
2027    Tag: blume-20050516-redump-heap
2028    Description:
2029    
2030    Added mechanism for re-creating a heap file for the interactive system
2031    after configuration variables have been changed.
2032    
2033       CM.redump_heap : string -> unit
2034    
2035    This is much like SMLofNJ.exportML, but starting from the resulting
2036    heap does not return to the caller of CM.redump_heap but
2037    restarts the interactive system from scratch.  The original call of
2038    CM.redump_heap does not return but ends the interactive session.
2039    Thus, CM.redump_heap is a lot like SMLofNJ.exportFn.
2040    
2041    Internally, redump_heap winds the dynamic execution context back to
2042    the point where the original heap image was created and re-executes
2043    the heap image generation code in the boot code.
2044    
2045    ----------------------------------------------------------------------
2046    Name: Matthias Blume (blume (at) tti - c (dot) org)
2047    Date: 2005/05/09 21:55:00 CDT
2048    Tag: blume-20050509-word64
2049    Description:
2050    
2051    Added a hack to the existing hack known as Word64 to make fromString
2052    behave correctly.  I am still not sure whether Word64.scan will work
2053    as specified with respect to the interaction of radix and prefix.
2054    
2055    ----------------------------------------------------------------------
2056    Name: Allen Leung (leunga (at) reservoir (dot) com)
2057    Date: 2005/05/04 11:50:00 EST
2058    Tag: leunga-20050504-checkgc
2059    Description:
2060    
2061    Added a gc protocol checking phase.  This phase is enabled with
2062    the flag "check-gc".  "debug-check-gc" turns on the verbose mode.
2063    
2064    ----------------------------------------------------------------------
2065    Name: Matthias Blume (blume (at) tti - c (dot) org)
2066    Date: 2005/05/04 10:45:00 CDT
2067    Tag: blume-20050504-intinf
2068    Description:
2069    
2070    Fixed a bug in the implementation of div and mod for IntInf.
2071    Thanks to Neophytos Michael for reporting the problem.
2072    
2073    ----------------------------------------------------------------------
2074    Name: Matthias Blume (blume (at) tti - c (dot) org)
2075    Date: 2005/05/04 10:35:00 CDT
2076    Tag: blume-20050504-join
2077    Description:
2078    
2079    Added a "join" combinator to the ParserComb module in smlnj-lib.cm.
2080    
2081    ----------------------------------------------------------------------
2082    Name: Matthias Blume (blume (at) tti - c (dot) org)
2083    Date: 2005/02/28 23:40:00 CST
2084    Tag: blume-20050228-mVar
2085    Description:
2086    
2087    Fixed serious bug (brown paper bag variety) in new implementation of
2088    structure Atom in CML.  (I had accidentally used a mailbox instead of
2089    an mvar, leaving the door open for races.)
2090    
2091    ----------------------------------------------------------------------
2092    Name: Matthias Blume (blume (at) tti - c (dot) org)
2093    Date: 2005/02/25 15:00:00 CST
2094    Tag: Release_110_53
2095    Description:
2096    
2097    New working version (110.53).  NEW BOOTFILES!
2098    
2099    ----------------------------------------------------------------------
2100    Name: Matthias Blume (blume (at) tti - c (dot) org)
2101    Date: 2005/02/25 14:50:00 CST
2102    Tag: blume-20050225-susp
2103    Description:
2104    
2105    Brought back SMLofNJ.Susp.  The underlying suspension type is the one
2106    implemented in Core -- which means that it is the same as the one used
2107    by the lazy extension.
2108    
2109    ----------------------------------------------------------------------
2110    Name: Matthias Blume (blume (at) tti - c (dot) org)
2111    Date: 2005/02/24 16:50:00 CST
2112    Tag: blume-20050224-cml-atom
2113    Description:
2114    
2115    Simpler and at the same time more general implementation of structure
2116    Atom in CML.
2117    
2118    ----------------------------------------------------------------------
2119    Name: Matthias Blume (blume (at) tti - c (dot) org)
2120    Date: 2005/02/15 17:35:00 CST
2121    Tag: blume-20050215-tools
2122    Description:
2123    
2124    Created new "tools" directory under "src" and moved "TraceDebugProf"
2125    there.
2126    
2127    ----------------------------------------------------------------------
2128    Name: Matthias Blume (blume (at) tti - c (dot) org)
2129    Date: 2005/02/10 17:55:00 CST
2130    Tag: blume-20050210-longlong
2131    Description:
2132    
2133    Implemented "long long" arguments and results for NLFFI.  (Only the
2134    PPC/MacOS implementation is complete, the other backends still need to
2135    be updated.)
2136    
2137    ----------------------------------------------------------------------
2138    Name: Matthias Blume (blume (at) tti - c (dot) org)
2139    Date: 2005/01/24 17:40:00 CST
2140    Tag: blume-20050124-mlyacc
2141    Description:
2142    
2143    Minor cleanup in ML-Yacc rule printing mechanism.  This should fix a
2144    problem with certain "as" patterns which previously got rendered
2145    using incorrect syntax.
2146    
2147    ----------------------------------------------------------------------
2148    Name: Matthias Blume (blume (at) tti - c (dot) org)
2149    Date: 2005/01/18 12:00:00 CST
2150    Tag: blume-20050118-profile
2151    Description:
2152    
2153    Made time profiling code (interrupt handler) in runtime system aware
2154    of new array representation.
2155    
2156    ----------------------------------------------------------------------
2157    Name: Matthias Blume (blume (at) tti - c (dot) org)
2158    Date: 2005/01/14 18:00:00 CST
2159    Tag: blume-20050114-heap2exec
2160    Description:
2161    
2162    Implemented new (but still experimental) heap2exec facility.  This is
2163    tested under Mac OS X and should work under Linux (will test shortly).
2164    It will probably also work on the Sparc (will test some time later).
2165    
2166      - removed old "HACKED_STANDALONE" hack from runtime
2167    
2168    To be able to test this, uncomment the request for "heap2asm" in
2169    config/targets prior to installation.  (Notice that this is different
2170    from "heap2exec" mentioned below.  Not a typo.)
2171    
2172    To perform an actual test, run the command
2173    
2174       $ bin/heap2exec heapfile execfile
2175    
2176    (You can put heap2exec on your shell's path.)
2177    
2178    For example, run
2179    
2180      $ bin/heap2exec bin/.heap/ml-yacc.ppc-darwin mly
2181    
2182    This will create a standalone executable called "mly" which you can
2183    then invoke directly as a command.
2184    
2185    ----------------------------------------------------------------------
2186    Name: Matthias Blume (blume (at) tti - c (dot) org)
2187    Date: 2005/01/07 11:44:00 CST
2188    Tag: blume-20050107-mlstring
2189    Description:
2190    
2191    fixed off-by-one error in ML_STRING macro (globals.c)
2192    
2193    ----------------------------------------------------------------------
2194    Name: Matthias Blume (blume (at) tti - c (dot) org)
2195    Date: 2004/12/23 18:00:00 CST
2196    Tag: blume-20041223-santa
2197    Description:
2198    
2199    Made ml-build script "smarter" (but only very little).
2200    
2201    ----------------------------------------------------------------------
2202    Name: Matthias Blume (blume (at) tti - c (dot) org)
2203    Date: 2004/12/21 15:05:00 CST
2204    Tag: blume-20041221-longlong
2205    Description:
2206    
2207    * Implemented access to signed and unsigned long long data in NLFFI.
2208    (The parameter-passing part of the picture has not complete. But
2209    data structure access seems to work.)
2210    
2211    * Fixed CM's incorrect assumption that the PPC is little-endian.
2212      (On the Mac, it is big-endian.  And that's currently our only
2213      PPC platform.)
2214    
2215    ----------------------------------------------------------------------
2216    Name: Matthias Blume (blume (at) tti - c (dot) org)
2217    Date: 2004/12/21 12:50:00 CST
2218    Tag: blume-20041221-memory
2219    Description:
2220    
2221    Some cleanup in the $c/memory.cm library: separated some concerns by
2222    moving allocation code and memory access code each into their own
2223    files.
2224    
2225    ----------------------------------------------------------------------
2226    Name: Allen Leung (leunga (at) reservoir (dot) com)
2227    Date: 2004/12/17 16:12:00 EST
2228    Tag: leunga-20041217-cygwin-smlnj-home
2229    Description:
2230    
2231        The Unix I/O library of SML/NJ on cygwin does not understand
2232    Windows style pathname, so problems arise when SMLNJ_HOME is set
2233    to a Windows style pathname.  _run-sml now converts SMLNJ_HOME
2234    to a POSIX pathname on cygwin.
2235    
2236    ----------------------------------------------------------------------
2237    Name: Matthias Blume (blume (at) tti - c (dot) org)
2238    Date: 2004/12/16 13:35:00 CST
2239    Tag: Release_110_52
2240    Description:
2241    
2242    Last-minute changes incorporated into 110.52.  Release tag moved.
2243    
2244    The changes:
2245       - HashString.hashString' -> HashString.hashSubstring
2246       - bug fix in UnivariateStats
2247    
2248    ----------------------------------------------------------------------
2249    Name: Matthias Blume (blume (at) tti - c (dot) org)
2250    Date: 2004/12/15 23:40:00 CST
2251    Tag: blume-20041215-hashSubstring
2252    Description:
2253    
2254    - HashString.hashString' -> HashString.hashSubstring
2255    - corresponding changes in atom.sml
2256    - "de-compressed" (aka. un-obfuscated) code for UnivariateStats and
2257      added some comments
2258    
2259    ----------------------------------------------------------------------
2260    Name: Matthias Blume (blume (at) tti - c (dot) org)
2261    Date: 2004/12/15 15:30:00 CST
2262    Tag: (Release_110_52)
2263    Description:
2264    
2265    New working version (110.52).  NEW BOOTFILES!
2266    
2267    ----------------------------------------------------------------------
2268    Name: Matthias Blume (blume (at) tti - c (dot) org)
2269    Date: 2004/12/15 12:45:00 CST
2270    Tag: blume-20041215-spaces
2271    Description:
2272    
2273    More on the space problem (this time for Win32).
2274    
2275    ----------------------------------------------------------------------
2276    Name: Matthias Blume (blume (at) tti - c (dot) org)
2277    Date: 2004/12/14 17:30:00 CST
2278    Tag: blume-20041214-spaces
2279    Description:
2280    
2281    Hacked some of the scripts (in particular: the installer) to cope with
2282    spaces in filenames a bit better.  But beware: the current "solution"
2283    is likely still full of bugs and inherently incomplete.  (We need to
2284    do away with those shell scripts for a comprehensive solution.)
2285    
2286    ----------------------------------------------------------------------
2287    Name: Matthias Blume (blume (at) tti - c (dot) org)
2288    Date: 2004/12/13 14:45:00 CST
2289    Tag: blume-20041213-ml-makedepend
2290    Description:
2291    
2292    Fixed bug in code for ml-makedepend.
2293    
2294    ----------------------------------------------------------------------
2295    Name: Matthias Blume (blume (at) tti - c (dot) org)
2296    Date: 2004/12/09 16:30:00 CST
2297    Tag: blume-20041209-statistics
2298    Description:
2299    
2300    Added two simple but potentially useful statistics modules to SML/NJ Library.
2301    (See CHANGES file there.)
2302    
2303    ----------------------------------------------------------------------
2304    Name: Matthias Blume (blume (at) tti - c (dot) org)
2305    Date: 2004/12/01 16:50:00 CST
2306    Tag: blume-20041201-atom
2307    Description:
2308    
2309    smlnj-lib:
2310    
2311      Added function HashString.hashString' for substrings.
2312      Hand-inlined CharVector.foldl into HashString (for speed).
2313      Modified implementation of structure Atom to avoid extracting
2314      strings from substrings unless necessary.
2315      (Also see CHANGES file for smlnj-lib.)
2316    
2317    ----------------------------------------------------------------------
2318    Name: Matthias Blume (blume (at) tti - c (dot) org)
2319    Date: 2004/11/24 22:15:00 CST
2320    Tag: blume-20041124-cml
2321    Description:
2322    
2323    Made sure CML compiles when Position = Int64.
2324    
2325    ----------------------------------------------------------------------
2326    Name: Matthias Blume (blume (at) tti - c (dot) org)
2327    Date: 2004/11/24 14:30:00 CST
2328    Tag: blume-20041124-position
2329    Description:
2330    
2331    The compiler can now be compiled in a mode that makes structure Position
2332    equal to Int64.  The default, however, is unchanged (Position = Int31)
2333    for the time being.
2334    
2335    To enable 64-bit positions, use the following procedure:
2336    
2337    1. Start sml
2338    2. Autoload $smlnj/cmb.cm (if not already autoloaded)
2339    3. Type
2340          #set (CMB.symval "USE_64_BIT_POSITIONS") (SOME 1);
2341    4. Run CMB.make() as usual.
2342    
2343    This is barely tested.  The only test so far was a little SML program
2344    counting the number of characters in an 8-gigabyte file by
2345    reading it character-by-character.  That test was successful.
2346    
2347    In support of 64-bit positions, a number of new functions have been
2348    added to the runtime system.
2349    
2350    ----------------------------------------------------------------------
2351    Name: Matthias Blume (blume (at) tti - c (dot) org)
2352    Date: 2004/11/23 14:45:00 CST
2353    Tag: blume-20041123-useFile
2354    Description:
2355    
2356    Fixed a problem with unhelpful error messages related to problems with
2357    .cm- or .sml files that appear as part of the sml command line.
2358    
2359    ----------------------------------------------------------------------
2360    Name: Matthias Blume (blume (at) tti - c (dot) org)
2361    Date: 2004/11/18 15:40:00 CST
2362    Tag: Release_110_51
2363    Description:
2364    
2365    New working version (110.51).  NEW BOOTFILES!
2366    
2367    ----------------------------------------------------------------------
2368    Name: Matthias Blume (blume (at) tti - c (dot) org)
2369    Date: 2004/11/18 15:35:00 CST
2370    Tag: <none>
2371    Description:
2372    
2373    Enabled dlopen and friends for FreeBSD (as recommended by Johannes 5
2374    Joemann).
2375    
2376    ----------------------------------------------------------------------
2377    Name: Allen Leung (leunga (at) reservoir (dot) com)
2378    Date: 2004/11/17 16:05:21 EST 2004
2379    Tag: leunga-20041117-mlrisc-live-kill
2380    Description:
2381    
2382       Added support for MLTree constructs LIVE and KILL
2383    to all the architectures.
2384    
2385    ----------------------------------------------------------------------
2386    Name: Matthias Blume (blume (at) tti - c (dot) org)
2387    Date: 2004/11/13 00:20:00 CST
2388    Tag: blume-20041113-versiontool
2389    Description:
2390    
2391    - Stripped down the versiontool: It now only handles the version number.
2392      The date string is generated at bootstrap time (during makeml).
2393    
2394    - In a previous commit, fixed a minor issue with how polyequal is being
2395      translated.  In particular, the code now "looks through" abstractions.
2396      This results in slightly fewer polyEqual warnings and hopefully slightly
2397      more efficient code.  Important examples for where this matters are
2398      the new int64 and word64 types.
2399    
2400    ----------------------------------------------------------------------
2401    Name: Matthias Blume (blume (at) tti - c (dot) org)
2402    Date: 2004/11/12 00:30:00 CST
2403    Tag: blume-20041112-int64
2404    Description:
2405    
2406    Structure Int64 fully hooked in.  (The implementation is not very
2407    efficient, though.)
2408    
2409    ----------------------------------------------------------------------
2410    Name: Matthias Blume (blume (at) tti - c (dot) org)
2411    Date: 2004/11/11 17:30:00 CST
2412    Tag: blume-20041111-more64
2413    Description:
2414    
2415    All the pieces of Word64 are now there, with the exception of the
2416    conversions from and to LargeWord. (Eventually these need to be identities,
2417    but for the time being they don't even make sense because LargeWord is
2418    32-bit wide.)
2419    
2420    Also started to add similar support for Int64, but major pieces of that
2421    are still missing.
2422    
2423    ----------------------------------------------------------------------
2424    Name: Matthias Blume (blume (at) tti - c (dot) org)
2425    Date: 2004/11/11 00:15:00 CST
2426    Tag: blume-20041111-word64
2427    Description:
2428    
2429    Structure Word64 is now (almost) complete, word literals and patterns
2430    seem to work.  There are a few odd pieces missing.  In particular,
2431    I didn't do the {from,to}LargeWord parts because LargeWord is still Word32
2432    at the moment.
2433    
2434    Making Word64 official would mean that LargeWord becomes Word64.  But
2435    this requires extreme care because most word-word conversions have to
2436    go through LargeWord, so making a mistake means loss of efficiency or
2437    worse.  Eventually there will be a solution similar to (but actually
2438    simpler than) what I did with IntInf.
2439    
2440    ----------------------------------------------------------------------
2441    Name: Matthias Blume (blume (at) tti - c (dot) org)
2442    Date: 2004/11/10 18:12:00 CST
2443    Tag: blume-20041110-64bit
2444    Description:
2445    
2446    More 64-bit hacking (but still not even half-way there yet).
2447    Also, some assorted improvements to the handling of 8-bit words.
2448    
2449    ----------------------------------------------------------------------
2450    Name: Matthias Blume (blume (at) tti - c (dot) org)
2451    Date: 2004/11/09 17:50:00 CST
2452    Tag: <none>
2453    Description:
2454    
2455    Started adding some infrastructure for supporting 64-bit int- and
2456    word-types.  (Still in its very early stages.)
2457    
2458    ----------------------------------------------------------------------
2459    Name: Matthias Blume (blume (at) tti - c (dot) org)
2460    Date: 2004/10/28 10:45:00 CDT
2461    Tag: Release_110_50
2462    Description:
2463    
2464    New working version (110.50).  NEW BOOTFILES!
2465    
2466                 =====================
2467    
2468    Also:
2469    
2470      - Changend config/srcarchiveurl from a file just
2471        containing the URL string into a file containing
2472        shell script code.  The code has access to the $VERSION variable.
2473      - Made corresponding changes to config/install.sh and config/unpack.
2474      - Default contents of config/srcarchiveurl uses $VERSION and
2475        normally does not have to be edited to reflect a version change.
2476    
2477      (As a result, a version change can be done by just editing
2478       config/version, the rest is now automatic.)
2479    
2480    ----------------------------------------------------------------------
2481    Name: Matthias Blume (blume (at) tti - c (dot) org)
2482    Date: 2004/10/27 17:50:00 CDT
2483    Tag: blume-20041027-btrace-msg
2484    Description:
2485    
2486    BackTrace.monitor now also reports the source of the exception that
2487    triggered the trace.
2488    
2489    ----------------------------------------------------------------------
2490    Name: Matthias Blume (blume (at) tti - c (dot) org)
2491    Date: 2004/10/27 17:20:00 CDT
2492    Tag: blume-20041027-x86-c-calls
2493    Description:
2494    
2495    This is the HISTORY entry for two earlier commits, both concerning
2496    the x86 c-calls code in MLRISC:
2497    
2498      - added a missing LOAD in the code that deals with struct arguments
2499      - made sure the caller does not add the wrong number of bytes to the
2500        stack pointer after a call of a function returning a struct
2501        (the callee already pops the implicit argument which points to
2502         the space reserved for the result)
2503    
2504    ----------------------------------------------------------------------
2505    Name: Allen Leung (leunga (at) reservoir (dot) com)
2506    Date: 2004/10/24 14:00:00 EST
2507    Tag: leunga-20041024-x86-gas-fucomip
2508    Description:
2509    
2510       John discovered a bug in the syntax of fucomip.
2511       The opcodes FU?COMIP? have been changed to
2512    
2513           fu?comip? %st(i), %st
2514    
2515    ----------------------------------------------------------------------
2516    Name: Matthias Blume (blume (at) tti - c (dot) org)
2517    Date: 2004/10/20 15:06:00 CDT
2518    Tag: blume-20041020-standalone-backtrace
2519    Description:
2520    
2521    Added a mechanism for getting back-trace information from standalone
2522    programs.  Here is how it works:
2523    
2524       1. The part of the program from which you want to get backtrace
2525          information (usually the whole program) should be wrapped with
2526          BackTrace.monitor.  This is a (unit->'a)->'a function, and your
2527          main program could be modified from something like
2528    
2529             fun main (pgm, args) = ...
2530    
2531         to
2532    
2533            fun main (pgm, args) = BackTrace.monitor (fn () => ...)
2534    
2535       2. To be able to access BackTrace.monitor, you have to add
2536          library $smlnj-tdp/plugins.cm to the .cm file that contains your
2537          main function.
2538    
2539       3. Remove all compiled code (i.e., all the .cm/ subdirectories that
2540          CM might have created in the past for your project).
2541    
2542       4. Build the system using this command line:
2543    
2544             ml-build -Ctdp.instrument=true \$smlnj-tdp/back-trace.cm \
2545                      myprog.cm MyProg.main myprog
2546    
2547          instead of the usual
2548    
2549             ml-build myprog.cm MyProg.main myprog
2550    
2551    I changed a library name:
2552    
2553       $/trace-debug-profile.cm --> $smlnj-tdp/plugins.cm
2554    
2555    New libraries:
2556    
2557       $smlnj-tdp/back-trace.cm
2558          -- when loaded causes the back-trace plugin to be installed
2559       $smlnj-tdp/coverage.cm
2560          -- when loaded causes the coverage plugin to be installed
2561    
2562    ----------------------------------------------------------------------
2563    Name: Matthias Blume (blume (at) tti - c (dot) org)
2564    Date: 2004/10/18 16:45:00 CDT
2565    Tag: blume-20041018-groupowner
2566    Description:
2567    
2568    Added an "obsolete" warning for the "group owner" syntax to CM's parser.
2569    
2570    Eliminated group owner specs from .cm files throughout the source tree.
2571    
2572    ----------------------------------------------------------------------
2573    Name: Matthias Blume (blume (at) tti - c (dot) org)
2574    Date: 2004/10/15 15:45:00 CDT
2575    Tag: blume-20041015-coverage
2576    Description:
2577    
2578    * Test coverage tool added!
2579    * Further reorganization of tracing-, debugging-, and profiling support:
2580    
2581        - moved original BTImp -- now called BackTrace -- into a separate
2582          library called $/trace-debug-profile.cm
2583        - eliminated all mentions of BTrace from SMLofNJ.Internals
2584        - only the instrumentation mechanism is now left in the compiler proper
2585        - BackTrace module is a plugin which is NOT plugged in by default
2586        - Coverage module is another such plugin
2587    
2588    To get the benefits of any of these plugin modules, the code in
2589    question must be compiled with tdp instrumentation turned on.  This
2590    can be done by setting SMLofNJ.Internals.TDP.mode to true.
2591    (The ref cell is also controlled via the -Ctdp.instrument=... switch.)
2592    
2593    Plugins are selected at link time.  (Pre-compiled instrumented code
2594    can be re-loaded with different plugins in effect.)  When an
2595    instrumented module is linked, whatever plugins are at that time
2596    enabled will come into effect for that module.
2597    
2598    To enable the back-trace plugin, load library $/trace-debug-profile.cm
2599    and invoke BackTrace.install() (e.g., from the interactive prompt).
2600    To enable the coverage plugin, load the same library and invoke
2601    Coverage.install().
2602    
2603    Back-traces are generated automatically on uncaught exceptions and
2604    when the code in question explicitly invokes BackTrace.trigger().
2605    
2606    Coverage (and execution frequency-) information must be queried
2607    explicitly by calling Coverage.not_covered and Coverage.hot_spots.
2608    
2609    ----------------------------------------------------------------------
2610    Name: Matthias Blume (blume (at) tti - c (dot) org)
2611    Date: 2004/10/14 17:40:00 CDT
2612    Tag: blume-20041014-tdp-core
2613    Description:
2614    
2615    Snapshot of a significant overhaul of how the trace/debug/profile support
2616    is hooked into the system (specifically: Core and SMLofNJ.Internals).
2617    
2618    ----------------------------------------------------------------------
2619    Name: Matthias Blume (blume (at) tti - c (dot) org)
2620    Date: 2004/10/13 16:34:00 CDT
2621    Tag: blume-20041013-tdp
2622    Description:
2623    
2624    Some rationalization of names:
2625    
2626       structure BTrace -> structure TDPInstrument
2627       etc.
2628    
2629    This is is preparation of using the original back-trace
2630    instrumentation for other purposes.  "TDP" stands for
2631    Trace/Debug/Profile.
2632    
2633    The control flag controlling whether instrumentation is on or off is now
2634    registered under a different name, so instead of running sml as
2635    
2636     sml -Cinstrument.btrace-mode=true
2637    
2638    one has to say
2639    
2640     sml -Ctdp.instrument=true
2641    
2642    ----------------------------------------------------------------------
2643    Name: Matthias Blume (blume (at) tti - c (dot) org)
2644    Date: 2004/10/11 16:37:00 CDT
2645    Tag: blume-20041011-regions
2646    Description:
2647    
2648    Made some minor modifications to elabcore.sml to have source regions
2649    be propagated more tightly -- resulting in better (i.e., smaller)
2650    regions being reported in error- and debug messages.
2651    
2652    ----------------------------------------------------------------------
2653    Name: Matthias Blume (blume (at) tti - c (dot) org)
2654    Date: 2004/10/08 22:50:00 CDT
2655    Tag: blume-20041008-cmkw
2656    Description:
2657    
2658    Fixed handling of keywords in .cm files: After seeing "is" the lexer
2659    treats subsequent occurrences of "group", "library", "source", "is",
2660    "*", and "-" as ordinary identifiers rather than keywords.
2661    
2662    Most seriously, this fixes a problem with CM's "shell" tool.  The tool
2663    is supposed to accept a tool argument called "source", but this did
2664    not work because of the clash with the keyword.
2665    
2666    ----------------------------------------------------------------------
2667    Name: Matthias Blume (blume (at) tti - c (dot) org)
2668    Date: 2004/10/07 16:00:00 CDT
2669    Tag: blume-20041007-cleanup
2670    Description:
2671    
2672    Assorted cleanup work:
2673    
2674      - got rid of intstrmap in favor of using the library's
2675        hash table implementation
2676      - threw out most of the pathnames stuff, as it was not used anyway
2677      - simplified tokentable implementation
2678      - fixed some minor spelling errors
2679    
2680    ----------------------------------------------------------------------
2681    Name: Matthias Blume (blume (at) tti - c (dot) org)
2682    Date: 2004/10/06 15:15:15 CDT
2683    Tag: blume-20041006-handler
2684    Description:
2685    
2686    Cleaned up the absyn to reflect the invariant that HANDLE always
2687    carries a FNexp as part of the type definition.  This eliminates some
2688    superfluous sanity checks at runtime down the road.
2689    
2690    Some minor cleanup of the btrace code.
2691    
2692    ----------------------------------------------------------------------
2693    Name: Matthias Blume (blume (at) tti - c (dot) org)
2694    Date: 2004/10/01 10:20:30 CDT
2695    Tag: blume-20041001-slave
2696    Description:
2697    
2698    Added hack to make slave mode work in the presence of the version
2699    tool.  (Still, since the master does two passes over the code for
2700    CMB.make, the release number gets bumped twice when slaves are
2701    attached.  I don't know if this is worth fixing...)
2702    
2703    ----------------------------------------------------------------------
2704    Name: Matthias Blume (blume (at) tti - c (dot) org)
2705    Date: 2004/09/30 10:55:00 CDT
2706    Tag: blume-20040930-version
2707    Description:
2708    
2709    * Moved the "version" magic into its own little library under
2710      src/system/smlnj/internal.  This avoids expensive reconstruction of
2711      a stable src/compiler/core.cm.
2712    
2713    * At the same time, structure CompilerVersion is now known as
2714      structure SMLNJVersion.
2715    
2716    * Arranged for the version tool to NOT kick in when rebuilding the system
2717      (makeml -rebuild, fixpt).  Otherwise one would never reach a fixpoint.
2718      Also, loading the versiontool does not work when rebuilding the system
2719      because CM is not properly initialized at that time.
2720    
2721    ----------------------------------------------------------------------
2722  Name: Matthias Blume (blume (at) tti - c (dot) org)  Name: Matthias Blume (blume (at) tti - c (dot) org)
2723  Date: 2004/09/29 14:00:00 CDT  Date: 2004/09/29 14:00:00 CDT
2724  Tag: blume-20040929-autoversion  Tag: blume-20040929-autoversion

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

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