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 648, Thu May 25 21:28:21 2000 UTC revision 660, Thu Jun 15 04:40:56 2000 UTC
# Line 13  Line 13 
13  Description:  Description:
14  ----------------------------------------------------------------------  ----------------------------------------------------------------------
15  Name: Allen Leung  Name: Allen Leung
16    Date: 2000/06/15 00:38:00
17    Tag: leunga-20000615-x86-peephole
18    
19    x86 Peephole fix by Fermin.  Affects c-- and moby only.
20    
21    ----------------------------------------------------------------------
22    Name: Matthias Blume
23    Date: 2000/06/12 11:40:00
24    Tag: blume-20000612-parmakefix
25    Description:
26    
27    More cleanup after changing the file naming scheme: This time I
28    repaired the parallel make mechanism for CMB.make which I broke earlier.
29    
30    ----------------------------------------------------------------------
31    Name: Allen Leung
32    Date: 2000/06/09 01:25:00
33    Tag: leunga-20000609-various
34    
35    None of these things should affect normal SML/NJ operations
36    
37    1. Peephole improvements provided by Fermin (c--)
38    2. New annotation DEFUSE for adding extra dependence (moby)
39    3. New X86 LOCK instructions (moby)
40    4. New machine description language for reservation tables (scheduling)
41    5. Fixes to various optimization/analysis modules (branch chaining, dominator
42       trees etc.)
43    6. I've changed the CM files so that they can work with versions
44       110.0.6, 110.25 and 110.28
45    
46    ----------------------------------------------------------------------
47    Name: Matthias Blume
48    Date: 2000/06/09 12:40:00
49    Tag: blume-20000609-log
50    Description:
51    
52    - Removed all(?) remaining RCS Log entries from sources.
53    
54    - Fixed bug in ml-yacc and ml-lex sources (use explicit anchors for
55      anchored paths).
56    
57    ----------------------------------------------------------------------
58    Name: Matthias Blume
59    Date: 2000/06/07 17:00:00 JST
60    Tag: blume-20000607-no-implicit-anchors
61    Description:
62    
63    1. This update changes the default setting for
64    CM.Control.implicit_anchors from true to false.  This means that
65    implicit anchors are no longer permitted by default.  I also tried to
66    make sure that nothing else still relies on implicit anchors.
67    (This is the next step on the schedule towards a CM that does not even
68    have the notion of implicit anchors anymore.)
69    
70    2. More CM manual updates.
71    
72    3. I managed to track down and fix the pickling bug I mentioned last
73    time.  Because of the previously existing workaround, this entails no
74    immediate practical changes.
75    
76    ----------------------------------------------------------------------
77    Name: Matthias Blume
78    Date: 2000/06/06 11:15:00 JST
79    Tag: blume-20000606-lazierpickle
80    Description:
81    
82    !!!! NEW BOOT FILES !!!!
83    
84    * The main purpose of this update is to make library pickles lazier in
85    order to reduce the initial space penalty for autoloading a library.
86    As a result, it is now possible to have $smlnj/compiler.cm
87    pre-registered.  This should take care of the many complaints or
88    inquiries about missing structure Compiler.  This required changes to
89    CM's internal data structures and small tweaks to some algorithms.
90    
91    As a neat additional effect, it is no longer necessary (for the sake
92    of lean heap image files) to distinguish between a "minimal" CM and a
93    "full" CM.  Now, there is only one CM (i.e., the "full" version:
94    $smlnj/cm.cm aka $smlnj/cm/full.cm), and it is always available at the
95    interactive top level. ($smlnj/cm/minimal.cm is gone.)
96    
97    To make the life of compiler-hackers easier, "makeml" now also
98    pre-registers $smlnj/cmb.cm (aka $smlnj/cmb/current.cm).  In other
99    words, after you bootstrap a new sml for the first time, you will not
100    have to autoload $smlnj/cmb.cm again afterwards.  (The first time
101    around you will still have to do it, though.)
102    
103    * A second change consists of major updates to the CM manual.  There
104    are now several appendices with summary information and also a full
105    specification of the CM description file syntax.
106    
107    * In directory src/system I added the script "allcross".  This script
108    invokes sml and cross-compiles the compiler for all supported
109    architectures.  (Useful when providing a new set of boot files.)
110    
111    * There seems to be a latent bug in my "lazy pickles" mechanism.  I
112    added a small tweak to pickle-util.sml to work around this problem,
113    but it is not a proper fix yet.  I will investigate further.  (The
114    effect of the bug was an inflation of library pickle size.)
115    
116    * Version number increased to 110.28.1 (to avoid compatibility problems).
117    
118    ----------------------------------------------------------------------
119    Name: Allen Leung
120  Date: 2000/05/25 17:28 EDT  Date: 2000/05/25 17:28 EDT
121  Tag: leunga-20000525-ra  Tag: leunga-20000525-ra
122  Description:  Description:
# Line 502  Line 606 
606    
607  3.  Assembly  3.  Assembly
608    
609      When generating assemby, resolve the value of client defined constants,      When generating assembly, resolve the value of client defined constants,
610      instead of generating symbolic values.  This is controlled by the      instead of generating symbolic values.  This is controlled by the
611      new flag "asm-resolve-constants", which is default to true.      new flag "asm-resolve-constants", which is default to true.
612    
# Line 525  Line 629 
629    
630  To this end, I arranged that instead of "structure Core" as "structure  To this end, I arranged that instead of "structure Core" as "structure
631  _Core" is bound in the pervasive environment.  Core access is done via  _Core" is bound in the pervasive environment.  Core access is done via
632  _Core (which can never be accidentially rebound because _Core is not a  _Core (which can never be accidentally rebound because _Core is not a
633  legal surface-syntax symbol).  legal surface-syntax symbol).
634    
635  The current solution is much cleaner because the core environment is  The current solution is much cleaner because the core environment is
# Line 535  Line 639 
639  with dynamic and symbolic parts of the core environment.  with dynamic and symbolic parts of the core environment.
640    
641  Remaining hackery (to bind the "magic" symbol _Core) is localized in the  Remaining hackery (to bind the "magic" symbol _Core) is localized in the
642  compilation mananger's bootstrap compiler (actually: in the "init group"  compilation manager's bootstrap compiler (actually: in the "init group"
643  handling).  See the comments in src/system/smlnj/init/init.cmi for  handling).  See the comments in src/system/smlnj/init/init.cmi for
644  more details.  more details.
645    
# Line 650  Line 754 
754     (specified in the .cm file at each instance where the tool's class is     (specified in the .cm file at each instance where the tool's class is
755     used).     used).
756    
757     This was done to accomodate the new "make" and "shell" tools which     This was done to accommodate the new "make" and "shell" tools which
758     facilitate fairly seemless hookup to portions of code managed using     facilitate fairly seamless hookup to portions of code managed using
759     Makefiles or Shell scripts.     Makefiles or Shell scripts.
760    
761     There are no classes "shared" or "private" anymore.  Instead, the     There are no classes "shared" or "private" anymore.  Instead, the
# Line 663  Line 767 
767    
768     All existing tools are described in the CM manual.     All existing tools are described in the CM manual.
769    
770     - Slightly better error handling.  (CM now surpresses many followup     - Slightly better error handling.  (CM now suppresses many followup
771     error messages that tended to be more annoying than helpful.)     error messages that tended to be more annoying than helpful.)
772    
773  2. Major changes to the compiler's static environment data structures.  2. Major changes to the compiler's static environment data structures.
# Line 797  Line 901 
901    
902       I've changed andl to testl in the floating point test sequence       I've changed andl to testl in the floating point test sequence
903       whenever appropriate.  The Intel optimization guide states that       whenever appropriate.  The Intel optimization guide states that
904       testl is perferable to andl.       testl is preferable to andl.
905    
906  7. RA (x86 only)  7. RA (x86 only)
907    
# Line 979  Line 1083 
1083    
1084  1. Tools.registerStdShellCmdTool (from smlnj/cm/tool.cm) takes an  1. Tools.registerStdShellCmdTool (from smlnj/cm/tool.cm) takes an
1085  additional argument called "template" which is an optional string that  additional argument called "template" which is an optional string that
1086  specifiel the layout of the tool command line.  See the CM manual for  specifies the layout of the tool command line.  See the CM manual for
1087  explanation.  explanation.
1088    
1089  2. A special-purpose tool can be "regisitered" by simply dropping the  2. A special-purpose tool can be "registered" by simply dropping the
1090  corresponding <...>-tool.cm (and/or <...>-ext.cm) into the same  corresponding <...>-tool.cm (and/or <...>-ext.cm) into the same
1091  directory where the .cm file lives that uses this tool.  (The  directory where the .cm file lives that uses this tool.  (The
1092  behavior/misfeature until now was to look for the tool description  behavior/misfeature until now was to look for the tool description
# Line 1026  Line 1130 
1130  rebuild.  Having sets of the form <base><k>.{bin,boot}.<arch>-unix for  rebuild.  Having sets of the form <base><k>.{bin,boot}.<arch>-unix for
1131  <k>=1,2,... is normally not a good idea when invoking fixpt.  However,  <k>=1,2,... is normally not a good idea when invoking fixpt.  However,
1132  they might be the result of an earlier partial run of fixpt (which  they might be the result of an earlier partial run of fixpt (which
1133  perhaps got accidentially killed).  In this case, fixpt will quickly  perhaps got accidentally killed).  In this case, fixpt will quickly
1134  move through what exists before continuing where it left off earlier,  move through what exists before continuing where it left off earlier,
1135  and, thus, saves a lot of time.  and, thus, saves a lot of time.
1136    
# Line 1076  Line 1180 
1180    it from that remote directory.    it from that remote directory.
1181    This should simplify installation further:  For machines that have    This should simplify installation further:  For machines that have
1182    access to the internet, just fetch <version>-config.tgz, unpack it,    access to the internet, just fetch <version>-config.tgz, unpack it,
1183    edit config/targets, and go (run config/install.sh).  The scipt will    edit config/targets, and go (run config/install.sh).  The script will
1184    fetch everything else that it might need all by itself.    fetch everything else that it might need all by itself.
1185    
1186    For CVS users, this mechanism is not relevant for source archives, but    For CVS users, this mechanism is not relevant for source archives, but

Legend:
Removed from v.648  
changed lines
  Added in v.660

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