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 806, Thu Mar 22 21:22:21 2001 UTC revision 837, Fri Jun 1 17:27:54 2001 UTC
# Line 14  Line 14 
14    
15  ----------------------------------------------------------------------  ----------------------------------------------------------------------
16  Name: Matthias Blume  Name: Matthias Blume
17    Date: 2001/06/01 13:30:00 EDT
18    Tag: blume-20010601-nlffi-cleanup
19    Description:
20    
21    This is mostly a cleanup of MLFFI stuff:
22    
23       - some signature files have been put into a more exposed place
24       - the ugly 'f type parameter is gone (simplifies types tremendously!)
25       - ml-nlffigen changed accordingly
26       - tutorial updated
27    
28    Other changes:
29    
30       - author's affiliation in CM manual(s) updated
31       - some more recognized keywords added to Allen's sml.sty
32    
33    ----------------------------------------------------------------------
34    Name: Matthias Blume
35    Date: 2001/05/25 15:30:00 EDT
36    Tag: blume-20010525-iptr
37    Description:
38    
39      - put the official 110.33-README (as it appears on the ftp server) under
40        CVS
41      - fixed a small bug related to incomplete pointer types in
42        ml-nlffigen
43      - small cosmetic change to the ml-nlffi-lib's "arr" type constructor
44        (it does not need the 'f type parameter)
45    
46    ----------------------------------------------------------------------
47    Name: Matthias Blume
48    Date: 2001/05/23 14:30:00 EDT
49    Tag: Release_110_33
50    Description:
51    
52    New version number (110.33).  New bootfiles.
53    
54    ----------------------------------------------------------------------
55    Name: Matthias Blume
56    Date: 2001/05/22 18:06:00 EDT
57    Tag: blume-20010522-targets
58    Description:
59    
60    Made install.sh use file config/targets.customized if it exists, falling
61    back to config/targets if it doesn't.  This way one can have a customized
62    version of the targets file without touching the "real thing", thus
63    eliminating the constant fear of accidentally checking something bogus
64    back into the CVS repository...  (File config/targets.customized must
65    not be added to the repository!)
66    
67    ----------------------------------------------------------------------
68    Name: Matthias Blume
69    Date: 2001/05/22 16:30:00 EDT
70    Tag: blume-20010522-minitut
71    Description:
72    
73    1. Bug fix in ml-nlffigen; now (hopefully) correctly handling
74       struct returns.
75    2. Added src/ml-nlffi-lib/Doc/mini-tutorial.txt.  This is some very
76       incomplete, preliminary documentation for NLFFI.
77    
78    ----------------------------------------------------------------------
79    Name: Matthias Blume
80    Date: 2001/05/14 11:30:00 EDT
81    Tag: blume-20010514-script
82    Description:
83    
84    Some bugs in install script fixed.
85    
86    In addition to that I also made a slight change to the NLFFI API:
87    Functors generated by ml-nlffigen now take the dynamic library as a
88    straight functor argument, not as a suspended one.  (The original
89    functor code used to force the suspension right away anyway, so there
90    was nothing gained by this complication of the interface.)
91    
92    ----------------------------------------------------------------------
93    Name: Matthias Blume
94    Date: 2001/05/11 14:35:00 EDT
95    Tag: blume-20010511-ml-nlffi
96    Description:
97    
98    I finally took the plunge and added my new FFI code to the main
99    repository.  For x86-linux it is now ready for prime-time.
100    
101    There are two new subdirectories of "src":
102    
103      - ml-nlffi-lib:
104           The utility library for programs using the FFI interface.
105           Here is the implementation of $/c.cm and its associated low-level
106           partners $/c-int.cm and $/memory.cm.
107      - ml-nlffigen:
108           A stand-alone program for generating ML glue code from C source
109           code.
110    
111    Building ml-nlffigen requires $/ckit-lib.cm.
112    
113    The config/install.sh script has been updates to do the Right Thing
114    (hopefully).
115    
116    Notice that the source tree for the C-Kit will not be put under "src"
117    but directly under the installation root directory.  (This is the
118    structure that currently exists on the CVS server when you check out
119    module "sml".)  Fortunately, config/install.sh knows about this oddity.
120    
121    Bugs: No documentation yet.
122    
123    ----------------------------------------------------------------------
124    Name: Matthias Blume
125    Date: 2001/05/09 16:35:00 EDT
126    Tag: blume-20010509-cpscontract
127    Description:
128    
129    Fixed a bug in the accounting code in cpsopt/contract.sml.  (The
130    wrapper/unwrapper elimination did not decrement usage counts and some
131    dead variables got overlooked by the dead-up logic.)
132    
133    ----------------------------------------------------------------------
134    Name: Lal George
135    Date: 2001/05/08  17:26:09 EDT
136    Tag: george-20010508-omit-frameptr
137    Description:
138    
139    Changes to implement the omit-frame-pointer optimization to support
140    raw C calls. For now, there is only support on the Intel x86, but
141    other architectures will follow as more experience is gained with this.
142    
143    
144    ----------------------------------------------------------------------
145    Name: Matthias Blume
146    Date: 2001/05/07 14:40:00 EDT
147    Tag: blume-20010507-proxies
148    Description:
149    
150    I made into "proxy libraries" all libraries that qualify for such a
151    change.  (A qualifying library is a library that has another library or
152    groups as its sole member and repeats that member's export list
153    verbatim.  A proxy library avoids this repetition by omitting its export
154    list, effectively inheriting the list that its (only) member exports.
155    See the CM manual for more explanation.)
156    The main effect is that explicit export lists for these libraries
157    do not have to be kepts in sync, making maintenance a bit easier.
158    
159    I also added copyright notices to many .cm-files.
160    
161    Last but not least, I made a new set of bootfiles.
162    
163    ----------------------------------------------------------------------
164    Name: Matthias Blume
165    Date: 2001/05/04 17:00:00 EDT
166    Tag: blume-20010504-cm-lsplit
167    Description:
168    
169    0. John merged pending changes to $/smlnj-lib.cm
170    
171    1. Allen's previous change accidentally backed out of one of Lal's
172       earlier changes.  I undid this mistake (re-introducing Lal's change).
173    
174    2. I used the new topOrder' function from graph-scc.sml (from $/smlnj-lib.cm)
175       within the compiler where applicable.  There is some code simplification
176       because of that.
177    
178    3. The "split" phase (in FLINT) is now part of the default list of phases.
179       Compiler.Control.LambdaSplitting.* can be used to globally control the
180       lambda-splitting (cross-module-inlining) engine.  In addition to that,
181       it can now also be controlled on a per-source basis: CM has been taught
182       a new tool parameter applicable to ML source files.
183    
184       - To turn lambda-splitting off completely:
185            local open Compiler.Control.LambdaSplitting in
186                val _ = set Off
187            end
188       - To make "no lambda-splitting" the global default (but allow per-source
189         overriding); this is the initial setting:
190            local open Compiler.Control.LambdaSplitting in
191                val _ = set (Default NONE)
192            end
193       - To make "lambda-splitting with aggressiveness a" the global default
194         (and allow per-source overriding):
195            local open Compiler.Control.LambdaSplitting in
196                val _ = set (Default (SOME a))
197            end
198    
199       - To turn lambda-splitting off for a given ML souce file (say: a.sml)
200         write (in the respective .cm-file):
201            a.sml (lambdasplitting:off)
202       - To turn lambda-splitting for a.sml on with minimal aggressiveness:
203            a.sml (lambdasplitting:on)
204       - To turn lambda-splitting for a.sml on with aggressiveness <a> (where
205         <a> is a decimal non-negative integer):
206            a.sml (lambdasplitting:<a>)
207       - To turn lambda-splitting for a.sml on with maximal aggressiveness:
208            a.sml (lambdasplitting:infinity)
209       - To use the global default for a.sml:
210            a.sml (lambdasplitting:default)
211         or simply
212            a.sml
213    
214    ----------------------------------------------------------------------
215    Name: Allen Leung
216    Date: 2001/05/04 01:57:00 EDT
217    Tag: leunga-20010504-sync
218    Description:
219    
220      MLRISC features.
221    
222      1. Fix to CMPXCHG instructions.
223      2. Changed RA interface to allow annotations in callbacks.
224      3. Added a new method to the stream interface to allow annotations updates.
225    
226    ----------------------------------------------------------------------
227    Name: Matthias Blume
228    Date: 2001/05/01 11:45:00 EDT
229    Tag: blume-20010501-pcedittmp
230    Description:
231    
232    Changed install.sh to use the current working directory instead of
233    /usr/tmp for a temporary file (pcedittmp).  The previous choice
234    of /usr/tmp caused trouble with MacOS X because of file premission
235    problems.
236    
237    ----------------------------------------------------------------------
238    Name: Matthias Blume
239    Date: 2001/04/20 11:10:00 EDT
240    Tag: blume-20010420-inMLflag
241    Description:
242    
243     - added vp_limitPtrMask to vproc-state.h
244       (for use by the raw-C-calls mechanism to implement proper interrupt
245        handling)
246     - made the ML compiler aware of various data-structure offsets so it
247       can generate code for accessing the vp_inML flag and vp_limitPtrMask
248     - tweaked mlriscGen.sml to have it emit interrupt-handling code for
249       raw C-calls
250    
251    ----------------------------------------------------------------------
252    Name: Lal George
253    Date: 2001/04/20 09:15:28 EDT
254    Tag: george-20010420-macosX
255    Description:
256    
257     - Changes to port to Mac OS X; Darwin.
258    
259     - In the process I found that sqrt was broken on the PPC, because the
260       fsqrt instruction is not implemented.
261    
262    ----------------------------------------------------------------------
263    Name: Matthias Blume
264    Date: 2001/04/18 12:45:00 EDT
265    Tag: blume-20010418-ccalls
266    Description:
267    
268     - fixed two off-by-4 errors in the x86-specific c-calls implementation
269       (this bug prevented structure arguments containing pointers from being
270        passed correctly)
271     - changed the raw-C-call code in mlriscGen.sml in such a way that
272       structure arguments are represented as a pointer to the beginning
273       of the structure (instead of having a series of synthesized arguments,
274       one for each structure member)
275    
276     - made makeml script's verbosity level configurable via environment
277       variable (MAKEML_VERBOSITY)
278    
279     - eliminated placeholder implementations for f32l, w16s, i16s, and f32s
280       in rawmem-x86.sml; we are now using the real thing
281    
282    ----------------------------------------------------------------------
283    Name: Matthias Blume
284  Date: 2001/03/22 16:25:00 EST  Date: 2001/03/22 16:25:00 EST
285  Tag: blume-20010322-bootfiles  Tag: blume-20010322-bootfiles
286  Description:  Description:

Legend:
Removed from v.806  
changed lines
  Added in v.837

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