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 1064, Thu Feb 14 03:40:24 2002 UTC revision 1085, Fri Feb 22 00:15:55 2002 UTC
# Line 13  Line 13 
13  Description:  Description:
14    
15  ----------------------------------------------------------------------  ----------------------------------------------------------------------
16    Name: Allen Leung
17    Date: 2002/02/21 20:20:00 EST
18    Tag: leunga-20020221-peephole
19    
20    Regenerated the peephole files.  Some contained typos in the specification
21    and some didn't compile because of pretty printing bugs in the old version
22    of 'nowhere'.
23    
24    ----------------------------------------------------------------------
25    Name: Allen Leung
26    Date: 2002/02/19 20:20:00 EST
27    Tag: leunga-20020219-mlrisc-tools
28    Description:
29    
30       Minor bug fixes to the mlrisc-tools library:
31    
32       1.  Fixed up parsing colon suffixed keywords
33       2.  Added the ability to shut the error messages up
34       3.  Reimplemented the pretty printer and fixed up/improved
35           the pretty printing of handle and -> types.
36       4.  Fixed up generation of literal symbols in the nowhere tool.
37       5.  Added some SML keywords to to sml.sty
38    
39    ----------------------------------------------------------------------
40    Name: Matthias Blume
41    Date: 2002/02/19 16:20:00 EST
42    Tag: blume-20020219-cmffi
43    Description:
44    
45    A wild mix of changes, some minor, some major:
46    
47    * All C FFI-related libraries are now anchored under $c:
48        $/c.cm      --> $c/c.cm
49        $/c-int.cm  --> $c/internals/c-int.cm
50        $/memory.cm --> $c/memory/memory.cm
51    
52    * "make" tool (in CM) now treats its argument pathname slightly
53      differently:
54        1. If the native expansion is an absolute name, then before invoking
55           the "make" command on it, CM will apply OS.Path.mkRelative
56           (with relativeTo = OS.FileSys.getDir()) to it.
57        2. The argument will be passed through to subsequent phases of CM
58           processing without "going native".  In particular, if the argument
59           was an anchored path, then "make" will not lose track of that anchor.
60    
61    * Compiler backends now "know" their respective C calling conventions
62      instead of having to be told about it by ml-nlffigen.  This relieves
63      ml-nlffigen from one of its burdens.
64    
65    * The X86Backend has been split into X86CCallBackend and X86StdCallBackend.
66    
67    * Export C_DEBUG and C_Debug from $c/c.cm.
68    
69    * C type encoding in ml-nlffi-lib has been improved to model the conceptual
70      subtyping relationship between incomplete pointers and their complete
71      counterparts.  For this, ('t, 'c) ptr has been changed to 'o ptr --
72      with the convention of instantiating 'o with ('t, 'c) obj whenever
73      the pointer target type is complete.  In the incomplete case, 'o
74      will be instantiated with some "'c iobj" -- a type obtained by
75      using one of the functors PointerToIncompleteType or PointerToCompleteType.
76    
77      Operations that work on both incomplete and complete pointer types are
78      typed as taking an 'o ptr while operations that require the target to
79      be known are typed as taking some ('t, 'c) obj ptr.
80    
81      voidptr is now a bit "more concrete", namely "type voidptr = void ptr'"
82      where void is an eqtype without any values.  This makes it possible
83      to work on voidptr values using functions meant to operate on light
84      incomplete pointers.
85    
86    * As a result of the above, signature POINTER_TO_INCOMPLETE_TYPE has
87      been vastly simplified.
88    
89    ----------------------------------------------------------------------
90    Name: Matthias Blume
91    Date: 2002/02/19 10:48:00 EST
92    Tag: blume-20020219-pqfix
93    Description:
94    
95    Applied Chris Okasaki's bug fix for priority queues.
96    
97    ----------------------------------------------------------------------
98    Name: Matthias Blume
99    Date: 2002/02/15 17:05:00
100    Tag: Release_110_39
101    Description:
102    
103    Last-minute retagging is becoming a tradition... :-(
104    
105    This is the working release 110.39.
106    
107    ----------------------------------------------------------------------
108    Name: Matthias Blume
109    Date: 2002/02/15 16:00:00 EST
110    Tag: Release_110_39-orig
111    Description:
112    
113    Working release 110.39.  New bootfiles.
114    
115    (Update: There was a small bug in the installer so it wouldn't work
116    with all shells.  So I retagged. -Matthias)
117    
118    ----------------------------------------------------------------------
119    Name: Matthias Blume
120    Date: 2002/02/15 14:17:00 EST
121    Tag: blume-20020215-showbindings
122    Description:
123    
124    Added EnvRef.listBoundSymbols and CM.State.showBindings.  Especially
125    the latter can be useful for exploring what bindings are available at
126    the interactive prompt.  (The first function returns only the list
127    of symbols that are really bound, the second prints those but also the
128    ones that CM's autoloading mechanism knows about.)
129    
130    ----------------------------------------------------------------------
131    Name: Matthias Blume
132    Date: 2002/02/15 12:08:00 EST
133    Tag: blume-20020215-iptrs
134    Description:
135    
136    Two improvements to ml-nlffigen:
137    
138      1. Write files only if they do not exist or if their current contents
139         do not coincide with what's being written.  (That is, avoid messing
140         with the time stamps unless absolutely necessary.)
141    
142      2. Implement a "repository" mechanism for generated files related
143         to "incomplete pointer types".   See the README file for details.
144    
145    ----------------------------------------------------------------------
146    Name: Matthias Blume
147    Date: 2002/02/14 11:50:00 EST
148    Tag: blume-20020214-quote
149    Description:
150    
151    Added a type 't t_' to tag.sml (in ml-nlffi-lib.cm).  This is required
152    because of the new and improved tag generation scheme.  (Thanks to Allen
153    Leung for pointing it out.)
154    
155    ----------------------------------------------------------------------
156    Name: Lal George
157    Date: 2002/02/14 09:55:27 EST 2002
158    Tag: george-20020214-isabelle-bug
159    Description:
160    
161    Fixed the MLRISC bug sent by Markus Wenzel regarding the compilation
162    of Isabelle on the x86.
163    
164    From Allen:
165    -----------
166     I've found the problem:
167    
168         in ra-core.sml, I use the counter "blocked" to keep track of the
169         true number of elements in the freeze queue.  When the counter goes
170         to zero, I skip examining the queue.  But I've messed up the
171         bookkeeping in combine():
172    
173             else ();
174             case !ucol of
175               PSEUDO => (if !cntv > 0 then
176                     (if !cntu > 0 then blocked := !blocked - 1 else ();
177                                        ^^^^^^^^^^^^^^^^^^^^^^^
178                      moveu := mergeMoveList(!movev, !moveu)
179                     )
180                  else ();
181    
182         combine() is called to coalesce two nodes u and v.
183         I think I was thinking that if the move counts of u and v are both
184         greater than zero then after they are coalesced then one node is
185         removed from the freeze queue.  Apparently I was thinking that
186         both u and v are of low degree, but that's clearly not necessarily true.
187    
188    
189    02/12/2002:
190        Here's the patch.  HOL now compiles.
191    
192        I don't know how this impact on performance (compile
193        time or runtime).  This bug caused the RA (especially on the x86)
194        to go thru the potential spill phase when there are still nodes on the
195        freeze queue.
196    
197    
198    
199    
200    ----------------------------------------------------------------------
201  Name: Matthias Blume  Name: Matthias Blume
202  Date: 2002/02/13 22:40:00 EST  Date: 2002/02/13 22:40:00 EST
203  Tag: blume-20020213-fptr-rtti  Tag: blume-20020213-fptr-rtti

Legend:
Removed from v.1064  
changed lines
  Added in v.1085

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