Home My Page Projects Code Snippets Project Openings SML/NJ
Summary Activity Forums Tracker Lists Tasks Docs Surveys News SCM Files

SCM Repository

[smlnj] Diff of /sml/trunk/HISTORY
ViewVC logotype

Diff of /sml/trunk/HISTORY

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

revision 1184, Fri Mar 29 22:22:22 2002 UTC revision 1409, Mon Nov 3 22:00:35 2003 UTC
# Line 13  Line 13 
13  Description:  Description:
14    
15  ----------------------------------------------------------------------  ----------------------------------------------------------------------
16    Name: Matthias Blume (blume (at) tti - c (dot) org)
17    Date: 2003/11/03 16:00:00 CST
18    Tag: blume-20031103-installdir
19    Description:
20    
21    Made installer honor INSTALLDIR variable again.  (Thanks to Chris
22    Richards for pointing out the problem and providing the solution.)
23    
24    ----------------------------------------------------------------------
25    Name: Matthias Blume (blume (at) tti - c (dot) org)
26    Date: 2003/10/01 17:05:00 CDT
27    Tag: blume-20031001-lal-mlrisc
28    Description:
29    
30    MLRISC bug fix from Lal.
31    
32    ----------------------------------------------------------------------
33    Name: Matthias Blume (blume (at) tti - c (dot) org)
34    Date: 2003/09/30 16:10:00 CDT
35    Tag: blume-20030930-primio-bat
36    Description:
37    
38    1. Added openVector, nullRd, and nullWr to PRIM_IO.
39    2. Improved .bat files (for Win32 port) to make things work under Win95.
40       (thanks to Aaron S. Hawley for this one)
41    
42    ----------------------------------------------------------------------
43    Name: Matthias Blume (blume (at) tti - c (dot) org)
44    Date: 2003/09/26 16:05:00 CDT
45    Tag: blume-20030926-wrappriv
46    Description:
47    
48    Added missing wrapper for privilege "primitive" in $smlnj/viscomp/core.cm.
49    
50    ----------------------------------------------------------------------
51    Name: Matthias Blume (blume (at) tti - c (dot) org)
52    Date: 2003/09/26 15:00:00 CDT
53    Tag: blume-20030926-110_43_3
54    Description:
55    
56    - additional cleanup
57    - version number bump, NEW BOOTFILES
58    
59    ----------------------------------------------------------------------
60    Name: Matthias Blume (blume (at) tti - c (dot) org)
61    Date: 2003/09/26 12:00:00 CDT
62    Tag: blume-20030926-ppautoload
63    Description:
64    
65    I modified the read-eval-print loop so that the autoloader gets
66    invoked whenever the prettyprinter tries to look up a symbol that
67    is not currently defined in the toplevel environment but which
68    appears in CM's autoload registry.  As a result, we see far fewer of
69    those ?.Foo.Bar.xxx names in the prettyprinter's output.
70    
71    In addition to this I tried to clean up some pieces of the Basis
72    implementation (e.g., Socket, Word8Array) in order to prevent other
73    instances of these ?.Foo.Bar.xxx names from being printed.
74    
75    The mechanism that picks names for types still needs some work, though.
76    (Right now it seems that if there is a type A.t which is defined to
77    be B.u, but B is unavailable at toplevel, then A.t gets printed as
78    "?.B.u" although the perhaps more sensible solution would be to use
79    "A.t" in this case.  In other words, the prettyprinter should follow
80    a chain of DEFtycs not farther than there are corresponding toplevel
81    names in the current environment.)
82    
83    ----------------------------------------------------------------------
84    Name: Matthias Blume (blume (at) tti - c (dot) org)
85    Date: 2003/09/24 16:31:00 CDT
86    Tag: blume-20030924-installer
87    Description:
88    
89    Another installer tweak:  All the ML code for the installer is now
90    compiled during CMB.make and put into a little library called
91    $smlnj/installer.cm.  The installation then simply invokes
92    
93       sml -m $smlnj/installer.cm
94    
95    and everything happens automagically.
96    
97    Win32:  ML code senses value of environment variable SMLNJ_HOME.
98    Unix:   ML code senses values of environment variables ROOT, CONFIGDIR,
99            and BINDIR.
100    
101    The new scheme guarantees that the ML code responsible for the installation
102    is in sync with the APIs of the main system.  Also, the installer is
103    somewhat faster because the installer script is precompiled.
104    
105    ----------------------------------------------------------------------
106    Name: Matthias Blume (blume (at) tti - c (dot) org)
107    Date: 2003/09/24 15:35:00 CDT
108    Tag: blume-20030924-synsock
109    Description:
110    
111    Added a signature SYNCHRONOUS_SOCKET to basis.cm.  This is like SOCKET
112    but excludes all non-blocking operations.  Defined SOCKET (in Basis)
113    and CML_SOCKET in terms of SYNCHRONOUS_SOCKET.  Removed superfluous
114    implementations of non-blocking operations from CML's Socket
115    structure.
116    
117    ----------------------------------------------------------------------
118    Name: Matthias Blume (blume (at) tti - c (dot) org)
119    Date: 2003/09/24 15:10:05 CDT
120    Tag: blume-20030924-sockets
121    Description:
122    
123    1. Fixed SOCKET API and implementation to match Basis spec.
124       This required changing the internal representation of sockets to one
125       that remembers (for each socket file descriptor) whether it is currently
126       blocking or non-blocking.  This state is maintained lazily (i.e., a system
127       call is made only if the state actually needs to change).
128    
129    2. OS-specific details of sockets were moved into separate files, thus
130       making it possible to unify the bulk of the socket implementations
131       between Unix and Win32.
132    
133    3. CML's socket API changed accordingly.
134       (Note that we need to remove non-blocking functions from this API
135       since they are redundant in the case of CML!)
136    
137    4. CML's socket implementation now makes use of non-blocking functions
138       provided by Basis, thus removing all OS-dependent code from this part
139       of CML.
140    
141    5. Changed Real64.precision from 52 to 53.  Minor cleanup in Real64 code.
142    
143    ----------------------------------------------------------------------
144    Name: Matthias Blume (blume (at) tti - c (dot) org)
145    Date: 2003/09/22 12:10:00 CDT
146    Tag: blume-20030922-110_43_2
147    Description:
148    
149    Made a new interim version and bootfiles for developer's bootstrapping
150    convenience.
151    
152       110.43.2 -- NEW BOOTFILES
153    
154    ----------------------------------------------------------------------
155    Name: Matthias Blume (blume (at) tti - c (dot) org)
156    Date: 2003/09/19 15:55:00 CDT
157    Tag: blume-20030919-cmdir
158    Description:
159    
160    1. new-install.sh -> install.sh
161    2. changed default CM "metadata" directory name to ".cm" (instead of "CM")
162    3. tweaked installer so that another name instead of .cm can be chosen
163       at install time (by setting the CM_DIR_ARC environment variable
164       during installation); once installation is complete, the name is
165       fixed
166    
167    ----------------------------------------------------------------------
168    Name: Matthias Blume (blume (at) tti - c (dot) org)
169    Date: 2003/09/18 16:00:00 CDT
170    Tag: blume-20030918-110_43_1
171    Description:
172    
173    Made a new interim version and bootfiles for developer's bootstrapping
174    convenience.
175    
176       110.43.1 -- NEW BOOTFILES
177    
178    ----------------------------------------------------------------------
179    Name: Matthias Blume (blume (at) tti - c (dot) org)
180    Date: 2003/09/18 15:20:00 CDT
181    Tag: blume-20030918-misc
182    Description:
183    
184    1. Exported fractionsPerSecond etc. from TimeImp (but not from Time as
185       this seems to be controversial at the moment) and used those in
186       Posix.ProcEnv.times.
187    
188    2. Added Time.{from,to}Nanoseconds to Time.
189    
190    3. Improved Real.{from,to}LargeInt by avoiding needless calculations.
191       For example, fromLargeInt never needs to look at more than 3 "big
192       digits" to get its 53 bits of precision.
193    
194    ----------------------------------------------------------------------
195    Name: Matthias Blume (blume (at) tti - c (dot) org)
196    Date: 2003/09/17 16:30:00 CDT
197    Tag: blume-20030917-real32-slices
198    Description:
199    
200    Added an entry to the primitive environment
201    (compiler/Semant/statenv/prim.sml) for int32->real64 conversion and
202    added code to compiler/CodeGen/main/mlriscGen.sml to implement it.
203    
204    Removed some of the "magic" constants in real64.sml and replaced them
205    with code that generates these values from their corresponding
206    integer counterparts.
207    
208    Made all(?) the slice-related changes to the Basis and made everything
209    compile again...
210    
211    ----------------------------------------------------------------------
212    Name: Matthias Blume (blume (at) tti - c (dot) org)
213    Date: 2003/09/15 17:45:00 CDT
214    Tag: blume-20030915-rbase
215    Description:
216    
217    Fixed bug in Real.fromLargeInt.
218    
219    ----------------------------------------------------------------------
220    Name: Matthias Blume (blume (at) tti - c (dot) org)
221    Date: 2003/09/13 18:11:00 CDT
222    Tag: blume-20030913-libinstall
223    Description:
224    
225    Minor bugfix in config/libinstall (set anchor with path to
226    standalone tool after installing it, otherwise libraries that
227    need ml-lex or ml-yacc won't compile the first time the installer
228    runs).
229    
230    ----------------------------------------------------------------------
231    Name: Matthias Blume (blume (at) tti - c (dot) org)
232    Date: 2003/09/12 11:45:00 CDT
233    Tag: blume-20030912-various
234    Description:
235    
236     - fixed bug in Real.toLargeInt
237     - fixed bug in Posix.ProcEnv.times
238     - changed inputLine functions to return an option
239     - minor installer improvements / bugfixes
240     - changed default @SMLalloc parameter for x86/celeron to 64k
241    
242    ----------------------------------------------------------------------
243    Name: Matthias Blume (blume (at) tti - c (dot) org)
244    Date: 2003/09/09 22:00:00 CDT
245    Tag: Release_110_43
246    Description:
247    
248        New working release 110.43.  New bootfiles.
249    
250    ----------------------------------------------------------------------
251    Name: Matthias Blume (blume (at) tti - c (dot) org)
252    Date: 2003/09/09 19:20:00 CDT
253    Tag: blume-20030909-installer
254    Description:
255    
256    Rewrote large parts of config/install.sh in SML (config/libinstall.sml).
257    Modified config/install.bat to take advantage of it.  Also modified
258    config/install.sh (and called it config/new-install.sh) to take advantage
259    of it on Unix systems.  (The SML code is (supposed to be) platform-
260    independent.)
261    
262    The installer can now install everything under Win32
263    as well as under *nix as long as it compiles.
264    
265    Other changes:
266    
267      - made CML compile again under Win32
268      - made eXene compile under Win32 (by providing a fake structure UnixSock
269        and by using OS.Process.getEnv instead of Posix.ProcEnv.getenv)
270      - fixed a bug in nowhere: it assumed that type OS.Process.status is the
271        same as type int;  under Win32 it isn't
272      - fixed some slice-related problems in the win32-specific parts of CML
273      - added a functor argument "sameVol" to os-path-fn.sml in the Basis
274        (under Win32, the volume name is case-insensitive, and the
275        OS.Path code compares volume names for equality)
276    
277    ----------------------------------------------------------------------
278    Name: Matthias Blume (blume (at) tti - c (dot) org)
279    Date: 2003/09/08 11:55:00 CDT
280    Tag: blume-20030908-fullpath
281    Description:
282    
283    Made Win32 version of OS.FileSys.fullPath return current directory
284    when given an empty string.  This is what the spec says, and incidentally,
285    CM depends on it.  (CM otherwise goes into an infinite loop in certain
286    cases when presented with the name of a non-existing .cm file.)
287    
288    ----------------------------------------------------------------------
289    Name: Matthias Blume (blume (at) tti - c (dot) org)
290    Date: 2003/09/04 16:30:00 CDT
291    Tag: blume-20030905-slices-etc
292    Description:
293    
294      1. Changed interface to vectors and arrays in Basis to match
295         (draft) Basis spec.
296      2. Added signatures and implementations of slices according to
297         Basis spec.
298      3. Edited source code throughout the system to make it compile again
299         under 1. and 2.  (In some cases code had to be added to have it
300         match the new signatures.)
301      4. MLRISC should be backward-compatible: the copies of the originals
302         of files that needed to change under 3. were retained, the .cm files
303         check the compiler version number and use old versions when
304         appropriate.
305      5. Changed type of OS.FileSys.readDir and Posix.FileSys.readdir to
306         dirstream -> string option (in accordance with Basis spec).
307      6. When generating code that counts lines, ml-lex used function
308         CharVector.foldli, taking advantage of its old interface.
309         This has been replaced with the corresponding code from
310         CharVectorSlice.  (html-lex must be re-lexed!)
311      7. BitArray in smlnj-lib/Util has been extended/modified to match the
312         new MONO_ARRAY signature.  (Do we need BitArraySlice?)
313      8. Removed temporary additions (fromInternal, toInternal) from the
314         (now obsolete) IntInf in smlnj-lib/Util.
315      9. Cleaned up structure Byte.
316     10. Added localOffset, scan, and fromString to Date (according to spec).
317         Cleaned/corrected implementation of Date.
318         (Still need to check for correctness; implement better canonicalizeDate.)
319     11. Added "scan" to signature IEEE_REAL.
320     12. Some improvements to IntInf [in particular: efficiency-hack for
321         mod and rem when second operand is 2 (for parity checks).]
322     13. Changed representation of type Time.time, using a single IntInf.int
323         value counting microseconds.  This considerably simplified the
324         implementation of structure Time.  We now support negative time
325         values; scan and fromString handle signs.
326     14. Functor PrimIO now takes two additional arguments (VectorSlice and
327         ArraySlice).
328    
329    ----------------------------------------------------------------------
330    Name: Matthias Blume (blume (at) tti - c (dot) org)
331    Date: 2003/08/28 17:00:00 CDT
332    Tag: blume-20030828-intinf
333    Description:
334    
335    This is a major update which comes with a version number bump
336    (110.42.99 -- yes, we are really close to 110.43 :-), NEW BOOTFILES,
337    and an implementation of IntInf in the Basis.
338    
339    There are a fairly large number of related changes and updates throughout
340    the system:
341    
342    Basis:
343            - Implemented IntInf.
344            - Made LargeInt a projection of IntInf (by filtering through INTEGER).
345            - Added some missing Real64 operations, most notably Real.toLargeInt.
346            - Added FixedInt as a synonym for Int32.
347    
348    compiler:
349            * Added support for a built-in intinf type.
350              - literals
351              - pattern matching
352              - conversion shortcuts (Int32.fromLarge o Int.toLarge etc.)
353              - overloading on literals and operations
354    
355            This required adding a primitive type intinf, some additional
356            primops, and implementations for several non-trivial intinf
357            operations in Core.  (The intinf type is completely abstract
358            to the compiler; all operations get delegated back to the Core.)
359    
360            * Intinf equality is handled by polyequal.  However, the compiler
361            does not print its usual warning in this case (since polyequal
362            is the right thing to do there).
363    
364            * Improved the organization of structure InlineT.
365    
366            * A word about conversion primops:
367            If conversions involving intinf do not cancel out during
368            CPS contract, then the compiler must insert calls to Core functions.
369            Since all core access must be resolved already during the FLINT
370            translate phase, it would be too late a the time of CPS contract
371            to add new Core calls.  For this reason, conversion primops
372            for intinf carry two arguments:  1. the numeric argument that
373            they are supposed to convert, and 2. the Core function that
374            can help with this conversion if necessary.  If CPS contract
375            eliminates a primop, then the associated Core function becomes
376            dead and goes away.  Intinf conversion primops that do not get
377            eliminated by CPS contract get rewritten into calls of their
378            core functions by a separate, new phase.
379    
380    interactive system:
381            - Control.Print.intinfDepth controls max length of intinf constants
382            being printed. (Analogous to Control.Print.stringDepth.)
383            - Cleanup in printutil and pputil: got rid of unused stuff and
384            duplicates; replaced some of the code with code that makes better
385            use of library functionality.
386    
387    CM:
388            Bugfix: parse-errors in init group (system/smlnj/init/init.cmi)
389            are no longer silent.
390    
391    CKIT:
392            Fixed mismatched uses of Int32 and LargeInt.  I always decided
393            in favor of LargeInt -- which is now the same as IntInf.
394            CKIT-knowledgable people should check whether this is what's
395            intended and otherwise change things back to using Int32 or
396            FixedInt.
397    
398    Throughout the code:
399            Started using IntInf.int literals and built-in operations
400            (e.g., comparison with 0) where this seems appropriate.
401    
402    
403    ----------------------------------------------------------------------
404    Name: Dave MacQueen (dbm@cs.uchicago.edu)
405    Date: 2003/08/13 11:36:00 CDT
406    Tag: dbm-20030813-mcz-merge1
407    Description:
408    
409    Merging changes from the mcz-branch development branch into trunk.
410    These changes involve replacement of the emulated old prettyprinter
411    interface with direct use of the SML/NJ Lib PP library, and fixing
412    of a couple of bugs (895, 1186) relating to error messages.  A new
413    prettyprinter for ast datatypes (Elaborator/print/ppast.{sig,sml})
414    has been added.
415    
416    ----------------------------------------------------------------------
417    Name: Matthias Blume (blume (at) tti - c (dot) org)
418    Date: 2003/08/11 15:45:00 CDT
419    Tag: blume-20030811-windows
420    Description:
421    
422    Version number bumped to 110.42.9.  NEW BOOTFILES!!!
423    
424        http://smlnj.cs.uchicago.edu/dist/working/110.42.9/
425    
426    This patch restores SML/NJ's ability to run under win32.  There are a
427    number of changes, including fixes for several bugs that had gone
428    unnoticed until now:
429    
430      - uname "CYGWIN_NT*" is recognized as win32 (This is relevant only when
431        trying to run the win32 version from within cygwin.)
432    
433      - There are a number of simple .bat scripts that substitute for their
434        corresponding Unix shell-scripts.  (See below.)
435    
436      - The internals of ml-build have been modified slightly.  The main
437        difference is that instead of calling ".link-sml" (or link-sml.bat)
438        using OS.Process.system, the ML process delegates this task back
439        to the script.  Otherwise problems arise in mixed environments such
440        as Cygwin where scripts look and work like Unix scripts, but
441        where OS.Process.system cannot run them.
442    
443      - In CM, the srcpath pickler used native pathname syntax -- which
444        is incorrect in the case of cross-compilation.  The new pickle format
445        is independent of platform-specific naming conventions.
446    
447      - Path configuration files (such as lib/pathconfig) can now choose
448        between native and standard syntax.  Placing a line of the form
449    
450            standard!
451    
452        into the file causes all subsequent paths to be interpreted using
453        CM standard pathname syntax (= Unix conventions); a line
454    
455            native!
456    
457        switches back to native style.  This was needed so that
458        path config files can be written portably, see src/system/pathconfig.
459    
460      - Runtime system:
461    
462          - win32-filesys.c:  get_file_time and set_file_time now
463            access modification time, not creation time.
464    
465          - I/O code made aware of new array representation.
466    
467          - Bug fixes in X86.prim.masm.
468    
469       - src/system/makeml made aware of win32. (For use under cygwin
470            and other Unix-environments for windows.)
471    
472       - In Basis, fixed off-by-one error in win32-io.sml (function vecF)
473         which caused BinIO.inputAll to fail consistently.
474    
475    .bat scripts:
476    
477       Windows .bat scripts assume that SMLNJ_HOME is defined.
478    
479       - sml.bat, ml-yacc.bat, ml-lex.bat:  Driver scripts for standalone
480         applications (sml, ml-yacc, ml-lex).
481       - ml-build.bat: analogous to ml-build.
482       - config\install.bat:  Analogous to config/install.sh.  This requires
483         that SMLNJ_HOME is set and that Microsoft Visual C is ready to use.
484         (nmake etc. must be on the path, and vcvars32 must have been run.)
485         Moreover, sources for ml-lex and ml-yacc need to exist under src,
486         and the bootfile hierarchy must have been unpacked under
487         sml.boot.x86-win32.
488         The script is very primitive and does a poor job at error checking.
489         It only installs the base system, ml-lex, and ml-yacc.  No other
490         libraries are being installed (i.e., you get only those that
491         are part of the compiler.)
492       - link-sml.bat:  analogous to .link-sml, but not currently used
493    
494    Unrelated bug fixes:
495    
496      - ml-nlffigen now exports structures ST_* corresponding to incomplete
497        types.
498      - Added getDevice to PP/src/pp-debug-fn.sml.  (Would not compile
499        otherwise.)
500    
501    ----------------------------------------------------------------------
502    Name: Dave MacQueen (macqueen@cs.uchicago.edu)
503    Date: 2003/06/17
504    Tag: macqueen-20030617-bug895
505    Description:
506    
507    Modified compiler/Elaborator/print/pptype.sml to fix bug 895.
508    Tag will be used for new development branch (mcz-branch) for
509    use by MacQueen, (Lucasz) Zairek, and (George) Cao at uchicago.
510    
511    ----------------------------------------------------------------------
512    Name: Matthias Blume (blume (at) tti - c (dot) org)
513    Date: 2003/05/27 16:55:00 CDT
514    Tag: blume-20030527-polyeq
515    Description:
516    
517    Tried to eliminated most cases of polymorphic equality.
518    
519    ----------------------------------------------------------------------
520    Name: Matthias Blume (blume (at) tti - c (dot) org)
521    Date: 2003/05/21 17:45:00 CDT
522    Tag: blume-20030517-complete
523    Description:
524    
525    Two changes:
526    
527      1. Added a flag for controlling whether non-exhaustive bindings will
528         be treated as errors (default is false).
529      2. Cleaned up the *entire* source tree so that CMB.make goes through
530         without a single non-exhaustive match- or bind warning.
531    
532    ----------------------------------------------------------------------
533    Name: Matthias Blume (blume (at) tti - c (dot) org)
534    Date: 2003/05/17 10:20:00 CDT
535    Tag: blume-20030517-absyn
536    Description:
537    
538    1. Added cases for IF, WHILE, ANDALSO, and ORELSE to Absyn.
539    
540       This mainly affects the quality of error messages.  However, some
541       of the code is now more straightforward than before. (Treatment of
542       the above four constructs in translate.sml is much simpler than
543       the "macro-expansion" that was going on before.  Plus, the mach-
544       compiler no longer gets invoked just to be able to compile an
545       if-expression.)
546    
547    2. The ErrorMsg.Error exception is now caught and absorbed by the
548       interactive loop.
549    
550    ----------------------------------------------------------------------
551    Name: Allen Leung
552    Date: 2003/05/16 13:05:00 CDT
553    Tag: leunga-20030516-cygwin-runtime
554    Description:
555    
556        Ported the runtime system to cygwin, which uses the unix
557    x86-unix bin files.  Missing/buggy features:
558    
559       o getnetbyname, getnetbyaddr: these functions seem to be missing in
560         the Cygwin library.
561       o Ctrl-C handling may be flaky.
562       o Windows system calls and Windows I/O are not supported.
563    
564       A new set of binfiles is located at:
565    
566         http://www.dorsai.org/~leunga/boot.x86-unix.tgz
567    
568       This is only needed for bootstrapping the cygwin version of smlnj.
569       Other x86 versions can use the existing binfiles.
570    
571    ----------------------------------------------------------------------
572    Name: Matthias Blume
573    Date: 2003/04/08 15:42:00 CDT
574    Tag: blume-20030408-listpair
575    Description:
576    
577    1. Added a target 'mlrisc' to installer.
578    
579    2. Added missing elements to structure ListPair.
580    
581    ----------------------------------------------------------------------
582    Name: Allen Leung
583    Date: 2003/01/07 10:40:00 EST
584    Tag: leunga-20030107-int-rem
585    Description:
586    
587    Fixed a bug in Int.rem(x,y) where y is a power of 2 on x86.
588    The arguments to the SUBL instruction were swapped.
589    
590    ----------------------------------------------------------------------
591    Name: Matthias Blume
592    Date: 2002/12/12 16:25:00 EST
593    Tag: blume-20021212-risc-ra
594    Description:
595    
596    Fixed a serious bug in the rewrite code for FP spilling/reloading that
597    sent the RA into an infinite loop when floating point registers get
598    spilled.  (Because of this bug, e.g., nucleic stopped compiling between
599    110.37 and 110.38.)
600    There was another set of potential problems related to the handling of
601    MLRISC annotations (but those did not yet cause real problems, apparently).
602    
603    ----------------------------------------------------------------------
604    Name: Matthias Blume
605    Date: 2002/12/06 22:40:00 EST
606    Tag: blume-20021206-cm-fileid
607    Description:
608    
609    Added a call of SrcPath.sync at the beginning of Parse.parse (in CM).
610    This fixes the problem of CM getting confused by files that suddenly
611    change their identity (e.g., by getting unlinked and recreated by some
612    text editor such as vi).  There might be a better/cheaper/cleaner way
613    of doing this, but for now this will have to do.
614    
615    ----------------------------------------------------------------------
616    Name: Matthias Blume
617    Date: 2002/10/28 09:50:00 EST
618    Tag: blume-20021028-typecheck
619    Description:
620    
621    Exported structure Typecheck from $smlnj/viscomp/core.cm.
622    
623    ----------------------------------------------------------------------
624    Name: Matthias Blume
625    Date: 2002/10/17 09:10:00 EDT
626    Tag: Release_110_42
627    Description:
628    
629    In good old tradition, there has been a slight hiccup so that we have
630    to patch 110.42 after the fact.   The old release tag has been replaced
631    (see below).
632    
633    The change solves a problem with two competing approaches the
634    configuration problem regarding MacOS 10.1 vs. MacOS 10.2 which got in
635    each other's way.
636    
637    This change only affects the runtime system code and the installer script.
638    (No new bootfiles.)
639    
640    ----------------------------------------------------------------------
641    Name: Matthias Blume
642    Date: 2002/10/16 12:00:00 EDT
643    Tag: Release_110_42_removed
644    Description:
645    
646    New working release.  New bootfiles.
647    
648    ----------------------------------------------------------------------
649    Name: Matthias Blume
650    Date: 2002/10/10 13:10:00 EDT
651    Tag: blume-20021010-ppc-divs
652    Description:
653    
654    The mltree operator DIVS must be implemented with an overflow check on
655    the PPC because the hardware indicates divide-by-zero using "overflow" as
656    well.
657    
658    ----------------------------------------------------------------------
659    Name: Matthias Blume
660    Date: 2002/07/23 11:45:00
661    Tag: blume-20020723-smlnj-home
662    Description:
663    
664    Sml now senses the SMLNJ_HOME environment variable.  If this is set,
665    then the bin dir is assumed to be in $SMLNJ_HOME/bin and (unless
666    CM_PATHCONFIG is also set), the path configuration file is assumed
667    to be in $SMLNJ_HOME/lib/pathconfig.  This way one can easily move
668    the entire tree to some other place and everything will "just work".
669    
670    (Companion commands such as ml-build and ml-makedepend also sense this
671    variable.)
672    
673    ----------------------------------------------------------------------
674    Name: Matthias Blume
675    Date: 2002/07/12 21:19:00 EDT
676    Tag: blume-20020712-liveness
677    Description:
678    
679    Exported two useful "step" functions from liveness module (MLRISC).
680    
681    ----------------------------------------------------------------------
682    Name: Matthias Blume
683    Date: 2002/07/05 16:00 EDT
684    Tag: Release_110_41
685    Description:
686    
687    New working release.  New bootfiles.
688    
689    ----------------------------------------------------------------------
690    Name: Matthias Blume
691    Date: 2002/07/05 10:25:00 EDT
692    Tag: blume-20020705-btimp
693    Description:
694    
695    Exported structure BTImp from $smlnj/viscomp/debugprof.cm so that
696    other clients can set up backtracing support.
697    
698    ----------------------------------------------------------------------
699    Name: Matthias Blume
700    Date: 2002/06/25 17:23:00 EDT
701    Tag: blume-20020625-fpmax
702    Description:
703    
704    Fixed a bug in translation of INLMAX (and INLMIN) for the floating-point
705    case.  (The sense of the isNaN test was reversed -- which made min and
706    max always return their first argument.)
707    
708    ----------------------------------------------------------------------
709    Name: Matthias Blume
710    Date: 2002/06/11
711    Tag: blume-20020611-unixpath
712    Description:
713    
714    Back-ported OS.Path.{from,to}UnixPath from idlbasis-devel branch.
715    
716    ----------------------------------------------------------------------
717    Name: Matthias Blume
718    Date: 2002/06/10 16:35:00 EDT
719    Tag: blume-20020610-ieeereal
720    Description:
721    
722    I back-ported my implementation of IEEEReal.fromString from the
723    idlbasis-devel branch so that we can test it.
724    
725    Another small change is that ppDec tries to give more information
726    than just "<sig>" in the case of functors.  However, this code is
727    broken in some mysterious way if the functor's body's signature
728    has not been declared by ascription but gets inferred from the
729    implementation.  This needs fixing...
730    
731    ----------------------------------------------------------------------
732    Name: Matthias Blume
733    Date: 2002/05/31
734    Tag: blume-20020531-btrace-mode
735    Description:
736    
737    Resurrected SMLofNJ.Internals.BTrace.mode.  (It accidentally fell by
738    the wayside when I switched over to using Controls everywhere.)
739    
740    ----------------------------------------------------------------------
741    Name: Lal George
742    Date: 2002/05/23 12:21:40 EDT
743    Tag: george-20020523-visual-labels
744    Description:
745    
746    Labels are now displayed in the graphical output to make
747    the fall-through and target blocks obvious.
748    
749    ----------------------------------------------------------------------
750    Name: Matthias Blume
751    Date: 2002/05/22 11:03:00 EDT
752    Tag: blume-20020522-shrink
753    Description:
754    
755    John tweaked yesterday's fix for 1131 to handle an out-of-memory
756    situation that comes up when allocating huge arrays.
757    
758    ----------------------------------------------------------------------
759    Name: Matthias Blume
760    Date: 2002/05/21 16:00:00 EDT
761    Tag: Release_110_40
762    Description:
763    
764    New working release (110.40).  New bootfiles.
765    
766    [Also: John Reppy fixed GC bug 1131.]
767    
768    ----------------------------------------------------------------------
769    Name: Matthias Blume
770    Date: 2002/05/21 12:35:00 EDT
771    Tag: blume-20020521-cmdoc
772    Description:
773    
774    CM documentation update.
775    
776    ----------------------------------------------------------------------
777    Name: Matthias Blume
778    Date: 2002/05/21 10:55:00 EDT
779    Tag: blume-20020521-misc
780    Description:
781    
782    - John tweaked runtime to be silent on heap export (except when
783      GC messages are on).
784    - I added a few more things (cross-compiling versions of CMB) to
785      config/preloads (as suggestions).
786    
787    ----------------------------------------------------------------------
788    Name: Matthias Blume
789    Date: 2002/05/20 22:25:00 EDT
790    Tag: blume-20020520-controls
791    Description:
792    
793    - Added ControlUtil structure to control-lib.cm.
794    - Use it throughout.
795    - Used Controls facility to define MLRISC controls (as opposed to
796      registering MLRISC control ref cells with Controls after the fact)
797    - Fixed messed-up controls priorities.
798    
799    * Removed again all the stuff from config/preloads that one wouldn't
800      be able to preload at the time the initial heap image is built.
801      (Many libraries, e.g., CML, do not exist yet at this time.  The
802       only libraries that can be preloaded via config/preloads are those
803       that come bundled with the bootfiles.)
804    
805    ----------------------------------------------------------------------
806    Name: Matthias Blume
807    Date: 2002/05/20 10:59:00 EDT
808    Tag: blume-20020520-preloads
809    Description:
810    
811    Added a lot of commented-out suggestions for things to be included
812    in config/preloads.
813    
814    ----------------------------------------------------------------------
815    Name: Allen Leung
816    Date: 2002/05/18 14:20:00 EDT
817    Tag: leunga-20020518-mdl
818    Description:
819    
820    o Made the mdl tool stuff compile and run again.
821    o I've disabled all the stuff that depends on RTL specifications; they
822      are all badly broken anyway.
823    
824    ----------------------------------------------------------------------
825    Name: Matthias Blume
826    Date: 2002/05/17 16:49:00 EDT
827    Tag: blume-20020517-controls
828    Description:
829    
830    0. John Reppy made several modifications to the SML/NJ library.
831       In particular, there is a shiny new controls-lib.cm.
832    
833    1. Pushed new controls interface through compiler so that everything
834       compiles again.
835    
836    2. Added FormatComb and FORMAT_COMB to the CML version of the
837       SML/NJ library (so that CML compiles again).
838    
839    3. Modified init scripts because XXX_DEFAULT environment variables
840       are no longer with us.  (Boot-time initialization is now done
841       using the same environment variables that are also used for
842       startup-time initialization of controls.)
843    
844    ----------------------------------------------------------------------
845    Name: Lal George
846    Date: 2002/05/15 09:20:10 EDT
847    Tag: george-20020515-pseudo-op-decls
848    Description:
849    
850            All pseudo-ops emitted before the first segment declaration
851    such as TEXT, DATA, and BSS directives are assumed to be global
852    declarations and are emitted first in the assembly file. This is
853    useful in a number of situations where one has pseudo-ops that are not
854    specific to any segment, and also works around the constraint that one
855    cannot have client pseudo-ops in the TEXT segment.
856    
857            Because no segment is associated with these declarations it is
858    an error to allocate any space or objects before the first segment
859    directive and an exception will be raised. However, we cannot make
860    this check for client pseudo-ops.
861    
862            These top level declarations are a field in the CFG graph_info.
863    In theory you can continue to add to this field after the CFG has been
864    built -- provided you know what you are doing;-)
865    
866    ----------------------------------------------------------------------
867    Name: Matthias Blume
868    Date: 2002/05/13 16:40:00 EDT
869    Tag: blume-20020513-pp-etc
870    Description:
871    
872    A few minor bugfixes:
873    
874      - Stopgap measure for bug recently reported by Elsa Gunter (ppDec).
875        (Bogus printouts for redefined bindings still occur.  Compiler
876        bug should no longer occur now.  We need to redo the prettyprinter
877        from scratch.)
878    
879      - CM pathname printer now also adds escape sequences for ( and )
880    
881      - commend and docu fixes for ml-nlffi
882    
883    ----------------------------------------------------------------------
884    Name: Matthias Blume
885    Date: 2002/05/10 16:40:00 EDT
886    Tag: blume-20020510-erg-textio
887    Description:
888    
889    Applied the following bugfix provided by Emden Gansner:
890    
891        Output is corrupted when outputSubstr is used rather than output.
892    
893        The problem occurs when a substring
894    
895            ss = (s, dataStart, dataLen)
896    
897        where dataStart > 0, fills a stream buffer with avail bytes left.
898        avail bytes of s, starting at index dataStart, are copied into the
899        buffer, the buffer is flushed, and then the remaining dataLen-avail
900        bytes of ss are copied into the beginning of the buffer. Instead of
901        starting this copy at index dataStart+avail in s, the current code
902        starts the copy at index avail.
903    
904        Fix:
905        In text-io-fn.sml, change line 695 from
906             val needsFlush = copyVec(v, avail, dataLen-avail, buf, 0)
907        to
908             val needsFlush = copyVec(v, dataStart+avail, dataLen-avail, buf, 0)
909    
910    ----------------------------------------------------------------------
911    Name: Matthias Blume
912    Date: 2002/04/12 13:55:00 EDT
913    Tag: blume-20020412-assyntax
914    Description:
915    
916    1. Grabbed newer assyntax.h from the XFree86 project.
917    2. Fiddled with how to compile X86.prim.asm without warnings.
918    3. (Very) Minor cleanup in CM.
919    
920    ----------------------------------------------------------------------
921    Name: Matthias Blume
922    Date: 2002/04/01 (no joke!) 17:07:00 EST
923    Tag: blume-20020401-x86div
924    Description:
925    
926    Added full support for div/mod/rem/quot on the x86, using the machine
927    instruction's two results (without clumsily recomputing the remainder)
928    directly where appropriate.
929    
930    Some more extensive power-of-two support was added to the x86 instruction
931    selector (avoiding expensive divs, mods, and muls where they can be
932    replaced with cheaper shifts and masks).  However, this sort of thing
933    ought to be done earlier, e.g., within the CPS optimizer so that
934    all architectures benefit from it.
935    
936    The compiler compiles to a fixed point, but changes might be somewhat
937    fragile nevertheless.  Please, report any strange things that you might
938    see wrt. div/mod/quot/rem...
939    
940    ----------------------------------------------------------------------
941  Name: Matthias Blume  Name: Matthias Blume
942  Date: 2002/03/29 17:22:00  Date: 2002/03/29 17:22:00
943  Tag: blume-20020329-div  Tag: blume-20020329-div

Legend:
Removed from v.1184  
changed lines
  Added in v.1409

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