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 607, Mon Apr 10 16:31:03 2000 UTC revision 643, Fri May 12 08:29:15 2000 UTC
# Line 12  Line 12 
12  Tag: <post-commit CVS tag>  Tag: <post-commit CVS tag>
13  Description:  Description:
14  ----------------------------------------------------------------------  ----------------------------------------------------------------------
15    Name: Matthias Blume
16    Date: 2000/05/12 17:30:00 JST
17    Tag: blume-20000512-anchors
18    Description:
19    
20    !!! NEW BOOT FILES !!!
21    
22    This change is in preparation of fading out support for "implicitly
23    anchored path names".  I went through all sources and used the
24    explicit (and relatively new) $-notation.  See system/README and the
25    CM manual for more info on this.
26    
27    I also modified the anchoring scheme for some things such as "smlnj",
28    "MLRISC", "cm", etc. to take advantage of the fact that explicit
29    anchors are more expressive: anchor name and first arc do not have to
30    coincide.  This entails the following user-visible change:
31    
32    You have to write $smlnj/foo/bar instead of smlnj/foo/bar.  In
33    particular, when you fire up sml with a command-line argument, say,
34    e.g.:
35    
36       sml '$smlnj/cmb.cm'
37    
38    At the ML toplevel prompt:
39    
40       CM.autoload "$smlnj/cmb.cm";
41    
42    There is also a new controller in CM.Control that can be used to turn
43    off all remaining support for implicit anchors by saying:
44    
45        CM.autoload "$smlnj/
46        #set CM.Control.implicit_anchors false;
47    
48    This causes CM to reject implicitly anchored paths.  This is (for the
49    time being) less permissive than the "final" version where there will
50    be no more such implicit anchors and relative paths will be just that:
51    relative.
52    
53    The next step (version after next version?) will be to make the
54    default for CM.Control.implicit_anchors false.  After the dust has
55    settled, I can then produce the "final" version of this...
56    
57    Note: Since bootstrapping is a bit tricky, I provided new boot files.
58    
59    ----------------------------------------------------------------------
60    Name: Matthias Blume
61    Date: 2000/05/11 16:30:00 JST
62    Tag: blume-20000511-sources
63    Description:
64    
65    The main change is that I added function CM.sources as a generalized
66    version of the earlier CM.makedepend.  This entails the following
67    additional changes:
68    
69      - CM.makedepend has been dropped.
70    
71      - CM manual has been updated.
72    
73      - TOOLS signature and API have been changed.
74    
75    ----------------------------------------------------------------------
76    Name: Allen Leung
77    Date: 2000/05/10 21:17 EDT
78    Tag: leunga-20000510-moby-c--ssa
79    Description:
80    
81      Various bug fixes and new features for C--, Moby and MLRISC optimizations.
82    None of these affect SML/NJ.
83    
84    1. Register Allocation
85    
86        a. A new ra spilling module (ra/ra-spill-with-renaming) is implemented.
87           This module tries to remove local (i.e. basic block level) redundancies
88           during spilling.
89    
90        b. A new framework for performing region based register allocation.
91           Not yet entirely functional.
92    
93    2. X86
94    
95       a. DefUse for POP was missing the stack pointer [found by Lal]
96       b. Reload for CALL was incorrect in X86Spill [found by John]
97       c. Various fixes in X86Spill so that it can be used correctly for
98          the new spilling module.
99    
100    3. SSA/IR
101    
102       a. New module ir/dj-dataflow.sml implements elimination based
103          data flow analysis.
104    
105    4. MLRiscGen
106    
107       a. Fix for gc type annotation
108    
109    5. MDGen
110    
111       Various fixes for machine description -> ml code translation.  For ssa
112       only.
113    
114    ----------------------------------------------------------------------
115    Name: Allen Leung
116    Date: 2000/05/08 22:17 EDT
117    Tag: leunga-20000508-labexp
118    Description:
119    
120      Fermin has found a few assembly problems with constant expressions
121      generated in LabelExp.  Mostly, the problems involve extra parentheses,
122      which choke on dumb assemblers.  This is his fix.
123    
124    ----------------------------------------------------------------------
125    Name: Dave MacQueen
126    Date: 2000/04/09 14:00 EDT
127    Tag: dbm-20000502-Version_110_28
128    Description:
129    
130    1. Updated src/compiler/TopLevel/main/version.sml to version 110.28
131    
132    2. Updated config/version to 110.28
133    
134    3. Updated config/srcarchiveurl
135    
136    3. New boot files!
137       ftp://ftp.research.bell-labs.com/dist/smlnj/working/110.28/
138    
139    ----------------------------------------------------------------------
140    Name: Matthias Blume
141    Date: 2000/05/01 19:05:00 JST
142    Tag: blume-20000501-noweb
143    Description:
144    
145    A new noweb tool has been added.  The existing system is entirely
146    unaffected by this, but some CM users have asked for renewed noweb
147    support.  Everything is documented in the CM manual.
148    
149    New (plugin) libraries:
150    
151       noweb-tool.cm
152       nw-ext.cm
153    
154    ----------------------------------------------------------------------
155    Name: Dave MacQueen
156    Date: 2000/04/30 12:40PM EDT
157    Tag: dbm-20000430-bug_fixes
158    Description:
159    
160    1. Fix for bug 1498
161       smlnj/src/system/Basis/Implementation/Unsafe/object.sig
162       smlnj/src/system/Basis/Implementation/Unsafe/object.sml
163         added toRealArray function
164       smlnj/src/compiler/MiscUtil/print/ppobj.sml
165         added check for tag Obj.RealArray to array printing case in ppObj
166    
167    2. Fix for bug 1510
168       smlnj/src/compiler/Semant/types/typesutil.sml
169         fixed definition of dummyargs (used by equalTycon) so that
170         dummy args are distinct types
171    
172    ----------------------------------------------------------------------
173    Name: Matthias Blume
174    Date: 2000/04/30 01:00:00 JST
175    Tag: blume-20000430-versions
176    Description:
177    
178    1. CM version numbering added.  This is an implementation of Lal's
179       proposal for adding version numbers and version checking to .cm
180       files.  Lal said that his proposal was just that -- a proposal.
181       For the time being I went ahead and implemented it so that people
182       can comment on it.  Everything is completely backward-compatible
183       (except for the stable library format, i.e., new bootfiles!).
184    
185       As usual, see the CM manual for details.
186    
187    2. An alternative syntax for anchored paths has been implemented.
188       Dave has recently voiced the same concerns that I had when I did
189       this, so there should be some support.  My take is that eventually
190       I will let support for the current syntax (where anchors are
191       "implicit") fade out in favor of the new, explicit syntax.
192       In order to be backward-compatible, both old and new syntax are
193       currently supported.
194    
195       Again, see the CM manual for details.
196    
197    3. Parallel make is trying to be slightly smarter:  When the master
198       process finds a "bottleneck", i.e., when there is only one
199       compilation unit that can be compiled and everybody else is
200       waiting on it, then it will simply compile it directly instead
201       of clumsily telling one of the slaves to do it.
202    
203    4. Support for "unsharing" added.  This is necessary in order to be
204       able to have two different versions of the same library running
205       at the same time (e.g., for trying out a new MLRISC while still
206       having the old MLRISC linked into the current compiler, etc.)
207       See the CM manual.
208    
209    5. Simple "makedepend" functionality added for generating Makefile
210       dependency information.  (This is rather crude at the moment.
211       Expect some changes here in the future.)
212    
213    6. ".fun" added as a recognized suffix for ML files. Also documented
214       explicitly in the manual that the fallback behavior (unknown suffix
215       -> ML file) is not an official feature!
216    
217    7. Small changes to the pickler for stable libraries.
218    
219    8. Several internal changes to CM (for cleanup/improvement).
220    
221    
222    !!!! NEW BINFILES !!!!
223    
224    ----------------------------------------------------------------------
225    Name: Matthias Blume
226    Date: 2000/04/28 17:30:00 JST
227    Tag: blume-20000428-pathconfig
228    Description:
229    
230    1. I changed config/install.sh to remove duplicate entries from the
231       lib/pathconfig file at the end.  Moreover, the final version of
232       lib/pathconfig is sorted alphabetically.  The same (sorting) is done
233       in src/system/installml.
234    
235    2. The config/install.sh script now consistently uses relative
236       pathnames in lib/pathconfig whenever the anchor is in the lib
237       directory.  (So far this was true for the libraries that come
238       pre-compiled and bundled as part of the bootfiles but not for
239       libraries that are compiled by the script itself.)
240    
241    ----------------------------------------------------------------------
242    Name: Matthias Blume
243    Date: 2000/04/26 13:10:00 JST
244    Tag: blume-20000426-fun_suffix
245    Description:
246    
247    Added ".fun" as a recognized file name suffix (for ML code).
248    
249    ----------------------------------------------------------------------
250    Name: Allen Leung
251    Date: 2000/04/25 17:00:00 EST
252    Tag: leunga-20000425-alpha-ra
253    Description:
254    
255    1. Alpha
256    
257        PSEUDOARITH was missing in AlphaRewrite.  This causes an endless loop
258    in C--.
259    
260    2. RA
261    
262       Added a flag "ra-dump-size" to print out the size of the flowgraph
263       and the interference graph.
264    
265    ----------------------------------------------------------------------
266    Name: Dave MacQueen
267    Date: 2000/04/25/
268    Tag: dbm-20000425-mlyacc_doc_examples
269    Description:
270      Updated mlyacc.tex sections 5 and 7 for SML '97 and CM.
271      Updated all three examples in src/ml-yacc/examples to run
272      under 110.* using CM.make.
273    
274    ----------------------------------------------------------------------
275    Name: Allen Leung
276    Date: 2000/04/20 23:04:00 EST
277    Tag: leunga-20000420-ssa-c---stuff
278    Description:
279    
280      This update synchronizes my repository with Yale's.  Most of these
281    changes, however, do not affect SML/NJ at all (the RA is an exception).
282    
283    1. Register Allocator
284    
285       a. An improvement in the interference graph construction:
286          Given a copy
287    
288                s <- t
289    
290          no interference edge between s and t is added for this definition of s.
291    
292       b. I've added two new spill heuristic modules that Fermin and I developed
293          (in the new library RA.cm). These are unused in SML/NJ but maybe
294          useful for others (Moby?)
295    
296    2. X86
297    
298       a. Various fixes in the backend provided by Fermin [C--] and Lal.
299    
300    3. Alpha
301    
302       a. Added the BSR instruction and code generation that goes with it [C--]
303       b. Other fixes too numerous to recount provided by Fermin [C--]
304    
305    4. Regmaps
306    
307       a. The regmaps are not initialized with the identity physical bindings
308          at creation time.  This is unneeded.
309    
310    5. MLRISC Optimizations
311    
312       a. The DJ-Graph module can now compute the iterated dominance frontiers
313          intersects with liveness incrementally in linear time! Woohoo!
314          This is now used in my new SSA construction algorithm.
315    
316       b. THe branch reorganization module is now smarter about linear chains of
317          basic blocks.
318    
319    
320    ----------------------------------------------------------------------
321    Name: Matthias Blume
322    Date: 2000/04/12 13:52:00 JST
323    Tag: blume_main_v110p27_1
324    Description:
325    
326    Changed install.sh script to handle archive files without version number
327    and to use "boot.<arch>-<os>" instead of "sml.boot.<arch>-<os>" for the
328    name of the boot file archive.
329    
330    ----------------------------------------------------------------------
331  Name: Dave MacQueen  Name: Dave MacQueen
332  Date: 2000/04/09 14:00 EDT  Date: 2000/04/09 14:00 EDT
333  Tag: dbm-20000410-Version_110_27  Tag: dbm-20000410-Version_110_27

Legend:
Removed from v.607  
changed lines
  Added in v.643

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