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 734, Sun Nov 19 05:27:41 2000 UTC revision 801, Mon Mar 19 22:53:00 2001 UTC
# Line 14  Line 14 
14    
15  ----------------------------------------------------------------------  ----------------------------------------------------------------------
16  Name: Matthias Blume  Name: Matthias Blume
17    Date: 2001/03/19 17:53:00 EST
18    Tag: blume-20010319-parallel
19    Description:
20    
21    Parallel make (using compile servers) now works again.
22    
23    To this end, CM.stabilize and CMB.make have been modified to work in
24    two passes when compile servers are attached:
25       1. Compile everything, do not perform stabilization; this pass
26          uses compile servers
27       2. Stabilize everything; this pass does not use compile servers
28    If there are no compile servers, the two passes are combined into one
29    (as before).  Splitting the passes increases the inherent parallelism
30    in the dependency graph because the entire graph including all
31    libraries is available at the same time.  This, in turn, improves
32    server utilization.  The downside is that the master process will
33    have to do some extra work after compilation is done (because for
34    technical reasons it must re-read all the binfiles during stabilization).
35    
36    ----------------------------------------------------------------------
37    Name: Matthias Blume
38    Date: 2001/03/16 12:22:00 EST
39    Tag: blume-20010316-bootfiles
40    Description:
41    
42    Created a new set of bootfiles (for your automatic installation convenience).
43    
44    ----------------------------------------------------------------------
45    Name: Matthias Blume
46    Date: 2001/03/16 11:00:00 EST
47    Tag: blume-20010316-MLTREE-fixup
48    Description:
49    
50    This is a minor fixup for an (untagged) earlier commit by Allen.
51    (A file was missing).
52    
53    ----------------------------------------------------------------------
54    Name: Allen Leung
55    Date: Mon Mar  5 18:54:57 EST 2001
56    Tag: leunga-20010305-cut-support
57    
58    1. New support for alternative control-flow in MLTREE.
59       Currently we support
60    
61          FLOW_TO(CALL ...., [k1,...,kn])
62    
63       This is needed for 'cuts to' in C-- and try/handle-like constructs
64       in Moby
65    
66       New assembler flag "asm-show-cutsto" to turn on control-flow debugging.
67    
68    2. Register Allocator
69    
70       Changes in interface [from Fermin, John]
71    
72    3. Alpha 8-bit SLL support [Fermin]
73    
74    4. All architectures
75    
76       A new module (ClusterExpandCopies) for expanding parallel copies.
77    
78    ----------------------------------------------------------------------
79    Name: Allen Leung
80    Date: 2001/02/27 23:07:00 EST
81    Tag: leunga-20010227-minor-stuff
82    
83    1. Alpha bug fix for CMOVNE
84    2. Handle mltree COND(..,FCMP ...,...)
85    3. Bug fix in simplifier
86    
87    ----------------------------------------------------------------------
88    Name: Matthias Blume
89    Date: 2001/01/30 17:50:00 EST
90    Tag: blume-20010130-sync
91    Description:
92    
93    This is just a minor update to sync my devel branch with the main brach.
94    The only visible change is the addition of some README files.
95    
96    ----------------------------------------------------------------------
97    Name: Matthias Blume
98    Date: 2001/01/12 23:30:00 JST
99    Tag: blume-20010112-bootfiles
100    Description:
101    
102    Made a new set of bootfiles that goes with the current state of the
103    repository.
104    
105    ----------------------------------------------------------------------
106    Name: Matthias Blume
107    Date: 2001/01/12 21:20:00 JST
108    Tag: blume-20010112-sync
109    Description:
110    
111    I am just flushing out some minor changes that had accumulated in
112    my private branch in order to sync with the main tree.  (This is
113    mainly because I had CVS trouble when trying to merge _into_ my
114    private branch.)
115    
116    Most people should be completely unaffected by this.
117    
118    ----------------------------------------------------------------------
119    Name: Allen Leung
120    Date: Thu Jan 11 21:03:00 EST 2001
121    Tag: leunga-20010111-labexp=mltree
122    Description:
123    
124    1.  Removed the type LabelExp and replace it by MLTree.
125    2.  Rewritten mltree-simplify with the pattern matcher tool.
126    3.  There were some bugs in alpha code generator which would break
127        64-bit code generation.
128    4.  Redo the tools to generate code with the
129    5.  The CM files in MLRISC (and in src/system/smlnj/MLRISC)
130        are now generated by perl scripts.
131    
132    ----------------------------------------------------------------------
133    Name: Matthias Blume
134    Date: 2001/01/10 21:55:00 JST
135    Tag: blume-20010110-rcc
136    Description:
137    
138    The RCC stuff now seems to work (but only on the x86).
139    This required hacking of the c-calls interface (and -implementation) in
140    MLRISC.
141    
142    Normal compiler users should be unaffected.
143    
144    ----------------------------------------------------------------------
145    Name: Matthias Blume
146    Date: 2001/01/09 01:20:00 JST
147    Tag: blume-20010109-rcc
148    Description:
149    
150    This is a fairly big patch, flushing out a large number of pending
151    changes that I made to my development copy over the last couple of days.
152    
153    Of practical relevance at this moment is a workaround for a pickling
154    bug that Allen ran into the other day.  The cause of the bug itself is
155    still unknown and it might be hard to fix it properly, but the
156    workaround has some merits of its own (namely somewhat reducing pickling
157    overhead for certain libraries).  Therefore, I think this solution should
158    be satisfactory at this time.
159    
160    The rest of the changes (i.e., the vast majority) has to do with my
161    ongoing efforts of providing direct support for C function calls from
162    ML.  At the moment there is a new primop "RAW_CCALL", typing magic
163    in types/cproto.sml (invoked from FLINT/trans/translate.sml), a new
164    case in the FLINT CPS datatype (RCC), changes to cps/convert.sml to
165    translate uses of RAW_CCALL into RCC, and changes to mlriscGen.sml to
166    handle RCC.
167    
168    The last part (the changes to mlriscGen.sml) are still known to be
169    wrong on the x86 and not implemented on all other architectures.  But
170    the infrastructure is in place. I had to change a few functor
171    signatures in the backend to be able to route the CCalls interface
172    from MLRISC there, and I had to specialize the mltree type (on the
173    x86) to include the necessary extensions. (The extensions themselves
174    were already there and redy to go in MLRISC/x86).
175    
176    Everything should be very happy as soon as someone helps me with
177    mlriscGen.sml...
178    
179    In any case, nothing of this should matter to anyone as long as the
180    new primop is not being used (which is going to be the case unless you
181    find it where I hid it :). The rest of the compiler is completely
182    unaffected.
183    
184    ----------------------------------------------------------------------
185    Name: Matthias Blume
186    Date: 2001/01/05 00:30:00 JST
187    Tag: blume-20010105-primops
188    Description:
189    
190    Added some experimental support for work that I am doing right now.
191    These changes mostly concern added primops, but there is also a new
192    experimental C library in the runtime system (but currently not enabled
193    anywhere except on Linux/X86).
194    
195    In the course of adding primops (and playing with them), I discovered that
196    Zhong's INL_PRIM hack (no type info for certain primops) was, in fact, badly
197    broken.  (Zhong was very right he labeled this stuff as "major gross hack".)
198    To recover, I made type information in INL_PRIM mandatory and changed
199    prim.sml as well as built-in.sml accordingly.  The InLine structure now
200    has complete, correct type information (i.e., no bottom types).
201    
202    Since all these changes mean that we need new binfiles, I also bumped the
203    version number to 110.32.1.
204    
205    ----------------------------------------------------------------------
206    Name: Matthias Blume
207    Date: 2000/12/30 22:10:00 JST
208    Tag: blume-20001230-various
209    Description:
210    
211    Added proxy libraries for MLRISC and let MLRISC libraries refer
212    to each other using path anchors.  (See CM manual for explanation.)
213    
214    Updated CM documentation.
215    
216    Fixed some bugs in CM.
217    
218    Implemented "proxy" libraries (= syntactic sugar for CM).
219    
220    Added "-quiet" option to makeml and changed runtime system accordingly.
221    
222    Added cleanup handler for exportML to reset timers and compiler stats.
223    
224    ----------------------------------------------------------------------
225    Name: Lal George
226    Date: 2000/12/22 22:22:58 EST 2000
227    Tag: Release_110_32
228    Description:
229    
230            Infinite precision used throughout MLRISC.
231            see MLRISC/mltree/machine-int.sig
232    
233    ----------------------------------------------------------------------
234    Name: Matthias Blume
235    Date: 2000/12/22 23:16:00 JST
236    Tag: blume-20001222-warn
237    Description:
238    
239    Corrected wording and formatting of some CM warning message which I
240    broke in my previous patch.
241    
242    ----------------------------------------------------------------------
243    Name: Matthias Blume
244    Date: 2000/12/22 21:20:00 JST
245    Tag: blume-20001222-anchorenv
246    Description:
247    
248    Fixed CM's handling of anchor environments in connection with CMB.make.
249    
250    ----------------------------------------------------------------------
251    Name: Matthias Blume
252    Date: 2000/12/22 13:15:00 JST
253    Tag: blume-20001222-cleanup
254    Description:
255    
256    Removed src/cm/ffi which does not (and did not) belong here.
257    
258    ----------------------------------------------------------------------
259    Name: Matthias Blume
260    Date: 2000/12/21 23:55:00 JST
261    Tag: blume-20001221-exn
262    Description:
263    
264    Probably most important: CM no longer silently swallows all exceptions
265    in the compiler.
266    Plus: some other minor CM changes.  For example, CM now reports some
267    sizes for generated binfiles (code, data, envpickle, lambdapickle).
268    
269    ----------------------------------------------------------------------
270    Name: Matthias Blume
271    Date: 2000/12/15 00:01:05 JST
272    Tag: blume-20001215-dirtool
273    Description:
274    
275    - "dir" tool added.
276    - improvements and cleanup to Tools structure
277    - documentation updates
278    
279    ----------------------------------------------------------------------
280    Name: Allen Leung
281    Date: Thu Dec 14 03:45:24 EST 2000
282    Description:
283    Tag:  leunga-20001214-int-inf
284    Description:
285    
286       In IntInf, added these standard functions, which are missing from our
287    implementation:
288    
289        andb : int * int -> int
290        xorb : int * int -> int
291        orb  : int * int -> int
292        notb : int -> int
293         <<   : int * word -> int
294        ~>>  : int * word -> int
295    
296       Not tested, I hope they are correct.
297    
298    ----------------------------------------------------------------------
299    Name: Allen Leung
300    Date: Fri Dec  8 19:23:26 EST 2000
301    Description:
302    Tag:  leunga-20001208-nowhere
303    Description:
304    
305      Slight improvements to the 'nowhere' tool to handle OR-patterns,
306    to generate better error messages etc.  Plus a brief manual.
307    
308    ----------------------------------------------------------------------
309    Name: Lal George
310    Date: 2000/12/08 09:54:02 EST 2000
311    Tag: Release_110_31
312    Description:
313    
314    - Version 110.31
315    ----------------------------------------------------------------------
316    Name: Allen Leung
317    Date: Thu Dec  7 22:01:04 EST 2000
318    Tag:  leunga-20001207-cell-monster-hack
319    Description:
320    
321    Major MLRISC internal changes.  Affect all clients.
322    Summary:
323    
324    1.  Type CELLS.cell = int is now replaced by a datatype.
325        As a result, the old regmap is now gone.  Almost all interfaces
326        in MLRISC change as a consequence.
327    
328    2.  A new brand version of machine description tool (v3.0) that generates
329        modules expecting the new interface.  The old version is removed.
330    
331    3.  The RA interface has been further abstracted into two new functors.
332        RISC_RA and X86RA.  These functors have much simpler interfaces.
333        [See also directory MLRISC/demo.]
334    
335    4.  Some other new source->source code generation tools are available:
336    
337        a. MLRISC/Tools/RewriteGen -- generate rewriters from rules.
338        b. MLRISC/Tools/WhereGen -- expands conditional pattern matching rules.
339           I use this tool to generate the peephole optimizers---with the new
340           cell type changes, peephole rules are becoming difficult to write
341           without conditional pattern matching.
342    
343    5.  More Intmap -> IntHashTable change.  Previous changes by Matthias didn't
344        cover the entire MLRISC source tree so many things broke.
345    
346    6.  CM files have been moved to the subdirectory MLRISC/cm.
347        They are moved because there are a lot of them and they clutter up the
348        root dir.
349    
350    7.  More detailed documentation to come...
351    
352        NOTE: To rebuild from 110.30 (ftp distribution), you'll have to do
353        a makeml -rebuild first.  This is because of other other
354        changes that Matthias has made (see below).
355    
356    
357    ----------------------------------------------------------------------
358    Name: Matthias Blume
359    Date: 2000/11/30 23:12:00 JST
360    Tag: blume-20001130-filereorg
361    Description:
362    
363    Some manual updates and some file reorganizations in CM.
364    
365    ----------------------------------------------------------------------
366    Name: Matthias Blume
367    Date: 2000/11/24 17:45:00 JST
368    Tag: blume-20001124-link
369    Description:
370    
371    Drastically improved link traversal code for the case that the dynamic
372    value was already loaded at bootstrap time.  As a result, CM and CMB
373    now both load blazingly fast -- even on a very slow machine.  Also,
374    memory consumption has been further reduced by this.
375    
376    Warning: The format of the PIDMAP file has changed.  THerefore, to
377    bootstrap you have to do this:
378    
379    1. Run CMB.make
380    2. Make a symbolic link for the boot directory:
381         ln -s sml.boot.ARCH-OS xxx
382    3. "Rebuild" the boot directory:
383         ./makeml -boot xxx -rebuild sml ; rm xxx
384    4. Boot normally:
385          ./makeml
386    
387    ----------------------------------------------------------------------
388    Name: Matthias Blume
389    Date: 2000/11/21 21:20:00 JST
390    Tag: blume-20001121-tools
391    Description:
392    
393    Continued hacking on autoloading problem -- with success this time.
394    Also changed tool-plugin mechanism.  See new CM manual.
395    
396    ----------------------------------------------------------------------
397    Name: Matthias Blume
398  Date: 2000/11/19 14:30:00 JST  Date: 2000/11/19 14:30:00 JST
399  Tag:  blume-20001119-autoload  Tag:  blume-20001119-autoload
400  Description:  Description:

Legend:
Removed from v.734  
changed lines
  Added in v.801

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