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 1662, Sun Oct 24 17:56:50 2004 UTC sml/trunk/NOTES/HISTORY revision 2815, Mon Oct 29 03:13:19 2007 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:  
11    Name: Your Name (web page or e-mail)
12    Date: yyyy/mm/dd hh:mm:ss
13    Tag: cvs-tag-for-this-change
14    Description:
15    
16    ----------------------------------------------------------------------
17    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
18    Date: 2007/10/28
19    Description:
20    
21    Fixed some bugs in the AMD64 floating-point spilling code.
22    ----------------------------------------------------------------------
23    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
24    Date: 2007/10/25
25    Description:
26    
27    Added support for the atomic XCHG instruction.
28    ----------------------------------------------------------------------
29    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
30    Date: 2007/10/22
31    Description:
32    
33    Added AMD64 support for floating-point negation.
34    ----------------------------------------------------------------------
35    Name: Lars Bergstrom (web page or e-mail)
36    Date: 2007/10/22
37    Description:
38    
39    Fixed ^C handling in Windows
40    Added a Windows installer
41    Made it possible to build for Windows on a mapped drive from Parallels
42    ----------------------------------------------------------------------
43    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
44    Date: 2007/10/22
45    Description:
46    
47    Added AMD64 support for the atomic fetch and add instruction.
48    ----------------------------------------------------------------------
49    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
50    Date: 2007/10/18
51    Description:
52    
53    The GAS output now favors p2align over align, since the
54    former is guaranteed to be consistent over multiple architectures
55    and the latter is not.
56    ----------------------------------------------------------------------
57    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
58    Date: 2007/10/18
59    Description:
60    
61    Fixed a bug in register spilling.
62    ----------------------------------------------------------------------
63    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
64    Date: 2007/10/2
65    Description:
66    
67    Added demo support for AMD64 for quick testing and fixed support for
68    64-bit label constants.
69    ----------------------------------------------------------------------
70    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
71    Date: 2007/09/20
72    Description:
73    
74    Added support for the MLRISC COND instruction and the x86-64 CMOVCC
75    instruction.
76    ----------------------------------------------------------------------
77    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
78    Date: 2007/09/17
79    Description:
80    
81    Fixed an instruction-selection bug when loading 64-bit labels.
82    
83    ----------------------------------------------------------------------
84    Name: George Kuan (http://www.cs.uchicago.edu/~gkuan)
85    Date: 2007/09/14
86    Description:
87    
88    Fixed Elaborator and Translate performance bugs
89    
90    ----------------------------------------------------------------------
91    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
92    Date: 2007/09/12
93    Description:
94    
95    Fixed xorl memory argument bug.
96    
97    ----------------------------------------------------------------------
98    Name: George Kuan (http://www.cs.uchicago.edu/~gkuan)
99    Date: 2007/07/27
100    Description:
101    
102    Added f64sgn (for Real64.signBit) as a primop defined
103    in MLRiscGen. signBit(~0.0) not handled correctly.
104    
105    ----------------------------------------------------------------------
106    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
107    Date: 2007/06/21
108    Description:
109    
110    Fixed bug in {TextIO,BinIO}.StreamIO.endOfStream that would incorrectly
111    signal end of stream.
112    
113    ----------------------------------------------------------------------
114    Name: Matthias Blume (http://www.tti-c.org/blume/)
115    Date: 2007/06/12 11:22:00 CDT
116    Description:
117    
118    Eliminated config/allsources.  The information is now drawn directly
119    from config/actions.
120    
121    ----------------------------------------------------------------------
122    Name: Matthias Blume (http://www.tti-c.org/blume/)
123    Date: 2007/06/07 23:30:00 CDT
124    Tag: release-110.65
125    Description:
126    
127    Version 110.65. NEW BOOTFILES!
128    
129    ----------------------------------------------------------------------
130    Name: Matthias Blume (http://www.tti-c.org/blume/)
131    Date: 2007/06/06 21:45:00 CDT
132    Description:
133    
134    - Aaron: fixed a number of bugs in ml-ulex.
135    - Matthias:
136       - added CM control "cm.force-tools"; this is false by default;
137         when set to true, then tools like ml-yacc, ml-lex, ml-ulex, etc.
138         will be forced to run regardless of whether or not their targets
139         are up-to-date
140       - changed installer code so that config/install.sh will re-build
141         heap images for all tools even if those heap images already existed
142    
143    ----------------------------------------------------------------------
144    Name: Matthias Blume (http://www.tti-c.org/blume/)
145    Date: 2007/06/04 21:21:00 CDT
146    Description:
147    
148    After Aaron Turon's bug fix for ml-ulex (handling the ^ character
149    in legacy mode), re-ran the lexer generator on all lex input files
150    and committed the results.
151    
152    This should fix the problem with ckit and nlffi that was reported
153    by Vesa A. Norrman.
154    
155    ----------------------------------------------------------------------
156    Name: Matthias Blume (http://www.tti-c.org/blume/)
157    Date: 2007/05/31 11:40:00 CDT
158    Tag: release-110.64
159    Description:
160    
161    Version 110.64. NEW BOOTFILES!
162    
163    ----------------------------------------------------------------------
164    Name: Dave MacQueen (dbm@cs.uchicago.edu)
165    Date: 2007/05/31 14:55:00 CDT
166    Revision: 2650
167    Description:
168    
169    3rd merge of base from primop-branch-3 into the trunk.
170    Additional bug fixes included:
171    
172     * Timer.cpu_timer, etc. type printing corrected (by making
173         Timer have opaque sig constraint in basis/Implementation/timer.sml)
174     * Infinite loop in FLINT (tests/typing/tests/25.sml) (fix by
175         Stefan Monnier)
176    
177    ----------------------------------------------------------------------
178    Name: Matthias Blume (http://www.tti-c.org/blume/)
179    Date: 2007/05/31 11:40:00 CDT
180    Description:
181    
182    Fixed some bugs in new Div code in FLINT/trans/translate.sml.
183    
184    Also, changed the handling of "no core access":  When translate.sml
185    needs access to a core exception at a time when the core has not
186    been set up yet (this only happens when compiling system/smlnj/init/*),
187    then don't bother generating the corresponding tests.
188    
189    The old scheme was to generate a bogus value to be used in place of
190    the exception.  Unfortunately, that confuses the plambda type checker.
191    Moreover, it does not do any good, because at runtime we don't expect
192    such an exception to be ever raised.  (The code in system/smlnj/init/*
193    has to be written very carefully with this in mind!)
194    
195    ----------------------------------------------------------------------
196    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
197    Date: 2007/05/29
198    Description:
199    
200    Added FSQRT instructions for the AMD64 code generator.
201    
202    ----------------------------------------------------------------------
203    Name: Matthias Blume (http://www.tti-c.org/blume/)
204    Date: 2007/05/29 19:00:00 CDT
205    Description:
206    
207    FLINT/trans/translate.sml now wraps all DIV/MOD/QUOT/REM operations
208    with an explicit test for zero division.  This should fixes several
209    regressions and makes it possible for downstream optimization phases
210    to treat these operations as "pure" when they are applied to unsigned
211    operands.
212    
213    ----------------------------------------------------------------------
214    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
215    Date: 2007/05/29
216    Description:
217    
218    Added the new MLRISC code generator for the AMD64.  This version,
219    in contrast to the previous one, uses SSE registers and instructions
220    for all floating-point computations.
221    
222    ----------------------------------------------------------------------
223    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
224    Date: 2007/05/29
225    Description:
226    
227    A number of fixes related to the formatting of dates.  These include fixes
228    for bugs #1415 and #1416.  We also now correctly handle format characters that
229    lie outside the specified set.
230    
231    ----------------------------------------------------------------------
232    Name: Matthias Blume (http://www.tti-c.org/blume/)
233    Date: 2007/05/23 22:30:00 CDT
234    Description:
235    
236    CMB (and CM) now automatically defines the CM "preprocessor" symbol
237    NO_PLUGINS during "makeml -rebuild" or when CM operates in "slave" mode.
238    
239      (In addition, CMB_REBUILD_MODE is defined for makeml -rebuild,
240       CM_SLAVE_MODE is defined in attached slaves while running CM.make
241       or CM.rebuild, and CMB_SLAVE_MODE is defined in attached slaves
242       while running CMB.make.  The point is that the single symbol
243       NO_PLUGINS is definde in all three cases.)
244    
245    I changed the three locations within the sources that get compiled
246    during CMB.make where ml-yacc or ml-lex input is processed: When
247    NO_PLUGINS defined, then the use of the mlyacc and mllex tools
248    is bypassed.
249    
250    When bootstrapping new versions of the compiler, there can be
251    situations where the plugin tools for ml-yacc and ml-lex (or ml-ulex)
252    are not available or otherwise not operational.  In this case one can
253    manually define the NO_PLUGINS symbol prior to running CMB.make().  To
254    do so, the following command should be issued at the interactive
255    prompt:
256    
257       #set (CMB.symval "NO_PLUGINS") (SOME 1);
258    
259    A CMB.make with NO_PLUGINS defined relies on the existence of the
260    files that normally would be generated by ml-yacc and ml-lex.
261    (Copies of these files are in the repository.)
262    
263    ----------------------------------------------------------------------
264    Name: David MacQueen (dbm@cs.uchicago.edu)
265    Date: 2007/5/23 17:23:00 CDT
266    Revision: 2603
267    Description:
268    
269    2nd merge of base from primop-branch-3 into the trunk.
270    Additional bug fixes included:
271     Date.scan and Date.fromString fixed;
272     Overloading resolution fixed and some type printing problems corrected.
273    
274    ----------------------------------------------------------------------
275    Name: Matthias Blume (http://www.tti-c.org/blume/)
276    Date: 2007/05/23 09:50:00 CDT
277    Description:
278    
279    Changed the installation mechanism for CM tool plugins.  These are
280    just libaries and now get installed like ordinary libaries.
281    
282    There are now a number of new installation targets that give some
283    fine-grain control over what classes and suffixes are known, and what
284    they will map to.
285    See config/targets for details.
286    
287    The code that caused plugin installation as part of running a
288    tool's "build" script has been removed.  (The build script is for
289    building, not for installing.)
290    
291    ----------------------------------------------------------------------
292    Name: Matthias Blume (http://www.tti-c.org/blume/)
293    Date: 2007/05/22 11:50:00 CDT
294    Description:
295    
296    Added a boolean control named cm.tolerate-tool-failures (env. variable
297    name: CM_TOLERATE_TOOL_FAILURES).  The default is false and makes
298    CM fail if a shell tool reports a non-success exit status.  If
299    the control is set to true, then CM will press on after tool failures
300    in the event that the target files exist (even though they are
301    considered outdated).  Turning the control to true can be useful for
302    bootstrapping.
303    
304    ----------------------------------------------------------------------
305    Name: Aaron Turon (http://www.cs.uchicago.edu/~adrassi)
306    Date: 2007/05/19
307    Description:
308    
309    Merge of ml-lpt revisions for 110.64.
310    
311    The name of several ml-lpt-lib modules has changed:
312      Repair        => AntlrRepair
313      StreamPos     => AntlrStreamPos
314      ErrHandlerFn  => AntlrErrHandler
315      EBNF          => AntlrEBNF
316    
317    The ml-antlr specification format has changed: declarations such as
318    %tokens and nonterminal definitions can occur *multiple* times in the
319    same specification.  The semantics are such that each new declaration
320    extends the previous ones.  This does not apply to %start or %name,
321    of course.
322    
323    Importing a grammar via %import now includes *all* declarations in from
324    the imported grammar, except for %name, %entry, and %start.  Tokens
325    and nonterminals can be dropped using the new %dropping clause of the
326    %import directive; the separate %drop and %extend have been removed.
327    
328    We now allow optional type annotations on nonterminals, using the %nonterms
329    directive as in ml-yacc.
330    
331    The refcell construct is now implemented using SML's regular reference
332    cells, so the :== and !! notation has been deprecated.
333    
334    The ml-antlr tool now does much more checking of specifications, and
335    its error messages have been greatly improved.  Error repair for
336    generated parsers has been completely rewritten, and is now both
337    much faster and more accurate.
338    
339    ml-ulex is now more lenient with escape codes (non-SML-standard
340    escape codes are now interpreted literally, so e.g. \| denotes "|").
341    Also, character classes may now include a "-" character at the beginning
342    as is standard in most other regexp tools.
343    
344    All of these changes are documented in the user guide, which has
345    been updated and improved with this merge.
346    
347    ----------------------------------------------------------------------
348    Name: David MacQueen (http://www.cs.uchicago.edu/~jhr)
349    Date: 2007/05/03
350    Revision: r2492
351    Description:
352    
353    Merge of the primop3 branch (base) into the trunk to create 110.63.1.
354    Significant changes in FLINT and the front end, mostly having to do
355    with a reorganized system for handling primops.  Various bug fixes
356    and improvements in printing signatures.
357    
358    ----------------------------------------------------------------------
359    Name: Aaron Turon (http://www.cs.uchicago.edu/~adrassi)
360    Date: 2007/05/02
361    Description:
362    
363    Preliminary commit of large ml-lpt revisions (more to come for 110.64).
364    The ml-antlr specification format has changed: declarations such as
365    %tokens and nonterminal definitions can occur *multiple* times in the
366    same specification.  The semantics are such that each new declaration
367    extends the previous ones.  Grammar extension constructs have also
368    changed.  We now allow type annotations on nonterminals.  Finally,
369    the refcell construct is now implemented using SML's regular reference
370    cells, so the :== and !! notation has been deprecated.  All of these
371    changes will appear in the 110.64 user guide for ml-lpt.
372    
373    The ml-antlr tool now does much more checking of specifications, and
374    its error messages have been greatly improved.  There has also been
375    some work on the error repair process for generated parsers, but this
376    will be further improved in 110.64.
377    
378    ----------------------------------------------------------------------
379    Name: David MacQueen (http://www.cs.uchicago.edu/~jhr)
380    Date: 2007/05/03
381    Revision: r2492
382    Description:
383    
384    Merge of the primop3 branch (base) into the trunk to create 110.63.1.
385    Significant changes in FLINT and the front end, mostly having to do
386    with a reorganized system for handling primops.  Various bug fixes
387    and improvements in printing signatures.
388    
389    ----------------------------------------------------------------------
390    Name: Aaron Turon (http://www.cs.uchicago.edu/~adrassi)
391    Date: 2007/05/02
392    Description:
393    
394    Preliminary commit of large ml-lpt revisions (more to come for 110.64).
395    The ml-antlr specification format has changed: declarations such as
396    %tokens and nonterminal definitions can occur *multiple* times in the
397    same specification.  The semantics are such that each new declaration
398    extends the previous ones.  Grammar extension constructs have also
399    changed.  We now allow type annotations on nonterminals.  Finally,
400    the refcell construct is now implemented using SML's regular reference
401    cells, so the :== and !! notation has been deprecated.  All of these
402    changes will appear in the 110.64 user guide for ml-lpt.
403    
404    The ml-antlr tool now does much more checking of specifications, and
405    its error messages have been greatly improved.  There has also been
406    some work on the error repair process for generated parsers, but this
407    will be further improved in 110.64.
408    
409    ----------------------------------------------------------------------
410    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
411    Date: 2007/04/24
412    Description:
413    
414    More Basis fixes: The Char.fromString (etc.) functions did not handle
415    the "\uxxxx" escape sequence.  There is still an outstanding bug with
416    String.fromString the tail is a format escape.  I added a comment to
417    this effect in Basis/Implementation/string.sml.
418    Thanks to Andreas Rossberg.
419    
420    ----------------------------------------------------------------------
421    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
422    Date: 2007/04/24
423    Description:
424    
425    Added next function to Fifo and Queue modules in the SML/NJ Library.
426    
427    ----------------------------------------------------------------------
428    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
429    Date: 2007/04/23
430    Description:
431    
432    More Basis fixes: Time.fmt dropped the leading "~" for negative time
433    values that had no whole part.
434    
435    ----------------------------------------------------------------------
436    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
437    Date: 2007/04/23
438    Description:
439    
440    More Basis fixes: the OS.Path module did not include the InvalidArc
441    exception and did not do sufficient argument checking.
442    Thanks to Stephen Weeks and Adam Chilpala.
443    
444    ----------------------------------------------------------------------
445    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
446    Date: 2007/04/16
447    Description:
448    
449    Fixed an unbound functor bug in the AMD64 CM file.
450    
451    ----------------------------------------------------------------------
452    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
453    Date: 2007/04/12
454    Description:
455    
456    Substantially changed the signature and implementation of AMD64
457    SVID.  It now looks similar to the ia32 SVID, yet uses staged
458    allocation.
459    
460    ----------------------------------------------------------------------
461    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
462    Date: 2007/04/07
463    Description:
464    
465    More Basis fixes: the WORD signature was missing {to,from}Large.
466    Thanks to Andreas Rossberg.
467    
468    ----------------------------------------------------------------------
469    Name: Matthias Blume (http://www.tti-c.org/blume/)
470    Date: 2007/03/22 16:07:00 CDT
471    Tag: release-110.63
472    Description:
473    
474    Bumped version number to 110.63.
475    
476       !!!NEW BOOTFILES!!!
477    
478    ----------------------------------------------------------------------
479    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
480    Date: 2007/03/19
481    Description:
482    
483    Fixed bogus operand sizes in AMD64 instruction spilling.
484    
485    ----------------------------------------------------------------------
486    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
487    Date: 2007/03/19
488    Description:
489    
490    Fixed a number of inconsistencies between the Posix.TTY structure
491    and the Basis specification.  Thanks to Adam Chilpala.
492    
493    ----------------------------------------------------------------------
494    Name: Mike Rainey (http://www.cs.uchicago.edu/~mrainey)
495    Date: 2007/02/26
496    Description:
497    
498    Added preliminary support in MLRISC for Staged Allocation, a technique
499    for specifying calling conventions (see
500    http://www.eecs.harvard.edu/~nr/pubs/staged-abstract.html).
501    Initially, we plan to use this code to generate C calls for the AMD64.
502    
503    The staged allocation code base resides in MLRISC/staged-allocation,
504    and specialized calling conventions go in MLRISC/ARCH/staged-allocation.
505    
506    ----------------------------------------------------------------------
507    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
508    Date: 2007/02/20
509    Description:
510    
511      Bug fix: when SaveCState was called with two values to save, a subsequent
512      GC could cause the RestoreCState to fail because the saved state had been
513      promoted to tagless pair.
514    
515    ----------------------------------------------------------------------
516    Name: Allen Leung (leunga (at) reservoir (dot) com)
517    Date: 2007/02/20 19:08:00 EST
518    Description:
519    
520        Bug triggered by:
521    
522        val a1 = Word8Array.array(a1, 0w0);
523        val _  = Word8Array.update(a1, 0, 0w128);
524    
525        x86MCEmitter crashed when the immediate operand to MOVB was outside
526    of the range -128 ... 127.  I've changed the code so that the range
527    check is disabled.   Only the low order 8 bits of the immediate operand
528    are now significant.
529    
530    
531    ----------------------------------------------------------------------
532    Name: Matthias Blume (http://www.tti-c.org/blume/)
533    Date: 2007/02/15 09:20:00 CST
534    Description:
535    
536    Eliminated any mention of lexgen.  (Lexgen was an early precursor
537    to ml-ulex.)
538    
539    You should update your admin directory, so the shell scripts for
540    maintaining your local copy of the repository reflect this change.
541    
542    ----------------------------------------------------------------------
543    Name: Matthias Blume (http://www.tti-c.org/blume/)
544    Date: 2007/02/14 15:45:00 CST
545    Description:
546    
547    Fixed bug in CM's parallel make facility that failed to have
548    the master re-link modules after letting slaves compile them.
549    
550    ----------------------------------------------------------------------
551    Name: Matthias Blume (http://www.tti-c.org/blume/)
552    Date: 2007/02/12 15:10:00 CST
553    Description:
554    
555    Fixed typo in ml-build script that prevented library anchors
556    from being registered.
557    
558    ----------------------------------------------------------------------
559    Name: Matthias Blume (http://www.tti-c.org/blume/)
560    Date: 2007/02/02 15:20:00 CST
561    Tag: release-110.62
562    Description:
563    
564    New working release (110.62).  NEW BOOTFILES!
565    
566    ----------------------------------------------------------------------
567    Name: Aaron Turon (http://www.cs.uchicago.edu/~adrassi)
568    Date: 2007/01/31
569    Description:
570    
571    Brought ml-lpt manual up-to-date with the code.  Many minor
572    improvements to the tools, and a few minor bugfixes.  Prepared
573    ml-lpt-lib for integration with new UTF8 structure.  Changed
574    the interface for creating streams in ml-ulex (we now support
575    stream creation from several kinds of sources).  Overall, the
576    tools are now quite stable, and their interfaces are unlikely to
577    change in a way that would break compatibility.  More work,
578    however, is needed in the documentation.
579    
580    ----------------------------------------------------------------------
581    Name: Matthias Blume (http://www.tti-c.org/blume/)
582    Date: 2007/02/01 10:05:00 CST
583    Description:
584    
585    Implemented library installer.  Moved CM plugin code for
586    ml-burg, ml-lex, and ml-yacc out of CM source tree and into
587    their respective trees.  Implemented CM plugin for ml-ulex
588    and ml-antlr.  Used library installer for ml-burg, ml-ulex,
589    and ml-antlr.
590    
591    For ml-yacc and ml-lex we continue to have permanently "plugged-in"
592    CM tools.  (It turns out to be too messy to do otherwise because
593    there is too much code that during installation relies on the presence
594    of these tools -- resulting in a tricky ordering problem.)
595    
596    ----------------------------------------------------------------------
597    Name: Matthias Blume (http://www.tti-c.org/blume/)
598    Date: 2007/01/30 11:05:00 CST
599    Description:
600    
601    Added SMLofNJ.shiftArgs which is like a shell's "shift" command.
602    Modified CM's startup code to use shiftArgs as it processes
603    command line arguments.  This way, the init code in each .sml-file
604    or library that is mentioned at the top level will see only
605    those arguments that have not yet been processed at this point.
606    In other words, the init code can "seize control" and process the
607    remaining command line.
608    
609    ----------------------------------------------------------------------
610    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
611    Date: 2007/01/30
612    Description:
613    
614    Added fromList function to the ORD_SET interface and lookup to the
615    ORD_MAP interface.  See the SML/NJ Library CHANGES file for details.
616    
617    ----------------------------------------------------------------------
618    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
619    Date: 2007/01/28
620    Description:
621    
622    Added the UTF8 structure and signature from the Moby compiler to
623    the SML/NJ library (and the CML library).  These modules will replace
624    the version in the ml-lpt-lib.
625    
626    ----------------------------------------------------------------------
627    Name: Matthias Blume (http://www.tti-c.org/blume/)
628    Date: 2007/01/26 15:10:00 CST
629    Description:
630    
631    Added entries to handle ml-lpt-lib.cm in installer.
632    
633    ----------------------------------------------------------------------
634    Name: Matthias Blume (http://www.tti-c.org/blume/)
635    Date: 2006/12/15 11:10:00 CST
636    Tag: release-110.61
637    Description:
638    
639    New working release (110.61).  NEW BOOTFILES!
640    
641    This supersedes the pre-brown-paper-bug release (see below).
642    
643    ----------------------------------------------------------------------
644    Name: Matthias Blume (http://www.tti-c.org/blume/)
645    Date: 2006/12/15 11:00:00 CST
646    Description:
647    
648    Fixed brown-paper-bag bug with CM's pathname handling, which made
649    installation fail under Win32.
650    
651    ----------------------------------------------------------------------
652    Name: Matthias Blume (http://www.tti-c.org/blume/)
653    Date: 2006/12/14 12:00:00 CST
654    Description:
655    
656    Obsolete!
657    
658    [New working release (110.61).  NEW BOOTFILES!]
659    
660    ----------------------------------------------------------------------
661    Name: John Reppy (http://cs.uchicago.edu/~jhr)
662    Date: 2006/14/06 09:50:00 CST
663    Description:
664    
665    Fixed the code in runtime/c-libs/posix-tty/{tcgetattr,tcsetattr}.c to
666    get the c_cc termios data copied correctly.  Also moved the allocation
667    of the string to avoid problems if it caused a GC.
668    
669    Thanks to Timothy Bourke for the bug report and fix.
670    
671    ----------------------------------------------------------------------
672    Name: Matthias Blume (http://www.tti-c.org/blume)
673    Date: 2006/12/08 09:50:00 CST
674    Description:
675    
676    Added code to CM's "standard shell tool" implementation which
677    causes it to tolerate (with a warning) the situation where the shell
678    command fails (e.g., due to the shell command's non-existence)
679    as long as all target files exist.
680    
681    This makes it possible to, e.g., build ml-yacc from sources even if
682    svn checkout messed up the time stamps on files in such a way that
683    yacc.grm is younger than yacc.grm.sml or yacc.grm.sig.  (Ml-yacc would
684    be needed to re-process yacc.grm, but obviously it might not yet be
685    available at that time.)
686    
687    ----------------------------------------------------------------------
688    Name: John Reppy (http://cs.uchicago.edu/~jhr)
689    Date: 2006/12/06 12:06:00 CST
690    Description:
691    
692    Fixed the types of recvVecFrom, recvVecFrom', recvVecFromNB, and
693    recvVecFromNB' in the SOCKET signature.  This error is actually
694    in the SML Basis specification too.
695    
696    ----------------------------------------------------------------------
697    Name: Matthias Blume (http://www.tti-c.org/blume/)
698    Date: 2006/12/05 22:40:00 CST
699    Description:
700    
701    CM now reports undefined anchors as errors and aborts execution
702    rather than silently pressing on using bogus values.
703    
704    ----------------------------------------------------------------------
705    Name: Matthias Blume (http://www.tti-c.org/blume/)
706    Date: 2006/11/29 10:00:00 CST
707    Description:
708    
709    Use Say.vsay for printing the "[autoloading]" message, so
710    #set CM.Control.verbose false (or -Ccm.verbose=false) can be used
711    to suppress them.
712    
713    ----------------------------------------------------------------------
714    Name: Matthias Blume (http://www.tti-c.org/blume/)
715    Date: 2006/11/10 11:00:00 CST
716    Description:
717    
718    Fixed bug in CM where "with:" specifications that affect compilation
719    (as opposed to parsing) were ignored.
720    
721    ----------------------------------------------------------------------
722    Name: Matthias Blume (http://www.tti-c.org/blume/)
723    Date: 2006/11/09 14:30:00 CST
724    Tag: release-110.60
725    Description:
726    
727    New working release (110.60).  NEW BOOTFILES!
728    
729    This is the first subversion-hosted release.  There are also changes
730    to the directory layout.  Here is a table:
731    
732    (All pathnames are relative to the SML/NJ "root" directory.)
733    
734      config -> config
735    
736      src/cm -> base/cm
737      src/compiler -> base/compiler
738      src/runtime -> base/runtime
739      src/system -> base/system
740    
741      src/cm/pgraph -> pgraph
742    
743      src/READMES -> base/READMES
744      src/$notefile -> base/NOTES/$notefile
745         for <notefile> in BOOT CVSNOTES CYGWININSTALL HISTORY INSTALL
746                           MACOSXINSTALL WININSTALL
747    
748      src/smlnj-lib -> smlnj-lib
749      src/MLRISC -> MLRISC
750      ckit -> ckit
751      src/cml -> cml
752      src/eXene -> eXene
753      src/heap2asm -> heap2asm
754      src/lexgen -> lexgen
755      src/ml-burg -> ml-burg
756      src/ml-lex -> ml-lex
757      src/ml-yacc -> ml-yacc
758      src/ml-nlffi-lib -> nlffi/lib
759      src/ml-nlffigen -> nlffi/gen
760      src/smlnj-c -> smlnj-c
761      src/tools/TraceDebugProf -> trace-debug-profile
762    
763    In addition, there is also a new
764    
765      ml-lpt
766    
767    directory containing two new program generator tools: ml-ulex and
768    ml-antlr (a lexer generator that handles unicode and an ANTRL-inspired
769    LL(k) parser generator). These tools are currently "beta-quality"
770    
771    The latest versios of the sources can now be obtained anonymously
772    via subversion.  For this, it is useful to first check out
773    
774       svn://smlnj-gforge.cs.uchicago.edu/smlnj/admin
775    
776    and put the resulting directory on your shell's PATH.  This provides
777    access to three shell scripts: checkout-all.sh, stat-all.sh,
778    and refresh-all.sh.
779    
780    To create a freshly checked-out copy of the sources, do
781    
782       checkout-all.sh [dir]
783    
784    where dir is the optional SML/NJ root directory (default is ".").
785    
786    This creates the above directory layout.  Each subdirectory of
787    the root is under individual subversion control.  The stat-all.sh
788    and refresh-al.sh scripts apply "svn stat" or "svn update" to
789    each of these subtrees.
790    
791    ----------------------------------------------------------------------
792    Name: Matthias Blume (http://www.tti-c.org/blume/)
793    Date: 2006/11/02 12:20:00 CST
794    Description:
795    
796    Reorganized directory layout.
797    
798    This is a temporary solution, more reorganization is to come.
799    
800    The basic idea is to have a number of toplevel trees, each corresponding
801    to a well-defined part of the overall system.  Each part can be
802    maintained individually, even in separate source repositories,
803    although currently we still serve everything out of the main
804    smlnj-gforge tree.
805    
806    Installer and and scripts have been updated to reflect the new
807    layout.  The installer (base/src/system/smlnj/installer) is now
808    "scriptable" to avoid burning too much knowledge about the
809    layout into SML source code.  The main script used by the installer
810    is in config/actions.
811    
812    The main change is that many of the subdirectories of what used to
813    be known as "src" have moved to the toplevel.  The "src" directory
814    itself has moved down into a subtree called "base".  (We may eventually
815    get rid of the extra level of indirection represented by "src".)
816    
817    The layout is now as follows:
818    
819      toplevel tree name | default repository
820                         | (using gf=svn://smlnj-gforge.cs.uchicago.edu/smlnj)
821      -------------------+----------------------------------------------------
822      config             | $gf/config/trunk
823                         |
824      base               | $gf/sml/trunk
825                         |
826      smlnj-lib          | $gf/smlnj-lib/trunk
827      MLRISC             | $gf/MLRISC/trunk
828                         |
829      ml-yacc            | $gf/ml-yacc/trunk
830      ml-lex             | $gf/ml-lex/trunk
831      ml-burg            | $gf/ml-burg/trunk
832      lexgen             | $gf/lexgen/trunk
833      heap2asm           | $gf/heap2asm/trunk
834                         |
835      cml                | $gf/cml/trunk
836      eXene              | $gf/eXene/trunk
837      ckit               | $gf/ckit/trunk
838      nlffi              | $gf/nlffi/trunk
839                         |
840      smlnj-c            | $gf/smlnj-c/trunk
841    
842    In $gf/admin there are a few useful shell scripts for checking out
843    and maintaining the entire collection of trees:
844    
845       admin/checkout-all.sh [dir]
846          -- optionally creates dir and checks out all trees from their
847             default repositories; if dir is missing, checkout into .
848       admin/refresh-all.sh [dir]
849          -- looks at all trees (from the above list) in dir (default: .)
850             and runs "svn update" if the tree exists and is under
851             subversion control;
852             non-existing or non-subversion trees are skipped
853       admin/stat-all.sh [dir]
854          -- like refresh-all.sh, but runs "svn stat" instead
855    
856    ----------------------------------------------------------------------
857    Name: Matthias Blume (http://www.tti-c.org/blume/)
858    Date: 2006/10/05 11:30:00 CDT
859    Tag: blume-20061005-merge-amd64
860    Description:
861    
862    Merged code for AMD64 backend (Mike Rainey's work).
863    Everything is hooked up but untested.
864    
865    ----------------------------------------------------------------------
866    Name: Matthias Blume (http://www.tti-c.org/blume/)
867    Date: 2006/05/17 14:00:00 CST
868    Tag: Release_110_59
869    Description:
870    
871    New working version (110.59).  NEW BOOTFILES!
872    
873    I am freezing 110.59.  Changes other than the version-number increase:
874    
875      eXene:
876    
877         * committed changes to eXene from Alley Stoughton:
878             "fixed bugs in X authorization and resource handling, as well
879              as in the pile and viewport widgets"
880    
881      Runtime:
882        * fixed linking problem with NetBSD 3.x.
883    
884      Lexgen:
885        * lexgen tool handles non-ascii characters in 7-bit mode the same
886          way that ml-lex does
887    
888        * lexgen propagates exceptions the same way that ml-lex does
889    
890      CML:
891        * Fixed a bug in the SyncVar polling functions (iGetPoll,
892          mTakePoll, and mGetPoll) that could lead to livelock.
893    
894    ----------------------------------------------------------------------
895    Name: Matthias Blume (http://www.tti-c.org/blume/)
896    Date: 2006/05/12 15:20:00 CST
897    Tag: blume-20060515-makedepend
898    Description:
899    
900    Implemented ml-makedepend (i.e., CM.sources) in a better (more robust)
901    way.  This should hopefully fix the ml-makedepend problem permanently.
902    
903    ----------------------------------------------------------------------
904    Name: Matthias Blume (http://www.tti-c.org/blume/)
905    Date: 2006/05/12 15:15:00 CST
906    Tag: blume-20060512-makedepend
907    Description:
908    
909    Fixed long-standing bug with ml-makedepend where it would output a
910    spurious dependency to a non-existing file.  (This is a simple fix.
911    It might need further looking into.)
912    
913    ----------------------------------------------------------------------
914    Name: Matthias Blume (http://www.tti-c.org/blume/)
915    Date: 2006/04/20 10:30:00 CDT
916    Tag: blume-20060420-heap2exec
917    Description:
918    
919    Committed patches received from Johannes 5 Joemann (joemann@befree.free.de)
920    that enable heap2exec under Linux and FreeBSD.
921    
922    ----------------------------------------------------------------------
923    Name: John Reppy
924    Date: 2006/04/14
925    Tag:
926    Description:
927    
928    MLRISC changes:
929      1) renamed GAS_PSEUDO_OPS to AS_PSEUDO_OPS and put it in its own file.
930      2) added support for NOTB and XORB operators in pseudo-op expressions
931      3) added DarwinPseudoOp functor that supports Darwin's assembler syntax.
932      4) added support for 64-bit integer literals
933    
934    ----------------------------------------------------------------------
935    Name: Matthias Blume (http://www.tti-c.org/blume/)
936  Date: yyyy/mm/dd  Date: yyyy/mm/dd
937  Tag: <post-commit CVS tag>  Tag: Release_110_58
938    Description:
939    
940    New working version (110.58).  NEW BOOTFILES!
941    
942    ----------------------------------------------------------------------
943    Name: Matthias Blume (http://www.tti-c.org/blume/)
944    Date: 2006/03/01 22:15:00 CST
945    Tag: blume-20060301-lexgen
946    Description:
947    
948    Incorporated several bugfixes to lexgen.  Compiler now compiles to
949    fixpoint when using lexgen instead of ml-lex.
950    
951    ----------------------------------------------------------------------
952    Name: Matthias Blume (http://www.tti-c.org/blume/)
953    Date: 2006/02/28 22:45:00 CST
954    Tag: blume-20060228-lexgen
955    Description:
956    
957    Removed ml-flex and added lexgen instead, using Aaron Turon's newly
958    provided tarball.  The generated lexers still have problems.
959    
960    ----------------------------------------------------------------------
961    Name: Matthias Blume (http://www.tti-c.org/blume/)
962    Date: 2006/02/26 23:30:00 CST
963    Tag: blume-20060226-ml-flex
964    Description:
965    
966    Removed ml-flex' dependency on regexp-lib.cm.  Turned installation
967    of ml-flex on by default.
968    
969    ----------------------------------------------------------------------
970    Name: Matthias Blume (http://www.tti-c.org/blume/)
971    Date: 2006/02/24 16:30:00 CST
972    Tag: blume-20060224-ml-flex
973    Description:
974    
975    Added ml-flex sources.  Partially integrated, but should not be
976    turned on yet!  (Read: leave it commented-out in config/targets!)
977    
978    ----------------------------------------------------------------------
979    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
980    Date: 2006/02/23
981    Tag: jhr-20060223-x86-64
982    Description:
983    Changes to support building on x86-64 systems (using the 32-bit mode).
984    Also cleaned up signal handling on Linux.  Support for pre-2.2 Linux
985    kernels dropped.
986    
987    ----------------------------------------------------------------------
988    Name: Allen Leung (leunga (at) reservoir (dot) com)
989    Date: 2006/02/22 15:07:00 EST
990    Tag: leunga-20060222-mdl-gen
991    Description:
992    
993      CM has changed.  Updated the script for rebuilding the MLRISC generated
994    files.
995    
996    ----------------------------------------------------------------------
997    Name: Matthias Blume (http://www.tti-c.org/blume/)
998    Date: 2006/02/14 17:30:00 CST
999    Tag: blume-20060214-intel-mac
1000    Description:
1001    
1002    Hooked code for Darwin-specific Intel ABI into main compiler.
1003    (This is a temporary solution which relies on the fact that the
1004    compiler itself does not use NLFFI.  Eventually we need to divorce
1005    intel mac from generic x86 unix code and make separate sets of binaries.)
1006    
1007    ----------------------------------------------------------------------
1008    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1009    Date: 2006/02/13
1010    Tag: jhr-20060213-intel-mac
1011    Description:
1012    Changed MLRISC x86 CCalls for partial support of MacOS X ABI.
1013    
1014    ----------------------------------------------------------------------
1015    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1016    Date: 2006/02/06
1017    Tag: jhr-20060206-intel-mac
1018    Description:
1019    Changes to support MacOS X on Intel hardware.  The C-calls support in
1020    MLRISC must also be updated to support the MacOS X ABI.
1021    
1022    ----------------------------------------------------------------------
1023    Name: Matthias Blume (http://www.tti-c.org/blume/)
1024    Date: 2005/12/16 00:15:00 CST
1025    Tag: blume-20051216-cm
1026    Description:
1027    
1028    Improved error reporting and handling in CM.
1029    
1030    ----------------------------------------------------------------------
1031    Name: Matthias Blume (http://www.tti-c.org/blume/)
1032    Date: 2005/11/21 14:00:00 CST
1033    Tag: blume-20051121-html-lib
1034    Description:
1035    
1036    Enabling $/html-lib.cm in config/preloads did not work.  This is fixed
1037    now.  (Since the anchor mapping for html-lib.cm is not yet in effect
1038    at the time when config/preloads is processed, the library has to
1039    be referred to by another name.  In 110.57 this would be
1040    $SMLNJ-LIB/HTML/html-lib.cm.  I arranged for $smlnj/smlnj-lib/html-lib.cm
1041    to be valid as well.)
1042    
1043    Thanks to Todd Wilson (Fresno) for alerting me to this issue.
1044    
1045    ----------------------------------------------------------------------
1046    Name: Matthias Blume (http://www.tti-c.org/blume/)
1047    Date: 2005/11/19 13:45:00 CST
1048    Tag: Release_110_57
1049    Description:
1050    
1051    Moved release tag for 110.57.
1052    
1053    ----------------------------------------------------------------------
1054    Name: Matthias Blume (http://www.tti-c.org/blume/)
1055    Date: 2005/11/19 23:35:00 CST
1056    Tag: blume-20051119-fish
1057    Description:
1058    
1059    Fixed a problem in config/install.sh where it tries to "fish" the
1060    name of the CM metadata directory from the wrong place (because
1061    the physical location of basis.cm has changed).  Also, corrected the
1062    path anchor for $/html-lib.cm.  (Thanks to M. Fluet for pointing out
1063    these problems.)
1064    
1065    ----------------------------------------------------------------------
1066    Name: Matthias Blume (http://www.tti-c.org/blume/)
1067    Date: 2005/11/16 14:30:00 CST
1068    Tag: blume-orig-110_57
1069    Description:
1070    
1071    New working version (110.57).  NEW BOOTFILES!
1072    
1073    UPDATE: The release tag has been moved to include a fix for a brown-paper-
1074            bag glitch (see above).
1075    
1076    ----------------------------------------------------------------------
1077    Name: Matthias Blume (http://www.tti-c.org/blume/)
1078    Date: 2005/11/16 10:25:00 CST
1079    Tag: blume-22051116-btrace
1080    Description:
1081    
1082    Fixed problem with bogus exception message when using back-trace
1083    facility.
1084    
1085    ----------------------------------------------------------------------
1086    Name: Matthias Blume (http://www.tti-c.org/blume/)
1087    Date: 2005/11/15 22:35:00 CST
1088    Tag: blume-22051115-array2copy
1089    Description:
1090    
1091    Added simple implementation of Array2.copy.  (Warning: mostly untested.)
1092    
1093    ----------------------------------------------------------------------
1094    Name: Matthias Blume (http://www.tti-c.org/blume/)
1095    Date: 2005/11/15 21:35:00 CST
1096    Tag: blume-22051115-versiontool
1097    Description:
1098    
1099    Reversed change to src/system/smlnj/internals/versiontool.cm.  This
1100    file gets loaded as a tool -- by the equivalent of CM.make during the
1101    run of CMB.make.  Thus, CMB's path configuration is meaningless for
1102    it.  Instead, it has the status of "user code", so it should use
1103    $/basis.cm to refer to the Basis library.  (At least that's true for
1104    the purpose of bootstrapping the previous change.  In the future it
1105    might make sense to have versiontool.cm refer to
1106    $smlnj/basis/basis.cm, i.e., the version of the Basis that the
1107    compiler itself uses.)
1108    
1109    Also patched src/system/testml to have it activate those extra anchor
1110    bindings in config/extrapathconfig.
1111    
1112    ----------------------------------------------------------------------
1113    Name: Matthias Blume (http://www.tti-c.org/blume/)
1114    Date: 2005/11/15 16:35:00 CST
1115    Tag: blume-22051115-libraries
1116    Description:
1117    
1118    This change affects the way the following libraries are tied into
1119    the system:
1120    
1121       $/basis.cm
1122       $/smlnj-lib.cm
1123       $/pp-lib.cm
1124       $/controls-lib.cm
1125       $/html-lib.cm
1126       $/ml-yacc-lib.cm
1127    
1128    These libraries are now internally (as seen from the source code
1129    of the implementation itself) known by the following names:
1130    
1131       $smlnj/basis/basis.cm
1132       $smlnj/smlnj-lib/smlnj-lib.cm
1133       $smlnj/smlnj-lib/pp-lib.cm
1134       $smlnj/smlnj-lib/controls-lib.cm
1135       $smlnj/smlnj-lib/html-lib.cm
1136       $smlnj/ml-yacc/ml-yacc-lib.cm
1137    
1138    This makes it possible to work with code that requires different
1139    versions of these libraries, and which refers to these libraries using
1140    their "default" names (i.e., the first set of names above).  In other
1141    words, one can un-define or re-define those default names without
1142    compromising the proper functioning of the compiler itself.
1143    
1144    A similar procedure had already been performed for several of the
1145    MLRISC libraries that are linked into the compiler.  I did some
1146    cleanup on this code.
1147    
1148    A new file in the config directory (named extrapathconfig) is
1149    responsible for setting up path anchors that the compiler itself does
1150    not need, but that are typically required by user code.
1151    
1152    ----------------------------------------------------------------------
1153    Name: Matthias Blume
1154    Date: 2005/11/07 17:05:00 CST
1155    Tag: blume-20051107-slice
1156    Description:
1157    
1158    Fixed erroneous out-of-bounds test in the "update" function of
1159    various *ArraySlice modules.  (Thanks to Vesa A. Norrman for pointing
1160    out the problem.)
1161    
1162    Pushed some Basis changes through ML-Lex, CML, and eXene.
1163    
1164    ----------------------------------------------------------------------
1165    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1166    Date: 2005/11/07
1167    Description:
1168    Fixed a Basis incompatibility: The depreciated function Substring.all
1169    was removed (use Substring.full instead).
1170    
1171    ----------------------------------------------------------------------
1172    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1173    Date: 2005/11/05
1174    Description:
1175    Tweaked interval set API in SML/NJ library; see the CHANGES file for details.
1176    
1177    ----------------------------------------------------------------------
1178    Name: Matthias Blume (http://www.tti-c.org/blume/)
1179    Date: 2005/11/02 16:25:00 CST
1180    Tag: blume-20051102-hex
1181    Description:
1182    
1183    * Runtime system bootstrap code now accepts hex digits in BOOTLIST
1184      in either upper case or lower case format.
1185    * Pushed changes to names of Pack<N>{Big,Little} structures through
1186      CML and eXene.
1187    
1188    ----------------------------------------------------------------------
1189    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1190    Date: 2005/11/02
1191    Description:
1192    Fixed a Basis incompatibility: Pack<N>{Big,Little} structures should
1193    be called PackWord<N>{Big,Little}.
1194    
1195    ----------------------------------------------------------------------
1196    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1197    Date: 2005/10/28
1198    Description:
1199    Fixed a minor Basis incompatibility: hex digits should be upper case.
1200    
1201    ----------------------------------------------------------------------
1202    Name: Matthias Blume (blume (at) tti - c (dot) org)
1203    Date: 2005/10/25 16:00:00 CDT
1204    Tag: Release_110_56
1205    Description:
1206    
1207    New working version (110.56).  NEW BOOTFILES!
1208    
1209    ----------------------------------------------------------------------
1210    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1211    Date: 2005/10/25
1212    Description:
1213    Added interval sets to utility library (signatures INTERVAL_DOMAIN
1214    and INTERVAL_SET, and functor IntervalSetFn).
1215    
1216    ----------------------------------------------------------------------
1217    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
1218    Date: 2005/10/14
1219    Description:
1220    Add Zhong Shao's fix for datatype equality functions.
1221    
1222    ----------------------------------------------------------------------
1223    Name: Allen Leung (leunga (at) reservoir (dot) com)
1224    Date: 2005/10/14 12:30:00 EST
1225    Tag: leunga-20051014-x86-spill
1226    Description:
1227    
1228    Bug fix a bug found by Carl Hauser.
1229    There was a typo in the reload code for FCMP in x86SpillInstr.sml.
1230    
1231    ----------------------------------------------------------------------
1232    Name: Allen Leung (leunga (at) reservoir (dot) com)
1233    Date: 2005/10/14 11:15:00 EST
1234    Tag: leunga-20051014-x86-asm
1235    Description:
1236    
1237    Removed some debugging code in file x86Asm.sml.
1238    The function emit_operand was printing out debugging output.
1239    
1240    ----------------------------------------------------------------------
1241    Name: John Reppy
1242    Date: 2005/07/27
1243    Tag:
1244    Description:
1245    
1246    Fixed ml-lex to recognize "\r" as representing carriage return.
1247    
1248    ----------------------------------------------------------------------
1249    Name: John Reppy
1250    Date: 2005/07/27
1251    Tag:
1252    Description:
1253    
1254    Fixed ml-yacc to work on files with non-native end-of-line
1255    encodings (e.g., Windows text file on a Unix system).
1256    
1257    ----------------------------------------------------------------------
1258    Name: John Reppy
1259    Date: 2005/07/20
1260    Tag:
1261    Description:
1262    
1263    Added changes from Dominic Evans (oldmanuk (at) gmail (dot) com)
1264    to support HPUX 11.
1265    
1266    ----------------------------------------------------------------------
1267    Name: John Reppy
1268    Date: 2005/07/06
1269    Tag:
1270    Description:
1271    
1272    Changes to the SML/NJ library.  See smlnj-lib/CHANGES for details.
1273    
1274    ----------------------------------------------------------------------
1275    Name: Matthias Blume (blume (at) tti - c (dot) org)
1276    Date: 2005/07/06 00:45:00 CDT
1277    Tag: blume-20050706-slice-copy
1278    Description:
1279    
1280    Fixed reversed logic for deciding whether to "copy up" or "copy down"
1281    in *-array-slice.sml.
1282    
1283    ----------------------------------------------------------------------
1284    Name: Allen Leung (leunga (at) reservoir (dot) com)
1285    Date: 2005/05/31 17:00:00 EST
1286    Tag: leunga-20050531-cygwin-fault-2
1287    Description:
1288    
1289    A typo in the cygwin code fixed.
1290    
1291    ----------------------------------------------------------------------
1292    Name: Allen Leung (leunga (at) reservoir (dot) com)
1293    Date: 2005/05/31 16:47:00 EST
1294    Tag: leunga-20050531-cygwin-fault
1295    Description:
1296    
1297    Updated Cygwin's fault/signal handling to match the Windows version.
1298    Updated the export list.
1299    
1300    ----------------------------------------------------------------------
1301    Name: Matthias Blume (blume (at) tti - c (dot) org)
1302    Date: 2005/05/18 13:35:00 CDT
1303    Tag: Release_110_54
1304    Description:
1305    
1306    New working version (110.54).  NEW BOOTFILES!
1307    
1308    ----------------------------------------------------------------------
1309    Name: Matthias Blume (blume (at) tti - c (dot) org)
1310    Date: 2005/05/18 11:58:00 CDT
1311    Tag: blume-20050518-installer
1312    Description:
1313    
1314    Added support scripts for Mac OS X PackageMaker and modified
1315    config/install.sh so that it supports re-dumping a heap image
1316    after customization.
1317    
1318    ----------------------------------------------------------------------
1319    Name: Matthias Blume (blume (at) tti - c (dot) org)
1320    Date: 2005/05/18 10:55:00 CDT
1321    Tag: blume-20050518-realdiv-noovld
1322    Description:
1323    
1324    Un-overloaded / to work around bug in overloading resolution code.
1325    
1326    ----------------------------------------------------------------------
1327    Name: Matthias Blume (blume (at) tti - c (dot) org)
1328    Date: 2005/05/16 23:50:00 CDT
1329    Tag: blume-20050516-redump-heap
1330    Description:
1331    
1332    Added mechanism for re-creating a heap file for the interactive system
1333    after configuration variables have been changed.
1334    
1335       CM.redump_heap : string -> unit
1336    
1337    This is much like SMLofNJ.exportML, but starting from the resulting
1338    heap does not return to the caller of CM.redump_heap but
1339    restarts the interactive system from scratch.  The original call of
1340    CM.redump_heap does not return but ends the interactive session.
1341    Thus, CM.redump_heap is a lot like SMLofNJ.exportFn.
1342    
1343    Internally, redump_heap winds the dynamic execution context back to
1344    the point where the original heap image was created and re-executes
1345    the heap image generation code in the boot code.
1346    
1347    ----------------------------------------------------------------------
1348    Name: Matthias Blume (blume (at) tti - c (dot) org)
1349    Date: 2005/05/09 21:55:00 CDT
1350    Tag: blume-20050509-word64
1351    Description:
1352    
1353    Added a hack to the existing hack known as Word64 to make fromString
1354    behave correctly.  I am still not sure whether Word64.scan will work
1355    as specified with respect to the interaction of radix and prefix.
1356    
1357    ----------------------------------------------------------------------
1358    Name: Allen Leung (leunga (at) reservoir (dot) com)
1359    Date: 2005/05/04 11:50:00 EST
1360    Tag: leunga-20050504-checkgc
1361    Description:
1362    
1363    Added a gc protocol checking phase.  This phase is enabled with
1364    the flag "check-gc".  "debug-check-gc" turns on the verbose mode.
1365    
1366    ----------------------------------------------------------------------
1367    Name: Matthias Blume (blume (at) tti - c (dot) org)
1368    Date: 2005/05/04 10:45:00 CDT
1369    Tag: blume-20050504-intinf
1370    Description:
1371    
1372    Fixed a bug in the implementation of div and mod for IntInf.
1373    Thanks to Neophytos Michael for reporting the problem.
1374    
1375    ----------------------------------------------------------------------
1376    Name: Matthias Blume (blume (at) tti - c (dot) org)
1377    Date: 2005/05/04 10:35:00 CDT
1378    Tag: blume-20050504-join
1379    Description:
1380    
1381    Added a "join" combinator to the ParserComb module in smlnj-lib.cm.
1382    
1383    ----------------------------------------------------------------------
1384    Name: Matthias Blume (blume (at) tti - c (dot) org)
1385    Date: 2005/02/28 23:40:00 CST
1386    Tag: blume-20050228-mVar
1387    Description:
1388    
1389    Fixed serious bug (brown paper bag variety) in new implementation of
1390    structure Atom in CML.  (I had accidentally used a mailbox instead of
1391    an mvar, leaving the door open for races.)
1392    
1393    ----------------------------------------------------------------------
1394    Name: Matthias Blume (blume (at) tti - c (dot) org)
1395    Date: 2005/02/25 15:00:00 CST
1396    Tag: Release_110_53
1397    Description:
1398    
1399    New working version (110.53).  NEW BOOTFILES!
1400    
1401    ----------------------------------------------------------------------
1402    Name: Matthias Blume (blume (at) tti - c (dot) org)
1403    Date: 2005/02/25 14:50:00 CST
1404    Tag: blume-20050225-susp
1405    Description:
1406    
1407    Brought back SMLofNJ.Susp.  The underlying suspension type is the one
1408    implemented in Core -- which means that it is the same as the one used
1409    by the lazy extension.
1410    
1411    ----------------------------------------------------------------------
1412    Name: Matthias Blume (blume (at) tti - c (dot) org)
1413    Date: 2005/02/24 16:50:00 CST
1414    Tag: blume-20050224-cml-atom
1415    Description:
1416    
1417    Simpler and at the same time more general implementation of structure
1418    Atom in CML.
1419    
1420    ----------------------------------------------------------------------
1421    Name: Matthias Blume (blume (at) tti - c (dot) org)
1422    Date: 2005/02/15 17:35:00 CST
1423    Tag: blume-20050215-tools
1424    Description:
1425    
1426    Created new "tools" directory under "src" and moved "TraceDebugProf"
1427    there.
1428    
1429    ----------------------------------------------------------------------
1430    Name: Matthias Blume (blume (at) tti - c (dot) org)
1431    Date: 2005/02/10 17:55:00 CST
1432    Tag: blume-20050210-longlong
1433    Description:
1434    
1435    Implemented "long long" arguments and results for NLFFI.  (Only the
1436    PPC/MacOS implementation is complete, the other backends still need to
1437    be updated.)
1438    
1439    ----------------------------------------------------------------------
1440    Name: Matthias Blume (blume (at) tti - c (dot) org)
1441    Date: 2005/01/24 17:40:00 CST
1442    Tag: blume-20050124-mlyacc
1443    Description:
1444    
1445    Minor cleanup in ML-Yacc rule printing mechanism.  This should fix a
1446    problem with certain "as" patterns which previously got rendered
1447    using incorrect syntax.
1448    
1449    ----------------------------------------------------------------------
1450    Name: Matthias Blume (blume (at) tti - c (dot) org)
1451    Date: 2005/01/18 12:00:00 CST
1452    Tag: blume-20050118-profile
1453    Description:
1454    
1455    Made time profiling code (interrupt handler) in runtime system aware
1456    of new array representation.
1457    
1458    ----------------------------------------------------------------------
1459    Name: Matthias Blume (blume (at) tti - c (dot) org)
1460    Date: 2005/01/14 18:00:00 CST
1461    Tag: blume-20050114-heap2exec
1462    Description:
1463    
1464    Implemented new (but still experimental) heap2exec facility.  This is
1465    tested under Mac OS X and should work under Linux (will test shortly).
1466    It will probably also work on the Sparc (will test some time later).
1467    
1468      - removed old "HACKED_STANDALONE" hack from runtime
1469    
1470    To be able to test this, uncomment the request for "heap2asm" in
1471    config/targets prior to installation.  (Notice that this is different
1472    from "heap2exec" mentioned below.  Not a typo.)
1473    
1474    To perform an actual test, run the command
1475    
1476       $ bin/heap2exec heapfile execfile
1477    
1478    (You can put heap2exec on your shell's path.)
1479    
1480    For example, run
1481    
1482      $ bin/heap2exec bin/.heap/ml-yacc.ppc-darwin mly
1483    
1484    This will create a standalone executable called "mly" which you can
1485    then invoke directly as a command.
1486    
1487    ----------------------------------------------------------------------
1488    Name: Matthias Blume (blume (at) tti - c (dot) org)
1489    Date: 2005/01/07 11:44:00 CST
1490    Tag: blume-20050107-mlstring
1491    Description:
1492    
1493    fixed off-by-one error in ML_STRING macro (globals.c)
1494    
1495    ----------------------------------------------------------------------
1496    Name: Matthias Blume (blume (at) tti - c (dot) org)
1497    Date: 2004/12/23 18:00:00 CST
1498    Tag: blume-20041223-santa
1499    Description:
1500    
1501    Made ml-build script "smarter" (but only very little).
1502    
1503    ----------------------------------------------------------------------
1504    Name: Matthias Blume (blume (at) tti - c (dot) org)
1505    Date: 2004/12/21 15:05:00 CST
1506    Tag: blume-20041221-longlong
1507    Description:
1508    
1509    * Implemented access to signed and unsigned long long data in NLFFI.
1510    (The parameter-passing part of the picture has not complete. But
1511    data structure access seems to work.)
1512    
1513    * Fixed CM's incorrect assumption that the PPC is little-endian.
1514      (On the Mac, it is big-endian.  And that's currently our only
1515      PPC platform.)
1516    
1517    ----------------------------------------------------------------------
1518    Name: Matthias Blume (blume (at) tti - c (dot) org)
1519    Date: 2004/12/21 12:50:00 CST
1520    Tag: blume-20041221-memory
1521    Description:
1522    
1523    Some cleanup in the $c/memory.cm library: separated some concerns by
1524    moving allocation code and memory access code each into their own
1525    files.
1526    
1527    ----------------------------------------------------------------------
1528    Name: Allen Leung (leunga (at) reservoir (dot) com)
1529    Date: 2004/12/17 16:12:00 EST
1530    Tag: leunga-20041217-cygwin-smlnj-home
1531    Description:
1532    
1533        The Unix I/O library of SML/NJ on cygwin does not understand
1534    Windows style pathname, so problems arise when SMLNJ_HOME is set
1535    to a Windows style pathname.  _run-sml now converts SMLNJ_HOME
1536    to a POSIX pathname on cygwin.
1537    
1538    ----------------------------------------------------------------------
1539    Name: Matthias Blume (blume (at) tti - c (dot) org)
1540    Date: 2004/12/16 13:35:00 CST
1541    Tag: Release_110_52
1542    Description:
1543    
1544    Last-minute changes incorporated into 110.52.  Release tag moved.
1545    
1546    The changes:
1547       - HashString.hashString' -> HashString.hashSubstring
1548       - bug fix in UnivariateStats
1549    
1550    ----------------------------------------------------------------------
1551    Name: Matthias Blume (blume (at) tti - c (dot) org)
1552    Date: 2004/12/15 23:40:00 CST
1553    Tag: blume-20041215-hashSubstring
1554    Description:
1555    
1556    - HashString.hashString' -> HashString.hashSubstring
1557    - corresponding changes in atom.sml
1558    - "de-compressed" (aka. un-obfuscated) code for UnivariateStats and
1559      added some comments
1560    
1561    ----------------------------------------------------------------------
1562    Name: Matthias Blume (blume (at) tti - c (dot) org)
1563    Date: 2004/12/15 15:30:00 CST
1564    Tag: (Release_110_52)
1565    Description:
1566    
1567    New working version (110.52).  NEW BOOTFILES!
1568    
1569    ----------------------------------------------------------------------
1570    Name: Matthias Blume (blume (at) tti - c (dot) org)
1571    Date: 2004/12/15 12:45:00 CST
1572    Tag: blume-20041215-spaces
1573    Description:
1574    
1575    More on the space problem (this time for Win32).
1576    
1577    ----------------------------------------------------------------------
1578    Name: Matthias Blume (blume (at) tti - c (dot) org)
1579    Date: 2004/12/14 17:30:00 CST
1580    Tag: blume-20041214-spaces
1581    Description:
1582    
1583    Hacked some of the scripts (in particular: the installer) to cope with
1584    spaces in filenames a bit better.  But beware: the current "solution"
1585    is likely still full of bugs and inherently incomplete.  (We need to
1586    do away with those shell scripts for a comprehensive solution.)
1587    
1588    ----------------------------------------------------------------------
1589    Name: Matthias Blume (blume (at) tti - c (dot) org)
1590    Date: 2004/12/13 14:45:00 CST
1591    Tag: blume-20041213-ml-makedepend
1592    Description:
1593    
1594    Fixed bug in code for ml-makedepend.
1595    
1596    ----------------------------------------------------------------------
1597    Name: Matthias Blume (blume (at) tti - c (dot) org)
1598    Date: 2004/12/09 16:30:00 CST
1599    Tag: blume-20041209-statistics
1600    Description:
1601    
1602    Added two simple but potentially useful statistics modules to SML/NJ Library.
1603    (See CHANGES file there.)
1604    
1605    ----------------------------------------------------------------------
1606    Name: Matthias Blume (blume (at) tti - c (dot) org)
1607    Date: 2004/12/01 16:50:00 CST
1608    Tag: blume-20041201-atom
1609    Description:
1610    
1611    smlnj-lib:
1612    
1613      Added function HashString.hashString' for substrings.
1614      Hand-inlined CharVector.foldl into HashString (for speed).
1615      Modified implementation of structure Atom to avoid extracting
1616      strings from substrings unless necessary.
1617      (Also see CHANGES file for smlnj-lib.)
1618    
1619    ----------------------------------------------------------------------
1620    Name: Matthias Blume (blume (at) tti - c (dot) org)
1621    Date: 2004/11/24 22:15:00 CST
1622    Tag: blume-20041124-cml
1623    Description:
1624    
1625    Made sure CML compiles when Position = Int64.
1626    
1627    ----------------------------------------------------------------------
1628    Name: Matthias Blume (blume (at) tti - c (dot) org)
1629    Date: 2004/11/24 14:30:00 CST
1630    Tag: blume-20041124-position
1631    Description:
1632    
1633    The compiler can now be compiled in a mode that makes structure Position
1634    equal to Int64.  The default, however, is unchanged (Position = Int31)
1635    for the time being.
1636    
1637    To enable 64-bit positions, use the following procedure:
1638    
1639    1. Start sml
1640    2. Autoload $smlnj/cmb.cm (if not already autoloaded)
1641    3. Type
1642          #set (CMB.symval "USE_64_BIT_POSITIONS") (SOME 1);
1643    4. Run CMB.make() as usual.
1644    
1645    This is barely tested.  The only test so far was a little SML program
1646    counting the number of characters in an 8-gigabyte file by
1647    reading it character-by-character.  That test was successful.
1648    
1649    In support of 64-bit positions, a number of new functions have been
1650    added to the runtime system.
1651    
1652    ----------------------------------------------------------------------
1653    Name: Matthias Blume (blume (at) tti - c (dot) org)
1654    Date: 2004/11/23 14:45:00 CST
1655    Tag: blume-20041123-useFile
1656    Description:
1657    
1658    Fixed a problem with unhelpful error messages related to problems with
1659    .cm- or .sml files that appear as part of the sml command line.
1660    
1661    ----------------------------------------------------------------------
1662    Name: Matthias Blume (blume (at) tti - c (dot) org)
1663    Date: 2004/11/18 15:40:00 CST
1664    Tag: Release_110_51
1665    Description:
1666    
1667    New working version (110.51).  NEW BOOTFILES!
1668    
1669    ----------------------------------------------------------------------
1670    Name: Matthias Blume (blume (at) tti - c (dot) org)
1671    Date: 2004/11/18 15:35:00 CST
1672    Tag: <none>
1673    Description:
1674    
1675    Enabled dlopen and friends for FreeBSD (as recommended by Johannes 5
1676    Joemann).
1677    
1678    ----------------------------------------------------------------------
1679    Name: Allen Leung (leunga (at) reservoir (dot) com)
1680    Date: 2004/11/17 16:05:21 EST 2004
1681    Tag: leunga-20041117-mlrisc-live-kill
1682    Description:
1683    
1684       Added support for MLTree constructs LIVE and KILL
1685    to all the architectures.
1686    
1687    ----------------------------------------------------------------------
1688    Name: Matthias Blume (blume (at) tti - c (dot) org)
1689    Date: 2004/11/13 00:20:00 CST
1690    Tag: blume-20041113-versiontool
1691    Description:
1692    
1693    - Stripped down the versiontool: It now only handles the version number.
1694      The date string is generated at bootstrap time (during makeml).
1695    
1696    - In a previous commit, fixed a minor issue with how polyequal is being
1697      translated.  In particular, the code now "looks through" abstractions.
1698      This results in slightly fewer polyEqual warnings and hopefully slightly
1699      more efficient code.  Important examples for where this matters are
1700      the new int64 and word64 types.
1701    
1702    ----------------------------------------------------------------------
1703    Name: Matthias Blume (blume (at) tti - c (dot) org)
1704    Date: 2004/11/12 00:30:00 CST
1705    Tag: blume-20041112-int64
1706    Description:
1707    
1708    Structure Int64 fully hooked in.  (The implementation is not very
1709    efficient, though.)
1710    
1711    ----------------------------------------------------------------------
1712    Name: Matthias Blume (blume (at) tti - c (dot) org)
1713    Date: 2004/11/11 17:30:00 CST
1714    Tag: blume-20041111-more64
1715    Description:
1716    
1717    All the pieces of Word64 are now there, with the exception of the
1718    conversions from and to LargeWord. (Eventually these need to be identities,
1719    but for the time being they don't even make sense because LargeWord is
1720    32-bit wide.)
1721    
1722    Also started to add similar support for Int64, but major pieces of that
1723    are still missing.
1724    
1725    ----------------------------------------------------------------------
1726    Name: Matthias Blume (blume (at) tti - c (dot) org)
1727    Date: 2004/11/11 00:15:00 CST
1728    Tag: blume-20041111-word64
1729    Description:
1730    
1731    Structure Word64 is now (almost) complete, word literals and patterns
1732    seem to work.  There are a few odd pieces missing.  In particular,
1733    I didn't do the {from,to}LargeWord parts because LargeWord is still Word32
1734    at the moment.
1735    
1736    Making Word64 official would mean that LargeWord becomes Word64.  But
1737    this requires extreme care because most word-word conversions have to
1738    go through LargeWord, so making a mistake means loss of efficiency or
1739    worse.  Eventually there will be a solution similar to (but actually
1740    simpler than) what I did with IntInf.
1741    
1742    ----------------------------------------------------------------------
1743    Name: Matthias Blume (blume (at) tti - c (dot) org)
1744    Date: 2004/11/10 18:12:00 CST
1745    Tag: blume-20041110-64bit
1746    Description:
1747    
1748    More 64-bit hacking (but still not even half-way there yet).
1749    Also, some assorted improvements to the handling of 8-bit words.
1750    
1751    ----------------------------------------------------------------------
1752    Name: Matthias Blume (blume (at) tti - c (dot) org)
1753    Date: 2004/11/09 17:50:00 CST
1754    Tag: <none>
1755    Description:
1756    
1757    Started adding some infrastructure for supporting 64-bit int- and
1758    word-types.  (Still in its very early stages.)
1759    
1760    ----------------------------------------------------------------------
1761    Name: Matthias Blume (blume (at) tti - c (dot) org)
1762    Date: 2004/10/28 10:45:00 CDT
1763    Tag: Release_110_50
1764  Description:  Description:
1765    
1766    New working version (110.50).  NEW BOOTFILES!
1767    
1768                 =====================
1769    
1770    Also:
1771    
1772      - Changend config/srcarchiveurl from a file just
1773        containing the URL string into a file containing
1774        shell script code.  The code has access to the $VERSION variable.
1775      - Made corresponding changes to config/install.sh and config/unpack.
1776      - Default contents of config/srcarchiveurl uses $VERSION and
1777        normally does not have to be edited to reflect a version change.
1778    
1779      (As a result, a version change can be done by just editing
1780       config/version, the rest is now automatic.)
1781    
1782    ----------------------------------------------------------------------
1783    Name: Matthias Blume (blume (at) tti - c (dot) org)
1784    Date: 2004/10/27 17:50:00 CDT
1785    Tag: blume-20041027-btrace-msg
1786    Description:
1787    
1788    BackTrace.monitor now also reports the source of the exception that
1789    triggered the trace.
1790    
1791    ----------------------------------------------------------------------
1792    Name: Matthias Blume (blume (at) tti - c (dot) org)
1793    Date: 2004/10/27 17:20:00 CDT
1794    Tag: blume-20041027-x86-c-calls
1795    Description:
1796    
1797    This is the HISTORY entry for two earlier commits, both concerning
1798    the x86 c-calls code in MLRISC:
1799    
1800      - added a missing LOAD in the code that deals with struct arguments
1801      - made sure the caller does not add the wrong number of bytes to the
1802        stack pointer after a call of a function returning a struct
1803        (the callee already pops the implicit argument which points to
1804         the space reserved for the result)
1805    
1806  ----------------------------------------------------------------------  ----------------------------------------------------------------------
1807  Name: Allen Leung (leunga (at) reservoir (dot) com)  Name: Allen Leung (leunga (at) reservoir (dot) com)
1808  Date: 2004/10/24 14:00:00 EST  Date: 2004/10/24 14:00:00 EST
# Line 218  Line 2009 
2009  Description:  Description:
2010    
2011  * Moved the "version" magic into its own little library under  * Moved the "version" magic into its own little library under
2012  src/system/smlnj/internal.  This avoids expensive reconstruction    src/system/smlnj/internal.  This avoids expensive reconstruction of
2013  of a stable src/compiler/core.cm.    a stable src/compiler/core.cm.
2014    
2015  * At the same time, structure CompilerVersion is now known as structure  * At the same time, structure CompilerVersion is now known as
2016  SMLNJVersion.    structure SMLNJVersion.
2017    
2018  * Arranged for the version tool to NOT kick in when rebuilding the system  * Arranged for the version tool to NOT kick in when rebuilding the system
2019    (makeml -rebuild, fixpt).  Otherwise one would never reach a fixpoint.    (makeml -rebuild, fixpt).  Otherwise one would never reach a fixpoint.

Legend:
Removed from v.1662  
changed lines
  Added in v.2815

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