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 774, Wed Jan 10 12:50:56 2001 UTC revision 824, Tue May 8 21:31:05 2001 UTC
# Line 11  Line 11 
11  Date:  Date:
12  Tag: <post-commit CVS tag>  Tag: <post-commit CVS tag>
13  Description:  Description:
14    
15    ----------------------------------------------------------------------
16    Name: Lal George
17    Date: 2001/05/08  17:26:09 EDT
18    Tag: george-20010508-omit-frameptr
19    Description:
20    
21    Changes to implement the omit-frame-pointer optimization to support
22    raw C calls. For now, there is only support on the Intel x86, but
23    other architectures will follow as more experience is gained with this.
24    
25    
26    ----------------------------------------------------------------------
27    Name: Matthias Blume
28    Date: 2001/05/07 14:40:00 EDT
29    Tag: blume-20010507-proxies
30    Description:
31    
32    I made into "proxy libraries" all libraries that qualify for such a
33    change.  (A qualifying library is a library that has another library or
34    groups as its sole member and repeats that member's export list
35    verbatim.  A proxy library avoids this repetition by omitting its export
36    list, effectively inheriting the list that its (only) member exports.
37    See the CM manual for more explanation.)
38    The main effect is that explicit export lists for these libraries
39    do not have to be kepts in sync, making maintenance a bit easier.
40    
41    I also added copyright notices to many .cm-files.
42    
43    Last but not least, I made a new set of bootfiles.
44    
45    ----------------------------------------------------------------------
46    Name: Matthias Blume
47    Date: 2001/05/04 17:00:00 EDT
48    Tag: blume-20010504-cm-lsplit
49    Description:
50    
51    0. John merged pending changes to $/smlnj-lib.cm
52    
53    1. Allen's previous change accidentally backed out of one of Lal's
54       earlier changes.  I undid this mistake (re-introducing Lal's change).
55    
56    2. I used the new topOrder' function from graph-scc.sml (from $/smlnj-lib.cm)
57       within the compiler where applicable.  There is some code simplification
58       because of that.
59    
60    3. The "split" phase (in FLINT) is now part of the default list of phases.
61       Compiler.Control.LambdaSplitting.* can be used to globally control the
62       lambda-splitting (cross-module-inlining) engine.  In addition to that,
63       it can now also be controlled on a per-source basis: CM has been taught
64       a new tool parameter applicable to ML source files.
65    
66       - To turn lambda-splitting off completely:
67            local open Compiler.Control.LambdaSplitting in
68                val _ = set Off
69            end
70       - To make "no lambda-splitting" the global default (but allow per-source
71         overriding); this is the initial setting:
72            local open Compiler.Control.LambdaSplitting in
73                val _ = set (Default NONE)
74            end
75       - To make "lambda-splitting with aggressiveness a" the global default
76         (and allow per-source overriding):
77            local open Compiler.Control.LambdaSplitting in
78                val _ = set (Default (SOME a))
79            end
80    
81       - To turn lambda-splitting off for a given ML souce file (say: a.sml)
82         write (in the respective .cm-file):
83            a.sml (lambdasplitting:off)
84       - To turn lambda-splitting for a.sml on with minimal aggressiveness:
85            a.sml (lambdasplitting:on)
86       - To turn lambda-splitting for a.sml on with aggressiveness <a> (where
87         <a> is a decimal non-negative integer):
88            a.sml (lambdasplitting:<a>)
89       - To turn lambda-splitting for a.sml on with maximal aggressiveness:
90            a.sml (lambdasplitting:infinity)
91       - To use the global default for a.sml:
92            a.sml (lambdasplitting:default)
93         or simply
94            a.sml
95    
96    ----------------------------------------------------------------------
97    Name: Allen Leung
98    Date: 2001/05/04 01:57:00 EDT
99    Tag: leunga-20010504-sync
100    Description:
101    
102      MLRISC features.
103    
104      1. Fix to CMPXCHG instructions.
105      2. Changed RA interface to allow annotations in callbacks.
106      3. Added a new method to the stream interface to allow annotations updates.
107    
108    ----------------------------------------------------------------------
109    Name: Matthias Blume
110    Date: 2001/05/01 11:45:00 EDT
111    Tag: blume-20010501-pcedittmp
112    Description:
113    
114    Changed install.sh to use the current working directory instead of
115    /usr/tmp for a temporary file (pcedittmp).  The previous choice
116    of /usr/tmp caused trouble with MacOS X because of file premission
117    problems.
118    
119    ----------------------------------------------------------------------
120    Name: Matthias Blume
121    Date: 2001/04/20 11:10:00 EDT
122    Tag: blume-20010420-inMLflag
123    Description:
124    
125     - added vp_limitPtrMask to vproc-state.h
126       (for use by the raw-C-calls mechanism to implement proper interrupt
127        handling)
128     - made the ML compiler aware of various data-structure offsets so it
129       can generate code for accessing the vp_inML flag and vp_limitPtrMask
130     - tweaked mlriscGen.sml to have it emit interrupt-handling code for
131       raw C-calls
132    
133    ----------------------------------------------------------------------
134    Name: Lal George
135    Date: 2001/04/20 09:15:28 EDT
136    Tag: george-20010420-macosX
137    Description:
138    
139     - Changes to port to Mac OS X; Darwin.
140    
141     - In the process I found that sqrt was broken on the PPC, because the
142       fsqrt instruction is not implemented.
143    
144    ----------------------------------------------------------------------
145    Name: Matthias Blume
146    Date: 2001/04/18 12:45:00 EDT
147    Tag: blume-20010418-ccalls
148    Description:
149    
150     - fixed two off-by-4 errors in the x86-specific c-calls implementation
151       (this bug prevented structure arguments containing pointers from being
152        passed correctly)
153     - changed the raw-C-call code in mlriscGen.sml in such a way that
154       structure arguments are represented as a pointer to the beginning
155       of the structure (instead of having a series of synthesized arguments,
156       one for each structure member)
157    
158     - made makeml script's verbosity level configurable via environment
159       variable (MAKEML_VERBOSITY)
160    
161     - eliminated placeholder implementations for f32l, w16s, i16s, and f32s
162       in rawmem-x86.sml; we are now using the real thing
163    
164    ----------------------------------------------------------------------
165    Name: Matthias Blume
166    Date: 2001/03/22 16:25:00 EST
167    Tag: blume-20010322-bootfiles
168    Description:
169    
170    Created a new set of bootfiles (for your automatic installation convenience).
171    
172    ----------------------------------------------------------------------
173    Name: Matthias Blume
174    Date: 2001/03/22 15:10:00 EST
175    Tag: blume-20010322-rawmem-parcm
176    Description:
177    
178    1. All "raw memory access" primitives for the new FFI are implemented now
179       (at least on the x86).
180    2. Some further cleanup of CM's parallel make mechanism.
181    
182    ----------------------------------------------------------------------
183    Name: Matthias Blume
184    Date: 2001/03/19 17:53:00 EST
185    Tag: blume-20010319-parallel
186    Description:
187    
188    Parallel make (using compile servers) now works again.
189    
190    To this end, CM.stabilize and CMB.make have been modified to work in
191    two passes when compile servers are attached:
192       1. Compile everything, do not perform stabilization; this pass
193          uses compile servers
194       2. Stabilize everything; this pass does not use compile servers
195    If there are no compile servers, the two passes are combined into one
196    (as before).  Splitting the passes increases the inherent parallelism
197    in the dependency graph because the entire graph including all
198    libraries is available at the same time.  This, in turn, improves
199    server utilization.  The downside is that the master process will
200    have to do some extra work after compilation is done (because for
201    technical reasons it must re-read all the binfiles during stabilization).
202    
203    ----------------------------------------------------------------------
204    Name: Matthias Blume
205    Date: 2001/03/16 12:22:00 EST
206    Tag: blume-20010316-bootfiles
207    Description:
208    
209    Created a new set of bootfiles (for your automatic installation convenience).
210    
211    ----------------------------------------------------------------------
212    Name: Matthias Blume
213    Date: 2001/03/16 11:00:00 EST
214    Tag: blume-20010316-MLTREE-fixup
215    Description:
216    
217    This is a minor fixup for an (untagged) earlier commit by Allen.
218    (A file was missing).
219    
220    ----------------------------------------------------------------------
221    Name: Allen Leung
222    Date: Mon Mar  5 18:54:57 EST 2001
223    Tag: leunga-20010305-cut-support
224    
225    1. New support for alternative control-flow in MLTREE.
226       Currently we support
227    
228          FLOW_TO(CALL ...., [k1,...,kn])
229    
230       This is needed for 'cuts to' in C-- and try/handle-like constructs
231       in Moby
232    
233       New assembler flag "asm-show-cutsto" to turn on control-flow debugging.
234    
235    2. Register Allocator
236    
237       Changes in interface [from Fermin, John]
238    
239    3. Alpha 8-bit SLL support [Fermin]
240    
241    4. All architectures
242    
243       A new module (ClusterExpandCopies) for expanding parallel copies.
244    
245    ----------------------------------------------------------------------
246    Name: Allen Leung
247    Date: 2001/02/27 23:07:00 EST
248    Tag: leunga-20010227-minor-stuff
249    
250    1. Alpha bug fix for CMOVNE
251    2. Handle mltree COND(..,FCMP ...,...)
252    3. Bug fix in simplifier
253    
254    ----------------------------------------------------------------------
255    Name: Matthias Blume
256    Date: 2001/01/30 17:50:00 EST
257    Tag: blume-20010130-sync
258    Description:
259    
260    This is just a minor update to sync my devel branch with the main brach.
261    The only visible change is the addition of some README files.
262    
263    ----------------------------------------------------------------------
264    Name: Matthias Blume
265    Date: 2001/01/12 23:30:00 JST
266    Tag: blume-20010112-bootfiles
267    Description:
268    
269    Made a new set of bootfiles that goes with the current state of the
270    repository.
271    
272    ----------------------------------------------------------------------
273    Name: Matthias Blume
274    Date: 2001/01/12 21:20:00 JST
275    Tag: blume-20010112-sync
276    Description:
277    
278    I am just flushing out some minor changes that had accumulated in
279    my private branch in order to sync with the main tree.  (This is
280    mainly because I had CVS trouble when trying to merge _into_ my
281    private branch.)
282    
283    Most people should be completely unaffected by this.
284    
285    ----------------------------------------------------------------------
286    Name: Allen Leung
287    Date: Thu Jan 11 21:03:00 EST 2001
288    Tag: leunga-20010111-labexp=mltree
289    Description:
290    
291    1.  Removed the type LabelExp and replace it by MLTree.
292    2.  Rewritten mltree-simplify with the pattern matcher tool.
293    3.  There were some bugs in alpha code generator which would break
294        64-bit code generation.
295    4.  Redo the tools to generate code with the
296    5.  The CM files in MLRISC (and in src/system/smlnj/MLRISC)
297        are now generated by perl scripts.
298    
299  ----------------------------------------------------------------------  ----------------------------------------------------------------------
300  Name: Matthias Blume  Name: Matthias Blume
301  Date: 2001/01/10 21:55:00 JST  Date: 2001/01/10 21:55:00 JST

Legend:
Removed from v.774  
changed lines
  Added in v.824

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