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 585, Wed Mar 29 23:55:35 2000 UTC revision 593, Tue Apr 4 07:26:33 2000 UTC
# Line 11  Line 11 
11  Date:  Date:
12  Tag: <post-commit CVS tag>  Tag: <post-commit CVS tag>
13  Description:  Description:
14    ----------------------------------------------------------------------
15    Name: Allen Leung
16    Date: 2000/04/04 03:18:00 EST
17    Tag: leunga-20000404-C--Moby
18    Description:
19    
20        All of these fixes are related to C--, Moby, and my own optimization
21        stuff; so they shouldn't affect SML/NJ.
22    
23    1.  X86
24    
25        Various fixes related floating point, and extensions.
26    
27    2.  Alpha
28    
29        Some extra patterns related to loads with signed/zero extension
30        provided by Fermin.
31    
32    3.  Assembly
33    
34        When generating assemby, resolve the value of client defined constants,
35        instead of generating symbolic values.  This is controlled by the
36        new flag "asm-resolve-constants", which is default to true.
37    
38    4.  Machine Descriptions
39    
40        a. The precedence parser was slightly broken when parsing infixr symbols.
41        b. The type generalizing code had the bound variables reversed, resulting
42           in a problem during arity raising.
43        c. Various fixes in machine descriptions.
44    
45    ----------------------------------------------------------------------
46    Name: Matthias Blume
47    Date: 2000/04/03 16:05:00 JST
48    Tag: blume_main_v110p26p2_2
49    Description:
50    
51    I eliminated coreEnv from compInfo.  Access to the "Core" structure is
52    now done via the ordinary static environment that is context to each
53    compilation unit.
54    
55    To this end, I arranged that instead of "structure Core" as "structure
56    _Core" is bound in the pervasive environment.  Core access is done via
57    _Core (which can never be accidentially rebound because _Core is not a
58    legal surface-syntax symbol).
59    
60    The current solution is much cleaner because the core environment is
61    now simply part of the pervasive environment which is part of every
62    compilation unit's context anyway.  In particular, this eliminates all
63    special-case handling that was necessary until now in order to deal
64    with dynamic and symbolic parts of the core environment.
65    
66    Remaining hackery (to bind the "magic" symbol _Core) is localized in the
67    compilation mananger's bootstrap compiler (actually: in the "init group"
68    handling).  See the comments in src/system/smlnj/init/init.cmi for
69    more details.
70    
71    I also tried to track down all mentions of "Core" (as string argument
72    to Symbol.strSymbol) in the compiler and replaced them with a
73    reference to the new CoreSym.coreSym.  Seems cleaner since the actual
74    name appears in one place only.
75    
76    Binfile and bootfile format have not changed, but the switchover from
77    the old "init.cmi" to the new one is a bit tricky, so I supplied new
78    bootfiles anyway.
79    
80    ----------------------------------------------------------------------
81    Name: Allen Leung
82    Date: 2000/04/02 21:17:00 EST
83    Tag: leunga-20000402-mltree
84    Description:
85    
86       1. Renamed the constructor CALL in MLTREE by popular demand.
87       2. Added a bunch of files from my repository.  These are currently
88          used by other non-SMLNJ backends.
89    
90    ----------------------------------------------------------------------
91    Name: Allen Leung
92    Date: 2000/03/31 21:15:00 EST
93    Tag: leunga-20000331-aliasing
94    Description:
95    
96    This update contains a rewritten (and hopefully more correct) module
97    for extracting aliasing information from CPS.
98    
99       To turn on this feature:
100    
101            Compiler.Control.CG.memDisambiguate := true
102    
103       To pretty print the region information with assembly
104    
105           Compiler.Control.MLRISC.getFlag "asm-show-region" := true;
106    
107       To control how many levels of aliasing information are printed, use:
108    
109           Compiler.Control.MLRISC.getInt "points-to-show-level" := n
110    
111       The default of n is 3.
112    
113    ----------------------------------------------------------------------
114    Name: David MacQueen
115    Date: 2000/03/31 11:15:00 EST
116    Tag: dbm-20000331-runtime_fix
117    Description:
118    
119    This update contains:
120    
121    1. runtime/c-lib/c-libraries.c
122       includes added in revision 1.2 caused compilation errors on hppa-hpux
123    
124    2. fix for bug 1556
125       system/Basis/Implementation/NJ/internal-signals.sml
126    
127    ----------------------------------------------------------------------
128    Name: Matthias Blume
129    Date: 2000/03/31 18:00:00 JST
130    Tag: blume_main_v110p26p2_1
131    Description:
132    
133    This update contains:
134    
135    1. A small change to CM's handling of stable libraries:
136       CM now maintains one "global" modmap that is used for all stable
137       libraries.  The use of such a global modmap maximizes sharing and
138       minimizes the need for re-traversing parts of environments during
139       modmap construction.  (However, this has minor impact since modmap
140       construction seems to account for just one percent or less of total
141       compile time.)
142    
143    2. I added a "genmap" phase to the statistics.  This is where I got the
144       "one percent" number (see above).
145    
146    3. CM's new tool parameter mechanism just became _even_ better. :)
147       - The parser understands named parameters and recursive options.
148       - The "make" and "shell" tools use these new features.
149         (This makes it a lot easier to cascade these tools.)
150       - There is a small syntax change: named parameters use a
151    
152           <name> : ( <option> ... )            or
153           <name> : <string>
154    
155         syntax.  Previously, named parameters were implemented in an
156         ad-hoc fashion by each tool individually (by parsing strings)
157         and had the form
158    
159           <name>=<string>
160    
161       See the CM manual for a full description of these issues.
162    
163    ----------------------------------------------------------------------
164    Name: Matthias Blume
165    Date: 2000/03/30 18:00:00 JST
166    Tag: blume_main_v110p26p2_0
167    Description:
168    
169    !!!!! WARNING !!!!!!
170    !!  New binfiles  !!
171    !!!!!!!!!!!!!!!!!!!!
172    
173    This update contains:
174    
175    1. Moderate changes to CM:
176    
177       - Changes to CM's tools mechanism.  In particular, it is now possible
178       to have tools that accept additional "command line" parameters
179       (specified in the .cm file at each instance where the tool's class is
180       used).
181    
182       This was done to accomodate the new "make" and "shell" tools which
183       facilitate fairly seemless hookup to portions of code managed using
184       Makefiles or Shell scripts.
185    
186       There are no classes "shared" or "private" anymore.  Instead, the
187       sharing annotation is now a parameter to the "sml" class.
188    
189       There is a bit of generic machinery for implementing one's own
190       tools that accept command-line parameters.  However, I am not yet fully
191       satisfied with that part, so expect changes here in the future.
192    
193       All existing tools are described in the CM manual.
194    
195       - Slightly better error handling.  (CM now surpresses many followup
196       error messages that tended to be more annoying than helpful.)
197    
198    2. Major changes to the compiler's static environment data structures.
199    
200       - no CMStaticEnv anymore.
201            - no CMEnv, no "BareEnvironment" (actually, _only_ BareEnvironment,
202              but it is called Environment), no conversions between different
203              kinds of static environments
204    
205       - There is still a notion of a "modmap", but such modmaps are generated
206         on demand at the time when they are needed.  This sounds slow, but I
207         sped up the code that generates modmaps enough for this not to lead to
208         a slowdown of the compiler (at least I didn't detect any).
209    
210       - To facilitate rapid modmap generation, static environments now
211         contain an (optional) "modtree" structure.  Modtree annotations are
212         constructed by the unpickler during unpickling.  (This means that
213         the elaborator does not have to worry about modtrees at all.)
214         Modtrees have the advantage that they are compositional in the same
215         way as the environment data structure itself is compositional.
216         As a result, modtrees never hang on to parts of an environment that
217         has already been rendered "stale" by filtering or rebinding.
218    
219       - I went through many, many trials and errors before arriving at the
220         current solution.  (The initial idea of "linkpaths" did not work.)
221         But the result of all this is that I have touched a lot of files that
222         depend on the "modules" and "types" data structures (most of the
223         elaborator). There were a lot of changes during my "linkpath" trials
224         that could have been reverted to their original state but weren't.
225         Please, don't be too harsh on me for messing with this code a bit more
226         than what was strictly necessary...  (I _did_ resist the tempation
227         of doing any "global reformatting" to avoid an untimely death at
228         Dave's hands. :)
229    
230       - One positive aspect of the previous point:  At least I made sure that
231         all files that I touched now compile without warnings (other than
232         "polyEqual").
233    
234       - compiler now tends to run "leaner" (i.e., ties up less memory in
235         redundant modmaps)
236    
237  ----------------------------------------------------------------------  ----------------------------------------------------------------------
238  Name: Allen Leung  Name: Allen Leung
239  Date: 2000/03/29 18:00:00  Date: 2000/03/29 18:00:00
240  Tag: leunga-20000327-mlriscGen_hppa_alpha_x86  Tag: leunga-20000327-mlriscGen_hppa_alpha_x86
241    Boot files (optional): ftp://react-ilp.cs.nyu.edu/leunga/110.26.1-sml.boot.x86-unix-20000330.tar.gz
242  Description:  Description:
243    
244     This update contains *MAJOR* changes to the way code is generated from CPS     This update contains *MAJOR* changes to the way code is generated from CPS

Legend:
Removed from v.585  
changed lines
  Added in v.593

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