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 1399, Tue Sep 30 21:10:05 2003 UTC revision 1602, Tue Aug 10 16:58:44 2004 UTC
# Line 14  Line 14 
14    
15  ----------------------------------------------------------------------  ----------------------------------------------------------------------
16  Name: Matthias Blume (blume (at) tti - c (dot) org)  Name: Matthias Blume (blume (at) tti - c (dot) org)
17    Date: 2004/10/04 12:00:00 CDT
18    Tag: Release_110_48
19    Description:
20    
21    New working version (110.48).  NEW BOOTFILES!
22    
23    ----------------------------------------------------------------------
24    Name: Allen Leung (leunga (at) reservoir (dot) com)
25    Date: 2004/08/09 12:21:00 EST
26    Tag: leunga-110_47-dijsktra
27    Description:
28    
29    Bug fix from Carl Hauser:
30    
31    single_source_shortest_paths in dijkstra.sml was observed to get wrong
32    answers (by comparing to single_source_shortest_paths in bellman-ford.sml).
33    
34    The problem is that following the expression A.update(dist,s,Num.zero)
35    it is necessary to update the priority queue using Q.decreaseWeight(Q,s).
36    
37    ----------------------------------------------------------------------
38    Name: Matthias Blume (blume (at) tti - c (dot) org)
39    Date: 2004/08/06 18:10:00 CDT
40    Tag: blume-20040806-cmdline
41    Description:
42    
43    Fiddled with handling of command-line options:
44    
45      * sml now quits after processing the command line
46        if -H, -S, -h<n>, or -s<n> appears as the last
47        command-line argument
48      * a new option -q terminates the session when encountered on
49        the command line; subsequent arguments will be ignored
50      * bug fixes: short (erroneous) arguments are no longer ignored
51        completely
52    
53    ----------------------------------------------------------------------
54    Name: Allen Leung (leunga (at) reservoir (dot) com)
55    Date: 2004/08/04 18:17:00 EST
56    Tag: leunga-110_47-ppc-ibm-asm
57    Description:
58    
59      - Added minimal IBM assembly syntax support for PowerPC.
60    
61      - Cygwin: manually changed the file cygwin.def.  Some exported symbols have
62        been altered in the runtime.  We need an automatic way to keep the file
63        in sync.
64    
65    ----------------------------------------------------------------------
66    Name: Matthias Blume (blume (at) tti - c (dot) org)
67    Date: 2004/08/04 14:00:00 CDT
68    Tag: Release_110_47
69    Description:
70    
71    New working version (110.47).  NEW BOOTFILES!
72    
73    ----------------------------------------------------------------------
74    Name: Matthias Blume (blume (at) tti - c (dot) org)
75    Date: 2004/08/03 14:25:00 CDT
76    Tag: blume-20040803-callingconv
77    Description:
78    
79    Added low-level support for choosing C calling conventions by
80    twiddling the type of rawccall.  (See
81    src/compiler/Semant/types/cproto.sml for details.)
82    
83    ----------------------------------------------------------------------
84    Name: Matthias Blume (blume (at) tti - c (dot) org)
85    Date: 2004/08/02 15:55:00 CDT
86    Tag: blume-20040802-backout
87    Description:
88    
89    Backed out of change to win32-filesys.c.  The earlier patch to
90    get_file_time caused CM to produce files with the wrong time stamp.
91    
92    ----------------------------------------------------------------------
93    Name: Matthias Blume (blume (at) tti - c (dot) org)
94    Date: 2004/08/02 14:45:00 CDT
95    Tag: blume-20040802-nlffi-win32
96    Description:
97    
98    Added NLFFI support for Win32, adapted from a patch provided by David
99    Hansel.  This is currently completely untested.  Also, the issue
100    concerning stdcall vs. ccall is still unresolved.
101    
102    ----------------------------------------------------------------------
103    Name: Matthias Blume (blume (at) tti - c (dot) org)
104    Date: 2004/07/30 17:55:00 CDT
105    Tag: blume-20040730-various
106    Description:
107    
108    Gearing up towards 110.47...
109    
110    - various minor bugfixes to ml-nlffigen
111    - a beginning of a manual for nlffi
112    
113    - eliminated 'export name=value' in config/install.sh as this does
114      not work with certain versions of /bin/sh
115      (Thanks to David King at Motorola for catching this.)
116    
117    - several bugfixes provided or suggested by David Hansel at Reactive Systems:
118      - added a test for tm==NULL to gmtime.c and localtime.c
119      - applied patch for incorrect GetFileTime under win32
120      - toSeconds -> toMilliseconds in Win32/win32-process.sml
121    
122    ----------------------------------------------------------------------
123    Name: Matthias Blume (blume (at) tti - c (dot) org)
124    Date: 2004/07/21 18:20:00 CDT
125    Tag: blume-20040721-nlffigen
126    Description:
127    
128    - Fixed minor issue in ml-nlffigen: Now generate structure T_foo
129      for a typedef to an incomplete type, but leave out the "typ" member.
130      (This is just for consistency.)
131    - Started to produce what is supposed to become better (i.e., comprehensive)
132      documentation of what ml-nlffigen does and produces.
133    
134    ----------------------------------------------------------------------
135    Name: Matthias Blume (blume (at) tti - c (dot) org)
136    Date: 2004/07/14 16:25:00 CDT
137    Tag: blume-20040714-union
138    Description:
139    
140    Added C_UNION to c-calls/c-types.sml and updated the machinery
141    (ml-nlffigen, cproto.sml) that conveys C function interface
142    information to the code generator.
143    
144    However, the actual architecture-specific implementation of function
145    arguments and results that are C unions is still not implemented.
146    
147    ----------------------------------------------------------------------
148    Name: Allen Leung (leunga (at) reservoir (dot) com)
149    Date: 2004/07/14 14:38:00 EST
150    Tag: leunga-110_46_1-ppc-lwzu
151    Description:
152    
153        Added these instructions to the PowerPC architecture:
154        LBZU(X), LHZU(X), LWZU(X),
155        STWU(X), STFDU, STFSU
156    
157        etc...
158    
159        Note: I haven't added their instruction encoding into the description.
160    
161    ----------------------------------------------------------------------
162    Name: Allen Leung (leunga (at) reservoir (dot) com)
163    Date: 2004/07/13 15:04:00 EST
164    Tag: leunga-110_46_1-ppc-lwarx
165    Description:
166    
167       Added the two instructions LWARX and STWCX to the PowerPC
168    instruction set.
169    
170       A (untested) rewrite of loop-structure.sml.  The old version
171    is completely broken.
172    
173    ----------------------------------------------------------------------
174    Name: Matthias Blume (blume (at) tti - c (dot) org)
175    Date: 2004/07/13 13:50:00 CDT
176    Tag: blume-20040713-nlffi
177    Description:
178    
179    - use paramAlloc to report c-calls with too many arguments
180      (for PPC version where parameter area is pre-allocated)
181    - added ccall_maxargspace to machspec (to implement the above)
182    - made "make" commend in CM's "make" tool configurable
183    - added option (default: on) for passing the name of the SML/NJ's "bin"
184      directory to "make"; the call looks like this:
185    
186         make <options> SMLNJ_BINDIR=<dir> <target>
187    
188      This can be used by the Makefile to, e.g., pick the "right" version
189      of ml-nlffigen.
190    - minor code tweaks
191    
192    ----------------------------------------------------------------------
193    Name: Matthias Blume (blume (at) tti - c (dot) org)
194    Date: 2004/07/12 22:50:00 CDT
195    Tag: blume-110_46_1-macosx-nlffi
196    Description:
197    
198    NLFFI under Mac OS X now working (sort of).  This is largely untested,
199    though.
200    
201    Note:  1. You have to make a new, clean build of the runtime system.
202           2. There are new BOOTFILES, you have to use them!
203              (Doing the bootstrap process yourself would be *very* painful!
204               If you absolutely have to do it, build the system under
205               a different architecture and then cross-compile.)
206    
207    Version bumped to 110.46.1 to account for runtime data format changes.
208    
209    ----------------------------------------------------------------------
210    Name: Matthias Blume (blume (at) tti - c (dot) org)
211    Date: 2004/06/18 14:30:00 CDT
212    Tag: blume-20040618-unix
213    Description:
214    
215    Changed the implementation of structure Unix so that the same stream
216    is returned every time one of the {text,bin}{In,Out}streamOf functions
217    is invoked on the same proc.  This is not what the spec currently
218    says -- although IMO it arguably should.  (See discussion below.)
219    
220    ----------------------------------------------------------------------
221    Name: Matthias Blume (blume (at) tti - c (dot) org)
222    Date: 2004/06/17 18:15:00 CDT
223    Tag: Release_110_46
224    Description:
225    
226    New working version (110.46).  NEW BOOTFILES!
227    
228    ----------------------------------------------------------------------
229    Name: Matthias Blume (blume (at) tti - c (dot) org)
230    Date: 2004/06/17 17:20:00 CDT
231    Tag: blume-20040617-timer-unix
232    Description:
233    
234    Changed the interface of structures Timer and Unix to match the most
235    recent Basis spec.
236    
237    In the case of Unix there still seems to be an open/weird issue:
238    
239       The {text,bin}{In,Out}streamOf functions are supposed to create
240       fresh streams whenever they are called -- as opposed to have them
241       return the same stream every time.  This design is supposed to
242       prevent space leaks caused by proc values hanging on to streams.
243    
244       The reap function, on the other hand, is supposed to close the
245       streams.  This cannot be done without having a handle on the
246       stream in proc after all...
247    
248    I took the liberty to implement the following stopgap solution:
249    
250      The proc value hangs on to the most recently created stream(s).
251      Reap closes those.  If either or both of the two streams hadn't
252      been created at all yet, then reap will close the corresponding
253      file descriptors directly.
254    
255    PS: I don't understand the original space leak argument anymore.  If
256    a proc hangs on to the imperative stream, then I/O operations on those
257    will advance the state of the cached stream and avoid the space leak.
258    
259    ----------------------------------------------------------------------
260    Name: Matthias Blume (blume (at) tti - c (dot) org)
261    Date: 2004/05/28 16:45:00 CDT
262    Tag: blume-20040528-basis
263    Description:
264    
265    Added signature PACK_REAL and exported functor PrimIO.
266    
267    ----------------------------------------------------------------------
268    Name: Matthias Blume (blume (at) tti - c (dot) org)
269    Date: 2004/05/25 16:00:00 CDT
270    Tag: blume-20040525-group-owner
271    Description:
272    
273    CM now ignores (but still accepts) the "owner" information in group
274    descriptions.  The owner of a group is its next enclosing
275    library. Each group must have a unique owner.  (There is a virtual
276    "toplevel" library that owns groups which are not nested within a real
277    library.)  Previously, each group had to explicitly declare its owner,
278    and CM would check that such a declaration is correct.  The new scheme
279    is to have CM check that for each group there is precisely one owning
280    library.
281    
282    The advantage of the new scheme is that the programmer no longer needs
283    to maintain the somewhat annoying owner information.  The downside is
284    that CM cannot enforce the ownership rule across multiple runs of
285    CM.make.  Fortunately, enclosing the same group in two different
286    libraries A and B which are not part of the same program does not
287    cause real problems.
288    
289    ----------------------------------------------------------------------
290    Name: Matthias Blume (blume (at) tti - c (dot) org)
291    Date: 2004/05/20 16:00:00 CDT
292    Tag: blume-20040520-win32
293    Description:
294    
295    Made the win32 version work again.  (Strangely, a misplaced comma had
296    slipped into win32-process.c which prevented the runtime from being
297    compiled correctly.)
298    
299    Also, included a minor addition to ml-build.bat analogous to what was
300    done in blume-20040519-ml-build.
301    
302    ----------------------------------------------------------------------
303    Name: Matthias Blume (blume (at) tti - c (dot) org)
304    Date: 2004/05/19 22:10:00 CDT
305    Tag: blume-20040519-ml-build
306    Description:
307    
308    Arranged for ml-build to clean up after itself a little bit better.
309    The script generates a temporary SML source file and compiles it using
310    CM, so CM generates metadata (GUID, SKEL, objectfile) for it.  It now
311    gets rid of those at the end, so they don't accumulate under .cm.
312    
313    This required a minor change to install.sh because the name of the
314    metadata directory (default: .cm) is actually configurable at
315    installation time.
316    
317    ----------------------------------------------------------------------
318    Name: Matthias Blume (blume (at) tti - c (dot) org)
319    Date: 2004/05/18 15:50:00 CDT
320    Tag: blume-20040518-mkreader
321    Description:
322    
323    Added Posix.IO.mk{Bin,Text}{Reader,Writer} by lifting their respective
324    implementations from internal modules PosixBinPrimIO and PosixTextPrimIO.
325    
326    ----------------------------------------------------------------------
327    Name: Matthias Blume (blume (at) tti - c (dot) org)
328    Date: 2004/05/11 14:35:00 CDT
329    Tag: blume-20040511-win32sock
330    Description:
331    
332    Added previously missing support for many socket-related functions
333    under win32.  Thanks to David Hansel <hansel@reactive-systems.com>
334    for the voluminous patch!
335    
336    (I have not tested this patch under win32 yet.)
337    
338    Here is David's e-mail:
339    
340    Hi,
341    
342    Attached to this email you find a diff against sml/nj 110.45
343    that will enable socket support under Windows.
344    
345    To apply the patch (using unix or cygwin)
346    1) gunzip runtime.diff.gz
347    2) "cd" into "src/runtime" in the source tree of a fresh
348       110.45 installation.
349    3) patch -p 1 < [your/path/to]runtime.diff
350    
351    The code compiles fine but has NOT yet been extensively tested.
352    I only ran a few tests for basic socket client functionality
353    (which worked fine).  Especially the functions that use ioctl
354    are not tested at all and might not work (see below).
355    
356    I implemented this since we want to move to a newer version of sml/nj
357    but need socket support in order to use it.  This is the first time I
358    even had a look at the sml/nj source,  so please review my changes
359    before making this part of the distribution!  Here are a few issues
360    that I think might be better for someone to solve who is more
361    familiar with the sml/nj source (and socket programming):
362    
363    - getnetbyaddr.c and getnetbyname.c will raise a "not implemented"
364      exception since I could not figure out what the windows equivalent
365      of these functions is
366    
367    - In sockets-osdep.h there are a some #include statements that are
368      only used in a few files that include sockets-osdep.h
369    
370    - In smlnj-sock-lib.c, function init_fn() calls WSAStartup() but
371      does not process its return value since I don't know how to
372      report an error upwards.
373    
374    - It would probably be good to have a call to WSACleanup() when
375      the library is unloaded (if there is such a possibility).
376      Otherwise I think Windows will take care of this automatically
377      when the process finishes.
378    
379    - I used ioctlsocket() as a replacement for ioctl() but I have
380      no idea if that is actually the proper replacement on Windows.
381    
382    - All these issues are marked in the code by "FIXME" comments.
383    
384    We use sml/nj extensively in our products and are quite happy
385    with it.  I hope this contribution will help you.
386    
387    Keep up the good work!
388    
389    David
390    
391    ----------------------------------------------------------------------
392    Name: Matthias Blume (blume (at) tti - c (dot) org)
393    Date: 2004/05/11 14:20:00 CDT
394    Tag: blume-20040511-installml
395    Description:
396    
397    Fixed two bugs in installml script.  (Thanks to Vesa A. Norrman for
398    the patch.)
399    
400    ----------------------------------------------------------------------
401    Name: Matthias Blume (blume (at) tti - c (dot) org)
402    Date: 2004/05/11 14:05:00 CDT
403    Tag: blume-20040511-nlffi-netbsd
404    Description:
405    
406    Added support for nlffi under netbsd.  (Thanks to Vesa A. Norrman for
407    the patch.)
408    
409    ----------------------------------------------------------------------
410    Name: Matthias Blume (blume (at) tti - c (dot) org)
411    Date: 2004/05/11 12:05:00 CDT
412    Tag: blume-20040511-exports
413    Description:
414    
415    As per request by Adam Chlipala <adam@hcoop.net>, extended various
416    export lists in compiler-related .cm-files.
417    
418    ----------------------------------------------------------------------
419    Name: Matthias Blume (blume (at) tti - c (dot) org)
420    Date: 2004/05/11 11:35:00 CDT
421    Tag: blume-20040511-allsource
422    Description:
423    
424    The installer now honors the "src-smlnj" target again, although its meaning
425    has changed from "all sources required for the compiler" to "all sources
426    the installer knows about".  In other words, if you enable "src-smlnj"
427    in the "targets" file, then the installer will pull in sources for
428    everything.  (Notice that this refers to source code only.  Compiled
429    code is still only installed for modules that were requested explicitly
430    or which are required for other modules that were requested explicitly.)
431    
432    ----------------------------------------------------------------------
433    Name: Matthias Blume (blume (at) tti - c (dot) org)
434    Date: 2004/04/23 17:40:00 CDT
435    Tag: blume-20040423-ieee-scan
436    Description:
437    
438    Fixed IEEEReal.scan (and .fromString) so that if there is an overflow
439    in the exponent calculation we get INF or ZERO (depending on the mantissa
440    and the sign of the exponent).
441    
442    ----------------------------------------------------------------------
443    Name: Matthias Blume (blume (at) tti - c (dot) org)
444    Date: 2004/04/23 10:40:00 CDT
445    Tag: blume-20040423-ml-build
446    Description:
447    
448    The ml-build script now terminates with a non-0 status when something
449    goes wrong.
450    
451    ----------------------------------------------------------------------
452    Name: Matthias Blume (blume (at) tti - c (dot) org)
453    Date: 2004/04/22 16:35:00 CDT
454    Tag: blume-20040422-Option
455    Description:
456    
457    Made exception Option to be the same as exception Option.Option
458    (as it should be).
459    
460    ----------------------------------------------------------------------
461    Name: Allen Leung (leunga (at) reservoir (dot) com)
462    Date: 2004/03/19 14:40:00 EST
463    Tag: leunga-20040319-cygwin-nlffi
464    Description:
465    
466    Fixed the runtime so that ml-nlffi-lib runs on the cygwin version
467    of SML/NJ.  The problem is that
468    
469       lib = dlopen(NULL, ...)
470       f   = dlsym(lib, "malloc");
471    
472    does not work on Windows unless we explicitly export symbols
473    such as 'malloc' during linking.  We fixed this by explicitly
474    exporting the required symbols with the magic gcc incantation:
475    
476        -Wl,--export-all cygwin.def
477    
478    where cygwin.def is a file containing all the symbols that
479    we wish to export.
480    
481    I suspect this is a Windows problem and we'll have to
482    do the same (somehow with windows compilers) when
483    we build the native win32 version with the system
484    calls LoadLibrary/GetProcAddress.
485    
486    ----------------------------------------------------------------------
487    Name: Matthias Blume (blume (at) tti - c (dot) org)
488    Date: 2004/03/04 16:35:00 CST
489    Tag: blume-20040304-intinf-fmt
490    Description:
491    
492    Fixed problem with IntInf.fmt (sign would show up on the right instead
493    of on the left for BIN, OCT, and HEX).
494    
495    ----------------------------------------------------------------------
496    Name: Matthias Blume (blume (at) tti - c (dot) org)
497    Date: 2004/03/04 11:25:00 CST
498    Tag: blume-20040304-symlinks
499    Description:
500    
501    Fixed problem with installer script (unix only) where bin/ml-yacc and
502    friends pointed (via symlinks) to absolute locations instead of just
503    .run-sml.  This was reported by Vesa A Norrman.
504    
505    ----------------------------------------------------------------------
506    Name: Matthias Blume (blume (at) tti - c (dot) org)
507    Date: 2004/02/13 14:50:00 CST
508    Tag: Release_110_45
509    Description:
510    
511    New working version (110.45). New bootfiles.
512    
513    ----------------------------------------------------------------------
514    Name: Matthias Blume (blume (at) tti - c (dot) org)
515    Date: 2004/01/26 15:15:15 CST
516    Tag: blume-20040126-toplevel
517    Description:
518    
519    Improved handling of exceptions at the interactive toplevel.
520    
521    ----------------------------------------------------------------------
522    Name: Matthias Blume (blume (at) tti - c (dot) org)
523    Date: 2004/01/26 11:25:00
524    Tag: blume-20040126-app
525    Description:
526    
527    Type of top-level "app" corrected.
528    Added code for setting vp_limitPtrMask to Win32-specific runtime.
529    
530    ----------------------------------------------------------------------
531    Name: Matthias Blume (blume (at) tti - c (dot) org)
532    Date: 2003/11/18 17:10 CST
533    Tag: blume-20031118-basis-fiddle
534    Description:
535    
536    - changed Timer interface to what might become the spec
537    - POSIX_FLAGS -> BIT_FLAGS according to spec
538    - some other minor discrepancies wrt. spec eliminated
539    
540    ----------------------------------------------------------------------
541    Name: Matthias Blume (blume (at) tti - c (dot) org)
542    Date: 2003/11/06 12:00:00 CST
543    Tag: Release_110_44
544    Description:
545    
546    New working version (110.44). New bootfiles.
547    
548    ----------------------------------------------------------------------
549    Name: Matthias Blume (blume (at) tti - c (dot) org)
550    Date: 2003/11/04 11:50:00 CST
551    Tag: blume-20031104-move-libraries
552    Description:
553    
554    Eliminated the "dont_move_libraries" directive in config/targets.
555    (The mechanism was broken and could not be fixed easily.  Moreover,
556    there does not seem to be any reason not to move all libraries into
557    lib during installation.  I originally implemented this directive as a
558    backward-compatibility feature when I first introduced the new CM.
559    Now that things have been stable for a long time and going back to the
560    old CM is not an option, there is no reason to keep it around.)
561    
562    ----------------------------------------------------------------------
563    Name: Matthias Blume (blume (at) tti - c (dot) org)
564    Date: 2003/11/03 16:00:00 CST
565    Tag: blume-20031103-installdir
566    Description:
567    
568    Made installer honor INSTALLDIR variable again.  (Thanks to Chris
569    Richards for pointing out the problem and providing the solution.)
570    
571    ----------------------------------------------------------------------
572    Name: Matthias Blume (blume (at) tti - c (dot) org)
573    Date: 2003/10/01 17:05:00 CDT
574    Tag: blume-20031001-lal-mlrisc
575    Description:
576    
577    MLRISC bug fix from Lal.
578    
579    ----------------------------------------------------------------------
580    Name: Matthias Blume (blume (at) tti - c (dot) org)
581  Date: 2003/09/30 16:10:00 CDT  Date: 2003/09/30 16:10:00 CDT
582  Tag: blume-20030930-primio-bat  Tag: blume-20030930-primio-bat
583  Description:  Description:

Legend:
Removed from v.1399  
changed lines
  Added in v.1602

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