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

SCM Repository

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

Diff of /sml/trunk/NOTES/HISTORY

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

revision 1638, Wed Sep 29 19:07:58 2004 UTC revision 1702, Thu Nov 18 21:38:13 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/11/18 15:35:00 CST
18    Tag: <none>
19    Description:
20    
21    Enabled dlopen and friends for FreeBSD (as recommended by Johannes 5
22    Joemann).
23    
24    ----------------------------------------------------------------------
25    Name: Allen Leung (leunga (at) reservoir (dot) com)
26    Date: 2004/11/17 16:05:21 EST 2004
27    Tag: leunga-20041117-mlrisc-live-kill
28    Description:
29    
30       Added support for MLTree constructs LIVE and KILL
31    to all the architectures.
32    
33    ----------------------------------------------------------------------
34    Name: Matthias Blume (blume (at) tti - c (dot) org)
35    Date: 2004/11/13 00:20:00 CST
36    Tag: blume-20041113-versiontool
37    Description:
38    
39    - Stripped down the versiontool: It now only handles the version number.
40      The date string is generated at bootstrap time (during makeml).
41    
42    - In a previous commit, fixed a minor issue with how polyequal is being
43      translated.  In particular, the code now "looks through" abstractions.
44      This results in slightly fewer polyEqual warnings and hopefully slightly
45      more efficient code.  Important examples for where this matters are
46      the new int64 and word64 types.
47    
48    ----------------------------------------------------------------------
49    Name: Matthias Blume (blume (at) tti - c (dot) org)
50    Date: 2004/11/12 00:30:00 CST
51    Tag: blume-20041112-int64
52    Description:
53    
54    Structure Int64 fully hooked in.  (The implementation is not very
55    efficient, though.)
56    
57    ----------------------------------------------------------------------
58    Name: Matthias Blume (blume (at) tti - c (dot) org)
59    Date: 2004/11/11 17:30:00 CST
60    Tag: blume-20041111-more64
61    Description:
62    
63    All the pieces of Word64 are now there, with the exception of the
64    conversions from and to LargeWord. (Eventually these need to be identities,
65    but for the time being they don't even make sense because LargeWord is
66    32-bit wide.)
67    
68    Also started to add similar support for Int64, but major pieces of that
69    are still missing.
70    
71    ----------------------------------------------------------------------
72    Name: Matthias Blume (blume (at) tti - c (dot) org)
73    Date: 2004/11/11 00:15:00 CST
74    Tag: blume-20041111-word64
75    Description:
76    
77    Structure Word64 is now (almost) complete, word literals and patterns
78    seem to work.  There are a few odd pieces missing.  In particular,
79    I didn't do the {from,to}LargeWord parts because LargeWord is still Word32
80    at the moment.
81    
82    Making Word64 official would mean that LargeWord becomes Word64.  But
83    this requires extreme care because most word-word conversions have to
84    go through LargeWord, so making a mistake means loss of efficiency or
85    worse.  Eventually there will be a solution similar to (but actually
86    simpler than) what I did with IntInf.
87    
88    ----------------------------------------------------------------------
89    Name: Matthias Blume (blume (at) tti - c (dot) org)
90    Date: 2004/11/10 18:12:00 CST
91    Tag: blume-20041110-64bit
92    Description:
93    
94    More 64-bit hacking (but still not even half-way there yet).
95    Also, some assorted improvements to the handling of 8-bit words.
96    
97    ----------------------------------------------------------------------
98    Name: Matthias Blume (blume (at) tti - c (dot) org)
99    Date: 2004/11/09 17:50:00 CST
100    Tag: <none>
101    Description:
102    
103    Started adding some infrastructure for supporting 64-bit int- and
104    word-types.  (Still in its very early stages.)
105    
106    ----------------------------------------------------------------------
107    Name: Matthias Blume (blume (at) tti - c (dot) org)
108    Date: 2004/10/28 10:45:00 CDT
109    Tag: Release_110_50
110    Description:
111    
112    New working version (110.50).  NEW BOOTFILES!
113    
114                 =====================
115    
116    Also:
117    
118      - Changend config/srcarchiveurl from a file just
119        containing the URL string into a file containing
120        shell script code.  The code has access to the $VERSION variable.
121      - Made corresponding changes to config/install.sh and config/unpack.
122      - Default contents of config/srcarchiveurl uses $VERSION and
123        normally does not have to be edited to reflect a version change.
124    
125      (As a result, a version change can be done by just editing
126       config/version, the rest is now automatic.)
127    
128    ----------------------------------------------------------------------
129    Name: Matthias Blume (blume (at) tti - c (dot) org)
130    Date: 2004/10/27 17:50:00 CDT
131    Tag: blume-20041027-btrace-msg
132    Description:
133    
134    BackTrace.monitor now also reports the source of the exception that
135    triggered the trace.
136    
137    ----------------------------------------------------------------------
138    Name: Matthias Blume (blume (at) tti - c (dot) org)
139    Date: 2004/10/27 17:20:00 CDT
140    Tag: blume-20041027-x86-c-calls
141    Description:
142    
143    This is the HISTORY entry for two earlier commits, both concerning
144    the x86 c-calls code in MLRISC:
145    
146      - added a missing LOAD in the code that deals with struct arguments
147      - made sure the caller does not add the wrong number of bytes to the
148        stack pointer after a call of a function returning a struct
149        (the callee already pops the implicit argument which points to
150         the space reserved for the result)
151    
152    ----------------------------------------------------------------------
153    Name: Allen Leung (leunga (at) reservoir (dot) com)
154    Date: 2004/10/24 14:00:00 EST
155    Tag: leunga-20041024-x86-gas-fucomip
156    Description:
157    
158       John discovered a bug in the syntax of fucomip.
159       The opcodes FU?COMIP? have been changed to
160    
161           fu?comip? %st(i), %st
162    
163    ----------------------------------------------------------------------
164    Name: Matthias Blume (blume (at) tti - c (dot) org)
165    Date: 2004/10/20 15:06:00 CDT
166    Tag: blume-20041020-standalone-backtrace
167    Description:
168    
169    Added a mechanism for getting back-trace information from standalone
170    programs.  Here is how it works:
171    
172       1. The part of the program from which you want to get backtrace
173          information (usually the whole program) should be wrapped with
174          BackTrace.monitor.  This is a (unit->'a)->'a function, and your
175          main program could be modified from something like
176    
177             fun main (pgm, args) = ...
178    
179         to
180    
181            fun main (pgm, args) = BackTrace.monitor (fn () => ...)
182    
183       2. To be able to access BackTrace.monitor, you have to add
184          library $smlnj-tdp/plugins.cm to the .cm file that contains your
185          main function.
186    
187       3. Remove all compiled code (i.e., all the .cm/ subdirectories that
188          CM might have created in the past for your project).
189    
190       4. Build the system using this command line:
191    
192             ml-build -Ctdp.instrument=true \$smlnj-tdp/back-trace.cm \
193                      myprog.cm MyProg.main myprog
194    
195          instead of the usual
196    
197             ml-build myprog.cm MyProg.main myprog
198    
199    I changed a library name:
200    
201       $/trace-debug-profile.cm --> $smlnj-tdp/plugins.cm
202    
203    New libraries:
204    
205       $smlnj-tdp/back-trace.cm
206          -- when loaded causes the back-trace plugin to be installed
207       $smlnj-tdp/coverage.cm
208          -- when loaded causes the coverage plugin to be installed
209    
210    ----------------------------------------------------------------------
211    Name: Matthias Blume (blume (at) tti - c (dot) org)
212    Date: 2004/10/18 16:45:00 CDT
213    Tag: blume-20041018-groupowner
214    Description:
215    
216    Added an "obsolete" warning for the "group owner" syntax to CM's parser.
217    
218    Eliminated group owner specs from .cm files throughout the source tree.
219    
220    ----------------------------------------------------------------------
221    Name: Matthias Blume (blume (at) tti - c (dot) org)
222    Date: 2004/10/15 15:45:00 CDT
223    Tag: blume-20041015-coverage
224    Description:
225    
226    * Test coverage tool added!
227    * Further reorganization of tracing-, debugging-, and profiling support:
228    
229        - moved original BTImp -- now called BackTrace -- into a separate
230          library called $/trace-debug-profile.cm
231        - eliminated all mentions of BTrace from SMLofNJ.Internals
232        - only the instrumentation mechanism is now left in the compiler proper
233        - BackTrace module is a plugin which is NOT plugged in by default
234        - Coverage module is another such plugin
235    
236    To get the benefits of any of these plugin modules, the code in
237    question must be compiled with tdp instrumentation turned on.  This
238    can be done by setting SMLofNJ.Internals.TDP.mode to true.
239    (The ref cell is also controlled via the -Ctdp.instrument=... switch.)
240    
241    Plugins are selected at link time.  (Pre-compiled instrumented code
242    can be re-loaded with different plugins in effect.)  When an
243    instrumented module is linked, whatever plugins are at that time
244    enabled will come into effect for that module.
245    
246    To enable the back-trace plugin, load library $/trace-debug-profile.cm
247    and invoke BackTrace.install() (e.g., from the interactive prompt).
248    To enable the coverage plugin, load the same library and invoke
249    Coverage.install().
250    
251    Back-traces are generated automatically on uncaught exceptions and
252    when the code in question explicitly invokes BackTrace.trigger().
253    
254    Coverage (and execution frequency-) information must be queried
255    explicitly by calling Coverage.not_covered and Coverage.hot_spots.
256    
257    ----------------------------------------------------------------------
258    Name: Matthias Blume (blume (at) tti - c (dot) org)
259    Date: 2004/10/14 17:40:00 CDT
260    Tag: blume-20041014-tdp-core
261    Description:
262    
263    Snapshot of a significant overhaul of how the trace/debug/profile support
264    is hooked into the system (specifically: Core and SMLofNJ.Internals).
265    
266    ----------------------------------------------------------------------
267    Name: Matthias Blume (blume (at) tti - c (dot) org)
268    Date: 2004/10/13 16:34:00 CDT
269    Tag: blume-20041013-tdp
270    Description:
271    
272    Some rationalization of names:
273    
274       structure BTrace -> structure TDPInstrument
275       etc.
276    
277    This is is preparation of using the original back-trace
278    instrumentation for other purposes.  "TDP" stands for
279    Trace/Debug/Profile.
280    
281    The control flag controlling whether instrumentation is on or off is now
282    registered under a different name, so instead of running sml as
283    
284     sml -Cinstrument.btrace-mode=true
285    
286    one has to say
287    
288     sml -Ctdp.instrument=true
289    
290    ----------------------------------------------------------------------
291    Name: Matthias Blume (blume (at) tti - c (dot) org)
292    Date: 2004/10/11 16:37:00 CDT
293    Tag: blume-20041011-regions
294    Description:
295    
296    Made some minor modifications to elabcore.sml to have source regions
297    be propagated more tightly -- resulting in better (i.e., smaller)
298    regions being reported in error- and debug messages.
299    
300    ----------------------------------------------------------------------
301    Name: Matthias Blume (blume (at) tti - c (dot) org)
302    Date: 2004/10/08 22:50:00 CDT
303    Tag: blume-20041008-cmkw
304    Description:
305    
306    Fixed handling of keywords in .cm files: After seeing "is" the lexer
307    treats subsequent occurrences of "group", "library", "source", "is",
308    "*", and "-" as ordinary identifiers rather than keywords.
309    
310    Most seriously, this fixes a problem with CM's "shell" tool.  The tool
311    is supposed to accept a tool argument called "source", but this did
312    not work because of the clash with the keyword.
313    
314    ----------------------------------------------------------------------
315    Name: Matthias Blume (blume (at) tti - c (dot) org)
316    Date: 2004/10/07 16:00:00 CDT
317    Tag: blume-20041007-cleanup
318    Description:
319    
320    Assorted cleanup work:
321    
322      - got rid of intstrmap in favor of using the library's
323        hash table implementation
324      - threw out most of the pathnames stuff, as it was not used anyway
325      - simplified tokentable implementation
326      - fixed some minor spelling errors
327    
328    ----------------------------------------------------------------------
329    Name: Matthias Blume (blume (at) tti - c (dot) org)
330    Date: 2004/10/06 15:15:15 CDT
331    Tag: blume-20041006-handler
332    Description:
333    
334    Cleaned up the absyn to reflect the invariant that HANDLE always
335    carries a FNexp as part of the type definition.  This eliminates some
336    superfluous sanity checks at runtime down the road.
337    
338    Some minor cleanup of the btrace code.
339    
340    ----------------------------------------------------------------------
341    Name: Matthias Blume (blume (at) tti - c (dot) org)
342    Date: 2004/10/01 10:20:30 CDT
343    Tag: blume-20041001-slave
344    Description:
345    
346    Added hack to make slave mode work in the presence of the version
347    tool.  (Still, since the master does two passes over the code for
348    CMB.make, the release number gets bumped twice when slaves are
349    attached.  I don't know if this is worth fixing...)
350    
351    ----------------------------------------------------------------------
352    Name: Matthias Blume (blume (at) tti - c (dot) org)
353    Date: 2004/09/30 10:55:00 CDT
354    Tag: blume-20040930-version
355    Description:
356    
357    * Moved the "version" magic into its own little library under
358      src/system/smlnj/internal.  This avoids expensive reconstruction of
359      a stable src/compiler/core.cm.
360    
361    * At the same time, structure CompilerVersion is now known as
362      structure SMLNJVersion.
363    
364    * Arranged for the version tool to NOT kick in when rebuilding the system
365      (makeml -rebuild, fixpt).  Otherwise one would never reach a fixpoint.
366      Also, loading the versiontool does not work when rebuilding the system
367      because CM is not properly initialized at that time.
368    
369    ----------------------------------------------------------------------
370    Name: Matthias Blume (blume (at) tti - c (dot) org)
371  Date: 2004/09/29 14:00:00 CDT  Date: 2004/09/29 14:00:00 CDT
372  Tag: blume-20040929-autoversion  Tag: blume-20040929-autoversion
373  Description:  Description:

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

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