Home My Page Projects Code Snippets Project Openings SML/NJ
Summary Activity Forums Tracker Lists Tasks Docs Surveys News SCM Files

SCM Repository

[smlnj] Annotation of /sml/trunk/READMES/110.34-README.html
ViewVC logotype

Annotation of /sml/trunk/READMES/110.34-README.html

Parent Directory Parent Directory | Revision Log Revision Log


Revision 876 - (view) (download) (as text)

1 : blume 876 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2 :     <html>
3 :     <head>
4 :     </head>
5 :     <body>
6 :     <div align="Center">
7 :     <h1>S M L / N J 1 1 0 . 3 4 N E W
8 :     S</h1>
9 :     </div>
10 :     <br>
11 :     <div align="Center"><i>June 10, 2001</i><br>
12 :     </div>
13 :     <br>
14 :     <div align="Center"><b>WARNING This version is intended for compiler
15 :     hackers. The version ought to be stable, however we have not run our full
16 :     regression testing. http://cm.bell-labs.com/cm/cs/what/smlnj/index.html</b><b><br>
17 :     </b></div>
18 :     <br>
19 :     <hr width="100%" size="2" align="Left">
20 :     <h3>Summary:</h3>
21 :     <ul>
22 :     <li>A long-standing signal-handling bug has been fixed.</li>
23 :     <li>As a result, CML finally works again, and so does eXene.</li>
24 :     <li>NLFFI has been further revised and improved. It now supports the
25 :     Sparc architecture in addition to x86/Linux.</li>
26 :     <li>There are various bugfixes and some organizational changes.&nbsp;</li>
27 :     </ul>
28 :     <div align="Left">
29 :     <hr width="100%" size="2" align="Left">
30 :     <h4>NLFFI: </h4>
31 :     <ul>
32 :     <li>The types in the public interface to the "C" module have been simplified:
33 :     the annoying 'f type parameter has been dropped in most places. This
34 :     requires some cheating under the hood, but fortunately the cheat is a
35 :     provably safe cheat.</li>
36 :     <li>Various bugs in ml-nlffigen have been fixed so that it should be
37 :     more robust now.</li>
38 :     <li>C functions and function types that use variable-length argument
39 :     lists are no longer rejected. Instead, ml-nlffigen will produce ML
40 :     code that lets you call the function with just its mandatory arguments.
41 :     This means that ml-nlffigen will not bail out just because there is
42 :     one odd occurence of a varargs function somewhere in one big .h-file.</li>
43 :     <li>Default names for files are now derived from the C files's basename
44 :     so that ml-nlffigen will always place them in the current directory.</li>
45 :     <li>Default names for generated ML identifiers are also derived from
46 :     the C file's basename.</li>
47 :     <li>Sparc architecture supported now.</li>
48 :     <li>Support for x86/win32 mostly in place. (All missing pieces are
49 :     in the runtime system.) </li>
50 :     </ul>
51 :     <h4>CM: </h4>
52 :     <ul>
53 :     <li>CM can now generate "index files" which are human-readable files
54 :     that list on a per-.cm-file basis each toplevel symbol defined or imported.</li>
55 :     <li>some internal improvements in the tools subsystem</li>
56 :     <li>"lambdasplit" parameter for class "sml" to control the cross-module
57 :     inliner documented</li>
58 :     <li>other documentation updates</li>
59 :     <li>bug fixes</li>
60 :     </ul>
61 :     <h4>runtime:</h4>
62 :     <ul>
63 :     <li>A serious signal handling problem that affected CML has been fixed.</li>
64 :     <li>Support for dlopen/dlsym on Sparc/Solaris added. </li>
65 :     </ul>
66 :     <h4>CML:</h4>
67 :     <ul>
68 :     <li>Compiles under the new CM.</li>
69 :     <li>Libraries and anchors for version 110.34 and later are organized
70 :     as follows:</li>
71 :     <ul>
72 :     <li><b>$cml/cml.cm</b> : Main CML library.</li>
73 :     <li><b>$cml/basis.cm</b> : CML's version of $/basis.cm.</li>
74 :     <li><b>$cml/cml-internal.cm</b> : Internal helper library.</li>
75 :     <li><b>$cml/core-cml.cm</b> : Internal helper library.</li>
76 :     <li><b>$cml-lib/trace-cml.cm</b> : Tracing facility.</li>
77 :     <li><b>$cml-lib/smlnj-lib.cm</b> : CML's version of $/smlnj-lib.cm </li>
78 :     </ul>
79 :     </ul>
80 :     <h4>eXene:</h4>
81 :     <ul>
82 :     <li>Compiles under the new CM.</li>
83 :     <li>The library's name for version 110.34 is <b>$/eXene.cm</b>. </li>
84 :     </ul>
85 :     <h4>scripts:</h4>
86 :     <ul>
87 :     <li>The config/install.sh script has been updated to support the installation
88 :     of CML and eXene under the New World Order (aka new CM). </li>
89 :     </ul>
90 :     <h4>compiler:</h4>
91 :     <ul>
92 :     <li>bug fixes</li>
93 :     <li>cross-module inliner now in the compilation pipeline by default
94 :     <i>(By default it is still turned off. But it can be enabled either
95 :     globally or selectively by using CM's new "lambdasplit" parameter.)</i>
96 :     </li>
97 :     </ul>
98 :     <h4>MLRISC: </h4>
99 :     <ul>
100 :     <li>Sparc implementation of c-calls API. (This is used by NLFFI.)
101 :     <i>(Caveat: Register assignments in the Sparc backend of SML/NJ
102 :     still need to be redone. In particular, the ASM temp register must
103 :     not be %o2. It is unlikely but not impossible that the current situation
104 :     leads to certain subtle code-generation bugs.)</i> </li>
105 :     <li>Support for "stdcall" calling convention in x86 version of c-calls.
106 :     </li>
107 :     </ul>
108 :     <h4>CKIT:</h4>
109 :     <ul>
110 :     <li>structure Error exported from ckit-lib.cm </li>
111 :     </ul>
112 :     </div>
113 :     </body>
114 :     </html>

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