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 1641, Wed Oct 6 20:18:55 2004 UTC revision 1858, Sat Nov 5 15:36:33 2005 UTC
# Line 13  Line 13 
13  Description:  Description:
14    
15  ----------------------------------------------------------------------  ----------------------------------------------------------------------
16    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
17    Date: 2005/11/05
18    Description:
19    Tweaked interval set API in SML/NJ library; see the CHANGES file for details.
20    
21    ----------------------------------------------------------------------
22    Name: Matthias Blume (http://www.tti-c.org/blume/)
23    Date: 2005/11/02 16:25:00 CST
24    Tag: blume-20051102-hex
25    Description:
26    
27    * Runtime system bootstrap code now accepts hex digits in BOOTLIST
28      in either upper case or lower case format.
29    * Pushed changes to names of Pack<N>{Big,Little} structures through
30      CML and eXene.
31    
32    ----------------------------------------------------------------------
33    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
34    Date: 2005/11/02
35    Description:
36    Fixed a Basis incompatibility: Pack<N>{Big,Little} structures should
37    be called PackWord<N>{Big,Little}.
38    
39    ----------------------------------------------------------------------
40    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
41    Date: 2005/10/28
42    Description:
43    Fixed a minor Basis incompatibility: hex digits should be upper case.
44    
45    ----------------------------------------------------------------------
46    Name: Matthias Blume (blume (at) tti - c (dot) org)
47    Date: 2005/10/25 16:00:00 CDT
48    Tag: Release_110_56
49    Description:
50    
51    New working version (110.56).  NEW BOOTFILES!
52    
53    ----------------------------------------------------------------------
54    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
55    Date: 2005/10/25
56    Description:
57    Added interval sets to utility library (signatures INTERVAL_DOMAIN
58    and INTERVAL_SET, and functor IntervalSetFn).
59    
60    ----------------------------------------------------------------------
61    Name: John Reppy (http://www.cs.uchicago.edu/~jhr)
62    Date: 2005/10/14
63    Description:
64    Add Zhong Shao's fix for datatype equality functions.
65    
66    ----------------------------------------------------------------------
67    Name: Allen Leung (leunga (at) reservoir (dot) com)
68    Date: 2005/10/14 12:30:00 EST
69    Tag: leunga-20051014-x86-spill
70    Description:
71    
72    Bug fix a bug found by Carl Hauser.
73    There was a typo in the reload code for FCMP in x86SpillInstr.sml.
74    
75    ----------------------------------------------------------------------
76    Name: Allen Leung (leunga (at) reservoir (dot) com)
77    Date: 2005/10/14 11:15:00 EST
78    Tag: leunga-20051014-x86-asm
79    Description:
80    
81    Removed some debugging code in file x86Asm.sml.
82    The function emit_operand was printing out debugging output.
83    
84    ----------------------------------------------------------------------
85    Name: John Reppy
86    Date: 2005/07/27
87    Tag:
88    Description:
89    
90    Fixed ml-lex to recognize "\r" as representing carriage return.
91    
92    ----------------------------------------------------------------------
93    Name: John Reppy
94    Date: 2005/07/27
95    Tag:
96    Description:
97    
98    Fixed ml-yacc to work on files with non-native end-of-line
99    encodings (e.g., Windows text file on a Unix system).
100    
101    ----------------------------------------------------------------------
102    Name: John Reppy
103    Date: 2005/07/20
104    Tag:
105    Description:
106    
107    Added changes from Dominic Evans (oldmanuk (at) gmail (dot) com)
108    to support HPUX 11.
109    
110    ----------------------------------------------------------------------
111    Name: John Reppy
112    Date: 2005/07/06
113    Tag:
114    Description:
115    
116    Changes to the SML/NJ library.  See smlnj-lib/CHANGES for details.
117    
118    ----------------------------------------------------------------------
119    Name: Matthias Blume (blume (at) tti - c (dot) org)
120    Date: 2005/07/06 00:45:00 CDT
121    Tag: blume-20050706-slice-copy
122    Description:
123    
124    Fixed reversed logic for deciding whether to "copy up" or "copy down"
125    in *-array-slice.sml.
126    
127    ----------------------------------------------------------------------
128    Name: Allen Leung (leunga (at) reservoir (dot) com)
129    Date: 2005/05/31 17:00:00 EST
130    Tag: leunga-20050531-cygwin-fault-2
131    Description:
132    
133    A typo in the cygwin code fixed.
134    
135    ----------------------------------------------------------------------
136    Name: Allen Leung (leunga (at) reservoir (dot) com)
137    Date: 2005/05/31 16:47:00 EST
138    Tag: leunga-20050531-cygwin-fault
139    Description:
140    
141    Updated Cygwin's fault/signal handling to match the Windows version.
142    Updated the export list.
143    
144    ----------------------------------------------------------------------
145    Name: Matthias Blume (blume (at) tti - c (dot) org)
146    Date: 2005/05/18 13:35:00 CDT
147    Tag: Release_110_54
148    Description:
149    
150    New working version (110.54).  NEW BOOTFILES!
151    
152    ----------------------------------------------------------------------
153    Name: Matthias Blume (blume (at) tti - c (dot) org)
154    Date: 2005/05/18 11:58:00 CDT
155    Tag: blume-20050518-installer
156    Description:
157    
158    Added support scripts for Mac OS X PackageMaker and modified
159    config/install.sh so that it supports re-dumping a heap image
160    after customization.
161    
162    ----------------------------------------------------------------------
163    Name: Matthias Blume (blume (at) tti - c (dot) org)
164    Date: 2005/05/18 10:55:00 CDT
165    Tag: blume-20050518-realdiv-noovld
166    Description:
167    
168    Un-overloaded / to work around bug in overloading resolution code.
169    
170    ----------------------------------------------------------------------
171    Name: Matthias Blume (blume (at) tti - c (dot) org)
172    Date: 2005/05/16 23:50:00 CDT
173    Tag: blume-20050516-redump-heap
174    Description:
175    
176    Added mechanism for re-creating a heap file for the interactive system
177    after configuration variables have been changed.
178    
179       CM.redump_heap : string -> unit
180    
181    This is much like SMLofNJ.exportML, but starting from the resulting
182    heap does not return to the caller of CM.redump_heap but
183    restarts the interactive system from scratch.  The original call of
184    CM.redump_heap does not return but ends the interactive session.
185    Thus, CM.redump_heap is a lot like SMLofNJ.exportFn.
186    
187    Internally, redump_heap winds the dynamic execution context back to
188    the point where the original heap image was created and re-executes
189    the heap image generation code in the boot code.
190    
191    ----------------------------------------------------------------------
192    Name: Matthias Blume (blume (at) tti - c (dot) org)
193    Date: 2005/05/09 21:55:00 CDT
194    Tag: blume-20050509-word64
195    Description:
196    
197    Added a hack to the existing hack known as Word64 to make fromString
198    behave correctly.  I am still not sure whether Word64.scan will work
199    as specified with respect to the interaction of radix and prefix.
200    
201    ----------------------------------------------------------------------
202    Name: Allen Leung (leunga (at) reservoir (dot) com)
203    Date: 2005/05/04 11:50:00 EST
204    Tag: leunga-20050504-checkgc
205    Description:
206    
207    Added a gc protocol checking phase.  This phase is enabled with
208    the flag "check-gc".  "debug-check-gc" turns on the verbose mode.
209    
210    ----------------------------------------------------------------------
211    Name: Matthias Blume (blume (at) tti - c (dot) org)
212    Date: 2005/05/04 10:45:00 CDT
213    Tag: blume-20050504-intinf
214    Description:
215    
216    Fixed a bug in the implementation of div and mod for IntInf.
217    Thanks to Neophytos Michael for reporting the problem.
218    
219    ----------------------------------------------------------------------
220    Name: Matthias Blume (blume (at) tti - c (dot) org)
221    Date: 2005/05/04 10:35:00 CDT
222    Tag: blume-20050504-join
223    Description:
224    
225    Added a "join" combinator to the ParserComb module in smlnj-lib.cm.
226    
227    ----------------------------------------------------------------------
228    Name: Matthias Blume (blume (at) tti - c (dot) org)
229    Date: 2005/02/28 23:40:00 CST
230    Tag: blume-20050228-mVar
231    Description:
232    
233    Fixed serious bug (brown paper bag variety) in new implementation of
234    structure Atom in CML.  (I had accidentally used a mailbox instead of
235    an mvar, leaving the door open for races.)
236    
237    ----------------------------------------------------------------------
238    Name: Matthias Blume (blume (at) tti - c (dot) org)
239    Date: 2005/02/25 15:00:00 CST
240    Tag: Release_110_53
241    Description:
242    
243    New working version (110.53).  NEW BOOTFILES!
244    
245    ----------------------------------------------------------------------
246    Name: Matthias Blume (blume (at) tti - c (dot) org)
247    Date: 2005/02/25 14:50:00 CST
248    Tag: blume-20050225-susp
249    Description:
250    
251    Brought back SMLofNJ.Susp.  The underlying suspension type is the one
252    implemented in Core -- which means that it is the same as the one used
253    by the lazy extension.
254    
255    ----------------------------------------------------------------------
256    Name: Matthias Blume (blume (at) tti - c (dot) org)
257    Date: 2005/02/24 16:50:00 CST
258    Tag: blume-20050224-cml-atom
259    Description:
260    
261    Simpler and at the same time more general implementation of structure
262    Atom in CML.
263    
264    ----------------------------------------------------------------------
265    Name: Matthias Blume (blume (at) tti - c (dot) org)
266    Date: 2005/02/15 17:35:00 CST
267    Tag: blume-20050215-tools
268    Description:
269    
270    Created new "tools" directory under "src" and moved "TraceDebugProf"
271    there.
272    
273    ----------------------------------------------------------------------
274    Name: Matthias Blume (blume (at) tti - c (dot) org)
275    Date: 2005/02/10 17:55:00 CST
276    Tag: blume-20050210-longlong
277    Description:
278    
279    Implemented "long long" arguments and results for NLFFI.  (Only the
280    PPC/MacOS implementation is complete, the other backends still need to
281    be updated.)
282    
283    ----------------------------------------------------------------------
284    Name: Matthias Blume (blume (at) tti - c (dot) org)
285    Date: 2005/01/24 17:40:00 CST
286    Tag: blume-20050124-mlyacc
287    Description:
288    
289    Minor cleanup in ML-Yacc rule printing mechanism.  This should fix a
290    problem with certain "as" patterns which previously got rendered
291    using incorrect syntax.
292    
293    ----------------------------------------------------------------------
294    Name: Matthias Blume (blume (at) tti - c (dot) org)
295    Date: 2005/01/18 12:00:00 CST
296    Tag: blume-20050118-profile
297    Description:
298    
299    Made time profiling code (interrupt handler) in runtime system aware
300    of new array representation.
301    
302    ----------------------------------------------------------------------
303    Name: Matthias Blume (blume (at) tti - c (dot) org)
304    Date: 2005/01/14 18:00:00 CST
305    Tag: blume-20050114-heap2exec
306    Description:
307    
308    Implemented new (but still experimental) heap2exec facility.  This is
309    tested under Mac OS X and should work under Linux (will test shortly).
310    It will probably also work on the Sparc (will test some time later).
311    
312      - removed old "HACKED_STANDALONE" hack from runtime
313    
314    To be able to test this, uncomment the request for "heap2asm" in
315    config/targets prior to installation.  (Notice that this is different
316    from "heap2exec" mentioned below.  Not a typo.)
317    
318    To perform an actual test, run the command
319    
320       $ bin/heap2exec heapfile execfile
321    
322    (You can put heap2exec on your shell's path.)
323    
324    For example, run
325    
326      $ bin/heap2exec bin/.heap/ml-yacc.ppc-darwin mly
327    
328    This will create a standalone executable called "mly" which you can
329    then invoke directly as a command.
330    
331    ----------------------------------------------------------------------
332    Name: Matthias Blume (blume (at) tti - c (dot) org)
333    Date: 2005/01/07 11:44:00 CST
334    Tag: blume-20050107-mlstring
335    Description:
336    
337    fixed off-by-one error in ML_STRING macro (globals.c)
338    
339    ----------------------------------------------------------------------
340    Name: Matthias Blume (blume (at) tti - c (dot) org)
341    Date: 2004/12/23 18:00:00 CST
342    Tag: blume-20041223-santa
343    Description:
344    
345    Made ml-build script "smarter" (but only very little).
346    
347    ----------------------------------------------------------------------
348    Name: Matthias Blume (blume (at) tti - c (dot) org)
349    Date: 2004/12/21 15:05:00 CST
350    Tag: blume-20041221-longlong
351    Description:
352    
353    * Implemented access to signed and unsigned long long data in NLFFI.
354    (The parameter-passing part of the picture has not complete. But
355    data structure access seems to work.)
356    
357    * Fixed CM's incorrect assumption that the PPC is little-endian.
358      (On the Mac, it is big-endian.  And that's currently our only
359      PPC platform.)
360    
361    ----------------------------------------------------------------------
362    Name: Matthias Blume (blume (at) tti - c (dot) org)
363    Date: 2004/12/21 12:50:00 CST
364    Tag: blume-20041221-memory
365    Description:
366    
367    Some cleanup in the $c/memory.cm library: separated some concerns by
368    moving allocation code and memory access code each into their own
369    files.
370    
371    ----------------------------------------------------------------------
372    Name: Allen Leung (leunga (at) reservoir (dot) com)
373    Date: 2004/12/17 16:12:00 EST
374    Tag: leunga-20041217-cygwin-smlnj-home
375    Description:
376    
377        The Unix I/O library of SML/NJ on cygwin does not understand
378    Windows style pathname, so problems arise when SMLNJ_HOME is set
379    to a Windows style pathname.  _run-sml now converts SMLNJ_HOME
380    to a POSIX pathname on cygwin.
381    
382    ----------------------------------------------------------------------
383    Name: Matthias Blume (blume (at) tti - c (dot) org)
384    Date: 2004/12/16 13:35:00 CST
385    Tag: Release_110_52
386    Description:
387    
388    Last-minute changes incorporated into 110.52.  Release tag moved.
389    
390    The changes:
391       - HashString.hashString' -> HashString.hashSubstring
392       - bug fix in UnivariateStats
393    
394    ----------------------------------------------------------------------
395    Name: Matthias Blume (blume (at) tti - c (dot) org)
396    Date: 2004/12/15 23:40:00 CST
397    Tag: blume-20041215-hashSubstring
398    Description:
399    
400    - HashString.hashString' -> HashString.hashSubstring
401    - corresponding changes in atom.sml
402    - "de-compressed" (aka. un-obfuscated) code for UnivariateStats and
403      added some comments
404    
405    ----------------------------------------------------------------------
406    Name: Matthias Blume (blume (at) tti - c (dot) org)
407    Date: 2004/12/15 15:30:00 CST
408    Tag: (Release_110_52)
409    Description:
410    
411    New working version (110.52).  NEW BOOTFILES!
412    
413    ----------------------------------------------------------------------
414    Name: Matthias Blume (blume (at) tti - c (dot) org)
415    Date: 2004/12/15 12:45:00 CST
416    Tag: blume-20041215-spaces
417    Description:
418    
419    More on the space problem (this time for Win32).
420    
421    ----------------------------------------------------------------------
422    Name: Matthias Blume (blume (at) tti - c (dot) org)
423    Date: 2004/12/14 17:30:00 CST
424    Tag: blume-20041214-spaces
425    Description:
426    
427    Hacked some of the scripts (in particular: the installer) to cope with
428    spaces in filenames a bit better.  But beware: the current "solution"
429    is likely still full of bugs and inherently incomplete.  (We need to
430    do away with those shell scripts for a comprehensive solution.)
431    
432    ----------------------------------------------------------------------
433    Name: Matthias Blume (blume (at) tti - c (dot) org)
434    Date: 2004/12/13 14:45:00 CST
435    Tag: blume-20041213-ml-makedepend
436    Description:
437    
438    Fixed bug in code for ml-makedepend.
439    
440    ----------------------------------------------------------------------
441    Name: Matthias Blume (blume (at) tti - c (dot) org)
442    Date: 2004/12/09 16:30:00 CST
443    Tag: blume-20041209-statistics
444    Description:
445    
446    Added two simple but potentially useful statistics modules to SML/NJ Library.
447    (See CHANGES file there.)
448    
449    ----------------------------------------------------------------------
450    Name: Matthias Blume (blume (at) tti - c (dot) org)
451    Date: 2004/12/01 16:50:00 CST
452    Tag: blume-20041201-atom
453    Description:
454    
455    smlnj-lib:
456    
457      Added function HashString.hashString' for substrings.
458      Hand-inlined CharVector.foldl into HashString (for speed).
459      Modified implementation of structure Atom to avoid extracting
460      strings from substrings unless necessary.
461      (Also see CHANGES file for smlnj-lib.)
462    
463    ----------------------------------------------------------------------
464    Name: Matthias Blume (blume (at) tti - c (dot) org)
465    Date: 2004/11/24 22:15:00 CST
466    Tag: blume-20041124-cml
467    Description:
468    
469    Made sure CML compiles when Position = Int64.
470    
471    ----------------------------------------------------------------------
472    Name: Matthias Blume (blume (at) tti - c (dot) org)
473    Date: 2004/11/24 14:30:00 CST
474    Tag: blume-20041124-position
475    Description:
476    
477    The compiler can now be compiled in a mode that makes structure Position
478    equal to Int64.  The default, however, is unchanged (Position = Int31)
479    for the time being.
480    
481    To enable 64-bit positions, use the following procedure:
482    
483    1. Start sml
484    2. Autoload $smlnj/cmb.cm (if not already autoloaded)
485    3. Type
486          #set (CMB.symval "USE_64_BIT_POSITIONS") (SOME 1);
487    4. Run CMB.make() as usual.
488    
489    This is barely tested.  The only test so far was a little SML program
490    counting the number of characters in an 8-gigabyte file by
491    reading it character-by-character.  That test was successful.
492    
493    In support of 64-bit positions, a number of new functions have been
494    added to the runtime system.
495    
496    ----------------------------------------------------------------------
497    Name: Matthias Blume (blume (at) tti - c (dot) org)
498    Date: 2004/11/23 14:45:00 CST
499    Tag: blume-20041123-useFile
500    Description:
501    
502    Fixed a problem with unhelpful error messages related to problems with
503    .cm- or .sml files that appear as part of the sml command line.
504    
505    ----------------------------------------------------------------------
506    Name: Matthias Blume (blume (at) tti - c (dot) org)
507    Date: 2004/11/18 15:40:00 CST
508    Tag: Release_110_51
509    Description:
510    
511    New working version (110.51).  NEW BOOTFILES!
512    
513    ----------------------------------------------------------------------
514    Name: Matthias Blume (blume (at) tti - c (dot) org)
515    Date: 2004/11/18 15:35:00 CST
516    Tag: <none>
517    Description:
518    
519    Enabled dlopen and friends for FreeBSD (as recommended by Johannes 5
520    Joemann).
521    
522    ----------------------------------------------------------------------
523    Name: Allen Leung (leunga (at) reservoir (dot) com)
524    Date: 2004/11/17 16:05:21 EST 2004
525    Tag: leunga-20041117-mlrisc-live-kill
526    Description:
527    
528       Added support for MLTree constructs LIVE and KILL
529    to all the architectures.
530    
531    ----------------------------------------------------------------------
532    Name: Matthias Blume (blume (at) tti - c (dot) org)
533    Date: 2004/11/13 00:20:00 CST
534    Tag: blume-20041113-versiontool
535    Description:
536    
537    - Stripped down the versiontool: It now only handles the version number.
538      The date string is generated at bootstrap time (during makeml).
539    
540    - In a previous commit, fixed a minor issue with how polyequal is being
541      translated.  In particular, the code now "looks through" abstractions.
542      This results in slightly fewer polyEqual warnings and hopefully slightly
543      more efficient code.  Important examples for where this matters are
544      the new int64 and word64 types.
545    
546    ----------------------------------------------------------------------
547    Name: Matthias Blume (blume (at) tti - c (dot) org)
548    Date: 2004/11/12 00:30:00 CST
549    Tag: blume-20041112-int64
550    Description:
551    
552    Structure Int64 fully hooked in.  (The implementation is not very
553    efficient, though.)
554    
555    ----------------------------------------------------------------------
556    Name: Matthias Blume (blume (at) tti - c (dot) org)
557    Date: 2004/11/11 17:30:00 CST
558    Tag: blume-20041111-more64
559    Description:
560    
561    All the pieces of Word64 are now there, with the exception of the
562    conversions from and to LargeWord. (Eventually these need to be identities,
563    but for the time being they don't even make sense because LargeWord is
564    32-bit wide.)
565    
566    Also started to add similar support for Int64, but major pieces of that
567    are still missing.
568    
569    ----------------------------------------------------------------------
570    Name: Matthias Blume (blume (at) tti - c (dot) org)
571    Date: 2004/11/11 00:15:00 CST
572    Tag: blume-20041111-word64
573    Description:
574    
575    Structure Word64 is now (almost) complete, word literals and patterns
576    seem to work.  There are a few odd pieces missing.  In particular,
577    I didn't do the {from,to}LargeWord parts because LargeWord is still Word32
578    at the moment.
579    
580    Making Word64 official would mean that LargeWord becomes Word64.  But
581    this requires extreme care because most word-word conversions have to
582    go through LargeWord, so making a mistake means loss of efficiency or
583    worse.  Eventually there will be a solution similar to (but actually
584    simpler than) what I did with IntInf.
585    
586    ----------------------------------------------------------------------
587    Name: Matthias Blume (blume (at) tti - c (dot) org)
588    Date: 2004/11/10 18:12:00 CST
589    Tag: blume-20041110-64bit
590    Description:
591    
592    More 64-bit hacking (but still not even half-way there yet).
593    Also, some assorted improvements to the handling of 8-bit words.
594    
595    ----------------------------------------------------------------------
596    Name: Matthias Blume (blume (at) tti - c (dot) org)
597    Date: 2004/11/09 17:50:00 CST
598    Tag: <none>
599    Description:
600    
601    Started adding some infrastructure for supporting 64-bit int- and
602    word-types.  (Still in its very early stages.)
603    
604    ----------------------------------------------------------------------
605    Name: Matthias Blume (blume (at) tti - c (dot) org)
606    Date: 2004/10/28 10:45:00 CDT
607    Tag: Release_110_50
608    Description:
609    
610    New working version (110.50).  NEW BOOTFILES!
611    
612                 =====================
613    
614    Also:
615    
616      - Changend config/srcarchiveurl from a file just
617        containing the URL string into a file containing
618        shell script code.  The code has access to the $VERSION variable.
619      - Made corresponding changes to config/install.sh and config/unpack.
620      - Default contents of config/srcarchiveurl uses $VERSION and
621        normally does not have to be edited to reflect a version change.
622    
623      (As a result, a version change can be done by just editing
624       config/version, the rest is now automatic.)
625    
626    ----------------------------------------------------------------------
627    Name: Matthias Blume (blume (at) tti - c (dot) org)
628    Date: 2004/10/27 17:50:00 CDT
629    Tag: blume-20041027-btrace-msg
630    Description:
631    
632    BackTrace.monitor now also reports the source of the exception that
633    triggered the trace.
634    
635    ----------------------------------------------------------------------
636    Name: Matthias Blume (blume (at) tti - c (dot) org)
637    Date: 2004/10/27 17:20:00 CDT
638    Tag: blume-20041027-x86-c-calls
639    Description:
640    
641    This is the HISTORY entry for two earlier commits, both concerning
642    the x86 c-calls code in MLRISC:
643    
644      - added a missing LOAD in the code that deals with struct arguments
645      - made sure the caller does not add the wrong number of bytes to the
646        stack pointer after a call of a function returning a struct
647        (the callee already pops the implicit argument which points to
648         the space reserved for the result)
649    
650    ----------------------------------------------------------------------
651    Name: Allen Leung (leunga (at) reservoir (dot) com)
652    Date: 2004/10/24 14:00:00 EST
653    Tag: leunga-20041024-x86-gas-fucomip
654    Description:
655    
656       John discovered a bug in the syntax of fucomip.
657       The opcodes FU?COMIP? have been changed to
658    
659           fu?comip? %st(i), %st
660    
661    ----------------------------------------------------------------------
662    Name: Matthias Blume (blume (at) tti - c (dot) org)
663    Date: 2004/10/20 15:06:00 CDT
664    Tag: blume-20041020-standalone-backtrace
665    Description:
666    
667    Added a mechanism for getting back-trace information from standalone
668    programs.  Here is how it works:
669    
670       1. The part of the program from which you want to get backtrace
671          information (usually the whole program) should be wrapped with
672          BackTrace.monitor.  This is a (unit->'a)->'a function, and your
673          main program could be modified from something like
674    
675             fun main (pgm, args) = ...
676    
677         to
678    
679            fun main (pgm, args) = BackTrace.monitor (fn () => ...)
680    
681       2. To be able to access BackTrace.monitor, you have to add
682          library $smlnj-tdp/plugins.cm to the .cm file that contains your
683          main function.
684    
685       3. Remove all compiled code (i.e., all the .cm/ subdirectories that
686          CM might have created in the past for your project).
687    
688       4. Build the system using this command line:
689    
690             ml-build -Ctdp.instrument=true \$smlnj-tdp/back-trace.cm \
691                      myprog.cm MyProg.main myprog
692    
693          instead of the usual
694    
695             ml-build myprog.cm MyProg.main myprog
696    
697    I changed a library name:
698    
699       $/trace-debug-profile.cm --> $smlnj-tdp/plugins.cm
700    
701    New libraries:
702    
703       $smlnj-tdp/back-trace.cm
704          -- when loaded causes the back-trace plugin to be installed
705       $smlnj-tdp/coverage.cm
706          -- when loaded causes the coverage plugin to be installed
707    
708    ----------------------------------------------------------------------
709    Name: Matthias Blume (blume (at) tti - c (dot) org)
710    Date: 2004/10/18 16:45:00 CDT
711    Tag: blume-20041018-groupowner
712    Description:
713    
714    Added an "obsolete" warning for the "group owner" syntax to CM's parser.
715    
716    Eliminated group owner specs from .cm files throughout the source tree.
717    
718    ----------------------------------------------------------------------
719    Name: Matthias Blume (blume (at) tti - c (dot) org)
720    Date: 2004/10/15 15:45:00 CDT
721    Tag: blume-20041015-coverage
722    Description:
723    
724    * Test coverage tool added!
725    * Further reorganization of tracing-, debugging-, and profiling support:
726    
727        - moved original BTImp -- now called BackTrace -- into a separate
728          library called $/trace-debug-profile.cm
729        - eliminated all mentions of BTrace from SMLofNJ.Internals
730        - only the instrumentation mechanism is now left in the compiler proper
731        - BackTrace module is a plugin which is NOT plugged in by default
732        - Coverage module is another such plugin
733    
734    To get the benefits of any of these plugin modules, the code in
735    question must be compiled with tdp instrumentation turned on.  This
736    can be done by setting SMLofNJ.Internals.TDP.mode to true.
737    (The ref cell is also controlled via the -Ctdp.instrument=... switch.)
738    
739    Plugins are selected at link time.  (Pre-compiled instrumented code
740    can be re-loaded with different plugins in effect.)  When an
741    instrumented module is linked, whatever plugins are at that time
742    enabled will come into effect for that module.
743    
744    To enable the back-trace plugin, load library $/trace-debug-profile.cm
745    and invoke BackTrace.install() (e.g., from the interactive prompt).
746    To enable the coverage plugin, load the same library and invoke
747    Coverage.install().
748    
749    Back-traces are generated automatically on uncaught exceptions and
750    when the code in question explicitly invokes BackTrace.trigger().
751    
752    Coverage (and execution frequency-) information must be queried
753    explicitly by calling Coverage.not_covered and Coverage.hot_spots.
754    
755    ----------------------------------------------------------------------
756    Name: Matthias Blume (blume (at) tti - c (dot) org)
757    Date: 2004/10/14 17:40:00 CDT
758    Tag: blume-20041014-tdp-core
759    Description:
760    
761    Snapshot of a significant overhaul of how the trace/debug/profile support
762    is hooked into the system (specifically: Core and SMLofNJ.Internals).
763    
764    ----------------------------------------------------------------------
765    Name: Matthias Blume (blume (at) tti - c (dot) org)
766    Date: 2004/10/13 16:34:00 CDT
767    Tag: blume-20041013-tdp
768    Description:
769    
770    Some rationalization of names:
771    
772       structure BTrace -> structure TDPInstrument
773       etc.
774    
775    This is is preparation of using the original back-trace
776    instrumentation for other purposes.  "TDP" stands for
777    Trace/Debug/Profile.
778    
779    The control flag controlling whether instrumentation is on or off is now
780    registered under a different name, so instead of running sml as
781    
782     sml -Cinstrument.btrace-mode=true
783    
784    one has to say
785    
786     sml -Ctdp.instrument=true
787    
788    ----------------------------------------------------------------------
789    Name: Matthias Blume (blume (at) tti - c (dot) org)
790    Date: 2004/10/11 16:37:00 CDT
791    Tag: blume-20041011-regions
792    Description:
793    
794    Made some minor modifications to elabcore.sml to have source regions
795    be propagated more tightly -- resulting in better (i.e., smaller)
796    regions being reported in error- and debug messages.
797    
798    ----------------------------------------------------------------------
799    Name: Matthias Blume (blume (at) tti - c (dot) org)
800    Date: 2004/10/08 22:50:00 CDT
801    Tag: blume-20041008-cmkw
802    Description:
803    
804    Fixed handling of keywords in .cm files: After seeing "is" the lexer
805    treats subsequent occurrences of "group", "library", "source", "is",
806    "*", and "-" as ordinary identifiers rather than keywords.
807    
808    Most seriously, this fixes a problem with CM's "shell" tool.  The tool
809    is supposed to accept a tool argument called "source", but this did
810    not work because of the clash with the keyword.
811    
812    ----------------------------------------------------------------------
813    Name: Matthias Blume (blume (at) tti - c (dot) org)
814    Date: 2004/10/07 16:00:00 CDT
815    Tag: blume-20041007-cleanup
816    Description:
817    
818    Assorted cleanup work:
819    
820      - got rid of intstrmap in favor of using the library's
821        hash table implementation
822      - threw out most of the pathnames stuff, as it was not used anyway
823      - simplified tokentable implementation
824      - fixed some minor spelling errors
825    
826    ----------------------------------------------------------------------
827  Name: Matthias Blume (blume (at) tti - c (dot) org)  Name: Matthias Blume (blume (at) tti - c (dot) org)
828  Date: 2004/10/06 15:15:15 CDT  Date: 2004/10/06 15:15:15 CDT
829  Tag: blume-20041006-handler  Tag: blume-20041006-handler
# Line 42  Line 853 
853  Description:  Description:
854    
855  * Moved the "version" magic into its own little library under  * Moved the "version" magic into its own little library under
856  src/system/smlnj/internal.  This avoids expensive reconstruction    src/system/smlnj/internal.  This avoids expensive reconstruction of
857  of a stable src/compiler/core.cm.    a stable src/compiler/core.cm.
858    
859  * At the same time, structure CompilerVersion is now known as structure  * At the same time, structure CompilerVersion is now known as
860  SMLNJVersion.    structure SMLNJVersion.
861    
862  * 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
863    (makeml -rebuild, fixpt).  Otherwise one would never reach a fixpoint.    (makeml -rebuild, fixpt).  Otherwise one would never reach a fixpoint.

Legend:
Removed from v.1641  
changed lines
  Added in v.1858

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