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 682, Tue Jul 4 06:25:51 2000 UTC revision 757, Thu Dec 21 14:54:56 2000 UTC
# Line 13  Line 13 
13  Description:  Description:
14  ----------------------------------------------------------------------  ----------------------------------------------------------------------
15  Name: Matthias Blume  Name: Matthias Blume
16    Date: 2000/12/21 23:55:00 JST
17    Tag: blume-20001221-exn
18    Description:
19    
20    Probably most important: CM no longer silently swallows all exceptions
21    in the compiler.
22    Plus: some other minor CM changes.  For example, CM now reports some
23    sizes for generated binfiles (code, data, envpickle, lambdapickle).
24    
25    ----------------------------------------------------------------------
26    Name: Matthias Blume
27    Date: 2000/12/15 00:01:05 JST
28    Tag: blume-20001215-dirtool
29    Description:
30    
31    - "dir" tool added.
32    - improvements and cleanup to Tools structure
33    - documentation updates
34    
35    ----------------------------------------------------------------------
36    Name: Allen Leung
37    Date: Thu Dec 14 03:45:24 EST 2000
38    Description:
39    Tag:  leunga-20001214-int-inf
40    Description:
41    
42       In IntInf, added these standard functions, which are missing from our
43    implementation:
44    
45        andb : int * int -> int
46        xorb : int * int -> int
47        orb  : int * int -> int
48        notb : int -> int
49         <<   : int * word -> int
50        ~>>  : int * word -> int
51    
52       Not tested, I hope they are correct.
53    
54    ----------------------------------------------------------------------
55    Name: Allen Leung
56    Date: Fri Dec  8 19:23:26 EST 2000
57    Description:
58    Tag:  leunga-20001208-nowhere
59    Description:
60    
61      Slight improvements to the 'nowhere' tool to handle OR-patterns,
62    to generate better error messages etc.  Plus a brief manual.
63    
64    ----------------------------------------------------------------------
65    Name: Lal George
66    Date: 2000/12/08 09:54:02 EST 2000
67    Tag: Release_110_31
68    Description:
69    
70    - Version 110.31
71    ----------------------------------------------------------------------
72    Name: Allen Leung
73    Date: Thu Dec  7 22:01:04 EST 2000
74    Tag:  leunga-20001207-cell-monster-hack
75    Description:
76    
77    Major MLRISC internal changes.  Affect all clients.
78    Summary:
79    
80    1.  Type CELLS.cell = int is now replaced by a datatype.
81        As a result, the old regmap is now gone.  Almost all interfaces
82        in MLRISC change as a consequence.
83    
84    2.  A new brand version of machine description tool (v3.0) that generates
85        modules expecting the new interface.  The old version is removed.
86    
87    3.  The RA interface has been further abstracted into two new functors.
88        RISC_RA and X86RA.  These functors have much simpler interfaces.
89        [See also directory MLRISC/demo.]
90    
91    4.  Some other new source->source code generation tools are available:
92    
93        a. MLRISC/Tools/RewriteGen -- generate rewriters from rules.
94        b. MLRISC/Tools/WhereGen -- expands conditional pattern matching rules.
95           I use this tool to generate the peephole optimizers---with the new
96           cell type changes, peephole rules are becoming difficult to write
97           without conditional pattern matching.
98    
99    5.  More Intmap -> IntHashTable change.  Previous changes by Matthias didn't
100        cover the entire MLRISC source tree so many things broke.
101    
102    6.  CM files have been moved to the subdirectory MLRISC/cm.
103        They are moved because there are a lot of them and they clutter up the
104        root dir.
105    
106    7.  More detailed documentation to come...
107    
108        NOTE: To rebuild from 110.30 (ftp distribution), you'll have to do
109        a makeml -rebuild first.  This is because of other other
110        changes that Matthias has made (see below).
111    
112    
113    ----------------------------------------------------------------------
114    Name: Matthias Blume
115    Date: 2000/11/30 23:12:00 JST
116    Tag: blume-20001130-filereorg
117    Description:
118    
119    Some manual updates and some file reorganizations in CM.
120    
121    ----------------------------------------------------------------------
122    Name: Matthias Blume
123    Date: 2000/11/24 17:45:00 JST
124    Tag: blume-20001124-link
125    Description:
126    
127    Drastically improved link traversal code for the case that the dynamic
128    value was already loaded at bootstrap time.  As a result, CM and CMB
129    now both load blazingly fast -- even on a very slow machine.  Also,
130    memory consumption has been further reduced by this.
131    
132    Warning: The format of the PIDMAP file has changed.  THerefore, to
133    bootstrap you have to do this:
134    
135    1. Run CMB.make
136    2. Make a symbolic link for the boot directory:
137         ln -s sml.boot.ARCH-OS xxx
138    3. "Rebuild" the boot directory:
139         ./makeml -boot xxx -rebuild sml ; rm xxx
140    4. Boot normally:
141          ./makeml
142    
143    ----------------------------------------------------------------------
144    Name: Matthias Blume
145    Date: 2000/11/21 21:20:00 JST
146    Tag: blume-20001121-tools
147    Description:
148    
149    Continued hacking on autoloading problem -- with success this time.
150    Also changed tool-plugin mechanism.  See new CM manual.
151    
152    ----------------------------------------------------------------------
153    Name: Matthias Blume
154    Date: 2000/11/19 14:30:00 JST
155    Tag:  blume-20001119-autoload
156    Description:
157    
158    Some hacking to make autoloading faster.  Success for CMB, no success
159    so far for CM.  There is a reduced structure CM' that autoloads faster.
160    (This is a temporary, non-documented hack to be eliminated again when
161    the general problem is solved.)
162    
163    ----------------------------------------------------------------------
164    Name: Matthias Blume
165    Date: 2000/11/17 14:10:00 JST
166    Tag: blume-20001117-pickle-lib
167    Description:
168    
169    1. Eliminated comp-lib.cm
170    2. Made pickle-lib.cm
171    3. Eliminated all uses of intset.sml (from comp-lib.cm)
172    4. Replaced all uses of intmap.{sig,sml} (from comp-lib.cm) with
173       equivalent constructs from smlnj-lib.cm (INtHashTable).
174    5. Point 4. also goes for those uses of intmap.* in MLRISC.
175       Duplicated intmap modules thrown out.
176    6. Hunted down all duplicated SCC code and replaced it with
177       equivalent stuff (GraphSCCFn from smlnj-lib.cm).
178    7. Rewrote Feedback module.
179    8. Moved sortedlist.sml into viscomp-lib.cm.  Eventually it
180       should be thrown out and equivalent modules from smlnj-lib.cm
181       should be used (IntRedBlackSet, IntListSet, ...).
182    
183    Confirmed that compiler compiles to fixpoint.
184    
185    ----------------------------------------------------------------------
186    Name: Allen Leung
187    Date: 2000/11/10 18:00:00
188    Tag: leunga-20001110-new-x86-fp
189    
190    A new x86 floating point code generator has been added.
191    By default this is turned off.  To turn this on, do:
192    
193        CM.autoload "$smlnj/compiler.cm";
194        Compiler.Control.MLRISC.getFlag "x86-fast-fp" := true;
195    
196    Changes:
197    
198    1.  Changed FTAN to FPTAN so that the assembly output is correct.
199    2.  Changed the extension callback for FTANGENT to generate:
200    
201              fptan
202              fstp  %st(0)
203        instead of
204              fptan
205              fstpl ftempmem
206    
207    3.  Numerous assembly fixes for x86.
208    
209    5.  Cleaned up the machine code output module x86/x86MC.sml and added
210        support for a whole bunch of instructions and addressing modes:
211    
212          fadd/fsub/fsubr/fmul/fdiv/fdivr  %st, %st(n)
213          faddp/fsubp/fsubrp/fmulp/fdivp/fdivrp  %st, %st(n)
214          fadd/fsub/fsubr/fmul/fdiv/fdivr  %st(n), %st
215          fiadd/fisub/fisubr/fimul/fidiv/fidivr mem
216          fxch %st(n)
217          fld %st(n)
218          fst %st(n)
219          fst mem
220          fstp %st(n)
221          fucom %st(n)
222          fucomp %st(n)
223    
224        All these are now generated when the fast fp mode is turned on.
225    
226    6.  Removed the dedicated registers %st(0), ..., %st(7) from X86CpsRegs
227    
228    ----------------------------------------------------------------------
229    Name: Matthias Blume
230    Date: 2000/11/09 11:20:00 JST
231    Tag: blume-20001109-scc
232    Description:
233    
234    Eliminated some code duplication:
235    
236    1. Added "where" clause to GraphSCCFn in SML/NJ Library.
237       (Otherwise the functor is useless.)
238    2. Used GraphSCCFn where SCCUtilFun was used previously.
239    3. Got rid of SCCUtilFun (in comp-lib.cm).
240    
241    ----------------------------------------------------------------------
242    Name: Lal George
243    Date: 2000/11/06 09:02:21 EST 2000
244    Tag: Release_110_30
245    Description:
246    
247    - Version 110.30
248    ----------------------------------------------------------------------
249    Name: Matthias Blume
250    Date: 2000/11/04 14:45:00
251    Tag: blume-20001104-mlbuild
252    Description:
253    
254    - Made ml-build faster on startup.
255    - Documentation fixes.
256    
257    ----------------------------------------------------------------------
258    Name: Matthias Blume
259    Date: 2000/11/02 17:00:00 JST
260    Tag: blume-20001102-condcomp
261    Description:
262    
263    - Small tweaks to pickler -- new BOOTFILES!
264    - Version bumped to 110.29.2.
265    - Added conditional compilation facility to init.cmi (see comment there).
266    ----------------------------------------------------------------------
267    Name: Allen Leung
268    Date: 2000/10/23 19:31:00
269    Tag: leunga-20001023-demo-ra
270    
271    1. Minor RA changes that improves spilling on x86 (affects Moby and C-- only)
272    2. Test programs for the graph library updated
273    3. Some new MLRISC demo programs added
274    
275    ----------------------------------------------------------------------
276    Name: Matthias Blume
277    Date: 2000/08/31 22:15:00 JST
278    Tag: blume-20001017-errmsg
279    Description:
280    
281    More error message grief: Where there used to be no messages, there
282    now were some that had bogus error regions.  Fixed.
283    
284    ----------------------------------------------------------------------
285    Name: Matthias Blume
286    Date: 2000/08/31 17:30:00 JST
287    Tag: blume-20001017-v110p29p1
288    Description:
289    
290    I made a version 110.29.1 with new bootfiles.
291    
292    Changes:  Modified pickler/unpickler for faster and leaner unpickling.
293              CM documentation changes and a small bugfix in CM's error reporting.
294    
295    ----------------------------------------------------------------------
296    Name: Lal George
297    Date: 2000/09/27 14:42:35 EDT
298    Tag: george-20000927-nodestatus
299    Description:
300    
301    Changed the type of the nodestatus, so that:
302    
303            SPILLED(~1)             is now SPILLED
304            SPILLED(m) where m>=0   is now MEMREG(m)
305            SPILLED(s) where s<~1   is now SPILL_LOC(~s)
306    
307    ----------------------------------------------------------------------
308    Name: Matthias Blume
309    Date: 2000/09/07 14:45:00 JST
310    Tag: blume-20000907-cmerrmsg
311    Description:
312    
313    Small tweak to CM to avoid getting ML syntax error messages twice.
314    
315    ----------------------------------------------------------------------
316    Name: Matthias Blume
317    Date: 2000/08/31 18:00:00 JST
318    Tag: blume-20000831-cvsbootfiles
319    Description:
320    
321    New URL for boot files (because the 110.29 files on the BL server do
322    now work correctly with my updated install scripts for yacc and lex).
323    
324    ----------------------------------------------------------------------
325    Name: Matthias Blume
326    Date: 2000/08/08 12:33:00 JST
327    Tag: blume-20000808-manual
328    Description:
329    
330    Tiny update to CM manual.
331    
332    ----------------------------------------------------------------------
333    Name: Allen Leung
334    Date: 2000/08/7 19:31:00
335    Tag: leunga-20000807-a-whole-bunch-of-stuff
336    
337      Moby, C--, SSA, x86, machine descriptions etc.  Should only affect C--
338    and Mobdy.
339    
340    1.  x86
341    
342       a.  Fixes to peephole module by John and Dan.
343       b.  Assembly fix to SETcc by Allen.
344       c.  Fix to c-call by John.
345       d.  Fix to spilling by John.  (This one deals with the missing FSTPT case)
346       e.  Instruction selection optimization to SETcc as suggested by John.
347    
348           For example,
349    
350            MV(32, x, COND(32, CMP(32, LT, a, b), LI 1, LI 0))
351    
352           should generate:
353    
354            MOVL a, x
355            SUBL b, x
356            SHRL 31, x
357    
358    2.  IR stuff
359    
360         A bunch of new DJ-graph related algorithms added.  These
361         speed up SSA construction.
362    
363    3.  SSA + Scheduling
364    
365         Added code for SSA and scheduling to the repository
366    
367    ----------------------------------------------------------------------
368    Name: Lal George
369    Date: 2000/07/27 11:53:14 EDT
370    
371    Tag: lal-20000727-linux-ppc
372    Description:
373    
374     Made changes to support Linux PPC.
375     p.s. I have confirmation that the 110.29 boot files work fine.
376    
377    ----------------------------------------------------------------------
378    Name: Matthias Blume
379    Date: 2000/07/27 17:40:00 JST
380    Tag: blume-20000727-scripts
381    Description:
382    
383    !!!! WARNING !!!!
384    You must recompile the runtime system!
385    !!!! WARNING !!!!
386    
387    This is basically another round of script-enhancements:
388    
389    1. sml, ml-build, and ml-makedepend accept options -D and -U to define
390       and undefine CM preprocessor symbols.
391    
392    2. ml-build avoids generating a new heap image if it finds that the
393       existing one is still ok.  (The condition is that no ML file had to
394       be recompiled and all ML files are found to be older that the heap
395       file.)
396    
397       To make this work smoothly, I also hacked the runtime system as
398       well as SMLofNJ.SysInfo to get access to the heap image suffix
399       (.sparc-solaris, ...) that is currently being used.
400    
401       Moreover, the signature of CM.mk_standalone has changed.  See the
402       CM manual.
403    
404    3. ml-makedepend accepts additional options -n, -a, and -o.  (See the
405       CM manual for details.)
406    
407    4. More CM manual updates:
408        - all of the above has been documented.
409        - there is now a section describing the (CM-related) command line
410          arguments that are accepted by the "sml" command
411    
412    ----------------------------------------------------------------------
413    Name: Matthias Blume
414    Date: 2000/07/25 16:20:00 JST
415    Tag: blume-20000725-makedepend
416    Description:
417    
418    Added a script called ml-makedepend.  This can be used in makefiles
419    for Unix' make in a way very similar to the "makedepend" command for
420    C.
421    
422    The script internally uses function CM.sources.
423    
424    Synopsis:
425    
426        ml-makedepend [-f makefile] cmfile targetname
427    
428    The default for the makefile is "makefile" (or "Makefile" should
429    "makefile" not exist).
430    
431    ml-makedepend adds a cmfile/targetname-specific section to this
432    makefile (after removing the previous version of this section).  The
433    section contains a single dependency specification with targetname on
434    the LHS (targetname is an arbitrary name), and a list of files derived
435    from the cmfile on the RHS.  Some of the files on the RHS are
436    ARCH/OPSYS-specific.  Therefore, ml-makedepend inserts references to
437    "make" variables $(ARCH) and $(OPSYS) in place of the corresponding
438    path names.  The makefile writer is responsible for making sure that
439    these variables have correct at the time "make" is invoked.
440    
441    ----------------------------------------------------------------------
442    Name: Matthias Blume
443    Date: 2000/07/22 23:30:00 JST
444    Tag: blume-20000722-urlupdate
445    Description:
446    
447    Changed BOOT and config/srcarchiveurl to point to BL server:
448    
449        ftp://ftp.research.bell-labs.com/dist/smlnj/working/110.29/
450    
451    ----------------------------------------------------------------------
452    Name: Matthias Blume
453    Date: 2000/07/18 18:00:00 JST
454    Tag: blume-20000718-Version_110_29
455    Description:
456    
457    1. Updated src/compiler/TopLevel/main/version.sml to version 110.29
458    
459    2. Updated config/version to 110.29
460    
461    3. Updated config/srcarchiveurl
462    
463    3. New boot files!
464       ftp://ftp.cs.princeton.edu/pub/people/blume/sml/110.29-autofetch
465    
466    ----------------------------------------------------------------------
467    Name: Matthias Blume
468    Date: 2000/07/11 13:58:00 JST
469    Tag: blume-20000711-doctypo
470    Description:
471    
472    Fixed a few typos in CM manual.
473    
474    ----------------------------------------------------------------------
475    Name: Allen Leung
476    Date: 2000/06/15 00:38:00
477    Tag: leunga-20000704-sparc-x86
478    
479    1. x86 peephole improvement sp += k; sp -= k => nop  [from John]
480    2. fix to x86 RET bug [found by Dan Grossman]
481    3. sparc assembly bug fix for ticc instructions [found by Fermin]
482    
483       Affects c-- and moby only
484    
485    ----------------------------------------------------------------------
486    Name: Matthias Blume
487  Date: 2000/07/04 15:26:00  Date: 2000/07/04 15:26:00
488  Tag: blume-20000704-trigger  Tag: blume-20000704-trigger
489  Description:  Description:

Legend:
Removed from v.682  
changed lines
  Added in v.757

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