SCM Repository
Annotation of /sml/trunk/HISTORY
Parent Directory
|
Revision Log
Revision 578 - (view) (download)
1 : | dbm | 570 | This is the HISTORY file for the Yale SML/NJ CVS repository. |
2 : | |||
3 : | An entry should be made for _every_ commit to the repository. | ||
4 : | The entries in this file will be used when creating the README | ||
5 : | for new versions, so keep that in mind when writing the | ||
6 : | description. | ||
7 : | |||
8 : | The form of an entry should be: | ||
9 : | |||
10 : | Name: | ||
11 : | Date: | ||
12 : | Tag: <post-commit CVS tag> | ||
13 : | Description: | ||
14 : | leunga | 576 | ---------------------------------------------------------------------- |
15 : | blume | 577 | Name: Matthias Blume |
16 : | blume | 578 | Date: 2000/03/14 14:15:32 |
17 : | Tag: blume_main_v110p26p1_2 | ||
18 : | Description: | ||
19 : | |||
20 : | 1. Tools.registerStdShellCmdTool (from smlnj/cm/tool.cm) takes an | ||
21 : | additional argument called "template" which is an optional string that | ||
22 : | specifiel the layout of the tool command line. See the CM manual for | ||
23 : | explanation. | ||
24 : | |||
25 : | 2. A special-purpose tool can be "regisitered" by simply dropping the | ||
26 : | corresponding <...>-tool.cm (and/or <...>-ext.cm) into the same | ||
27 : | directory where the .cm file lives that uses this tool. (The | ||
28 : | behavior/misfeature until now was to look for the tool description | ||
29 : | files in the current working directory.) As before, tool description | ||
30 : | files could also be anchored -- in which case they can live anywhere | ||
31 : | they like. Following the recent e-mail discussion, this change should | ||
32 : | make it easier to have special-purpose tools that are shipped together | ||
33 : | with the sources of the program that uses them. | ||
34 : | |||
35 : | ---------------------------------------------------------------------- | ||
36 : | Name: Matthias Blume | ||
37 : | blume | 577 | Date: 2000/03/10 07:48:34 |
38 : | Tag: blume_main_v110p26p1_1 | ||
39 : | Description: | ||
40 : | |||
41 : | I added a re-written version of Dave's fixpt script to src/system. | ||
42 : | Changes relative to the original version: | ||
43 : | - sh-ified (not everybody has ksh) | ||
44 : | - automatically figures out which architecture it runs on | ||
45 : | - uses ./makeml a bit more cleverly | ||
46 : | - never invokes ./installml (and, thus, does not clobber your | ||
47 : | good and working installation of sml in case something goes wrong) | ||
48 : | - accepts max iteration count using option "-iter <n>" | ||
49 : | - accepts a "base" name using option "-base <base>" | ||
50 : | |||
51 : | It does not build any extraneous heap images but directly rebuilds | ||
52 : | bin- and boot-hierarchies using makeml's "-rebuild" switch. Finally, | ||
53 : | it can incorporate existing bin- and boot- hierarchies. For example, | ||
54 : | suppose the base is set to "sml" (which is the default). Then it | ||
55 : | successively builds | ||
56 : | |||
57 : | sml.bin.<arch>-unix and sml.boot.<arch>-unix | ||
58 : | then sml1.bin.<arch>-unix and sml1.boot.<arch>-unix | ||
59 : | then sml2.bin.<arch>-unix and sml2.boot.<arch>-unix | ||
60 : | ... | ||
61 : | then sml<n>.bin.<arch>-unix and sml<n>.boot.<arch>-unix | ||
62 : | |||
63 : | and so on. If any of these already exist, it will just use what's | ||
64 : | there. In particular, many people will have the initial set of bin | ||
65 : | and boot files around, so this saves time for at least one full | ||
66 : | rebuild. Having sets of the form <base><k>.{bin,boot}.<arch>-unix for | ||
67 : | <k>=1,2,... is normally not a good idea when invoking fixpt. However, | ||
68 : | they might be the result of an earlier partial run of fixpt (which | ||
69 : | perhaps got accidentially killed). In this case, fixpt will quickly | ||
70 : | move through what exists before continuing where it left off earlier, | ||
71 : | and, thus, saves a lot of time. | ||
72 : | |||
73 : | ---------------------------------------------------------------------- | ||
74 : | leunga | 576 | Name: Allen Leung |
75 : | Date: 00/03/10 02:20:00 | ||
76 : | Tag: leunga-20000310-fix_x86_asm_ra | ||
77 : | Description: | ||
78 : | dbm | 570 | |
79 : | leunga | 576 | More assembly output problems involving the indexed addressing mode |
80 : | on the x86 have been found and corrected. Thanks to Fermin Reig for the | ||
81 : | fix. | ||
82 : | |||
83 : | The interface and implementation of the register allocator have been changed | ||
84 : | slightly to accommodate the possibility to skip the register allocation | ||
85 : | phases completely and go directly to memory allocation. This is needed | ||
86 : | for C-- use. | ||
87 : | |||
88 : | dbm | 570 | ---------------------------------------------------------------------- |
89 : | blume | 572 | Name: Matthias Blume |
90 : | blume | 575 | Date: 00/03/09 10:23:53 |
91 : | Tag: blume_main_v110p26p1_0 | ||
92 : | Description: | ||
93 : | |||
94 : | * Complete re-organization of library names. Many libraries have been | ||
95 : | consolidated so that they share the same path anchor. For example, | ||
96 : | all MLRISC-related libraries are anchored at MLRISC, most libraries that | ||
97 : | are SML/NJ-specific are under "smlnj". Notice that names like | ||
98 : | host-cmb.cm or host-compiler.cm no longer exist. See system/README | ||
99 : | for a complete description of the new naming scheme. Quick reference: | ||
100 : | |||
101 : | host-cmb.cm -> smlnj/cmb.cm | ||
102 : | host-compiler.cm -> smlnj/compiler.cm | ||
103 : | full-cm.cm -> smlnj/cm.cm | ||
104 : | <arch>-<os>.cm -> smlnj/cmb/<arch>-<os>.cm | ||
105 : | <arch>-compiler.cm -> smlnj/compiler/<arch>.cm | ||
106 : | |||
107 : | * Bug fixes in CM. | ||
108 : | - exceptions in user code are being passed through (i.e., reach top level) | ||
109 : | - more bugs in paranoia mode fixed | ||
110 : | - bug related to checking group owners fixed | ||
111 : | |||
112 : | * New install.sh script that automagically fetches archive files: | ||
113 : | The new file config/srcarchiveurl must contain the URL of the | ||
114 : | (remote) directory that contains bin files (or other source archives). | ||
115 : | If install.sh does not find the archive locally, it tries to get | ||
116 : | it from that remote directory. | ||
117 : | This should simplify installation further: For machines that have | ||
118 : | access to the internet, just fetch <version>-config.tgz, unpack it, | ||
119 : | edit config/targets, and go (run config/install.sh). The scipt will | ||
120 : | fetch everything else that it might need all by itself. | ||
121 : | |||
122 : | For CVS users, this mechanism is not relevant for source archives, but | ||
123 : | it is convenient for getting new sets of binfiles. | ||
124 : | |||
125 : | Archives should be tar files compressed with either gzip, compress, or | ||
126 : | bzip2. The script recognizes .tgz, .tar, tar.gz, tz, .tar.Z, and .tar.bz2. | ||
127 : | |||
128 : | ---------------------------------------------------------------------- | ||
129 : | Name: Matthias Blume | ||
130 : | blume | 572 | Date: 2000/03/07 04:01:04 |
131 : | Tag: blume_main_v110_26_2 | ||
132 : | dbm | 570 | Description: |
133 : | blume | 572 | - size info in BOOTLIST |
134 : | * no fixed upper limits for number of bootfiles or length of | ||
135 : | bootfile names in runtime | ||
136 : | * falling back to old behavior if no BOOTLIST size info found | ||
137 : | - allocation size heuristics in .run-sml | ||
138 : | * tries to read cache size from /proc/cpuinfo (this is important for | ||
139 : | small-cache Celeron systems!) | ||
140 : | - install.sh robustified | ||
141 : | - CM manual updates | ||
142 : | - paranoid mode | ||
143 : | * no more CMB.deliver() (i.e., all done by CMB.make()) | ||
144 : | * can re-use existing sml.boot.* files | ||
145 : | * init.cmi now treated as library | ||
146 : | * library stamps for consistency checks | ||
147 : | - sml.boot.<arch>-<os>/PIDMAP file | ||
148 : | * This file is read by the CM startup code. This is used to minimize | ||
149 : | the amount of dynamic state that needs to be stowed away for the | ||
150 : | purpose of sharing between interactive system and user code. | ||
151 : | - CM.Anchor.anchor instead of CM.Anchor.{set,cancel} | ||
152 : | * Upon request by Elsa. Anchors now controlled by get-set-pair | ||
153 : | like most other CM state variables. | ||
154 : | - Compiler.CMSA eliminated | ||
155 : | * No longer supported by CM anyway. | ||
156 : | - fixed bugs in pickler that kept biting Stefan | ||
157 : | * past refs to past refs (was caused by the possibility that | ||
158 : | ad-hoc sharing is more discriminating than hash-cons sharing) | ||
159 : | * integer overflow on LargeInt.minInt | ||
160 : | - ml-{lex,yacc} build scripts now use new mechanism | ||
161 : | for building standalone programs | ||
162 : | - fixed several gcc -Wall warnings that were caused by missing header | ||
163 : | files, missing initializations, etc., in runtime (not all warnings | ||
164 : | eliminated, though) |
root@smlnj-gforge.cs.uchicago.edu | ViewVC Help |
Powered by ViewVC 1.0.0 |