source: trunk/ccl/ChangeLog @ 7315

Last change on this file since 7315 was 7315, checked in by gb, 13 years ago
  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 793.9 KB
Line 
12007-09-28 11:10  gb
2
3        * level-1/l1-streams.lisp: Try to make (SETF
4        STREAM-EXTERNAL-FORMAT) work.  Whether there should be a SETF
5        inverse on a CL-package symbol that's not supposed to be SETFable
6        is another question, as is whether/how well this works.
7
82007-09-27 19:10  gb
9
10        * level-0/X86/x86-misc.lisp: When unlocking a read-write lock on
11        x86-64, clear the owner field before incrementing the value field
12        if the value field is currently -1.  (The PPC was already doing so;
13        doing it in the order that x86-64 had been doing it caused the lock
14        to become free, and zeroing the owner after the incf could cause
15        the lock to be locked for writing with no owner set ...
16
172007-09-26 14:11  gb
18
19        * level-1/linux-files.lisp: run-program and run-external-process
20        take an additional "env" parameter, a list of pairs. For each pair
21        the environment variable (string (car pair)) is set to (cdr pair)
22        in the external program's environment before it is exec'd.
23
242007-09-26 14:10  gb
25
26        * level-1/l1-unicode.lisp: Allow CCL::DECODE-STRING-FROM-OCTETS to
27        work on non-simple vectors
28
292007-09-26 13:10  gb
30
31        * level-1/l1-unicode.lisp: Fix vector-decode-function for :US-ASCII
32        encoding
33
342007-09-25 22:11  gb
35
36        * level-1/l1-clos-boot.lisp, objc-bridge/bridge.lisp,
37        objc-bridge/objc-clos.lisp, objc-bridge/objc-runtime.lisp: Try to
38        be more paranoid about null pointers (even if they have their type
39        asserted.)
40       
41        ENCODE-OBJC-TYPE: try to get record field types right (being
42        careful about recursion); need to do this to help NSInvocation deal
43        with record types on some platforms that'll remain nameless.
44
452007-09-25 22:10  gb
46
47        * cocoa-ide/hemlock/: README, TODO, doc/scribe-converter/NOTES,
48        doc/scribe-converter/README, maint/publish, src/bindings.lisp,
49        src/buffer.lisp, src/charmacs.lisp, src/command.lisp,
50        src/comments.lisp, src/completion.lisp, src/cursor.lisp,
51        src/defsyn.lisp, src/doccoms.lisp, src/echo.lisp,
52        src/echocoms.lisp, src/edit-defs.lisp, src/filecoms.lisp,
53        src/files.lisp, src/fill.lisp, src/font.lisp, src/htext1.lisp,
54        src/htext2.lisp, src/htext3.lisp, src/htext4.lisp, src/icom.lisp,
55        src/indent.lisp, src/interp.lisp, src/kbdmac.lisp,
56        src/key-event.lisp, src/keysym-defs.lisp, src/killcoms.lisp,
57        src/line.lisp, src/linimage.lisp, src/lispmode.lisp,
58        src/macros.lisp, src/main.lisp, src/morecoms.lisp,
59        src/package.lisp, src/pop-up-stream.lisp, src/register.lisp,
60        src/ring.lisp, src/rompsite.lisp, src/search1.lisp,
61        src/search2.lisp, src/searchcoms.lisp, src/srccom.lisp,
62        src/streams.lisp, src/struct.lisp, src/syntax.lisp, src/table.lisp,
63        src/text.lisp, src/undo.lisp, src/vars.lisp,
64        src/archive/abbrev.lisp, src/archive/auto-save.lisp,
65        src/archive/bit-display.lisp, src/archive/bit-screen.lisp,
66        src/archive/bufed.lisp, src/archive/debug.lisp,
67        src/archive/dired.lisp, src/archive/diredcoms.lisp,
68        src/archive/display.lisp, src/archive/dylan.lisp,
69        src/archive/eval-server.lisp, src/archive/group.lisp,
70        src/archive/highlight.lisp, src/archive/hunk-draw.lisp,
71        src/archive/input.lisp, src/archive/lisp-lib.lisp,
72        src/archive/lispbuf.lisp, src/archive/lispeval.lisp,
73        src/archive/mh.lisp, src/archive/netnews.lisp,
74        src/archive/overwrite.lisp, src/archive/pascal.lisp,
75        src/archive/rcs.lisp, src/archive/screen.lisp,
76        src/archive/scribe.lisp, src/archive/shell.lisp,
77        src/archive/spell-aug.lisp, src/archive/spell-corr.lisp,
78        src/archive/spell-rt.lisp, src/archive/spellcoms.lisp,
79        src/archive/srccom.lisp, src/archive/ts-buf.lisp,
80        src/archive/ts-stream.lisp, src/archive/unixcoms.lisp,
81        src/archive/window.lisp, src/archive/winimage.lisp,
82        src/archive/xcoms.lisp, src/spell/spellcoms.lisp,
83        src/tty/termcap.lisp, src/tty/tty-disp-rt.lisp,
84        src/tty/tty-display.lisp, src/tty/tty-screen.lisp,
85        src/wire/remote.lisp, src/wire/wire.lisp, unused/bit-stream.lisp,
86        unused/clx-ext.lisp, unused/ed-integrity.lisp, unused/gosmacs.lisp,
87        unused/hemcom.lisp, unused/hi-integrity.lisp, unused/keytran.lisp,
88        unused/keytrandefs.lisp, unused/spell-build.lisp,
89        unused/struct-ed.lisp, unused/tty-stream.lisp,
90        website/index.html.in: ignore property set
91
922007-09-25 13:10  gb
93
94        * cocoa-ide/cocoa-utils.lisp: Add function windows that returns an
95        ordered list of the windows that are open.
96
972007-09-25 00:11  gb
98
99        * lisp-kernel/x86-spentry64.s: In .SPdestructuring_bind, don't
100        assume that a "movzbl" sets the flags.  (It doesn't, and this meant
101        that there was a 50-50 chance of required arguments not being
102        processed correctly.)
103
1042007-09-25 00:10  gb
105
106        * compiler/X86/x862.lisp: Reserve lcells when reserving outgoing
107        frame, in case it matters someday.
108
1092007-09-24 06:10  gb
110
111        * lisp-kernel/x86-exceptions.c: Missing #ifdef DARWIN in
112        arbstack_signal_handler; not used on Darwin.
113
1142007-09-23 21:11  gb
115
116        * lisp-kernel/: lisp-debug.c, lisp-exceptions.h, x86-exceptions.c,
117        x86-exceptions.h: Don't use sigaltstack on any x86-64 platform:
118        even if it works, it makes it harder to deal with exceptions in
119        foreign code (we've often gotten segfaults from running out of
120        space on the alt stack, the mechanism isn't reentrant, etc.)
121       
122        Try to report cases where the kernel debugger is entered due to an
123        exception in foreign code.  Todo: make it less tempting to use (L)
124        in that case, maybe try to make backtrace find saved_rbp from tcr
125        on x86-64, etc.
126
1272007-09-23 21:10  gb
128
129        * level-1/l1-application.lisp: APPLICATION-VERSION-STRING (which
130        probably was used to support "get info", back in the day) is just
131        LISP-IMPLEMENTATION-VERSION.
132
1332007-09-23 09:12  gb
134
135        * xdump/xfasload.lisp: Handle saving svn revision as string or
136        fixnum.
137
1382007-09-23 09:11  gb
139
140        * lib/misc.lisp: Try to use "svnversion" to get svn version info in
141        LOCAL-SVN-REVISION.
142
1432007-09-22 23:13  gb
144
145        * xdump/xfasload.lisp: Set *openmcl-svn-revision* to the value of
146        (LOCAL-SVN-REVISION) when writing the bootstrapping image; this
147        will show up in the Welcome banner and LISP-IMPLEMENTATION-VERSION.
148          May want to tweak this some more, but it may make it easier to
149        determine what you're running relative to what's in SVN/CVS.
150
1512007-09-22 23:12  gb
152
153        * level-1/version.lisp: Replace *OPENMCL-SUFFIX* (the thing which
154        had the date in it) with *OPENMCL-SVN-REVISION*, which is defvar'ed
155        to NIL here.  (It may be set early in the cold load or via the
156        xloader.)
157
1582007-09-22 23:11  gb
159
160        * lib/pathnames.lisp: Treat NIL and :UNSPECIFIC name/type
161        components in the pattern consistently in %FILE*=.
162
1632007-09-22 23:10  gb
164
165        * lib/misc.lisp: LOCAL-SVN-REVISION tries to determine the (local)
166        svn revision, by looking for a .svnrev file (used in the svn->cvs
167        synching process) or by parsing "svn info" output.
168
1692007-09-21 12:10  gb
170
171        * cocoa-ide/cocoa-editor.lisp: Rename "cache" to "mirror" in
172        hemlock-text-storage.  This clarifies the purpose of the slot and
173        avoids confusion with buffer caches, which are completely
174        different.
175
1762007-09-20 21:10  gb
177
178        * level-1/linux-files.lisp: Make the pipe streams created by
179        RUN-PROGRAM be basic streams
180
1812007-09-19 15:10  gb
182
183        * lib/macros.lisp: Prevent unused gensym warnings in
184        with-accessors.  Same fix that Gary Palter did to with-slots.
185
1862007-09-19 02:11  gb
187
188        * lib/backtrace-lds.lisp: FRAME-REQUIRED-ARGS: try to make better.
189        This is only used by SLIME; it was once used for frame restarting.
190        Try to make the result reasonable in the SLIME case.
191
1922007-09-19 02:10  gb
193
194        * lib/arglist.lisp: ARGLIST-FROM-MAP: don't be afraid to say
195        &LEXPR.  ARG-NAMES-FROM-MAP: &rest in map before &keys now.
196
1972007-09-18 21:10  gb
198
199        * lib/macros.lisp: In WITH-SLOTS, if there are bindings, declare
200        the gensym'ed instance symbol IGNORABLE just in case none of the
201        symbol macros are actuall used.
202
2032007-09-18 05:10  gb
204
205        * level-0/l0-numbers.lisp: Typo in constant again.
206
2072007-09-17 21:10  gb
208
209        * level-1/sysutils.lisp: Return all three values from
210        CCL::PRINT-DEFERRED-WARNINGS
211
2122007-09-17 06:10  gb
213
214        * level-0/l0-numbers.lisp: Simply clearing the top bit of the
215        intermediate result from %NEXT-RANDOM-PAIR had the effect of using
216        doing (mod result (expt 2 31)), not (mod result (1- (expt 2 31))).
217        Do a real MOD to obtain the next item in the series and update the
218        state with that value.  (This means that the high bit of the high
219        half of the result is always clear; or in the sign bit from the low
220        half.)
221
2222007-09-16 18:10  gb
223
224        * compiler/X86/x862.lisp: X862-BIND-LAMBDA: bind &rest before &key
225        ...
226
2272007-09-16 17:10  gb
228
229        * compiler/PPC/ppc2.lisp: PPC2-BIND-LAMBDA: rest arg is in scope
230        before key arg(s), so assign it an address before processing &key
231        initforms.
232
2332007-09-15 17:10  gb
234
235        * level-1/l1-readloop-lds.lisp: Observe *BACKTRACE-PRINT-LEVEL*,
236        -LENGTH* when printing break messages.
237
2382007-09-13 20:10  gb
239
240        * level-1/: l1-streams.lisp, linux-files.lisp: Add support for
241        :element-type to ccl:run-program to allow for binary streams
242
2432007-09-13 06:55  gb
244
245        * cocoa-ide/hemlock/: README, doc/scribe-converter/README,
246        src/elisp/README, src/spell/README: Restore some README files,
247        which had somehow gotten lost in translation.
248
2492007-09-13 06:54  gb
250
251        *
252        cocoa-ide/OpenMCL.app/Contents/Resources/English.lproj/lispeditor.n
253        ib/: classes.nib, info.nib, keyedobjects.nib: not used
254
2552007-09-13 06:52  gb
256
257        * compiler/X86/: x862.lisp, X8664/x8664-vinsns.lisp: Push labels
258        for certain kinds of MULTIPLE-VALUE-CALL differently; in
259        particular, note the effect of pushing such a label on stack depth.
260
2612007-09-13 06:50  gb
262
263        * cocoa-ide/OpenMCL.app/Contents/MacOS/.cvsignore,
264        examples/cocoa/.cvsignore: New file, mostly to help ensure that the
265        containing directory exists in cvs.
266
2672007-09-06 14:10  gb
268
269        * cocoa-ide/builder-utilities.lisp: added key 'CFBundleName' to
270        write-info-plist
271
2722007-09-04 23:11  gb
273
274        * cocoa-ide/cocoa-editor.lisp: New! Improved!
275       
276        The code which arranges for editing changes to be processed in the
277        main thread now does so via an NSInvocation (ObjC's notion of a
278        closure, sort of); the methods which run in the main thread handle
279        the job of synchronizing the underlying the Hemlock string and the
280        "real" NSMutableAttributedString as well as informing the text
281        system of pending editing changes via
282        #/edited:range:changeInLength:.  The code which processes deletions
283        does the change processing before modifying the string (other
284        methods do it after the change); this seems to be necessary to
285        avoid some things that could cause ticket:50.  (I'm not sure if
286        this fixes ticket:50, but it does seem to fix a reproducible case.)
287       
288        The #/replaceCharactersInRange:withString: method on
289        hemlock-text-storage (which handles buffer changes originating from
290        non-Hemlock sources) is careful to use a :right-inserting temporary
291        mark when modifying the buffer, to help ensure that
292        insertions/deletions take place at the correct absolute position.
293        (This may at least partially address bugs related to things getting
294        confused/out-of-bounds errors when doing lots of cutting and
295        pasting, though it's hard to know without reproducible cases.)
296       
297        The macros NSSTRING-ENCODING-TO-NSINTEGER and
298        NSINTEGER-TO-NSSTRING-ENCODING are defined before they're used (at
299        least one of them wasn't.)
300       
301        The handling of text encoding for editor documents has changed in a
302        few ways.  If "automatic" encoding is used in an "Open ..." dialog
303        and is successfully able to infer a text file's encoding, the
304        encoding that was inferred becomes the document's encoding (used in
305        subsequent "save" operations.)  On some OSX versions, the automatic
306        detection mechanism can only recognize UTF-16 files that contain a
307        leading BOM (and the editor's code for dealing with the automatic
308        mechanism didn't expect this to ever work.)  On other systems, the
309        automatic mechanism can return something correct (I've seen UTF-8)
310        but possibly suboptimal.
311       
312        The Open... dialog now defaults to something derived from the
313        user's setting of CCL:*DEFAULT-FILE-CHARACTER-ENCODING*; because
314        "automatic" is a little unpredictable, the new default is probably
315        better.
316       
317        The NSDocument mechanism for creating backup files (with names of
318        the form "name~.ext") is not used; when backup files are created,
319        we try to copy the original to a file whose name conforms to the
320        (simple, non-versioned) Emacs scheme ("name.ext~").  More things
321        seem to work better when the Emacs scheme is used (though I suppose
322        some people might prefer the NSDocument scheme and we could make
323        this a preference.)
324
3252007-09-04 22:11  gb
326
327        * cocoa-ide/cocoa-listener.lisp: Don't call #/setFileName: when
328        creating a Listener, since (a) that method's deprecated in favor of
329        #/setFileURL: and (b) a newly-created Listener doesn't really have
330        an associated filename, and so shouldn't get the icon and popup in
331        its titlebar.
332       
333        Do arrange that (unless/until a listener document is saved to a
334        file) its window title is based on the underlying Hemlock buffer's
335        name.  (If one ever attempts to save a listener document, the
336        proposed file name is the internal NSDocument name; we might or
337        might not want to change that.)
338
3392007-09-04 22:10  gb
340
341        * cocoa-ide/cocoa-prefs.lisp: Suppress warnings about
342        *MODELINE-FONT-NAME*, -SIZE*.
343
3442007-09-04 19:13  gb
345
346        * lisp-kernel/: gc.h, memory.c, pmcl-kernel.c, ppc-exceptions.c,
347        ppc-gc.c, x86-exceptions.c, x86-gc.c: Lose "HeapHighWaterMark",
348        which was supposed to allow us to track the high end of a range of
349        pages that'd been written to and not freed (so we'd zero them
350        lazily when they were reallocated.)  Such a scheme would really
351        need to track both ends of such a range, and the old scheme wound
352        up being overly zealous and often zeroed pages that were already
353        zeroed.  Zero the range between the old free pointer and the new
354        one after each GC, instead.
355       
356        At least partly address ticket:101, by doing GROW-DYNAMIC-AREA more
357        carefully.
358
3592007-09-04 19:12  gb
360
361        * level-0/: l0-numbers.lisp, PPC/ppc-numbers.lisp: Fix to 64-bit
362        %NEXT-RANDOM-SEED, random algorithm comments from Bernd Beuster.
363
3642007-09-04 19:11  gb
365
366        * lib/: ffi-darwinppc32.lisp, ffi-darwinppc64.lisp,
367        ffi-linuxppc32.lisp, ffi-linuxppc64.lisp, macros.lisp: Don't coerce
368        single-float results to double-floats in DEFCALLBACK-BODY.  Do do
369        this in the PPC backends.
370       
371        (This needs testing ...)
372
3732007-09-04 19:10  gb
374
375        * compiler/X86/X8664/x8664-backend.lisp: Don't assume that
376        :single-float callback results have been coerced to :double-float
377        on x8664.
378
3792007-09-03 18:10  gb
380
381        * cocoa-ide/hemlock/src/edit-defs.lisp: Make meta-. use either the
382        selection or the symbol around point, regardless of global parsing
383        state (Ticket:95).  While in there, make meta-. with a numarg
384        prompt for symbol to look up.
385
3862007-08-30 20:10  gb
387
388        * level-1/l1-error-system.lisp: Add a restart for unbound
389        variable/undefined function errors -- if there is a unique
390        bound/fbound symbol of the same name in another package, offer to
391        use it instead.
392
3932007-08-30 19:10  gb
394
395        * cocoa-ide/cocoa-grep.lisp: Tell grep not to complain about
396        inaccesible files; it might return an exit status of 2 if it finds
397        such files, so treat that as "success" for now (ticket:98).
398
3992007-08-30 18:11  gb
400
401        * cocoa-ide/hemlock/src/doccoms.lisp: Fix format call in Show
402        Variable command output (ticket:97).
403
4042007-08-30 18:10  gb
405
406        * cocoa-ide/hemlock/src/listener.lisp: EVAL-REGION uses
407        VARIABLE-VALUE to access buffer's package (ticket:82).
408
4092007-08-30 15:11  gb
410
411        * cocoa-ide/: build-application.lisp, builder-utilities.lisp: added
412        code to copy user-supplied nibfiles into a saved application bundle
413
4142007-08-30 14:10  gb
415
416        * cocoa-ide/hemlock/src/: command.lisp, listener.lisp: Make sure
417        all callers of current-point-for-deletion handle the nil return
418        value case.  This fixes ticket:85
419
4202007-08-29 20:11  gb
421
422        * cocoa-ide/: cocoa-editor.lisp, cocoa.lisp, hemlock/TODO,
423        hemlock/doc/scribe-converter/NOTES, hemlock/maint/publish,
424        hemlock/src/bindings.lisp, hemlock/src/buffer.lisp,
425        hemlock/src/charmacs.lisp, hemlock/src/command.lisp,
426        hemlock/src/comments.lisp, hemlock/src/completion.lisp,
427        hemlock/src/cursor.lisp, hemlock/src/defsyn.lisp,
428        hemlock/src/doccoms.lisp, hemlock/src/echo.lisp,
429        hemlock/src/echocoms.lisp, hemlock/src/edit-defs.lisp,
430        hemlock/src/filecoms.lisp, hemlock/src/files.lisp,
431        hemlock/src/fill.lisp, hemlock/src/font.lisp,
432        hemlock/src/htext1.lisp, hemlock/src/htext2.lisp,
433        hemlock/src/htext3.lisp, hemlock/src/htext4.lisp,
434        hemlock/src/icom.lisp, hemlock/src/indent.lisp,
435        hemlock/src/interp.lisp, hemlock/src/kbdmac.lisp,
436        hemlock/src/key-event.lisp, hemlock/src/keysym-defs.lisp,
437        hemlock/src/killcoms.lisp, hemlock/src/line.lisp,
438        hemlock/src/linimage.lisp, hemlock/src/lispmode.lisp,
439        hemlock/src/macros.lisp, hemlock/src/main.lisp,
440        hemlock/src/morecoms.lisp, hemlock/src/package.lisp,
441        hemlock/src/pop-up-stream.lisp, hemlock/src/register.lisp,
442        hemlock/src/ring.lisp, hemlock/src/rompsite.lisp,
443        hemlock/src/search1.lisp, hemlock/src/search2.lisp,
444        hemlock/src/searchcoms.lisp, hemlock/src/srccom.lisp,
445        hemlock/src/streams.lisp, hemlock/src/struct.lisp,
446        hemlock/src/syntax.lisp, hemlock/src/table.lisp,
447        hemlock/src/text.lisp, hemlock/src/undo.lisp,
448        hemlock/src/vars.lisp, hemlock/src/archive/abbrev.lisp,
449        hemlock/src/archive/auto-save.lisp,
450        hemlock/src/archive/bit-display.lisp,
451        hemlock/src/archive/bit-screen.lisp,
452        hemlock/src/archive/bufed.lisp, hemlock/src/archive/debug.lisp,
453        hemlock/src/archive/dired.lisp, hemlock/src/archive/diredcoms.lisp,
454        hemlock/src/archive/display.lisp, hemlock/src/archive/dylan.lisp,
455        hemlock/src/archive/eval-server.lisp,
456        hemlock/src/archive/group.lisp, hemlock/src/archive/highlight.lisp,
457        hemlock/src/archive/hunk-draw.lisp, hemlock/src/archive/input.lisp,
458        hemlock/src/archive/lisp-lib.lisp,
459        hemlock/src/archive/lispbuf.lisp,
460        hemlock/src/archive/lispeval.lisp, hemlock/src/archive/mh.lisp,
461        hemlock/src/archive/netnews.lisp,
462        hemlock/src/archive/overwrite.lisp,
463        hemlock/src/archive/pascal.lisp, hemlock/src/archive/rcs.lisp,
464        hemlock/src/archive/screen.lisp, hemlock/src/archive/scribe.lisp,
465        hemlock/src/archive/shell.lisp, hemlock/src/archive/spell-aug.lisp,
466        hemlock/src/archive/spell-corr.lisp,
467        hemlock/src/archive/spell-rt.lisp,
468        hemlock/src/archive/spellcoms.lisp,
469        hemlock/src/archive/srccom.lisp, hemlock/src/archive/ts-buf.lisp,
470        hemlock/src/archive/ts-stream.lisp,
471        hemlock/src/archive/unixcoms.lisp, hemlock/src/archive/window.lisp,
472        hemlock/src/archive/winimage.lisp, hemlock/src/archive/xcoms.lisp,
473        hemlock/src/spell/spellcoms.lisp, hemlock/src/tty/termcap.lisp,
474        hemlock/src/tty/tty-disp-rt.lisp, hemlock/src/tty/tty-display.lisp,
475        hemlock/src/tty/tty-screen.lisp, hemlock/src/wire/remote.lisp,
476        hemlock/src/wire/wire.lisp, hemlock/unused/bit-stream.lisp,
477        hemlock/unused/clx-ext.lisp, hemlock/unused/ed-integrity.lisp,
478        hemlock/unused/gosmacs.lisp, hemlock/unused/hemcom.lisp,
479        hemlock/unused/hi-integrity.lisp, hemlock/unused/keytran.lisp,
480        hemlock/unused/keytrandefs.lisp, hemlock/unused/spell-build.lisp,
481        hemlock/unused/struct-ed.lisp, hemlock/unused/tty-stream.lisp,
482        hemlock/website/index.html.in: umm, load cocoa-grep where it will
483        work...
484
4852007-08-29 20:10  gb
486
487        * cocoa-ide/cocoa-editor.lisp: load cocoa-grep
488
4892007-08-29 13:11  gb
490
491        * cocoa-ide/cocoa-grep.lisp: Implement m-x grep
492
4932007-08-29 12:12  gb
494
495        * cocoa-ide/hemlock/src/indent.lisp: Indent command: if no prefix
496        arg (simple case), move point to the location of the temporary mark
497        after calling the indent function.
498
4992007-08-29 12:11  gb
500
501        * cocoa-ide/hemlock/src/lispmode.lisp: COUNT-LEADING-WHITESPACE
502        returns 2 values: the "column" (with tabs expanded) of the first
503        non-whitespace character on the line and that character's position.
504         ENSURE-LISP-INDENTATION moves the (temporary) mark to that
505        position if no changes are necessary.
506
5072007-08-29 12:10  gb
508
509        * cocoa-ide/cocoa-editor.lisp: In HEMLOCK-TEXT-VIEW #/paste:
510        method, make an NS-MUTABLE-STRING even if the string from the
511        clipboard already appears to be an NS-MUTABLE-STRING.  (NSCFString
512        is apparently a subclass of NS-MUTABLE-STRING, but isn't really ...
513         mutable.) For ticket:84.
514
5152007-08-28 23:10  gb
516
517        * cocoa-ide/: cocoa-editor.lisp, hemlock/src/command.lisp: Make
518        hi::scroll-window actually scroll, not just move insertion point
519        around.  Fixes ticket:88.
520
5212007-08-26 13:11  gb
522
523        * cocoa-ide/: build-application.lisp, builder-utilities.lisp: new
524        keyword argument to build-application: main-nib-name; names the
525        nigfile that is to be the main nib of the built application
526
5272007-08-26 12:10  gb
528
529        * cocoa-ide/: build-application.lisp, builder-utilities.lisp: added
530        application bulder to trunk
531
5322007-08-25 02:13  gb
533
534        * cocoa-ide/cocoa-listener.lisp:
535        HI::SEND-STRING-TO-LISTENER-PROCESS quotes #\^d, sends unquoted
536        #\^d after sending the string.  (This is just a workaround for
537        ticket:82; the trailing #\^d is just treated as whitespace and
538        terminates calls to READ.  We really want some way of recognizing
539        "end of selection" and treating that like a transient EOF in some
540        cases.)
541
5422007-08-25 02:12  gb
543
544        * cocoa-ide/cocoa-editor.lisp: In COCOA-EDIT, invoke
545        #/openDocumentWithContentsOfURL:display:error:, since calling
546        #/openDocumentWithContentsOfURL:display: complains that
547        #/dataRepresentationOfType: isn't implemented in 32-bit versions of
548        Cocoa.  (Note that we'd been calling
549        #/openDocumentWithContentsOfURL:display:error: as part of the m-.
550        implementation without incident.)
551
5522007-08-25 02:11  gb
553
554        * cocoa-ide/hemlock/src/morecoms.lisp: "Capitalize Word" command
555        notes buffer modification.
556
5572007-08-25 02:10  gb
558
559        * cocoa-ide/hemlock/src/htext4.lisp: FILTER-REGION notes buffer
560        modification.
561
5622007-08-23 17:17  gb
563
564        * cocoa-ide/cocoa-listener.lisp: Remove a duplicate #/continue:
565        method.
566
5672007-08-23 17:16  gb
568
569        * cocoa-ide/cocoa-editor.lisp: Remove a duplicate
570        #/editingInProgress method.  Add some more (conditionalized) debug
571        info.  If ticket:50 bug is encountered, try to force DBG on Hemlock
572        command thread as well as in Cocoa thread.  Make sure that Hemlock
573        command thread has bindings of command-processing data structures,
574        prompt data structures.  Do not bind *LAST-SEARCH-STRING* or
575        *LAST-SEARCH-PATTERN*; note that *LAST-SEARCH-STRING* is usually
576        only set by isearch when it exits.
577
5782007-08-23 17:15  gb
579
580        * cocoa-ide/cocoa-backtrace.lisp: Use new defaults-based backtrace
581        font name and size; initially, Monaco 9.  (Not yet changeable
582        through preferences panel.) Adjust outline view's row height based
583        on font height.  Set the data cell to "non-editable" (could have
584        done this in IB).  Provide handlers for some menu commands
585        (continue, restarts, exitBreak); no need to validate menu items for
586        them (those commands should be available whenever backtrace dialog
587        is active.)
588
5892007-08-23 17:14  gb
590
591        * cocoa-ide/hemlock/src/searchcoms.lisp: Use
592        RECURSIVE-GET-KEY-EVENT in isearch, query-replace.
593
5942007-08-23 17:13  gb
595
596        * cocoa-ide/hemlock/src/package.lisp: Export
597        RECURSIVE-GET-KEY-EVENT.
598
5992007-08-23 17:12  gb
600
601        * cocoa-ide/hemlock/src/lispmode.lisp: Ignore erorrs when trying to
602        read symbol for arglist.  (Should probably be more careful
603        elsewhere, too.)
604
6052007-08-23 17:11  gb
606
607        * cocoa-ide/hemlock/src/interp.lisp: Keep track of
608        *COMMAND-KEY-EVENT-BUFFER* in %COMMAND-LOOP, to enable the
609        RECURSIVE-GET-KEY-EVENT redisplay mechanism.
610
6112007-08-23 17:10  gb
612
613        * cocoa-ide/hemlock/src/echo.lisp: Don't call
614        DOCUMENT-SET-POINT-POSITION in CLEAR-ECHO-AREA: editing changes may
615        still be pending on the echo area (how ?), and
616        DOCUMENT-SET-POINT-POSITION may need to do layout/display updates.
617        Use RECURSIVE-GET-KEY-EVENT when prompting in the echo area.
618
6192007-08-23 16:11  gb
620
621        * cocoa-ide/hemlock/src/cocoa-hemlock.lisp: Define
622        RECURSIVE-GET-KEY-EVENT, to allow redisplay on the buffer
623        designated as *COMMAND-KEY-EVENT-BUFFER* in while getting key
624        events in some modal loop in a command.  (The idea is that toplevel
625        editing commands inhibit redisplay in the main buffer while they're
626        active; commands which recursively process key events and which may
627        make changes to that buffer should allow redisplay while they're
628        waiting in RECURSIVE-GET-KEY-EVENT.)
629
6302007-08-23 16:10  gb
631
632        * cocoa-ide/hemlock/src/filecoms.lisp: Use the NSDocument-based
633        revert.
634
6352007-08-18 19:11  gb
636
637        * level-1/: l1-dcode.lisp, l1-dcode.lisp: Define and use
638        %GF-DISPATCH-TABLE-STORE-CONDITIONAL; this is intended to avoid
639        race conditions where two threads try to update a distpatch table
640        index with different {wrapper, combined-method} pairs at the same
641        time.  (As it's written, if the store-conditional fails because a
642        slot that we thought was free is now in use, we simply don't cache
643        the pair and get a cache miss the next time; that may or may not be
644        more work than repeating the whole process would be.)
645       
646        The store-conditional is used on attempt to update the
647        combined-method slot in the pair; the wrapper slot is only updated
648        if the store-conditional succeeds.  Code which probes the wrapper
649        slots shouldn't be confused by a half-updated pair (should never
650        see a non-null wrapper slot and a null combined-method slot.)
651
6522007-08-18 17:11  gb
653
654        * lib/db-io.lisp: Don't treat (:* :void) as (:* nil) in
655        %DECODE-TYPE.
656
6572007-08-18 16:10  gb
658
659        * cocoa-ide/cocoa-editor.lisp: Use #/instancesRespondToSelector: to
660        determine if selection highlighting can be used, since
661        #_class_respondsToSelector requires ObjC-2.0)
662
6632007-08-16 08:22  gb
664
665        * cocoa-ide/cocoa-editor.lisp: Hemlock text storage can use
666        extended selection highlighting if it's supported.
667       
668        Clear the shift bit from key events associated with standard-chars.
669
6702007-08-16 08:20  gb
671
672        * cocoa-ide/hemlock/src/bindings.lisp: Shifted and unshifted keys
673        bound to movement commands run different commands.
674       
675        Left-mouse has the :mouse-exit logical attribute.
676
6772007-08-16 08:19  gb
678
679        * cocoa-ide/hemlock/src/buffer.lisp:
680        CURRENT-POINT-COLLAPSING-SELECTION and
681        CURRENT-POINT-EXTENDING-SELECTION replace
682        CURRENT-POINT-FOR-MOVEMENT.
683
6842007-08-16 08:18  gb
685
686        * cocoa-ide/hemlock/src/cocoa-hemlock.lisp: Simplify key-event
687        translation.
688       
689        Define NOTE-SELECTION-SET-BY-SEARCH, which can cause special
690        selection highlighting under Leopard.
691
6922007-08-16 08:16  gb
693
694        * cocoa-ide/hemlock/src/command.lisp: Movement commands come in
695        "shifted" and "unshifted" variants.
696
6972007-08-16 08:15  gb
698
699        * cocoa-ide/hemlock/src/echo.lisp: :mouse-exit is a new logical key
700        attribute.
701
7022007-08-16 08:14  gb
703
704        * cocoa-ide/hemlock/src/key-event.lisp: GET-KEY-EVENT*: clear shift
705        bit for standard-char (and upper-case.) This means that
706        #k"ctrl-shift-a" and #k"ctrl-A" both refer to the same key event
707        (in which the shift modifier isn't explicitly set) and that
708        #k"rightarrow" and #k"shift-rightarrow" are distinct (and the shift
709        modifier is set in the latter.)
710
7112007-08-16 08:13  gb
712
713        * cocoa-ide/hemlock/src/lispmode.lisp: When indenting, don't change
714        the buffer if the line's already indented properly.
715       
716        Movement commands come in two variants: those that collapse and
717        those that extend the selection.
718
7192007-08-16 08:12  gb
720
721        * cocoa-ide/hemlock/src/package.lisp: Export
722        CURRENT-POINT-EXTENDING-SELECTION and
723        CURRENT-POINT-COLLAPSING-SELECTION.  Don't export
724        CURRENT-POINT-FOR-MOVEMENT.
725
7262007-08-16 08:10  gb
727
728        * cocoa-ide/hemlock/src/searchcoms.lisp: Hilite the selection more
729        empatically (under Leopard) after successful (non incremental)
730        search.
731       
732        Incremental search also hilites the selection, but doesn't yet
733        manage the selection on failure.
734
7352007-08-16 07:10  gb
736
737        * cocoa-ide/cocoa-editor.lisp: activate-hemlock-view: implemenent
738        by invoking #/activateHemlockView on main thread; call
739        deactivate-hemlock-view on the peer.
740       
741        Not sure if edit-count fuss in deactivate-hemlock-view is correct,
742        but I'm fairly sure that this stuff needs to happen on the main
743        thread.
744
7452007-08-09 16:10  gb
746
747        * lib/arglist.lisp: Use PRINC-TO-STRING (not PRIN1-TO-STRING) in
748        ARGLIST-STRING, to avoid prinding package qualfiers (ticket:30).
749
7502007-08-07 15:10  gb
751
752        * cocoa-ide/hemlock/src/bindings.lisp: Bind home and end to
753        beginning of buffer and end of buffer.  It's Mac standard, and I
754        use it a lot.  Home was bound to "Help".
755       
756        Make clicking the mouse while incremental searching exit instead of
757        abort, leaving the insertion point where you click instead of where
758        the isearch was started.
759
7602007-08-06 23:10  gb
761
762        * cocoa-ide/: hemlock/src/bindings.lisp, hemlock/src/buffer.lisp,
763        hemlock/src/cocoa-hemlock.lisp, hemlock/src/command.lisp,
764        hemlock/src/lispmode.lisp, hemlock/src/morecoms.lisp,
765        hemlock/src/package.lisp, cocoa-editor.lisp: When generating a
766        hemlock key event, set the hemlock shift bit if the the Cocoa shift
767        bit was set.  In HI::GET-KEY-EVENT, return an event with the shift
768        bit cleared and the keysym downcased (if necessary).  Leave
769        HI::*LAST-KEY-EVENT-TYPED* as the unmodified event (which may have
770        shift bits set.) Define HI:CURRENT-POINT-FOR-MOVEMENT, which
771        deactivates the region ("collapses the selection") if the shift bit
772        was clear in HI::*LAST-KEY-EVENT-TYPED* and ensures that a region
773        is active otherwise.  Use HI:CURRENT-POINT-FOR-MOVEMENT in (most,
774        hopefully all) movement commands, to address ticket:36 .  Define a
775        "Do Nothing" hemlock command, bind #k"leftdown" (left mouse down)
776        to it to address ticket:44 .
777
7782007-08-06 19:10  gb
779
780        * objc-bridge/objc-support.lisp: careful with db stuff
781
7822007-08-04 13:12  gb
783
784        * cocoa-ide/cocoa-editor.lisp: Conditionalize an #_NSLog call.
785        Post a #k"leftdown" to Hemlock on mouseDown: in the main text view.
786         (Should maybe do this on mousedown in the echo area, too.) Some
787        indentation changes.
788
7892007-08-04 12:14  gb
790
791        * cocoa-ide/hemlock/src/bindings.lisp: Make #k"leftdown" a logical
792        :abort key event.
793
7942007-08-04 12:13  gb
795
796        * cocoa-ide/hemlock/src/doccoms.lisp: Fix format string in window
797        title for show lossage command.
798
7992007-08-04 12:12  gb
800
801        * cocoa-ide/hemlock/src/keysym-defs.lisp: Define the keysym for
802        left mouse down, so that we can use #k"leftdown".
803
8042007-08-04 12:11  gb
805
806        * cocoa-ide/hemlock/src/key-event.lisp: Revive mouse-event stuff.
807
8082007-08-03 15:10  gb
809
810        * compiler/X86/x86-disassemble.lisp: Correct spelling errors.
811
8122007-08-03 10:10  gb
813
814        * lib/backquote.lisp: Use list-to-vector, not (apply #'vector ...),
815        since the latter can run into problems with CALL-ARGUMENTS-LIMIT.
816
8172007-08-03 09:10  gb
818
819        * level-0/l0-array.lisp: Define list-to-vector.
820
8212007-08-02 07:16  gb
822
823        * cocoa-ide/cocoa-prefs.lisp: Don't make font panel broadcast
824        #/changeFont:; use targeted messages.  Ensure that font panel picks
825        up the right font.
826
8272007-08-02 07:16  gb
828
829        * cocoa-ide/cocoa-window.lisp: Don't enable "metal" style by
830        default.
831
8322007-08-02 07:15  gb
833
834        * cocoa-ide/cocoa-editor.lisp: Make "peer" text view (main text
835        view, echo area) unselectable when activating via Hemlock command.
836        Text views don't use font panel by default; enable/disable font
837        panel when setting text color.
838
8392007-08-02 07:14  gb
840
841        * cocoa-ide/.cvsignore: New.
842
8432007-08-02 07:13  gb
844
845        * lib/: ccl-export-syms.lisp, compile-ccl.lisp: Define and export
846        CREATE-INTERFACES.
847
8482007-08-02 07:12  gb
849
850        * cocoa-ide/cocoa-defaults.lisp: Don't need carbon interfaces.
851
8522007-08-02 07:11  gb
853
854        * library/parse-ffi.lisp: Don't be verbose about explict struct
855        returns.
856
8572007-08-02 07:10  gb
858
859        * objc-bridge/objc-runtime.lisp: Don't use carbon  interfaces
860        anymore.
861
8622007-07-31 19:10  gb
863
864        * darwin-x86-headers64/cocoa/: .cvsignore, C/.cvsignore,
865        C/populate.sh, C/.cvsignore, C/populate.sh: Added.
866
8672007-07-31 07:12  gb
868
869        * lib/dumplisp.lisp: Default the :MODE option to SAVE-APPLICATION
870        to #o644 (not #o666); make sure that it's actually used when
871        creating the image (even if not prepending a kernel to the image.)
872
8732007-07-31 07:11  gb
874
875        * level-1/l1-application.lisp: When processing --version option,
876        don't write to *terminal-io* (which doesn't exist yet.)
877
8782007-07-22 23:50  gb
879
880        * release-notes.txt: Add more stuff.
881
8822007-07-22 23:11  gb
883
884        * level-1/version.lisp: Bump.
885
8862007-07-22 23:10  gb
887
888        * release-notes.txt: Update for 1.1-pre-070722.
889
8902007-07-22 21:11  gb
891
892        * lib/ccl-export-syms.lisp: Export WITH-ENCODED-CSTRS.
893
8942007-07-22 21:10  gb
895
896        * cocoa-ide/README: New file.
897
8982007-07-22 18:51  gb
899
900        * cocoa-ide/cocoa-inspector.lisp: Hook name is in inspector
901        package.
902
9032007-07-22 18:50  gb
904
905        * compiler/PPC/ppc2.lisp: Put special args/locals in symbol map.
906
9072007-07-22 18:49  gb
908
909        * level-1/version.lisp: Bump.
910
9112007-07-22 18:48  gb
912
913        * level-1/: ppc-callback-support.lisp, x86-callback-support.lisp:
914        Allocate callback trampolines via mmap on ppc, too.
915
9162007-07-22 18:47  gb
917
918        * level-1/linux-files.lisp: Don't expose the PROGRAM arg to
919        RUN-PROGRAM to merge-pathnames.
920
9212007-07-22 18:46  gb
922
923        * level-1/l1-utils.lisp: Don't define BEEP.
924
9252007-07-22 18:46  gb
926
927        * level-1/l1-unicode.lisp: utf-8 length-of-memory-encoding function
928        was counting chars (nchars) twice.
929
9302007-07-22 18:45  gb
931
932        * level-1/l1-streams.lisp: selection-stream changes.
933
9342007-07-22 18:44  gb
935
936        * level-1/l1-readloop-lds.lisp: :raw breakloop command.  Put info
937        about restarts in backtrace context.
938
9392007-07-22 18:43  gb
940
941        * level-1/l1-processes.lisp: PROCESS-DEBUG-CONDITION, so that it
942        can be overridden.
943
9442007-07-22 18:42  gb
945
946        * level-1/l1-pathnames.lisp: Add objc-bridge, cocoa-ide to
947        *MODULE-SEARCH-PATH*.
948
9492007-07-22 18:41  gb
950
951        * level-1/l1-format.lisp: Handling of * format directive when
952        dealing with circularity screws up other things that expect
953        *FORMAT-ARGUMENTS* to share structure with
954        *FORMAT-ORIGINAL-ARGUMENTS*.
955
9562007-07-22 18:40  gb
957
958        * level-1/l1-files.lisp: NATIVE-UNTRANSLATED-NAMESTRING,
959        ENSURE-DIRECTORY-NAMESTRING.
960
9612007-07-22 18:40  gb
962
963        * level-1/l1-events.lisp: Handle xcf's on x86 when processing an
964        interactive break.
965
9662007-07-22 18:39  gb
967
968        * level-1/l1-error-system.lisp: Stream error context stuff.
969
9702007-07-22 18:38  gb
971
972        * level-1/l1-error-signal.lisp: Try to recognize foreign exceptions
973        (e.g., as NSExceptions.)
974
9752007-07-22 18:37  gb
976
977        * level-1/l1-clos-boot.lisp: Use COLLECT macro in
978        CLASS-SLOT-INITARGS.
979
9802007-07-22 18:36  gb
981
982        * level-1/l1-callbacks.lisp: Move the x86-64 callback trampoline
983        allocation stuff (which uses mmap to ensure that the callback is in
984        executable memory) here, since it'll be needed on ppc64 leopard, at
985        least.
986
9872007-07-22 18:35  gb
988
989        * level-1/l1-application.lisp: Argument handling and interactive
990        stream initialization happens in a :before method on
991        (toplevel-function application).
992
9932007-07-22 18:34  gb
994
995        * compiler/X86/x862.lisp: Symbol-address recording stuff: record
996        special args/locals, too.
997
9982007-07-22 18:33  gb
999
1000        * compiler/X86/x86-disassemble.lisp: Support for disassemble-list,
1001        for backtrace/inspect someday.
1002
10032007-07-22 18:33  gb
1004
1005        * compiler/X86/x86-arch.lisp: Globals for ObjC2 exception stuff.
1006
10072007-07-22 18:32  gb
1008
1009        * lib/macros.lisp: Callbacks that try to do magic foreign error
1010        stuff use HANDLER-BIND, not HANDLER-CASE.
1011       
1012        Other callback-changes to reduce incidental consing sometimes.
1013
10142007-07-22 18:31  gb
1015
1016        * lib/backtrace.lisp: %show-args-and-locals,
1017        %stack-frames-in-context: changes for new backtrace presentation.
1018
10192007-07-22 18:30  gb
1020
1021        * lib/compile-ccl.lisp: Remove some duplicate definitions.
1022
10232007-07-22 18:29  gb
1024
1025        * lib/describe.lisp: Some (signigicant) stack-frame changes.
1026
10272007-07-22 18:28  gb
1028
1029        * lib/ppc-backtrace.lisp: Tighten some things up a bit.
1030
10312007-07-22 18:27  gb
1032
1033        * lib/arglist.lisp: Provide -some- arglist info for special
1034        operators.  ARG-NAMES-FROM-MAP.
1035
10362007-07-22 18:27  gb
1037
1038        * lib/pprint.lisp: Enter the 1990s (eval-when ..).
1039
10402007-07-22 18:26  gb
1041
1042        * lib/source-files.lisp: Comment formatting.
1043
10442007-07-22 18:25  gb
1045
1046        * lib/read.lisp: Use hash tables in #=, etc.  Expect reader errors
1047        to provide context.
1048
10492007-07-22 18:24  gb
1050
1051        * lib/x86-backtrace.lisp: Tighten up some frame accessors; don't
1052        get confused by null register values, etc.
1053
10542007-07-22 18:23  gb
1055
1056        * lib/time.lisp: GET-TIMEZONE: conditionalize on target word size,
1057        not ppc32/ppc64.
1058
10592007-07-22 18:22  gb
1060
1061        * level-0/l0-hash.lisp: Try to defer GC locking in GETHASH.  Some
1062        64-bit key-scrambling stuff.
1063
10642007-07-22 18:21  gb
1065
1066        * level-0/l0-misc.lisp: Less zeal in SAFE-GET-PTR.
1067
10682007-07-22 18:21  gb
1069
1070        * level-0/l0-utils.lisp: s32->u32, u32->s32.
1071
10722007-07-22 18:20  gb
1073
1074        * level-0/l0-error.lisp: foreign exception error stuff.
1075
10762007-07-22 18:19  gb
1077
1078        * level-1/l1-sockets.lisp: Sockets created with :format :binary
1079        don't have element-type of character, though this crap is all
1080        pretty nebulous.
1081
10822007-07-22 18:18  gb
1083
1084        * library/lispequ.lisp: $XFOREIGNEXCEPTION.
1085
10862007-07-22 18:17  gb
1087
1088        * library/pty.lisp: set-pty-raw.
1089
10902007-07-22 18:16  gb
1091
1092        * library/hemlock.lisp: Moved elsewhere.
1093
10942007-07-22 18:15  gb
1095
1096        * lisp-kernel/xlbt.c: Basically, all frames on the vstack are lisp
1097        frames.
1098
10992007-07-22 18:14  gb
1100
1101        * lisp-kernel/x86-spentry64.s: Add ObjC2 exception metainfomation.
1102
11032007-07-22 18:14  gb
1104
1105        * lisp-kernel/x86-exceptions.c: Clear and restore the tcr foreign
1106        exception bit on interrupt.
1107
11082007-07-22 18:13  gb
1109
1110        * lisp-kernel/x86-constants64.s: tcr.flags is a full word.  define
1111        tcr flag bits, including new one for foreign exceptions.
1112
11132007-07-22 18:12  gb
1114
1115        * lisp-kernel/x86-constants.s: Globals for ObjC2 exceptions.
1116
11172007-07-22 18:11  gb
1118
1119        * lisp-kernel/x86-constants.h: New tcr flag bit for foreign
1120        exceptions.
1121
11222007-07-22 18:10  gb
1123
1124        * lisp-kernel/thread_manager.c: ensure_stack_limit() when creatings
1125        stack for pthread.  Foreign exception callbacks: put some 0s on the
1126        stack for callback.
1127
11282007-07-22 18:09  gb
1129
1130        * lisp-kernel/ppc-spentry.s: Restore save regs on callbacks.
1131
11322007-07-22 18:08  gb
1133
1134        * lisp-kernel/pmcl-kernel.c: usage_exit() via _exit().
1135        ensure_stack_limit(): if stack size is constrained by limits, don't
1136        exceed those limits.
1137
11382007-07-22 18:08  gb
1139
1140        * lisp-kernel/lisp_globals.h: globals for ObjC2 exceptions.
1141
11422007-07-22 18:07  gb
1143
1144        * lisp-kernel/lisp.h: prototype for ensure_stack_limit().
1145
11462007-07-22 18:06  gb
1147
1148        * lisp-kernel/errors.s: XFOREIGNEXCEPTION error constant.
1149
11502007-07-22 18:03  gb
1151
1152        * OpenMCL.app/Contents/Info.plist, OpenMCL.app/Contents/PkgInfo,
1153        OpenMCL.app/Contents/MacOS/dppccl,
1154        OpenMCL.app/Contents/Resources/OpenMCLKeyBindings.dict,
1155        OpenMCL.app/Contents/Resources/openmcl-icon.icns,
1156        OpenMCL.app/Contents/Resources/English.lproj/.cvsignore,
1157        OpenMCL.app/Contents/Resources/English.lproj/Credits.rtf,
1158        OpenMCL.app/Contents/Resources/English.lproj/InfoPlist.strings,
1159        OpenMCL.app/Contents/Resources/English.lproj/MainMenu.nib/classes.n
1160        ib,
1161        OpenMCL.app/Contents/Resources/English.lproj/MainMenu.nib/info.nib,
1162        OpenMCL.app/Contents/Resources/English.lproj/MainMenu.nib/keyedobje
1163        cts.nib,
1164        OpenMCL.app/Contents/Resources/English.lproj/OpenmclInspector.nib/c
1165        lasses.nib,
1166        OpenMCL.app/Contents/Resources/English.lproj/OpenmclInspector.nib/i
1167        nfo.nib,
1168        OpenMCL.app/Contents/Resources/English.lproj/OpenmclInspector.nib/k
1169        eyedobjects.nib,
1170        OpenMCL.app/Contents/Resources/English.lproj/backtrace.nib/classes.
1171        nib,
1172        OpenMCL.app/Contents/Resources/English.lproj/backtrace.nib/info.nib
1173        ,
1174        OpenMCL.app/Contents/Resources/English.lproj/backtrace.nib/keyedobj
1175        ects.nib,
1176        OpenMCL.app/Contents/Resources/English.lproj/lispeditor.nib/classes
1177        .nib,
1178        OpenMCL.app/Contents/Resources/English.lproj/lispeditor.nib/info.ni
1179        b,
1180        OpenMCL.app/Contents/Resources/English.lproj/lispeditor.nib/keyedob
1181        jects.nib, OpenMCL.app/Contents/Resources/Help/cocoa-notes.html,
1182        OpenMCL.app/Contents/Resources/Help/index.html,
1183        cocoa-ide/Info.plist-proto, cocoa-ide/cocoa-application.lisp,
1184        cocoa-ide/cocoa-backtrace.lisp, cocoa-ide/cocoa-defaults.lisp,
1185        cocoa-ide/cocoa-doc.lisp, cocoa-ide/cocoa-editor.lisp,
1186        cocoa-ide/cocoa-inspector.lisp, cocoa-ide/cocoa-listener.lisp,
1187        cocoa-ide/cocoa-prefs.lisp, cocoa-ide/cocoa-typeout.lisp,
1188        cocoa-ide/cocoa-utils.lisp, cocoa-ide/cocoa-window.lisp,
1189        cocoa-ide/cocoa.lisp, cocoa-ide/compile-hemlock.lisp,
1190        cocoa-ide/hemlock.lisp, cocoa-ide/OpenMCL.app/Contents/PkgInfo,
1191        cocoa-ide/OpenMCL.app/Contents/Resources/openmcl-icon.icns,
1192        cocoa-ide/OpenMCL.app/Contents/Resources/English.lproj/.cvsignore,
1193        cocoa-ide/OpenMCL.app/Contents/Resources/English.lproj/Credits.rtf,
1194        cocoa-ide/OpenMCL.app/Contents/Resources/English.lproj/InfoPlist.st
1195        rings,
1196        cocoa-ide/OpenMCL.app/Contents/Resources/English.lproj/MainMenu.nib
1197        /classes.nib,
1198        cocoa-ide/OpenMCL.app/Contents/Resources/English.lproj/MainMenu.nib
1199        /info.nib,
1200        cocoa-ide/OpenMCL.app/Contents/Resources/English.lproj/MainMenu.nib
1201        /keyedobjects.nib,
1202        cocoa-ide/OpenMCL.app/Contents/Resources/English.lproj/OpenmclInspe
1203        ctor.nib/classes.nib,
1204        cocoa-ide/OpenMCL.app/Contents/Resources/English.lproj/OpenmclInspe
1205        ctor.nib/info.nib,
1206        cocoa-ide/OpenMCL.app/Contents/Resources/English.lproj/OpenmclInspe
1207        ctor.nib/keyedobjects.nib,
1208        cocoa-ide/OpenMCL.app/Contents/Resources/English.lproj/backtrace.ni
1209        b/classes.nib,
1210        cocoa-ide/OpenMCL.app/Contents/Resources/English.lproj/backtrace.ni
1211        b/info.nib,
1212        cocoa-ide/OpenMCL.app/Contents/Resources/English.lproj/backtrace.ni
1213        b/keyedobjects.nib,
1214        cocoa-ide/OpenMCL.app/Contents/Resources/English.lproj/displaydoc.n
1215        ib/classes.nib,
1216        cocoa-ide/OpenMCL.app/Contents/Resources/English.lproj/displaydoc.n
1217        ib/info.nib,
1218        cocoa-ide/OpenMCL.app/Contents/Resources/English.lproj/displaydoc.n
1219        ib/keyedobjects.nib,
1220        cocoa-ide/OpenMCL.app/Contents/Resources/English.lproj/lispeditor.n
1221        ib/classes.nib,
1222        cocoa-ide/OpenMCL.app/Contents/Resources/English.lproj/lispeditor.n
1223        ib/info.nib,
1224        cocoa-ide/OpenMCL.app/Contents/Resources/English.lproj/lispeditor.n
1225        ib/keyedobjects.nib,
1226        cocoa-ide/OpenMCL.app/Contents/Resources/English.lproj/preferences.
1227        nib/classes.nib,
1228        cocoa-ide/OpenMCL.app/Contents/Resources/English.lproj/preferences.
1229        nib/info.nib,
1230        cocoa-ide/OpenMCL.app/Contents/Resources/English.lproj/preferences.
1231        nib/keyedobjects.nib,
1232        cocoa-ide/OpenMCL.app/Contents/Resources/Help/cocoa-notes.html,
1233        cocoa-ide/OpenMCL.app/Contents/Resources/Help/index.html,
1234        cocoa-ide/hemlock/.cvsignore, cocoa-ide/hemlock/INSTALL,
1235        cocoa-ide/hemlock/TODO, cocoa-ide/hemlock/hemlock.system,
1236        cocoa-ide/hemlock/hemlock11.cursor,
1237        cocoa-ide/hemlock/hemlock11.mask, cocoa-ide/hemlock/bin/.cvsignore,
1238        cocoa-ide/hemlock/bin/openmcl/.cvsignore,
1239        cocoa-ide/hemlock/doc/.cvsignore,
1240        cocoa-ide/hemlock/doc/cim/.cvsignore,
1241        cocoa-ide/hemlock/doc/cim/aux-sys.mss,
1242        cocoa-ide/hemlock/doc/cim/cim.mss,
1243        cocoa-ide/hemlock/doc/misc/.cvsignore,
1244        cocoa-ide/hemlock/doc/misc/compilation.order,
1245        cocoa-ide/hemlock/doc/misc/hemlock.log,
1246        cocoa-ide/hemlock/doc/misc/hemlock.upd,
1247        cocoa-ide/hemlock/doc/misc/notes.txt,
1248        cocoa-ide/hemlock/doc/misc/perq-hemlock.log,
1249        cocoa-ide/hemlock/doc/misc/things-to-do.txt,
1250        cocoa-ide/hemlock/doc/scribe-converter/.cvsignore,
1251        cocoa-ide/hemlock/doc/scribe-converter/NOTES,
1252        cocoa-ide/hemlock/doc/user/.cvsignore,
1253        cocoa-ide/hemlock/doc/user/commands.mss,
1254        cocoa-ide/hemlock/doc/user/intro.mss,
1255        cocoa-ide/hemlock/doc/user/lisp.mss,
1256        cocoa-ide/hemlock/doc/user/mail.mss,
1257        cocoa-ide/hemlock/doc/user/netnews.mss,
1258        cocoa-ide/hemlock/doc/user/special-modes.mss,
1259        cocoa-ide/hemlock/doc/user/user.mss,
1260        cocoa-ide/hemlock/maint/.cvsignore,
1261        cocoa-ide/hemlock/maint/publish,
1262        cocoa-ide/hemlock/resources/.cvsignore,
1263        cocoa-ide/hemlock/resources/XKeysymDB,
1264        cocoa-ide/hemlock/resources/mh-scan,
1265        cocoa-ide/hemlock/resources/spell-dictionary.text,
1266        cocoa-ide/hemlock/src/.cvsignore,
1267        cocoa-ide/hemlock/src/bindings-gb.lisp,
1268        cocoa-ide/hemlock/src/bindings.lisp,
1269        cocoa-ide/hemlock/src/buffer.lisp,
1270        cocoa-ide/hemlock/src/charmacs.lisp,
1271        cocoa-ide/hemlock/src/cocoa-hemlock.lisp,
1272        cocoa-ide/hemlock/src/command.lisp,
1273        cocoa-ide/hemlock/src/comments.lisp,
1274        cocoa-ide/hemlock/src/completion.lisp,
1275        cocoa-ide/hemlock/src/cursor.lisp,
1276        cocoa-ide/hemlock/src/decls.lisp,
1277        cocoa-ide/hemlock/src/defsyn.lisp,
1278        cocoa-ide/hemlock/src/doccoms.lisp,
1279        cocoa-ide/hemlock/src/echo.lisp,
1280        cocoa-ide/hemlock/src/echocoms.lisp,
1281        cocoa-ide/hemlock/src/edit-defs.lisp,
1282        cocoa-ide/hemlock/src/filecoms.lisp,
1283        cocoa-ide/hemlock/src/files.lisp, cocoa-ide/hemlock/src/fill.lisp,
1284        cocoa-ide/hemlock/src/font.lisp,
1285        cocoa-ide/hemlock/src/hemlock-ext.lisp,
1286        cocoa-ide/hemlock/src/htext1.lisp,
1287        cocoa-ide/hemlock/src/htext2.lisp,
1288        cocoa-ide/hemlock/src/htext3.lisp,
1289        cocoa-ide/hemlock/src/htext4.lisp, cocoa-ide/hemlock/src/icom.lisp,
1290        cocoa-ide/hemlock/src/indent.lisp,
1291        cocoa-ide/hemlock/src/interp.lisp,
1292        cocoa-ide/hemlock/src/kbdmac.lisp,
1293        cocoa-ide/hemlock/src/key-event.lisp,
1294        cocoa-ide/hemlock/src/keysym-defs.lisp,
1295        cocoa-ide/hemlock/src/killcoms.lisp,
1296        cocoa-ide/hemlock/src/line.lisp,
1297        cocoa-ide/hemlock/src/linimage.lisp,
1298        cocoa-ide/hemlock/src/lispdep.lisp,
1299        cocoa-ide/hemlock/src/lispmode.lisp,
1300        cocoa-ide/hemlock/src/listener.lisp,
1301        cocoa-ide/hemlock/src/macros.lisp, cocoa-ide/hemlock/src/main.lisp,
1302        cocoa-ide/hemlock/src/modeline.lisp,
1303        cocoa-ide/hemlock/src/morecoms.lisp,
1304        cocoa-ide/hemlock/src/package.lisp,
1305        cocoa-ide/hemlock/src/pop-up-stream.lisp,
1306        cocoa-ide/hemlock/src/register.lisp,
1307        cocoa-ide/hemlock/src/ring.lisp,
1308        cocoa-ide/hemlock/src/rompsite.lisp,
1309        cocoa-ide/hemlock/src/search1.lisp,
1310        cocoa-ide/hemlock/src/search2.lisp,
1311        cocoa-ide/hemlock/src/searchcoms.lisp,
1312        cocoa-ide/hemlock/src/srccom.lisp,
1313        cocoa-ide/hemlock/src/streams.lisp,
1314        cocoa-ide/hemlock/src/struct.lisp,
1315        cocoa-ide/hemlock/src/syntax.lisp,
1316        cocoa-ide/hemlock/src/table.lisp, cocoa-ide/hemlock/src/text.lisp,
1317        cocoa-ide/hemlock/src/undo.lisp, cocoa-ide/hemlock/src/vars.lisp,
1318        cocoa-ide/hemlock/src/archive/abbrev.lisp,
1319        cocoa-ide/hemlock/src/archive/auto-save.lisp,
1320        cocoa-ide/hemlock/src/archive/bit-display.lisp,
1321        cocoa-ide/hemlock/src/archive/bit-screen.lisp,
1322        cocoa-ide/hemlock/src/archive/bufed.lisp,
1323        cocoa-ide/hemlock/src/archive/debug.lisp,
1324        cocoa-ide/hemlock/src/archive/dired.lisp,
1325        cocoa-ide/hemlock/src/archive/diredcoms.lisp,
1326        cocoa-ide/hemlock/src/archive/display.lisp,
1327        cocoa-ide/hemlock/src/archive/dylan.lisp,
1328        cocoa-ide/hemlock/src/archive/eval-server.lisp,
1329        cocoa-ide/hemlock/src/archive/group.lisp,
1330        cocoa-ide/hemlock/src/archive/highlight.lisp,
1331        cocoa-ide/hemlock/src/archive/hunk-draw.lisp,
1332        cocoa-ide/hemlock/src/archive/input.lisp,
1333        cocoa-ide/hemlock/src/archive/lisp-lib.lisp,
1334        cocoa-ide/hemlock/src/archive/lispbuf.lisp,
1335        cocoa-ide/hemlock/src/archive/lispeval.lisp,
1336        cocoa-ide/hemlock/src/archive/mh.lisp,
1337        cocoa-ide/hemlock/src/archive/netnews.lisp,
1338        cocoa-ide/hemlock/src/archive/overwrite.lisp,
1339        cocoa-ide/hemlock/src/archive/pascal.lisp,
1340        cocoa-ide/hemlock/src/archive/rcs.lisp,
1341        cocoa-ide/hemlock/src/archive/screen.lisp,
1342        cocoa-ide/hemlock/src/archive/scribe.lisp,
1343        cocoa-ide/hemlock/src/archive/shell.lisp,
1344        cocoa-ide/hemlock/src/archive/spell-aug.lisp,
1345        cocoa-ide/hemlock/src/archive/spell-corr.lisp,
1346        cocoa-ide/hemlock/src/archive/spell-rt.lisp,
1347        cocoa-ide/hemlock/src/archive/spellcoms.lisp,
1348        cocoa-ide/hemlock/src/archive/srccom.lisp,
1349        cocoa-ide/hemlock/src/archive/ts-buf.lisp,
1350        cocoa-ide/hemlock/src/archive/ts-stream.lisp,
1351        cocoa-ide/hemlock/src/archive/unixcoms.lisp,
1352        cocoa-ide/hemlock/src/archive/window.lisp,
1353        cocoa-ide/hemlock/src/archive/winimage.lisp,
1354        cocoa-ide/hemlock/src/archive/xcoms.lisp,
1355        cocoa-ide/hemlock/src/elisp/.cvsignore,
1356        cocoa-ide/hemlock/src/elisp/base.lisp,
1357        cocoa-ide/hemlock/src/elisp/cmucl-hemlock-glue.lisp,
1358        cocoa-ide/hemlock/src/elisp/codewalker.lisp,
1359        cocoa-ide/hemlock/src/elisp/compile.lisp,
1360        cocoa-ide/hemlock/src/elisp/hemlock-shims.lisp,
1361        cocoa-ide/hemlock/src/elisp/implementation-needed,
1362        cocoa-ide/hemlock/src/elisp/internals.lisp,
1363        cocoa-ide/hemlock/src/elisp/loadup.lisp,
1364        cocoa-ide/hemlock/src/elisp/packages.lisp,
1365        cocoa-ide/hemlock/src/elisp/read-table.lisp,
1366        cocoa-ide/hemlock/src/spell/.cvsignore,
1367        cocoa-ide/hemlock/src/spell/build.lisp,
1368        cocoa-ide/hemlock/src/spell/classes.lisp,
1369        cocoa-ide/hemlock/src/spell/constants.lisp,
1370        cocoa-ide/hemlock/src/spell/correlate.lisp,
1371        cocoa-ide/hemlock/src/spell/flags.lisp,
1372        cocoa-ide/hemlock/src/spell/hashing.lisp,
1373        cocoa-ide/hemlock/src/spell/io.lisp,
1374        cocoa-ide/hemlock/src/spell/package.lisp,
1375        cocoa-ide/hemlock/src/spell/spell-aug.lisp,
1376        cocoa-ide/hemlock/src/spell/spell-dictionary.text,
1377        cocoa-ide/hemlock/src/spell/spell.asd,
1378        cocoa-ide/hemlock/src/spell/spellcoms.lisp,
1379        cocoa-ide/hemlock/src/tty/.cvsignore,
1380        cocoa-ide/hemlock/src/tty/termcap.lisp,
1381        cocoa-ide/hemlock/src/tty/tty-disp-rt.lisp,
1382        cocoa-ide/hemlock/src/tty/tty-display.lisp,
1383        cocoa-ide/hemlock/src/tty/tty-screen.lisp,
1384        cocoa-ide/hemlock/src/wire/.cvsignore,
1385        cocoa-ide/hemlock/src/wire/Notes,
1386        cocoa-ide/hemlock/src/wire/package.lisp,
1387        cocoa-ide/hemlock/src/wire/port.lisp,
1388        cocoa-ide/hemlock/src/wire/remote.lisp,
1389        cocoa-ide/hemlock/src/wire/wire.lisp,
1390        cocoa-ide/hemlock/unused/.cvsignore,
1391        cocoa-ide/hemlock/unused/bit-stream.lisp,
1392        cocoa-ide/hemlock/unused/clx-ext.lisp,
1393        cocoa-ide/hemlock/unused/ed-integrity.lisp,
1394        cocoa-ide/hemlock/unused/gosmacs.lisp,
1395        cocoa-ide/hemlock/unused/hacks.lisp,
1396        cocoa-ide/hemlock/unused/hemcom.lisp,
1397        cocoa-ide/hemlock/unused/hi-integrity.lisp,
1398        cocoa-ide/hemlock/unused/keytran.lisp,
1399        cocoa-ide/hemlock/unused/keytrandefs.lisp,
1400        cocoa-ide/hemlock/unused/spell-build.lisp,
1401        cocoa-ide/hemlock/unused/struct-ed.lisp,
1402        cocoa-ide/hemlock/unused/tty-stream.lisp,
1403        cocoa-ide/hemlock/website/.cvsignore,
1404        cocoa-ide/hemlock/website/index.html.in, compiler/nx0.lisp,
1405        examples/CocoaBridgeDoc.txt, examples/bridge.lisp,
1406        examples/cocoa-application.lisp, examples/cocoa-backtrace.lisp,
1407        examples/cocoa-defaults.lisp, examples/cocoa-editor.lisp,
1408        examples/cocoa-inspector.lisp, examples/cocoa-listener.lisp,
1409        examples/cocoa-prefs.lisp, examples/cocoa-textfind.lisp,
1410        examples/cocoa-typeout.lisp, examples/cocoa-window.lisp,
1411        examples/cocoa.lisp, examples/compile-hemlock.lisp,
1412        examples/fake-cfbundle-path.lisp, examples/name-translation.lisp,
1413        examples/objc-clos.lisp, examples/objc-package.lisp,
1414        examples/objc-readtable.lisp, examples/objc-runtime.lisp,
1415        examples/objc-support.lisp, examples/process-objc-modules.lisp,
1416        hemlock/.cvsignore, hemlock/INSTALL, hemlock/README, hemlock/TODO,
1417        hemlock/hemlock.system, hemlock/hemlock11.cursor,
1418        hemlock/hemlock11.mask, hemlock/bin/.cvsignore,
1419        hemlock/bin/openmcl/.cvsignore, hemlock/doc/.cvsignore,
1420        hemlock/doc/cim/.cvsignore, hemlock/doc/cim/aux-sys.mss,
1421        hemlock/doc/cim/cim.mss, hemlock/doc/misc/.cvsignore,
1422        hemlock/doc/misc/compilation.order, hemlock/doc/misc/hemlock.log,
1423        hemlock/doc/misc/hemlock.upd, hemlock/doc/misc/notes.txt,
1424        hemlock/doc/misc/perq-hemlock.log,
1425        hemlock/doc/misc/things-to-do.txt,
1426        hemlock/doc/scribe-converter/.cvsignore,
1427        hemlock/doc/scribe-converter/NOTES,
1428        hemlock/doc/scribe-converter/README, hemlock/doc/user/.cvsignore,
1429        hemlock/doc/user/commands.mss, hemlock/doc/user/intro.mss,
1430        hemlock/doc/user/lisp.mss, hemlock/doc/user/mail.mss,
1431        hemlock/doc/user/netnews.mss, hemlock/doc/user/special-modes.mss,
1432        hemlock/doc/user/user.mss, hemlock/maint/.cvsignore,
1433        hemlock/maint/publish, hemlock/resources/.cvsignore,
1434        hemlock/resources/XKeysymDB, hemlock/resources/mh-scan,
1435        hemlock/resources/spell-dictionary.text, hemlock/src/.cvsignore,
1436        hemlock/src/abbrev.lisp, hemlock/src/auto-save.lisp,
1437        hemlock/src/bindings-gb.lisp, hemlock/src/bindings.lisp,
1438        hemlock/src/bit-display.lisp, hemlock/src/bit-screen.lisp,
1439        hemlock/src/bufed.lisp, hemlock/src/buffer.lisp,
1440        hemlock/src/charmacs.lisp, hemlock/src/cocoa-hemlock.lisp,
1441        hemlock/src/command.lisp, hemlock/src/comments.lisp,
1442        hemlock/src/completion.lisp, hemlock/src/cursor.lisp,
1443        hemlock/src/debug.lisp, hemlock/src/decls.lisp,
1444        hemlock/src/defsyn.lisp, hemlock/src/dired.lisp,
1445        hemlock/src/diredcoms.lisp, hemlock/src/display.lisp,
1446        hemlock/src/doccoms.lisp, hemlock/src/dylan.lisp,
1447        hemlock/src/echo.lisp, hemlock/src/echocoms.lisp,
1448        hemlock/src/edit-defs.lisp, hemlock/src/eval-server.lisp,
1449        hemlock/src/filecoms.lisp, hemlock/src/files.lisp,
1450        hemlock/src/fill.lisp, hemlock/src/font.lisp,
1451        hemlock/src/group.lisp, hemlock/src/hemlock-ext.lisp,
1452        hemlock/src/highlight.lisp, hemlock/src/htext1.lisp,
1453        hemlock/src/htext2.lisp, hemlock/src/htext3.lisp,
1454        hemlock/src/htext4.lisp, hemlock/src/hunk-draw.lisp,
1455        hemlock/src/icom.lisp, hemlock/src/indent.lisp,
1456        hemlock/src/input.lisp, hemlock/src/interp.lisp,
1457        hemlock/src/kbdmac.lisp, hemlock/src/key-event.lisp,
1458        hemlock/src/keysym-defs.lisp, hemlock/src/killcoms.lisp,
1459        hemlock/src/line.lisp, hemlock/src/linimage.lisp,
1460        hemlock/src/lisp-lib.lisp, hemlock/src/lispbuf.lisp,
1461        hemlock/src/lispdep.lisp, hemlock/src/lispeval.lisp,
1462        hemlock/src/lispmode.lisp, hemlock/src/listener.lisp,
1463        hemlock/src/macros.lisp, hemlock/src/main.lisp,
1464        hemlock/src/mh.lisp, hemlock/src/modeline.lisp,
1465        hemlock/src/morecoms.lisp, hemlock/src/netnews.lisp,
1466        hemlock/src/overwrite.lisp, hemlock/src/package.lisp,
1467        hemlock/src/pascal.lisp, hemlock/src/pop-up-stream.lisp,
1468        hemlock/src/rcs.lisp, hemlock/src/register.lisp,
1469        hemlock/src/ring.lisp, hemlock/src/rompsite.lisp,
1470        hemlock/src/screen.lisp, hemlock/src/scribe.lisp,
1471        hemlock/src/search1.lisp, hemlock/src/search2.lisp,
1472        hemlock/src/searchcoms.lisp, hemlock/src/shell.lisp,
1473        hemlock/src/spell-aug.lisp, hemlock/src/spell-corr.lisp,
1474        hemlock/src/spell-rt.lisp, hemlock/src/spellcoms.lisp,
1475        hemlock/src/srccom.lisp, hemlock/src/streams.lisp,
1476        hemlock/src/struct.lisp, hemlock/src/syntax.lisp,
1477        hemlock/src/table.lisp, hemlock/src/text.lisp,
1478        hemlock/src/ts-buf.lisp, hemlock/src/ts-stream.lisp,
1479        hemlock/src/undo.lisp, hemlock/src/unixcoms.lisp,
1480        hemlock/src/vars.lisp, hemlock/src/window.lisp,
1481        hemlock/src/winimage.lisp, hemlock/src/xcoms.lisp,
1482        hemlock/src/elisp/.cvsignore, hemlock/src/elisp/README,
1483        hemlock/src/elisp/base.lisp,
1484        hemlock/src/elisp/cmucl-hemlock-glue.lisp,
1485        hemlock/src/elisp/codewalker.lisp, hemlock/src/elisp/compile.lisp,
1486        hemlock/src/elisp/hemlock-shims.lisp,
1487        hemlock/src/elisp/implementation-needed,
1488        hemlock/src/elisp/internals.lisp, hemlock/src/elisp/loadup.lisp,
1489        hemlock/src/elisp/packages.lisp, hemlock/src/elisp/read-table.lisp,
1490        hemlock/src/spell/.cvsignore, hemlock/src/spell/README,
1491        hemlock/src/spell/build.lisp, hemlock/src/spell/classes.lisp,
1492        hemlock/src/spell/constants.lisp, hemlock/src/spell/correlate.lisp,
1493        hemlock/src/spell/flags.lisp, hemlock/src/spell/hashing.lisp,
1494        hemlock/src/spell/io.lisp, hemlock/src/spell/package.lisp,
1495        hemlock/src/spell/spell-aug.lisp,
1496        hemlock/src/spell/spell-dictionary.text,
1497        hemlock/src/spell/spell.asd, hemlock/src/spell/spellcoms.lisp,
1498        hemlock/src/tty/.cvsignore, hemlock/src/tty/termcap.lisp,
1499        hemlock/src/tty/tty-disp-rt.lisp, hemlock/src/tty/tty-display.lisp,
1500        hemlock/src/tty/tty-screen.lisp, hemlock/src/wire/.cvsignore,
1501        hemlock/src/wire/Notes, hemlock/src/wire/package.lisp,
1502        hemlock/src/wire/port.lisp, hemlock/src/wire/remote.lisp,
1503        hemlock/src/wire/wire.lisp, hemlock/unused/.cvsignore,
1504        hemlock/unused/bit-stream.lisp, hemlock/unused/clx-ext.lisp,
1505        hemlock/unused/ed-integrity.lisp, hemlock/unused/gosmacs.lisp,
1506        hemlock/unused/hacks.lisp, hemlock/unused/hemcom.lisp,
1507        hemlock/unused/hi-integrity.lisp, hemlock/unused/keytran.lisp,
1508        hemlock/unused/keytrandefs.lisp, hemlock/unused/spell-build.lisp,
1509        hemlock/unused/struct-ed.lisp, hemlock/unused/tty-stream.lisp,
1510        hemlock/website/.cvsignore, hemlock/website/index.html.in,
1511        objc-bridge/CocoaBridgeDoc.txt, objc-bridge/bridge.lisp,
1512        objc-bridge/fake-cfbundle-path.lisp,
1513        objc-bridge/name-translation.lisp, objc-bridge/objc-clos.lisp,
1514        objc-bridge/objc-package.lisp, objc-bridge/objc-readtable.lisp,
1515        objc-bridge/objc-runtime.lisp, objc-bridge/objc-support.lisp,
1516        objc-bridge/process-objc-modules.lisp: Synch with svn rev 6898:
1517        DEFINE-COMPILER-MACRO does RECORD-SOURCE-FILE.  Directory
1518        reorganization: new "cocoa-ide" and "objc-bridge" directories; many
1519        things moved from "examples" to one of these directories,
1520        OpenMCL.app and hemock moved under "cocoa-ide".  Lots of changes in
1521        cocoa-ide, objc-bridge, and hemlock; see the svn log for the
1522        "ide-1.0" branch for details.
1523
15242007-06-15 19:10  gb
1525
1526        * lib/read.lisp: use hash tables in #=, ##.  Sometimes
1527
15282007-06-15 14:10  gb
1529
1530        * compiler/X86/x862.lisp: x862-numcmp: if both args fixnums ...
1531        x862-inline-numcmp: don't reverse cr-bit if both args fixnums
1532        (shouldn't get here if we're catching that upstream, but ...)
1533
15342007-06-01 08:34  gb
1535
1536        * level-1/l1-files.lisp: Do ~-expansion in more places.  Hopefully
1537        caught most places.
1538
15392007-06-01 08:33  gb
1540
1541        * level-1/l1-reader.lisp: %TOKEN-PACKAGE generates a READER-ERROR
1542        if it can't find the package, accepts a stream argument in order to
1543        signal that type of error.  (Note that this has never been
1544        recoverable in general, especially in the case where the input
1545        stream is *terminal-io* or shares its input stream.)
1546
15472007-06-01 08:32  gb
1548
1549        * lib/read.lisp: READER-ERORS use STREAM-ERROR-CONTEXT when
1550        reporting themselves.
1551
15522007-06-01 08:31  gb
1553
1554        * level-1/l1-error-system.lisp: Define and use
1555        STREAM-ERROR-CONTEXT.
1556
15572007-06-01 08:30  gb
1558
1559        * level-1/linux-files.lisp: Define UID-FROM-NAME, TILDE-EXPAND.
1560        Use TILDE-EXPAND in %REALPATH, but any leading tildes should
1561        probably have been caught earlier.
1562
15632007-06-01 08:29  gb
1564
1565        * level-1/l1-streams.lisp: Try to provide some context -
1566        "surrounding characters" - for reader/stream errors on character
1567        input streams.
1568
15692007-06-01 08:28  gb
1570
1571        * level-1/l1-unicode.lisp: Get number of args right in call to
1572        STRING-ENCODED-LENGTH-IN-BYTES from
1573        CSTRING-ENCODED-LENGTH-IN-BYTES.  Sorry.
1574
15752007-06-01 08:28  gb
1576
1577        * level-0/X86/x86-misc.lisp: %%get-unsigned-longlong,
1578        %%get-signed-longlong: args in UNBOX-FIXNUM macro were in the wrong
1579        order.  Both functions are usually open-coded (and the inlined
1580        versions seem to be OK), but the ObjC bridge funcalls these
1581        functions when getting/setting foreign slots of the appropriate
1582        type.
1583
15842007-06-01 08:27  gb
1585
1586        * level-1/l1-unicode.lisp: Add STRING-ENCODED-LENGTH-IN-BYTES.
1587        Make it, CSTRING-ENCODED-LENGTH-IN-BYTES, and
1588        ENCODE-STRING-FROM-MEMORY deal with non-simple strings.
1589
15902007-06-01 08:26  gb
1591
1592        * level-0/l0-aprims.lisp: Try to deal with the "SIMPLE-BASE-STRING,
1593        all of it" case in %CSTR-POINTER; deal with all other cases in
1594        %CSTR-SEGMENT-POINTER.
1595
15962007-06-01 08:25  gb
1597
1598        * level-1/x86-error-signal.lisp: xp-argument-list: stack args are
1599        under return address, exception callback frame (xcf) on stack.
1600       
1601        handle-udf-call: don't try to fix up the stack if we try to
1602        continue; let kernel deal with this after the callback.
1603
16042007-06-01 08:24  gb
1605
1606        * lisp-kernel/x86-exceptions.c: finish_function_entry: there's a
1607        return address on the top of the stack when this is entered
1608        (#-of-arguments traps).  Put it in the right place when building
1609        the frame.
1610       
1611        create_exception_callback_frame: look for tra on top of lisp stack,
1612        not in register (usually.)
1613       
1614        handle_error(): if we return after calling out for int #xc7 (call
1615        to undefined function), fix up the stack and other registers so
1616        that we can return the value(s) returned by the lisp-side handler.
1617        (It's hard for the lisp-side handler to do the stack manipulation,
1618        because of the xcf on the stack and because of the need to deal
1619        with the return address on the stack.)
1620
16212007-06-01 08:23  gb
1622
1623        * lisp-kernel/x86-spentry64.s: uuos in subrprims called via
1624        lea/jmp: push ra0 on stack before trap, for the benefit of
1625        create_exception_callback_frame().
1626
16272007-06-01 08:22  gb
1628
1629        * lib/sequences.lisp: Eric Marsden's fixes to MISMATCH
1630
16312007-06-01 08:22  gb
1632
1633        * level-1/l1-unicode.lisp: :utf-32 memory-encode function: don't
1634        write a BOM here.
1635
16362007-06-01 08:21  gb
1637
1638        * level-0/X86/x86-def.lisp: %RETURN-ADDRESS-OFFSET has been wrong
1639        since the switch to the new tra scheme.
1640
16412007-06-01 08:19  gb
1642
1643        * lib/macros.lisp: WITH-ENCODED-CSTR: accept arguments as produced
1644        by WITH-ENCODED-CSTRS.  Handle 0-termination a little more sanely.
1645
16462007-05-12 18:27  gb
1647
1648        * release-notes.txt: Update for 070512.
1649
16502007-05-12 18:27  gb
1651
1652        * lisp-kernel/ppc-exceptions.c: Fix typo in new_heap_segment().
1653
16542007-05-12 18:26  gb
1655
1656        * compiler/PPC/ppc2.lisp: Fix typo in ppc2-%i-
1657
16582007-05-12 18:25  gb
1659
1660        * level-1/version.lisp: Bump.
1661
16622007-05-12 18:24  gb
1663
1664        * lisp-kernel/ppc-exceptions.c: new_heap_segment(): don't extend
1665        heap by more than what we need if GC is obviously disabled.
1666
16672007-05-12 18:23  gb
1668
1669        * compiler/PPC/ppc2.lisp: Use *ppc2-target-half-fixnum-type* to
1670        suppress overflow checking in some cases.
1671
16722007-05-12 18:22  gb
1673
1674        * compiler/X86/x862.lisp: Fix indentation.
1675
16762007-05-12 18:22  gb
1677
1678        * lisp-kernel/x86-exceptions.c: new_heap_segment(): don't extend
1679        beyond segment if GC (obviously) disabled.
1680
16812007-05-12 18:21  gb
1682
1683        * level-1/l1-streams.lisp: Fix typo.
1684
16852007-05-12 18:20  gb
1686
1687        * level-1/: l1-streams.lisp, l1-unicode.lisp: Keep bootsrapping
1688        separate character encode/decode limits.
1689
16902007-05-12 18:19  gb
1691
1692        * level-1/l1-unicode.lisp: Start to bootstrap separate
1693        encode/decode limits.
1694
16952007-05-12 18:18  gb
1696
1697        * lisp-kernel/lisp-debug.c: Hide Darwin/Leopard exception context
1698        nonsense when referencing mxcsr in debug_show_fpu().
1699
17002007-05-12 18:17  gb
1701
1702        * lisp-kernel/lisptypes.h: Need alias for __r6 in Tiger and
1703        earlier.  Sheesh.
1704
17052007-05-12 18:17  gb
1706
1707        * level-0/l0-hash.lisp: Fix bad call to %pname-hash.
1708
17092007-05-12 18:16  gb
1710
1711        * level-1/version.lisp: Bump, for now.
1712
17132007-05-12 18:15  gb
1714
1715        * xdump/: faslenv.lisp, heap-image.lisp: Bump fasl versions, image
1716        ABI version.
1717
17182007-05-12 18:14  gb
1719
1720        * lisp-kernel/x86-spentry64.s: nmkunwind.  New calling sequence;
1721        new TRA interpretation.
1722
17232007-05-12 18:13  gb
1724
1725        * lisp-kernel/x86-spjump64.s: nmkunwind.
1726
17272007-05-12 18:12  gb
1728
1729        * lisp-kernel/x86-macros.s: Make_Catch uses %imm2, not %temp2.
1730        nMake_Catch handles return addresses on stack.  repret, for use
1731        when a one-byte ret instruction is a branch target or is preceded
1732        by a conditional branch.
1733
17342007-05-12 18:11  gb
1735
1736        * lisp-kernel/x86-gc.c: New TRA handling; new node regs in
1737        exception contexts.
1738
17392007-05-12 18:11  gb
1740
1741        * lisp-kernel/x86-exceptions.h: New stuff for finding FP state in
1742        exception context; new TRA handling.
1743
17442007-05-12 18:10  gb
1745
1746        * lisp-kernel/x86-exceptions.c: New tra handling.
1747        new_heap_segment: try to avoid requesting too much when user sets
1748        lisp_heap_gc_threshold to inappropriate value.  Pass old_valence
1749        down to fault handler, don't call out to lisp on faults in foreign
1750        code.  Handle USE_MACH_EXCEPTION_LOCK conditionalization.
1751
17522007-05-12 18:08  gb
1753
1754        * lisp-kernel/: x86-constants64.h, x86-constants64.s: New register
1755        assignments.
1756
17572007-05-12 18:07  gb
1758
1759        * lisp-kernel/x86-subprims64.s: New tra handling, new calling
1760        sequence.
1761
17622007-05-12 18:06  gb
1763
1764        * lisp-kernel/: xlbt.c, x86_print.c: New tra handling.
1765
17662007-05-12 18:05  gb
1767
1768        * lisp-kernel/x86-asmutils64.s: Use repret for RET instructions
1769        that're branch targets or that follow conditional branches.
1770
17712007-05-12 18:04  gb
1772
1773        * lisp-kernel/thread_manager.c: Conditionalize for
1774        USE_MACH_EXCEPTION_LOCK.
1775
17762007-05-12 18:03  gb
1777
1778        * lisp-kernel/ppc-spjump.s: .SPnmkunwind.
1779
17802007-05-12 18:02  gb
1781
1782        * lisp-kernel/ppc-spentry.s: .SPnmkunwind.  Old catch/unwind: do
1783        explicit blr.
1784
17852007-05-12 18:01  gb
1786
1787        * lisp-kernel/darwinppc/Makefile: Use -Wno-deprecated-declarations.
1788         Gee, I hope that works.
1789
17902007-05-12 18:00  gb
1791
1792        * lisp-kernel/ppc-macros.s: Make_Catch macro: don't include a blr.
1793
17942007-05-12 17:59  gb
1795
1796        * lisp-kernel/ppc-exceptions.h: Only declare mach_exception_lock if
1797        using the mechanism.
1798
17992007-05-12 17:59  gb
1800
1801        * lisp-kernel/ppc-exceptions.c: new_heap_segment: if we can't
1802        extend with (possibly very large) lisp_heap_gc_threshold, try
1803        smaller values.
1804       
1805        Pass "old_valence" to exception handlers; don't call out to lisp on
1806        memory faults from foreign code.
1807
18082007-05-12 17:58  gb
1809
1810        * lisp-kernel/lisptypes.h: xmm register alias nonsense.
1811
18122007-05-12 17:57  gb
1813
1814        * lisp-kernel/lisp-exceptions.h: Change some function prototypes.
1815        Don't use a MACH_EXCEPTION_LOCK on Darwin, since it doesn't seem to
1816        be correct/necessary.
1817
18182007-05-12 17:56  gb
1819
1820        * lisp-kernel/lisp-debug.c: lisp register display changes for
1821        x86-64.  Get FPU display working on x86-64.
1822
18232007-05-12 17:55  gb
1824
1825        * lisp-kernel/linuxx8664/.gdbinit: gtra, just in time for the
1826        calling-sequence change.
1827
18282007-05-12 17:54  gb
1829
1830        * lisp-kernel/image.h: New ABI version.
1831
18322007-05-12 17:54  gb
1833
1834        * lisp-kernel/darwinx8664/.gdbinit: Ignore SIGSYS.  If only I
1835        could; if only I could ...
1836
18372007-05-12 17:53  gb
1838
1839        * lib/x8664env.lisp: More imm temps! (one more ...).
1840
18412007-05-12 17:52  gb
1842
1843        * lib/nfcomp.lisp: Bump current fasl version.
1844
18452007-05-12 17:51  gb
1846
1847        * lib/macros.lisp: RLET, MAKE-RECORD, etc: don't set pointer type
1848        in cross-compiled code.
1849
18502007-05-12 17:50  gb
1851
1852        * lib/foreign-types.lisp: Don't use #. to initialize *host-ftd*
1853        interface dir, because of cross-compilation issues.
1854
18552007-05-12 17:49  gb
1856
1857        * lib/db-io.lisp: Support "queries" in FFI reader macros: #_?foo,
1858        #$?foo, and #&?foo return T if foo is defined, NIL otherwise.
1859
18602007-05-12 17:49  gb
1861
1862        * lib/compile-ccl.lisp: Lose some stuff leftover from 68k->PPC MCL
1863        transition.
1864
18652007-05-12 17:48  gb
1866
1867        * lib/ccl-export-syms.lisp: Mapped-vector stuff.
1868
18692007-05-12 17:47  gb
1870
1871        * lib/encapsulate.lisp: Add a comment.
1872
18732007-05-12 17:46  gb
1874
1875        * library/hash-cons.lisp: Very small lap change.
1876
18772007-05-12 17:45  gb
1878
1879        * level-1/ppc-threads-utils.lisp: Move %FIXNUM-REF-MACPTR and
1880        %FIXNUM-SET-MACPTR elsewhere.
1881
18822007-05-12 17:44  gb
1883
1884        * level-1/linux-files.lisp: File-mapped vectors.
1885
18862007-05-12 17:43  gb
1887
1888        * level-1/l1-streams.lisp: OPEN : :if-exists defaults to
1889        :new-version if pathname-version of filename is :NEWEST.
1890
18912007-05-12 17:43  gb
1892
1893        * level-1/l1-readloop-lds.lisp: %BREAK-IN-FRAME might be called
1894        with a CONDITION object.
1895
18962007-05-12 17:42  gb
1897
1898        * level-1/l1-processes.lisp: *HOST-PAGE-SIZE* initialized earlier.
1899
19002007-05-12 17:41  gb
1901
1902        * level-1/l1-pathnames.lisp: If there's no host component in a
1903        namestring argument, LOGICAL-PATHNAME signals a TYPE-ERROR.
1904
19052007-05-12 17:40  gb
1906
1907        * level-1/l1-lisp-threads.lisp: Initial-lisp-thread, initial
1908        listener stack sizes now static.
1909
19102007-05-12 17:39  gb
1911
1912        * level-1/l1-files.lisp: Pathname arcana.
1913
19142007-05-12 17:38  gb
1915
1916        * level-1/l1-events.lisp: Optionally, invoke debugger-hook on
1917        SIGINT.
1918
19192007-05-12 17:38  gb
1920
1921        * level-1/l1-dcode.lisp: Clear dispatch table cache if GF APO
1922        changes.
1923
19242007-05-12 17:37  gb
1925
1926        * level-0/l0-misc.lisp: Don't cons when clearing spin lock.
1927       
1928        Commented-out (#+bad-idea) GC-lock-via-exception-lock idea.
1929
19302007-05-12 17:36  gb
1931
1932        * level-0/l0-hash.lisp: Use %pname-hash to hash ... pnames.
1933
19342007-05-12 17:35  gb
1935
1936        * level-0/l0-def.lisp: %FIXNUM-REF-MACPTR, %FIXNUM-SET-MACPTR: move
1937        here.
1938
19392007-05-12 17:34  gb
1940
1941        * level-0/l0-cfm-support.lisp: Remove an old declaration.
1942
19432007-05-12 17:33  gb
1944
1945        * level-0/X86/x86-utils.lisp: New calling sequence.
1946
19472007-05-12 17:32  gb
1948
1949        * level-0/X86/x86-pred.lisp: New calling sequence. Use a CMOV in
1950        EQL.
1951
19522007-05-12 17:32  gb
1953
1954        * level-0/X86/x86-numbers.lisp: New calling sequence.  No need to
1955        be careful with %rcx (now %imm2) in shift instructions.
1956
19572007-05-12 17:30  gb
1958
1959        * level-0/X86/: x86-float.lisp, x86-misc.lisp: New calling
1960        sequence.
1961
19622007-05-12 17:29  gb
1963
1964        * level-0/X86/x86-def.lisp: Handle new-style tras, other
1965        new-calling-sequence changes.
1966
19672007-05-12 17:27  gb
1968
1969        * level-0/X86/: X8664/x8664-bignum.lisp, x86-array.lisp,
1970        x86-clos.lisp: New calling sequence.  %rcx is %imm2 now, not
1971        %temp2, and no need to be so careful with it.
1972
19732007-05-12 17:26  gb
1974
1975        * compiler/vinsn.lisp: global label-valued temporaries.
1976
19772007-05-12 17:25  gb
1978
1979        * compiler/optimizers.lisp: FLOAT with no protototype argument.
1980
19812007-05-12 17:24  gb
1982
1983        * compiler/nx0.lisp: Try to do a little type inference for more
1984        flavors of AREF.
1985
19862007-05-12 17:23  gb
1987
1988        * compiler/nx-basic.lisp: FUNCTION-INFORMATION might return an
1989        afunc (or equivalent) as a non-nil second value.
1990
19912007-05-12 17:22  gb
1992
1993        * compiler/X86/x862.lisp: Support the new (call/ret) calling
1994        sequence, new tra/talign scheme.  One more imm reg, so 3d aset is
1995        less nasty.
1996
19972007-05-12 17:21  gb
1998
1999        * compiler/X86/x86-lapmacros.lisp: Support the new (call/ret)
2000        calling sequence, new tra/talign scheme.
2001
20022007-05-12 17:21  gb
2003
2004        * compiler/X86/x86-lap.lisp: Support :talign, (@ (:^ label) (%
2005        rip)).
2006
20072007-05-12 17:20  gb
2008
2009        * compiler/X86/x86-disassemble.lisp: Recognize CALL label operands,
2010        rip-relative label refs.
2011
20122007-05-12 17:19  gb
2013
2014        * compiler/X86/x86-backend.lisp: Allow label-valued temporaries,
2015        support :talign directive in vinsn templates.
2016
20172007-05-12 17:18  gb
2018
2019        * compiler/X86/x86-asm.lisp: Add call instruction; note that %rip
2020        is a register ...
2021
20222007-05-12 17:17  gb
2023
2024        * compiler/X86/X8664/x8664-vinsns.lisp: Use "tail-aligned" calls
2025        for most things, except calls to subprims that manipulate the
2026        stack.
2027
20282007-05-12 17:16  gb
2029
2030        * compiler/X86/X8664/x8664-backend.lisp: Try to make
2031        cross-compilation with x86-64 targets a little easier, by using a
2032        cross-ftd interface directory.
2033
20342007-05-12 17:16  gb
2035
2036        * compiler/X86/X8664/x8664-arch.lisp: move away from lea/jmp,
2037        towards call/ret.  rcx is now an imm reg; ra0 = temp2.  new tra
2038        scheme.
2039
20402007-05-12 17:15  gb
2041
2042        * compiler/PPC/ppc2.lisp: %immediate-set-xxx: get sign right.
2043        unwind-protect uses nmkunwind (more happens out-of-line.)
2044
20452007-05-12 17:14  gb
2046
2047        * compiler/PPC/PPC64/ppc64-vinsns.lisp: nmkunwind.
2048
20492007-05-12 17:13  gb
2050
2051        * compiler/PPC/PPC32/ppc32-vinsns.lisp: getu32/gets32, nmkunwind.
2052
20532007-05-12 17:12  gb
2054
2055        * compiler/PPC/ppc-arch.lisp: New .SPnmkunwind.
2056
20572007-05-12 17:11  gb
2058
2059        * compiler/PPC/: PPC32/ppc32-arch.lisp, PPC64/ppc64-arch.lisp: Make
2060        %GET-KERNEL-GLOBAL-PTR actually work.
2061
20622007-05-07 19:10  gb
2063
2064        * level-1/l1-aprims.lisp: ELT, SET-ELT: don't assume that NTHCDR
2065        returns a CONS, signal the right flavor of TYPE-ERROR if it
2066        doesn't.
2067
20682007-05-05 18:10  gb
2069
2070        * level-0/l0-hash.lisp: If PUTHASH decides that it wants to grow
2071        the hash table, it tries to enable the GC before doing so.
2072
20732007-05-04 22:10  gb
2074
2075        * compiler/nx-basic.lisp: FUNCTION-INFORMATION returns what it
2076        finds in the environment, not just non-nil.
2077
20782007-05-01 18:10  gb
2079
2080        * lisp-kernel/ppc-gc.c: Fix the "bytes allocated" message and
2081        computation for GC-VERBOSE entry.
2082
20832007-05-01 06:11  gb
2084
2085        * level-1/l1-unicode.lisp: Set literal-code-limit to #xd800 for
2086        utf-16 variants.
2087       
2088        Fix the typo (found by Takekiko Abe) in the utf-8 stream-decode
2089        function.
2090
20912007-05-01 06:10  gb
2092
2093        * level-1/ppc-trap-support.lisp: Mis-align some fields in the
2094        darwin ppc64 thread state structure, just like Apple does.  Can I
2095        blame them for getting this wrong, please ?
2096       
2097        Use the right argument names in ppc64 cmain callback; can't blame
2098        Apple.
2099
21002007-04-30 23:12  gb
2101
2102        * lisp-kernel/ppc-exceptions.c: running_under_rosetta only exists
2103        on Darwin, and should probably be removed completely.  Now that
2104        it's explicitly extern, don't try to reference it at runtime on
2105        linuxppc.
2106
21072007-04-30 23:11  gb
2108
2109        * lisp-kernel/pmcl-kernel.c: use_mach_exception_handling is
2110        referenced at runtime and explicitly extern, so make sure that it's
2111        initialized on all platforms.
2112
21132007-04-30 23:10  gb
2114
2115        * lisp-kernel/lisp.h: running_under_rosetta - which is kind of an
2116        oxymoron - is specific to Darwin.
2117
21182007-04-21 00:10  gb
2119
2120        * lib/dumplisp.lisp: In SAVE-APPLICATION: check for containing
2121        directory after translating logical pathnames; it's generally
2122        meaningless to do PROBE-FILE on the directory component of a
2123        logical pathname.
2124
21252007-04-19 15:10  gb
2126
2127        * compiler/X86/x862.lisp: In x862-aset3, maybe push/pop the val reg
2128        if it conflicts with an immediate temporary (we'll need all the imm
2129        temps we have on x86-64.)
2130
21312007-04-17 20:10  gb
2132
2133        * compiler/PPC/ppc2.lisp: Actually remember to check in the PPC
2134        version of recent aset2/aset3 register-conflict changes.
2135
21362007-04-16 15:10  gb
2137
2138        * compiler/nx0.lisp: Don't try to access ARRAY-CTYPE-ELEMENT-TYPE
2139        of things that aren't ARRAY-CTYPEs in ACODE-FORM-TYPE.
2140
21412007-04-16 14:11  gb
2142
2143        * level-1/ppc-trap-support.lisp: :signed-doubleword, not
2144        :signed-doublewod.
2145
21462007-04-16 13:10  gb
2147
2148        * level-1/ppc-trap-support.lisp, lisp-kernel/ppc-exceptions.c:
2149        Memory-fault errors on PPC, too.
2150
21512007-04-16 04:34  gb
2152
2153        * lisp-kernel/lisptypes.h: Define __err, to work around Leopard
2154        renaming nonsense.
2155
21562007-04-16 02:12  gb
2157
2158        * lisp-kernel/x86-exceptions.c: is_write_fault for FreeBSD.
2159
21602007-04-16 02:11  gb
2161
2162        * lisp-kernel/x86-exceptions.c: is_write_vault for x86-64 Linux.
2163
21642007-04-16 02:10  gb
2165
2166        * level-1/l1-error-system.lisp: Change wording of
2167        INVALID-MEMORY-ACCESS error message, a little.
2168
21692007-04-16 01:13  gb
2170
2171        * lisp-kernel/x86-exceptions.c: Call out to lisp on unhandled
2172        memory faults.
2173
21742007-04-16 01:12  gb
2175
2176        * lisp-kernel/lisp-debug.c: "advance PC" command is PPC-only, for
2177        now.
2178
21792007-04-16 01:11  gb
2180
2181        * level-1/x86-trap-support.lisp: Map SIGBUS signal to
2182        INVALID-MEMORY-ACCESS condition.
2183
21842007-04-16 01:10  gb
2185
2186        * level-1/l1-error-system.lisp: INVALID-MEMORY-ACCESS condition.
2187
21882007-04-15 19:11  gb
2189
2190        * compiler/X86/x862.lisp: Use HARD-REGSPEC-VALUE in recent
2191        aset2/aset3 changes.
2192
21932007-04-15 19:10  gb
2194
2195        * compiler/X86/x862.lisp: in aset2/aset3: don't clobber val-reg if
2196        it's an imm-reg; we need another imm-reg to do some index
2197        calculations.
2198
21992007-04-14 18:10  gb
2200
2201        * lisp-kernel/x86-exceptions.c: raise_pending_interrupt():
2202        unscramble what it means for an interrupt to be pending on x86-64.
2203
22042007-04-14 00:13  gb
2205
2206        * lisp-kernel/x86-exceptions.c: I have no idea why SIGSYS is
2207        generated when it is in ... unmentionable OS releases.
2208
22092007-04-14 00:11  gb
2210
2211        * lisp-kernel/: Threads.h, lisp.h: Say "extern" a few times, to
2212        work around laughable Apple ld64 gibberish.
2213
22142007-04-12 02:11  gb
2215
2216        * compiler/: PPC/ppc2.lisp, X86/x862.lisp: (SETF (AREF ...) ...) of
2217        two-dimensional arrays: need to target specific registers if array
2218        has element type T.
2219
22202007-04-12 02:10  gb
2221
2222        * level-0/l0-init.lisp: Add features :x86-64 and :x86_64 if
2223        appropriate, not :x86-64 twice.
2224
22252007-04-11 05:10  gb
2226
2227        * level-1/l1-streams.lisp: Set IOBLOCK-ELEMENT-TYPE to CHARACTER
2228        for bivalent streams.
2229       
2230        STREAM-ELEMENT-TYPE of BASIC-STREAM, BUFFERED-STREAM-MIXIN: don't
2231        maintain the element-type separately, just look in ioblock.
2232        (STREAM-ELEMENT-TYPE isn't required to work on closed streams.)
2233
22342007-04-10 22:10  gb
2235
2236        * lisp-kernel/x86-spentry64.s: Branch at
2237        C(egc_store_node_conditional_success_test) should bracnch
2238        backwards, not forwards.  (This was leading to spurious
2239        "<something> is not a proper list" errors, because the next label
2240        named "0" is in middle of the the _SPprogvsage code that tests for
2241        a proper list.)
2242
22432007-04-10 00:11  gb
2244
2245        * examples/: cocoa-editor.lisp, cocoa-typeout.lisp,
2246        cocoa-window.lisp, objc-support.lisp, tiny.lisp: Don't bother using
2247        RLET or equivalent to avoid making GCable pointers for ObjC
2248        dispatch function args; trust the compiler to do that for us.
2249
22502007-04-10 00:10  gb
2251
2252        * examples/bridge.lisp: If any method defined on a message passes a
2253        structure by value, install a compiler macro on the dispatch
2254        function.
2255       
2256        In that compiler, look for apparent calls to know structure
2257        constructors; replace those with calls to the corresponding
2258        initialization function, and stack-allocate a structure instance
2259        around the call.  (Suggested by Kevin Reid, and something that
2260        SEND/SLET did - sort of - that the new approach didn't.)
2261       
2262        Keep track of info about common foreign structs (initializer,
2263        constructor, etc.) to make doing stuff like this easier.
2264
22652007-04-09 16:10  gb
2266
2267        * examples/objc-clos.lisp: ALLOCATE-INSTANCE of OBJC:OBJC:CLASS: if
2268        the result of sending the init message is a null pointer, return a
2269        null pointer.
2270
22712007-04-09 00:10  gb
2272
2273        * release-notes.txt: Update for 070408.
2274       
2275        (Yes, it's 070409 here already ...)
2276
22772007-04-08 15:12  gb
2278
2279        * lisp-kernel/image.h, xdump/heap-image.lisp: Bump image version.
2280
22812007-04-08 15:10  gb
2282
2283        * xdump/faslenv.lisp: Bump min fasl version.
2284
22852007-04-08 14:11  gb
2286
2287        * lisp-kernel/ppc-spjump.s: Org to the next page boundary at end of
2288        jump table, to work around (still more) Apple ld64 nonsense.
2289
22902007-04-08 13:14  gb
2291
2292        * lib/nfcomp.lisp: Bump current fasl version.
2293
22942007-04-08 13:13  gb
2295
2296        * lib/ccl-export-syms.lisp: Export CCL:FREE.
2297
22982007-04-08 13:12  gb
2299
2300        * xdump/faslenv.lisp: Bump max fasl version.
2301
23022007-04-08 13:11  gb
2303
2304        * lisp-kernel/darwinppc64/Makefile: Pass -arch ppc64 to C, so that
2305        people who try to build this kernel on an x86 mac will take longer
2306        to realize that that's usually a bad idea.
2307
23082007-04-08 12:09  gb
2309
2310        * examples/: cocoa-application.lisp, cocoa-backtrace.lisp,
2311        cocoa-defaults.lisp, cocoa-editor.lisp, cocoa-inspector.lisp,
2312        cocoa-listener.lisp, cocoa-prefs.lisp, cocoa-typeout.lisp,
2313        cocoa-window.lisp, cocoa.lisp:
2314        Use new syntax: OBJC:DEFMETHOD, #/, MAKE-INSTANCE.
2315       
2316        Some changes in font, nsstring stuff to avoid using deprecated
2317        featurs.
2318
23192007-04-08 12:07  gb
2320
2321        * examples/: webkit.lisp, addressbook.lisp:
2322        Use new syntax: OBJC:DEFMETHOD, #/, MAKE-INSTANCE.
2323       
2324        Use OBJC:LOAD-FRAMEWORK.
2325
23262007-04-08 12:06  gb
2327
2328        * examples/tiny.lisp:
2329        Use new syntax: OBJC:DEFMETHOD, #/, MAKE-INSTANCE.
2330
23312007-04-08 12:05  gb
2332
2333        * examples/rubix/: blocks.lisp, lights.lisp, opengl.lisp,
2334        rubix.lisp:
2335        Use new syntax: OBJC:DEFMETHOD, #/, MAKE-INSTANCE.
2336       
2337        Handle CGFLOAT issues in mouse event handlers.
2338
23392007-04-08 12:04  gb
2340
2341        * examples/bridge.lisp: Define CGFLOAT, ObjC-2 foreign types here.
2342       
2343        Define "foreign struct classes" for several common structure types
2344        (rectangle, point, size); generate inlined accessors for their
2345        slots, PRINT-OBJECT methods, initialization functions, WITH-xxx
2346        macros.
2347       
2348        #/ reader macro: reads a string containing "constituent" characters
2349        (including #\:), preserving case.  Does a little bit of
2350        sanity-checking on it, then interns it in NEXTSTEP-FUNCTIONS
2351        package.
2352       
2353        Try to deal with cases where foreign type info may be parsed or
2354        unparsed.
2355       
2356        Introduce OBJC-DISPATCH-FUNCTIONs, which are funcallable instances.
2357         SHARED-INITIALIZE :AFTER method on OBJC-DISPATCH-FUNCTION looks at
2358        message info, tries to determine ambiguity, calls signature
2359        function (possibly after trying to resolve ambiguity.)
2360       
2361        %CALL-NEXT-OBJC-METHOD does some of the same stuff at runtime,
2362        calling a signature function that knows how to dispatch to SUPER
2363        method. (Likewise, %CALL-NEXT-OBJC-CLASS-METHOD for class methods.)
2364       
2365        POSTPROCESS-OBJC-MESSAGE-INFO (re-) initializes the associated
2366        OBJC-DISPATCH-FUNCTION.
2367       
2368        Handle PROTOCOLs differently in ambiguous SEND.
2369
23702007-04-08 12:04  gb
2371
2372        * examples/objc-runtime.lisp: Compile message send functions per
2373        signature.  Handle vararg message sends, partly at runtime.  INIT
2374        messages just have their signature info precomputed.  Defining a
2375        named OBJC-CLASS makes the class name a static variable whose value
2376        is the class (and likewise for the metaclass.)
2377        %DECLARE-OBJC-MESSAGE notes method redefinition, cerrors.
2378        OBJC:DEFMETHOD and support for it.
2379
23802007-04-08 12:03  gb
2381
2382        * examples/objc-support.lisp: Use new syntax.  OBJC:LOAD-FRAMEWORK.
2383         Avoid some deprecated C-string stuff (but wimp out and assume
2384        ASCII.) Keep track of objc-class-count, provide
2385        MAYBE-MAP-OBJC-CLASSES to map new classes iff class count changes.
2386        Handle OBJC-PROTOCOLs a bit differently.  Move CGFLOAT definitions,
2387        etc. elsewhere.
2388
23892007-04-08 12:02  gb
2390
2391        * examples/objc-clos.lisp: RECOGNIZE-OBJC-OBJECT: maybe try mapping
2392        classes if first try fails.  ALLOCATE-INSTANCE of objc-object:
2393        don't canonicalize instance if no lisp slots (so MAKE-INSTANCE is
2394        about as lightweight as MAKE-OBJC-INSTANCE.)
2395
23962007-04-08 12:01  gb
2397
2398        * examples/name-translation.lisp:
2399        COMPUTE-OBJC-TO-LISP-FUNCTION-NAME was once going to do something
2400        non-trivial, now just interns in NEXSTEP-FUNCTIONS.
2401
24022007-04-08 12:00  gb
2403
2404        * examples/objc-package.lisp: New file; export more stuff.  Import
2405        some of it back into CCL.  Provide a NEXTSTEP-FUNCTIONS package for
2406        pseudo-GFs.
2407
24082007-04-08 11:59  gb
2409
2410        * lib/foreign-types.lisp: Foreign-type-ordinals, some of which are
2411        canonical.  Straighten out the auxiliary-foreign-types mess a bit.
2412        Intern integer types up to 64 bits.
2413
24142007-04-08 11:59  gb
2415
2416        * lib/macros.lisp: DEFGLOBAL = DEFSTATIC.  DEFLOADVAR makes its
2417        argument static.  WITH-MACPTRS is saner.  WITH-ENCODED-CSTR writes
2418        NUL octet(s) to the end of the encoded string.  MAKE-GCABLE-RECORD,
2419        COPY-RECORD.
2420
24212007-04-08 11:58  gb
2422
2423        * lib/db-io.lisp: Slight changes (preserve typedef name) in
2424        function/objc method arglists.  UNESCAPE-FOREIGN-NAME: handle
2425        missing brackets.
2426
24272007-04-08 11:57  gb
2428
2429        * lisp-kernel/x86-exceptions.c: Handle signals on the altstack if
2430        not Darwin.  In Darwin, evactuate off of the lisp stack while
2431        interrupts are still disabled.
2432
24332007-04-08 11:56  gb
2434
2435        * lisp-kernel/x86-exceptions.h: USE_SIGALTSTACK, but not on Darwin
2436        (where Apple hasn't yet invented the notion that it needs to be
2437        thread-specific.)
2438
24392007-04-08 11:55  gb
2440
2441        * lisp-kernel/thread_manager.c: Clear pending interrupt flag when
2442        destroying TCR.
2443
24442007-04-08 11:54  gb
2445
2446        * lisp-kernel/ppc-exceptions.c: Lose (commented-out) code which
2447        worked around an old Darwin bug.
2448
24492007-04-08 11:53  gb
2450
2451        * lisp-kernel/lisp.h: Don't define USE_SIGALTSTACK here.
2452
24532007-04-08 11:52  gb
2454
2455        * lisp-kernel/image.c: Don't nuke null pointers.
2456
24572007-04-08 11:52  gb
2458
2459        * lisp-kernel/darwinx8664/.gdbinit: Add gtra.
2460
24612007-04-08 11:51  gb
2462
2463        * lisp-kernel/x86-spentry64.s: zeroed stack-block zeroes all bits
2464        of macptr.domain, macptr.type.
2465
24662007-04-08 11:50  gb
2467
2468        * xdump/xfasload.lisp: Deal with pkg.intern-hook.
2469
24702007-04-08 11:49  gb
2471
2472        * library/lispequ.lisp: add pkg.intern-hook to package.
2473
24742007-04-08 11:48  gb
2475
2476        * lib/describe.lisp: Start trying to conditionalize some of the
2477        stack-frame inspector stuff.
2478
24792007-04-08 11:48  gb
2480
2481        * lib/ffi-darwinppc64.lisp: Structures are basically passed as
2482        64-bit word components, with FP fields passed in registers.  This
2483        requires some special handling ("hybrid" parameters) in the
2484        compiler and %FF-CALL.
2485
24862007-04-08 11:47  gb
2487
2488        * lib/level-2.lisp: %GET-BITFIELD and SETF thereof: deal with
2489        endianness.
2490
24912007-04-08 11:46  gb
2492
2493        * lib/nfcomp.lisp: FASL-SCAN: null-pointers as constants are OK.
2494
24952007-04-08 11:45  gb
2496
2497        * lib/source-files.lisp: From Takehiko Abe: handle EQL specializers
2498        in %SOURCE-FILES-LIKE-EM.
2499
25002007-04-08 11:44  gb
2501
2502        * lib/streams.lisp: DRIBBLE via PROCESS-DRIBBLE.
2503
25042007-04-08 11:43  gb
2505
2506        * lib/xref.lisp: From Takehiko Abe: handle EQL specializers in
2507        MAKE-XREF-ENTRY.
2508
25092007-04-08 11:43  gb
2510
2511        * lib/ccl-export-syms.lisp: Export DEFSTATIC, PAREF, +NULL-PTR+.
2512
25132007-04-08 11:42  gb
2514
2515        * level-1/version.lisp: Bump; new snapshots tomorrow.
2516
25172007-04-08 11:41  gb
2518
2519        * level-1/x86-callback-support.lisp: DEFGLOBAL->DEFSTATIC
2520
25212007-04-08 11:40  gb
2522
2523        * level-1/linux-files.lisp: Very long timeout for
2524        WAIT-ON-SEMAPHORE, don't use PROCESS-WAIT, manipulate the whostate
2525        if we have to wait at all.
2526       
2527        Same idea for TIMED-WAIT-ON-SEMAPHORE.
2528       
2529        Make PIPE code slightly easier to read.
2530
25312007-04-08 11:39  gb
2532
2533        * level-1/l1-utils.lisp: DEFGLOBAL->DEFSTATIC.
2534
25352007-04-08 11:38  gb
2536
2537        * level-1/l1-unicode.lisp: Add NUL-ENCODING field to
2538        CHARACTER-ENCODING, use it to determine number/sequence of octets
2539        used to encode NUL.
2540
25412007-04-08 11:38  gb
2542
2543        * level-1/l1-streams.lisp: DEFGLOBAL->DEFSTATIC.
2544       
2545        READ-TOPLEVEL-FORM on ECHO-STREAM has do I/O on the echo stream (so
2546        DRIBBLE works); on TWO-WAY-STREAM, should read from the input side
2547        so that echoing looks more natural.
2548
25492007-04-08 11:37  gb
2550
2551        * level-1/l1-symhash.lisp: Extra slot  (for intern hook) in PACKAGE
2552        object.
2553
25542007-04-08 11:36  gb
2555
2556        * level-1/l1-readloop-lds.lisp: Some changes, then reverted those
2557        changes manually and most of the effects were cosmetic.
2558        TOPLEVEL-PRINT takes an output stream arg.
2559
25602007-04-08 11:35  gb
2561
2562        * level-1/l1-processes.lisp: Per-process DRIBBLE-ing.
2563
25642007-04-08 11:34  gb
2565
2566        * level-1/l1-lisp-threads.lisp: %TCR-INTERRUPT: don't signal if
2567        interrupt is obviously pending.
2568
25692007-04-08 11:33  gb
2570
2571        * level-1/l1-io.lisp: Change pointer printing.
2572
25732007-04-08 11:33  gb
2574
2575        * level-1/l1-init.lisp: +NULL-PTR+.
2576
25772007-04-08 11:31  gb
2578
2579        * level-1/: l1-dcode.lisp, l1-events.lisp: DEFSTATIC is now the
2580        preferred name for DEFGLOBAL.
2581
25822007-04-08 11:30  gb
2583
2584        * level-1/l1-clos-boot.lisp: DEFSTATIC is now the preferred name
2585        for DEFGLOBAL.
2586       
2587        Mechanism for associating a (built-in) class with a foreign type
2588        ordinal.
2589
25902007-04-08 11:29  gb
2591
2592        * level-1/l1-callbacks.lisp: DEFSTATIC is now the preferred name
2593        for DEFGLOBAL.
2594       
2595        %CALLBACK-FUNCTION accepts a symbol (as well as a pointer that's
2596        likely the global value of some symbol.)
2597
25982007-04-08 11:28  gb
2599
2600        * level-1/l1-boot-2.lisp: DEFSTATIC is now the preferred name for
2601        DEFGLOBAL.
2602       
2603        Standard CL streams now bound per-thread.
2604       
2605        Install standard foreign types here, not every time that
2606        FOREIGN-TYPES is loaded.
2607       
2608        Canonicalize foreign type ordinals as soon as we can.  (This is
2609        part of a scheme to give foreign types "ordinals' that can be used
2610        to assert pointer types; we need some of those ordinal numbers to
2611        be pre-assigned, since we can't reference foreign types early in
2612        the cold load.)
2613
26142007-04-08 11:27  gb
2615
2616        * level-1/l1-aprims.lisp: DEFSTATIC is now the preferred name for
2617        DEFGLOBAL.  GCABLE-PTR-P.
2618
26192007-04-07 21:25  gb
2620
2621        * level-0/nfasload.lisp: %INSERT-SYMBOL might call pkg.intern-hook.
2622         Handle maintenance of auto-export packages differently.
2623        $fasl-timm just needs an :int, not a :long.
2624
26252007-04-07 21:24  gb
2626
2627        * level-0/l0-symbol.lisp: SET-TYPE-PREDICATE returns the
2628        "functional", not random symbol guts.
2629
26302007-04-07 21:23  gb
2631
2632        * level-0/l0-misc.lisp: Use %PTR-STORE-FIXNUM-CONDITIONAL in
2633        %GET-SPIN-LOCK.  Locking code: spin lock must be released before
2634        interrupts are re-enabled.
2635
26362007-04-07 21:22  gb
2637
2638        * level-0/l0-io.lisp: FREE tries to handle gcable pointers.
2639
26402007-04-07 21:20  gb
2641
2642        * level-0/: PPC/ppc-misc.lisp, X86/x86-misc.lisp:
2643        %PTR-STORE-FIXNUM-CONDITIONAL.
2644
26452007-04-07 21:19  gb
2646
2647        * level-0/PPC/ppc-def.lisp: Handle "hybrid" integer/float arguments
2648        in DarwinPPC64 #'%FF-CALL.
2649
26502007-04-07 21:19  gb
2651
2652        * compiler/optimizers.lisp: When trying to infer result type of
2653        MAKE-ARRAY call, unquote quoted type specifier.
2654       
2655        Strength-reduce FLOAT when second argument is of known type.
2656
26572007-04-07 21:18  gb
2658
2659        * compiler/nxenv.lisp: Operators of %SINGLE-FLOAT, %DOUBLE-FLOAT.
2660
26612007-04-07 21:17  gb
2662
2663        * compiler/nx1.lisp: Allow extra "hybrid" ff-call argspecs (for
2664        DarwinPPC64.) Cut-and-paste bug re: nx1-%fixnum-to-single/double.
2665        Parse %short-float, %double-float when no "result" arg; can at
2666        least try to constant-fold late and/or do some cases if we have
2667        more type info.
2668
26692007-04-07 21:16  gb
2670
2671        * compiler/nx0.lisp: Lose some whitespace in the "static var can't
2672        be bound" error message.
2673
26742007-04-07 21:15  gb
2675
2676        * compiler/X86/x862.lisp: Same inline/lambda-bind/dynamic-extent
2677        bug as on PPC.  %SINGLE-FLOAT, %DOUBLE-FLOAT here, too.
2678
26792007-04-07 21:14  gb
2680
2681        * compiler/X86/X8664/x8664-backend.lisp: In EXPAND-FF-CALL, adjust
2682        remaning GPR/FPR counts even if arg is "simple" and passes straight
2683        through to %FF-CALL.
2684
26852007-04-07 21:13  gb
2686
2687        * compiler/PPC/ppc2.lisp: Fix a long-standing bug involving
2688        LAMBDA-BIND operator, dynamic-extent &REST, and stack memoization.
2689        Handle DarwinPPC64 ABI conventions, where SINGLE-FLOATs may be
2690        passed in the same doubleword as GPRs.  %DOUBLE-FLOAT,
2691        %SINGLE-FLOAT stuff: do inlining late, catch some other cases.
2692
26932007-04-07 21:12  gb
2694
2695        * compiler/PPC/PPC64/ppc64-vinsns.lisp: RELOAD-SINGLE-C-ARG-HIGH,
2696        for Darwin structure-passing ABI.
2697
26982007-04-07 21:10  gb
2699
2700        * OpenMCL.app/Contents/Resources/English.lproj/:
2701        MainMenu.nib/info.nib, MainMenu.nib/keyedobjects.nib,
2702        MainMenu.nib/objects.nib, OpenmclInspector.nib/info.nib,
2703        OpenmclInspector.nib/keyedobjects.nib,
2704        OpenmclInspector.nib/objects.nib, backtrace.nib/info.nib,
2705        backtrace.nib/keyedobjects.nib, backtrace.nib/objects.nib,
2706        lispeditor.nib/info.nib, lispeditor.nib/keyedobjects.nib,
2707        lispeditor.nib/objects.nib: Convert .nib to use utf-8
2708        representation, not binary.
2709
27102007-04-06 22:10  gb
2711
2712        * lisp-kernel/pmcl-kernel.c: Patch from Andi Kleen: set vmemoryuse
2713        (RLIMIT_AS) current resource limit to max limit, since some distros
2714        limit it.
2715
27162007-04-03 03:11  gb
2717
2718        * level-1/l1-streams.lisp: Takehiko Abe's fix to
2719        %IOBLOCK-WRITE-U16-ENCODED-CHAR.
2720
27212007-04-02 22:10  gb
2722
2723        * level-1/l1-unicode.lisp: Takehiko Abe's fixes (missing "stream"
2724        arg in utf-16 encode, missing #x in little-endian bom-marker
2725        definition.)
2726
27272007-03-14 23:10  gb
2728
2729        * lisp-kernel/x86-exceptions.c: Remove a debugging fprintf.
2730
27312007-03-14 05:11  gb
2732
2733        * lib/ffi-darwinppc32.lisp: Fix typo (extra quote) in
2734        generate-callback-bindings.
2735
27362007-03-13 06:10  gb
2737
2738        * lisp-kernel/darwinx8664/Makefile: (re-)enable -O2.
2739
27402007-03-13 03:58  gb
2741
2742        * lib/backtrace.lisp: Fix fenceposts in CLOSURE-CLOSED-OVER-VALUES.
2743
27442007-03-12 05:11  gb
2745
2746        * lisp-kernel/x86-exceptions.c: Simplify interrupt_handler() a
2747        little.
2748
27492007-03-12 05:10  gb
2750
2751        * lib/foreign-types.lisp: Fix "extra arguments" error message in
2752        %EXTERNAL-CALL-EXPANDER.
2753
27542007-03-12 05:09  gb
2755
2756        * level-1/l1-clos-boot.lisp: class-wrapper-random-state: use
2757        encapsulation, and a lock.
2758
27592007-03-12 05:08  gb
2760
2761        * level-1/: l1-aprims.lisp, l1-numbers.lisp: *RANDOM-STATE* is
2762        thread-local.
2763
27642007-03-12 02:25  gb
2765
2766        * lisp-kernel/x86-exceptions.c: in catch_exception_raise(), try to
2767        deal with variations in Mach behavior: "exception" may be
2768        EXC_BAD_ACCESS when an illegal instruction causes a "general
2769        protection fault".
2770
27712007-03-09 15:56  gb
2772
2773        * level-1/l1-files.lisp: Bill's fix to (MAKE-PATHNAME :DIRECTORY
2774        NIL ...)
2775
27762007-03-09 00:01  gb
2777
2778        * lib/dumplisp.lisp: Use CLEAR-OPEN-FILE-STREAMS.
2779
27802007-03-09 00:00  gb
2781
2782        * lib/ccl-export-syms.lisp: Accessors of open-file-streams; no more
2783        *OPEN-FILE-STREAMS*.
2784
27852007-03-09 00:00  gb
2786
2787        * level-1/: l1-streams.lisp, l1-sysio.lisp: Encapsulation for
2788        open-file-streams.
2789
27902007-03-08 23:59  gb
2791
2792        * level-1/l1-readloop.lisp: OPEN-FILE-STREAMS is a function,
2793        returns a copy of a list of open file streams in PREPARE-TO-QUIT.
2794
27952007-03-08 23:58  gb
2796
2797        * level-1/l1-init.lisp: Lose *OPEN-FILE-STREAMS* and the lock
2798        associated with it.
2799
28002007-03-08 23:57  gb
2801
2802        * level-1/l1-aprims.lisp: Bind *GENSYM-COUNTER* per-thread.
2803
28042007-03-08 23:47  gb
2805
2806        * level-0/l0-hash.lisp: When REMHASH deletes the last entry in a
2807        hash-table, it fills the hash-table vector with "free" markers.
2808        (There may already be lots of "deleted" markers in the table.)
2809
28102007-03-08 22:26  gb
2811
2812        * level-1/linux-files.lisp: *spin-lock-tries* with a trailing *.
2813
28142007-03-08 22:24  gb
2815
2816        * lib/numbers.lisp: printing random-state: don't shift seeds.
2817
28182007-03-08 22:24  gb
2819
2820        * level-1/l1-numbers.lisp: MAKE-RANDOM-STATE: don't shift.
2821
28222007-03-08 22:24  gb
2823
2824        * level-0/X86/x86-numbers.lisp: Do %next-random-seed more portably.
2825
28262007-03-08 22:23  gb
2827
2828        * level-0/PPC/PPC64/ppc64-bignum.lisp: Typo in comment.
2829
28302007-03-08 22:23  gb
2831
2832        * level-0/PPC/ppc-numbers.lisp: Just a 32-bit version of
2833        %next-random-pair.
2834
28352007-03-08 22:22  gb
2836
2837        * level-0/l0-numbers.lisp: And, while we're at it: do the
2838        next-random-seed permutation in %next-random-pair, which accepts
2839        and returns a pair of 16-bit integers.  That's in lap on ppc32 and
2840        in lisp on 64-bit platforms.
2841
28422007-03-08 22:20  gb
2843
2844        * level-0/l0-numbers.lisp: Don't shift random seeds.
2845
28462007-03-08 03:30  gb
2847
2848        * level-1/x86-error-signal.lisp: Check for trap opcode >= #x70
2849        rather than >= #x80, because of the new way that
2850        uuo-error-slot-unbound is encoded.
2851
28522007-03-08 03:28  gb
2853
2854        * compiler/X86/x86-disassemble.lisp: Recognize
2855        uuo-error-slot-unbound.
2856
28572007-03-08 03:28  gb
2858
2859        * compiler/X86/x86-asm.lisp: Use (int #x7_) for
2860        uuo-error-slot-unbound, since some (int #x8_) traps confuse Mach.
2861
28622007-03-07 08:29  gb
2863
2864        * compiler/PPC/ppc2.lisp: Don't shadow the definition of PPC-DIV2.
2865
28662007-03-07 07:45  gb
2867
2868        * level-1/linux-files.lisp: For #+linux-target, try to use
2869        #_sysconf in CPU-COUNT, and fall back to parsing /proc/cpuinfo only
2870        if that fails.  (CPU-COUNT is called early in the cold load, before
2871        we can make the file-stream necessary to do the parsing.)
2872
28732007-03-07 07:33  gb
2874
2875        * lisp-kernel/: linuxppc/Makefile, linuxppc64/Makefile,
2876        linuxx8664/Makefile: Handle new GNU ld "hash-style" linker options.
2877
28782007-03-07 07:25  gb
2879
2880        * lisp-kernel/x86-exceptions.h: Darwin signal return: logior in the
2881        el-bizarro syscall mask, pass the magic number 0x1e as a second
2882        arg, just in case.
2883
28842007-03-07 07:24  gb
2885
2886        * level-1/l1-sysio.lisp: OPEN, CLOSE lock *OPEN-FILE-STREAMS-LOCK*
2887        before accessing *OPEN-FILE-STREAMS*.
2888
28892007-03-07 07:23  gb
2890
2891        * level-1/l1-readloop.lisp: Add comment about
2892        *OPEN-FILE-STREAMS-LOCK*.
2893
28942007-03-07 07:23  gb
2895
2896        * level-1/l1-init.lisp: Add *OPEN-FILE-STREAMS-LOCK*.
2897
28982007-03-07 07:21  gb
2899
2900        * lib/nfcomp.lisp: Bind *FCOMP-PREVIOUS-POSITION* in
2901        FCOMP-READ-LOOP (e.g., don't just hammer on the static binding.)
2902
29032007-03-07 07:05  gb
2904
2905        * xdump/heap-image.lisp: Bump current image version.
2906
29072007-03-07 07:02  gb
2908
2909        * lisp-kernel/x86-asmutils64.s: Some (currently unused) CPUID
2910        "calls" want an argument in ecx.  Set that arg to 0 for now.
2911
29122007-03-07 07:01  gb
2913
2914        * lisp-kernel/thread_manager.c: Use spinlocks to guard updates to
2915        "real" locks; those updates can be simplified.
2916       
2917        lock_recursive_lock: no (ignored) timeout arg.
2918
29192007-03-07 06:59  gb
2920
2921        * lisp-kernel/image.h: Bump current, max abi versions; continue to
2922        support the old one.
2923
29242007-03-07 06:59  gb
2925
2926        * lisp-kernel/Threads.h: #include #<sched.h>, for sched_yield()
2927        prototype.  Change declaration of LOCK macro: no null timespec
2928        required.  RECURSIVE_LOCKs have spinlock fields.
2929
29302007-03-07 06:56  gb
2931
2932        * level-1/version.lisp: bump, indicate work-in-progress development
2933        version.
2934
29352007-03-07 06:56  gb
2936
2937        * level-1/linux-files.lisp: Determing *spin-lock-tries* at launch
2938        time, based on cpu-count.  YIELD moved here, does #_sched_yield
2939        rather than something lower-level.
2940
29412007-03-07 06:53  gb
2942
2943        * level-0/l0-misc.lisp: Locks use spinlocks, try *spin-lock-tries*
2944        to obtain them before yielding.
2945
29462007-03-07 06:52  gb
2947
2948        * level-0/l0-io.lisp: Move YIELD elsewhere.
2949
29502007-03-07 06:51  gb
2951
2952        * compiler/: PPC/PPC32/ppc32-arch.lisp, PPC/PPC64/ppc64-arch.lisp,
2953        X86/X8664/x8664-arch.lisp: Add spinlock field to lockptr storage
2954        layout.
2955
29562007-03-02 05:10  gb
2957
2958        * level-1/l1-application.lisp: Toplevel function: initial-listener
2959        class is 'TTY-LISTENER.
2960
29612007-03-02 05:09  gb
2962
2963        * level-1/l1-lisp-threads.lisp: Print n's value, not n in error
2964        message.
2965
29662007-03-02 05:09  gb
2967
2968        * level-1/l1-processes.lisp: New process class: TTY-LISTENER.
2969       
2970        EXIT-INTERACTIVE-PROCESS: for most processes, just PROCESS-KILL.
2971        For TTY-LISTENER, call QUIT.
2972
29732007-03-02 05:08  gb
2974
2975        * level-1/l1-readloop-lds.lisp: Don't call QUIT on EOF, call
2976        EXIT-INTERACTIVE-PROCESS instead.
2977       
2978        Look at *QUIT-ON-EOF* when deciding what to do in response to EOF.
2979
29802007-03-02 05:06  gb
2981
2982        * lib/ccl-export-syms.lisp: Export *quit-on-eof*.
2983
29842007-03-02 05:06  gb
2985
2986        * lib/macros.lisp: WITH-MACPTRS: move initialization/modification
2987        of null pointers into body.
2988
29892007-03-02 05:05  gb
2990
2991        * lisp-kernel/x86-exceptions.c: Try to handle two more cases of
2992        consus-interruptus.
2993
29942007-03-02 05:05  gb
2995
2996        * compiler/nx0.lisp: (the <type> <constant>) transforms to
2997        <constant> if constant is of type <type>.)
2998       
2999        Do we need an ignore-errors here ? Or does <type> need to be
3000        defined ?
3001
30022007-03-02 05:03  gb
3003
3004        * compiler/X86/x862.lisp: Do the / * thing.
3005
30062007-03-02 05:02  gb
3007
3008        * compiler/X86/X8664/x8664-vinsns.lisp: things that do calls need
3009        :call attribute.
3010
30112007-03-01 04:04  gb
3012
3013        * lisp-kernel/x86-spentry64.s: binding primitives: set value after
3014        new binding frame
3015
30162007-02-28 07:04  gb
3017
3018        * level-0/X86/x86-numbers.lisp: In %fixnum-truncate, use -8(sp)
3019        rather than %rbp; trust callback_for_interrupt() to preserve it.
3020
30212007-02-28 07:03  gb
3022
3023        * lisp-kernel/x86-exceptions.c: Try to preserve -8(sp) across
3024        callback_for_interrupt().
3025
30262007-02-28 05:18  gb
3027
3028        * lisp-kernel/x86-gc.c: check_node: ignore tiny things (shift
3029        counts) that may wind up on the vstack.
3030       
3031        Since those tiny things might be tagged as headers, walk the vstack
3032        with new "headerless" functions that ignore headers.
3033
30342007-02-28 05:16  gb
3035
3036        * lisp-kernel/x86-exceptions.c: In pc_luser_xp: if allocating and
3037        before the alloc trap and interrupting, back out of the
3038        modification to save_allocptr (and allocptr register) and set
3039        *interrupt_displacement.
3040
30412007-02-23 10:13  gb
3042
3043        * lib/foreign-types.lisp: Changes to GUESS-ALIGNMENT.  Again, this
3044        only makes sense for cases where we have to guess; a bitfield
3045        that's 8 bits wide still has an alignment of 1.
3046       
3047        Factor in the alignment of the containing int when bitfields are
3048        involved.
3049       
3050        When parsing a record type, set the "bits" slot of each field.
3051        (Not too many things look at that slot, but we want the effect of
3052        loading a record from the database to match the effect of parsing a
3053        definition as exactly as possible, and to be able to use EQUALP to
3054        compare the results.)
3055
30562007-02-23 10:06  gb
3057
3058        * lib/db-io.lisp: Some extra fields in
3059        objc-message-info/objc-method-info structures.
3060       
3061        When calculating overall alignment of a structure, treat bitfields
3062        as if they were :unsigned-int (since there's a "containing"
3063        unsigned int that affects alignment.  N.B: this should be imposed
3064        for anything that has an alignment of 1, not just a size of 1.)
3065       
3066        When loading integer types, try to use the precomputed types rather
3067        than consing a new one.  This (a) reduces consing a little (b) is
3068        more likely to get the alignment correct.  For (b), we really need
3069        to distinguish between bitfields and addressable integers.
3070
30712007-02-23 09:30  gb
3072
3073        * compiler/X86/x862.lisp: Nonsense in x862-set-bit.
3074
30752007-02-22 02:33  gb
3076
3077        * level-0/l0-misc.lisp: Tweak ROOM output a little.
3078
30792007-02-22 02:28  gb
3080
3081        * lisp-kernel/x86-gc.c: Fix up the verbose GC herald a bit (get
3082        heap size right ...).
3083
30842007-02-22 02:27  gb
3085
3086        * lisp-kernel/linuxx8664/Makefile: Tell GNU ld to use the
3087        traditional (sysv) style of hash maps, if it understands that
3088        option.
3089
30902007-02-21 06:01  gb
3091
3092        * lisp-kernel/: ppc-gc.c, x86-gc.c: Handle the case where nothing
3093        has been consed since last GC.  (There are some fenceposts there.)
3094       
3095        verbose GC herald tries to indicate how much is allocated in the
3096        area being GCed.
3097
30982007-02-21 05:58  gb
3099
3100        * lisp-kernel/: ppc-exceptions.c, x86-exceptions.c: If full GC is
3101        deferred, ensure that a full GC happens after WITHOUT-GCING exits.
3102
31032007-02-21 05:57  gb
3104
3105        * compiler/X86/x86-disassemble.lisp: Continue disassembly after
3106        uuo-gc-trap.
3107
31082007-02-19 04:50  gb
3109
3110        * lib/foreign-types.lisp: Use keywords more consistently.
3111       
3112        (Note: there seems to be a bug which is keeping the cdb data
3113        structures from getting defined correctly at load time; the
3114        workaround is to compile foreign-types.lisp - which defines them -
3115        in the same session as and before db-io - which uses them - is
3116        compiled.)
3117
31182007-02-19 04:48  gb
3119
3120        * level-0/X86/x86-clos.lisp: UNSET-FIN-TRAMPOLINE: don't tail-call
3121        error.
3122
31232007-02-19 04:42  gb
3124
3125        * level-0/PPC/ppc-clos.lisp: UNSET-FIN-TRAMPOLINE: don't tail-call
3126        the error function.
3127
31282007-02-19 04:40  gb
3129
3130        * level-1/l1-clos-boot.lisp: MAYBE-UPDATE-OBSOLETE-INSTANCE: handle
3131        funcallable objects that aren't STANDARD-GENERIC-FUNCTIONs.
3132
31332007-02-19 04:40  gb
3134
3135        * level-1/l1-clos.lisp: Move GENERIC-FUNCTION-NAME to
3136        FUNCALLABLE-STANDARD-OBJECT.
3137       
3138        %ALLOCATE-GF-INSTANCE: don't create a dispatch table if not
3139        creating a GF.
3140
31412007-02-19 04:36  gb
3142
3143        * lib/describe.lisp: STANDARD-OBJECT-LINE-N: handle
3144        funcallable-stanard-objects better.
3145
31462007-02-19 04:34  gb
3147
3148        * lib/ccl-export-syms.lisp: Export FUNCALLABLE-STANDARD-OBJECT from
3149        CCL, OPENMCL-MOP.
3150
31512007-02-19 02:09  gb
3152
3153        * level-1/l1-clos-boot.lisp: FUNCALLABLE-STANDARD-OBJECT is a
3154        FUNCALLABLE-STANDARD-CLASS.
3155
31562007-02-19 02:07  gb
3157
3158        * examples/bridge.lisp: MAKE-OPTIMIZED-SEND: missing "msg" arg in
3159        error message.
3160
31612007-02-15 02:46  gb
3162
3163        * examples/objc-support.lisp: Call REGISTER-OBJC-INIT-MESSAGES
3164        after MAP-OBJC-CLASSES in LOAD-OBJC-EXTENSION-FRAMEWORK.
3165
31662007-02-15 02:45  gb
3167
3168        * examples/bridge.lisp: UPDATE-OBJC-METHOD-INFO: don't process init
3169        methods yet.
3170
31712007-02-14 02:39  gb
3172
3173        * release-notes.txt: Fix a typo.
3174
31752007-02-14 02:35  gb
3176
3177        * release-notes.txt: Update for 070214 snapshots.
3178
31792007-02-13 23:36  gb
3180
3181        * level-1/version.lisp: Bump.
3182
31832007-02-13 23:36  gb
3184
3185        * lisp-kernel/image.h, xdump/heap-image.lisp: Update
3186        image-abi-version.
3187
31882007-02-13 23:29  gb
3189
3190        * xdump/faslenv.lisp: Finish bumping fasl version.
3191
31922007-02-13 23:15  gb
3193
3194        * lib/nfcomp.lisp: Bump current fasl version.
3195
31962007-02-13 23:02  gb
3197
3198        * x86-headers64/gl/C/populate.sh: rm -rf ./usr
3199
32002007-02-13 22:45  gb
3201
3202        * xdump/faslenv.lisp: Start bumping fasl-version.
3203
32042007-02-13 22:41  gb
3205
3206        * freebsd-headers64/: gmp/C/populate.sh, gnome2/C/populate.sh,
3207        gtk2/C/populate.sh, libc/C/populate.sh: rm -rf  ./usr
3208
32092007-02-13 21:16  gb
3210
3211        * freebsd-headers64/gl/C/populate.sh: Avoid processing some files
3212        that contain incompatible definitions of some math library stuff
3213        ("log" either has to do with logarithms or logging ...).
3214
32152007-02-13 18:42  gb
3216
3217        * lib/misc.lisp: Change the way that TIME is reported by default:
3218        mention the number of available CPU cores, don't assume that
3219        there's that much of a relationship between CPU time and wall-clock
3220        time.
3221
32222007-02-13 18:41  gb
3223
3224        * level-1/linux-files.lisp: Don't do whatever el-bizarro Mach thing
3225        once seemed to be necessary in %%RUSAGE.  Require syscall stuff
3226        when :execute, too.
3227
32282007-02-13 18:35  gb
3229
3230        * lib/ffi-linuxppc64.lisp: It's %%get-unsigned-longlong, and the
3231        offset arg is required.
3232
32332007-02-13 18:12  gb
3234
3235        * level-0/X86/x86-misc.lisp: Add rdtsc (returns 60 bit non-negative
3236        fixnum) and rdtsc64 (returns 64-bit non-negative integer.)
3237
32382007-02-13 18:10  gb
3239
3240        * lib/time.lisp: Simpler GET-INTERNAL-RUN-TIME (tries harder not to
3241        cons.)
3242
32432007-02-13 18:10  gb
3244
3245        * examples/rubix/rubix.lisp: A little bit of cgfloat stuff; there
3246        are more/other float-size issues deeper down in the code.
3247
32482007-02-13 18:09  gb
3249
3250        * examples/objc-support.lisp: Fixup the x86-64 error-return
3251        callback trampiline code (was missing a byte of machine code.)
3252
32532007-02-13 18:08  gb
3254
3255        * examples/objc-runtime.lisp: Set the mxcsr/fpctrl fields of
3256        jmp-buf to safe/sane values.
3257
32582007-02-13 18:07  gb
3259
3260        * examples/cocoa-window.lisp: Don't change-class
3261        *cocoa-event-process* until we start to run the event loop.
3262       
3263        Don't do _deallocHardCore: explicitly.
3264
32652007-02-13 17:35  gb
3266
3267        * compiler/PPC/ppc2.lisp: poweropen-foreign-args: on ppc64, a
3268        DOUBLE-FLOAT aliases just one gpr.
3269
32702007-02-13 17:34  gb
3271
3272        * darwin-headers64/libc/C/populate.sh: Select the SDK directory.
3273
32742007-02-13 17:34  gb
3275
3276        * library/pty.lisp: return-value pointers in OPEN-PTY-PAIR are just
3277        32-bit ints, not "long".
3278
32792007-02-13 17:33  gb
3280
3281        * lib/ffi-darwinppc64.lisp: Callback arguments: update offset/delta
3282        for each scalar, not each arg.
3283       
3284        Fix some backquoting/indentation.
3285
32862007-02-13 17:31  gb
3287
3288        * lib/ffi-darwinppc32.lisp: Fix typo (^get-signed-long).
3289
32902007-02-12 16:23  gb
3291
3292        * darwin-x86-headers64/libc/C/populate.sh: Select an SDK.
3293
32942007-02-11 20:22  gb
3295
3296        * examples/bridge.lisp: method-typestring needs to be
3297        conditionalized.  How has this been working ?
3298
32992007-02-11 20:22  gb
3300
3301        * examples/cocoa-editor.lisp: remove some debugging code.
3302
33032007-02-11 20:21  gb
3304
3305        * examples/objc-runtime.lisp: %mlist-containing is
3306        #-apple-objc-2.0.
3307
33082007-02-11 20:21  gb
3309
3310        * examples/objc-support.lisp: Lose a quote mark, fix another typo.
3311
33122007-02-11 05:35  gb
3313
3314        * level-1/version.lisp: Bump.
3315
33162007-02-11 05:28  gb
3317
3318        * darwin-headers/: addressbook/C/populate.sh, carbon/C/populate.sh,
3319        cocoa/C/populate.sh, gl/C/populate.sh, libc/C/populate.sh,
3320        quicktime/C/populate.sh, webkit/C/populate.sh: Make the SDK prefix
3321        an optional argument; default to the Tiger SDK.
3322
33232007-02-11 05:26  gb
3324
3325        * lib/ffi-darwinppc32.lisp: Ignore errors; it's an error to ignore
3326        an errror.
3327
33282007-02-11 05:26  gb
3329
3330        * level-1/ppc-trap-support.lisp: Conditionalize for gratuitous
3331        Leopard renaming.  Suffer.
3332
33332007-02-11 05:25  gb
3334
3335        * level-1/l1-boot-lds.lisp: MAKE-MCL-LISTENER-PROCESS will preset
3336        an existing process (so that the listener process appears to be
3337        "persistent".)
3338
33392007-02-11 05:24  gb
3340
3341        * level-1/l1-application.lisp: LISP-DEVELOPMENT-SYSTEM tries to
3342        make the initial-listener object persistent acrosss
3343        SAVE-APPLICATION.
3344
33452007-02-11 00:01  gb
3346
3347        * examples/objc-support.lisp: Deftype for CF-FLOAT.
3348       
3349        Handle callback-error-returns on x86-64.
3350
33512007-02-11 00:00  gb
3352
3353        * examples/objc-runtime.lisp: Pointer comparisons in splay trees
3354        use %ptr<, to hide word-size differences.
3355       
3356        __NSConstantStringClassReference isn't what it used to be, so look
3357        up NSConstantStringClass the hard way.
3358       
3359        Handle ns-exception/lisp-error stuff on x86-64.
3360       
3361        Do arg/result coercions differently.  Does any code depend on
3362        COERCE-TO-ADDRESS behavior ?  (It can cause extra consing of
3363        MACPTRs).
3364       
3365        Use the new FFI interface for message-sends, callbacks to try to
3366        hide platform-specific ABI issues.
3367       
3368        The _deallocate-hook mechanism - which never really worked -
3369        probably can't work on Objc-2.0.
3370
33712007-02-10 23:54  gb
3372
3373        * examples/bridge.lisp: Make structure return-type explicit in
3374        objc-message-send calls in send/stret and variants.
3375
33762007-02-10 22:34  gb
3377
3378        * examples/cocoa-window.lisp: Some indentation changes and slight
3379        reorganization of the code; shouldn't be any functional/semantic
3380        changes.
3381
33822007-02-10 22:30  gb
3383
3384        * examples/: cocoa-editor.lisp, cocoa-prefs.lisp,
3385        cocoa-typeout.lisp: Need to ensure that floats are CG-FLOATs when
3386        appropriate; other changes for 64-bit platforms, Objc-2.0.
3387
33882007-02-10 22:28  gb
3389
3390        * examples/: webkit.lisp, tiny.lisp: Need to ensure that floats are
3391        CG-FLOATs when appropriate.
3392
33932007-02-10 22:28  gb
3394
3395        * hemlock/bin/openmcl/.cvsignore: Ignore fasls for all platforms.
3396
33972007-02-10 22:28  gb
3398
3399        * level-0/X86/x86-misc.lisp: VALUES uses :ARGLIST pseudo-op.
3400
34012007-02-10 22:27  gb
3402
3403        * lib/: ffi-linuxppc64.lisp, ffi-darwinppc32.lisp,
3404        ffi-darwinppc64.lisp, ffi-linuxppc32.lisp: EXPAND-FF-CALL:
3405        ignore-errors when trying to parse the last arglist form as a
3406        foreign type.
3407
34082007-02-10 22:26  gb
3409
3410        * lib/foreign-types.lisp: Pretty much commited to the new FF-CALL
3411        expansion ...
3412
34132007-02-10 22:26  gb
3414
3415        * lisp-kernel/x86-spentry64.s: Preserve %rax when doing ff-call;
3416        use %rdx and %r11 to hold target address.
3417
34182007-02-10 22:23  gb
3419
3420        * library/pty.lisp: Unicode stuff when accessing control char
3421        array; conditionalize for #+darwin-target, not just
3422        #+darwinppc-target.
3423
34242007-02-10 22:22  gb
3425
3426        * level-1/l1-callbacks.lisp: Fix a comment (defcallback isn't
3427        ppc-specific; the comment dated from the days of 68K MCL.)
3428
34292007-02-10 22:21  gb
3430
3431        * compiler/X86/X8664/x8664-backend.lisp: Fix some typos; do struct
3432        return 32 bits at a time, to avoid consing little bignums.
3433
34342007-02-10 22:15  gb
3435
3436        * compiler/X86/x86-lap.lisp: Support :arglist directive.
3437
34382007-02-10 22:15  gb
3439
3440        * compiler/X86/x862.lisp: alloc-c-frame vinsn takes "extra" word
3441        count, not total byte count.
3442       
3443        Fix handling of $undo-x86-c-frame in x862-nlexit.  (Need to check
3444        the PPC case, as well.)
3445
34462007-02-10 22:11  gb
3447
3448        * compiler/X86/X8664/x8664-vinsns.lisp: There doesn't need to be a
3449        "zero-extend-s8" vinsn, but there does need to be a
3450        "zero-extend-u8".
3451
34522007-02-10 05:38  gb
3453
3454        * level-0/PPC/ppc-misc.lisp: Use new :ARGLIST directive in
3455        #'VALUES.
3456
34572007-02-10 05:38  gb
3458
3459        * compiler/PPC/ppc-lap.lisp: Support an :ARGLIST directive, so that
3460        ARGLIST can say -something- about lap functions that don't take a
3461        fixed number of arguments.
3462
34632007-02-07 02:54  gb
3464
3465        * compiler/X86/X8664/x8664-backend.lisp: They spell "valu" with an
3466        "e".
3467
34682007-02-02 02:32  gb
3469
3470        * examples/: bridge.lisp, objc-clos.lisp, objc-runtime.lisp,
3471        objc-support.lisp: Start to integrate with FFI changes.  No more
3472        %SEND, process and precompile "init" messages when interfaces are
3473        accessed.  (Note: should try to handle varargs init messages, even
3474        if we have to call %FF-CALL at runtime.)
3475
34762007-02-02 02:31  gb
3477
3478        * examples/: addressbook.lisp, webkit.lisp: Change the
3479        initialization code a bit.
3480
34812007-02-02 02:27  gb
3482
3483        * lib/foreign-types.lisp: Try to fix another case involving
3484        "auxiliary types".
3485       
3486        I think that the concept of auxiliary types might make sense in a
3487        context like:
3488       
3489        (def-foreign-type nil   (:struct :foo     (:a :int)     (:b
3490        (:struct :bar (:x :int) (:y :int)))))
3491       
3492        In that case, :struct :bar is local to the definition.  In the
3493        similar case:
3494       
3495        (def-foreign-type nil   (:struct :foo     (:a :int)     (:b
3496        (:struct :bar))))
3497       
3498        :BAR is presumably defined (globally) elsewhere.
3499
35002007-02-02 02:17  gb
3501
3502        * darwin-headers/addressbook/C/populate.sh: Specify the SDK to use.
3503         (Setting "SDK=" will hopefully work with older version of xcode.)
3504
35052007-02-02 02:15  gb
3506
3507        * darwin-headers/addressbook/C/.cvsignore: Ignore ./Developer.
3508
35092007-01-31 23:26  gb
3510
3511        * compiler/PPC/ppc2.lisp: Don't treat :registers arg as a real
3512        argument in ppc2-poweropen-foreign-args.
3513
35142007-01-31 22:47  gb
3515
3516        * lib/ffi-darwinppc64.lisp: Needed ,@ to return assign structure
3517        components from registers.
3518
35192007-01-31 22:45  gb
3520
3521        * lib/db-io.lisp: UNESCAPE-FOREIGN-NAME: strings with no angle
3522        brackets are returned verbatim, not downcased.
3523
35242007-01-31 22:44  gb
3525
3526        * level-0/PPC/ppc-def.lisp: Runtime version of 64-bit %ff-call
3527        accepts :registers.
3528
35292007-01-31 16:36  gb
3530
3531        * darwin-headers64/chud/: .cvsignore, C/.cvsignore, C/populate.sh:
3532        New (and, so far, useless) files.
3533
35342007-01-31 16:35  gb
3535
3536        * library/chud-metering.lisp: Add a comment; CHUD.Framework still
3537        seems to be 32-bit only.
3538
35392007-01-31 16:34  gb
3540
3541        * darwin-headers64/libc/C/.cvsignore: Ignore ./Developer.
3542
35432007-01-31 16:34  gb
3544
3545        * darwin-headers64/libc/C/populate.sh: Use SDK; add dlfcn.h.
3546
35472007-01-31 16:33  gb
3548
3549        * lib/db-io.lisp: Tweak the warning given if CDB-OPEN fails:
3550        missing cdb file: dog bytes man; missing parent directory is more
3551        newsworthy.
3552
35532007-01-31 15:38  gb
3554
3555        * library/chud-metering.lisp: Tweak a little, so that it might work
3556        on darwinppc64 (and on darwinx8664 when purify does something
3557        there.)
3558
35592007-01-31 15:06  gb
3560
3561        * darwin-headers/libc/C/populate.sh: Add dlfcn.h.
3562
35632007-01-31 02:49  gb
3564
3565        * level-0/PPC/PPC32/ppc32-bignum.lisp: BIGNUM-NEGATE-TO-PTR.
3566
35672007-01-30 22:53  gb
3568
3569        * freebsd-headers64/: gtk2/C/.cvsignore, gtk2/C/populate.sh,
3570        gl/C/.cvsignore, gl/C/populate.sh, gnome2/.cvsignore,
3571        gnome2/C/.cvsignore, gnome2/C/populate.sh, gtk2/.cvsignore,
3572        gl/.cvsignore: new files.
3573
35742007-01-30 22:21  gb
3575
3576        * freebsd-headers64/gmp/: C/.cvsignore, C/populate.sh, .cvsignore:
3577        new files.
3578
35792007-01-30 21:58  gb
3580
3581        * level-0/l0-bignum64.lisp: BIGNUM-NEGATE-TO-POINTER.
3582
35832007-01-30 21:58  gb
3584
3585        * x86-headers64/gmp/: .cvsignore, C/.cvsignore, C/populate.sh: new
3586        file
3587
35882007-01-30 21:49  gb
3589
3590        * level-1/l1-sockets.lisp: Learn to conditionalize! It's easy and
3591        fun!
3592
35932007-01-30 21:40  gb
3594
3595        * library/openmcl-gtk-support.lisp: Conditionalize out the
3596        event-polling task.
3597
35982007-01-30 21:36  gb
3599
3600        * headers64/: gl/.cvsignore, gl/C/.cvsignore, gl/C/populate.sh,
3601        gnome2/.cvsignore, gnome2/C/.cvsignore, gnome2/C/populate.sh,
3602        gtk2/.cvsignore, gtk2/C/.cvsignore, gtk2/C/populate.sh: new file
3603
36042007-01-30 21:35  gb
3605
3606        * headers/gl/C/populate.sh: process glu.h
3607
36082007-01-30 17:47  gb
3609
3610        * library/parse-ffi.lisp: Always encode explicit structure-typed
3611        function return values.
3612       
3613        Note when we see one, for now.
3614
36152007-01-30 17:45  gb
3616
3617        * lib/foreign-types.lisp: %EXTERNAL-CALL-EXPANDER allows/requires a
3618        leading argument to be paired with a structure-typed return-type.
3619
36202007-01-30 17:43  gb
3621
3622        * lib/ffi-linuxppc32.lisp: linuxppc32 always returns structures via
3623        the first-arg hack.
3624
36252007-01-30 17:42  gb
3626
3627        * lib/db-io.lisp: Bump *interface-abi-version*, but continue to
3628        support the old version.
3629       
3630        Don't check the :struct-by-value flag when encoding function
3631        args/results.  (That decision's made above our pay grade now.)
3632       
3633        When reading a :struct/:union definition, try to update an existing
3634        defintion rather than consing up a new one (this matters if the
3635        record is anonymous.)
3636
36372007-01-30 17:39  gb
3638
3639        * level-1/l1-sockets.lisp: Try to ensure that the :FORMAT argument
3640        gets passed to MAKE-TCP-STREAM-SOCKET and MAKE-FILE-STREAM-SOCKET
3641        correctly.
3642       
3643        Fix c_socket for #+linuxppc.
3644
36452007-01-30 08:20  gb
3646
3647        * level-1/version.lisp: Bump.
3648
36492007-01-30 08:20  gb
3650
3651        * lib/compile-ccl.lisp: Use make -j to build kernel.
3652
36532007-01-30 07:02  gb
3654
3655        * lisp-kernel/x86-spentry64.s: .SPcallback returns rax/rdx,
3656        xmm0/xmm1.
3657
36582007-01-30 07:01  gb
3659
3660        * lib/macros.lisp: Use new callback interface unconditionally.  (A
3661        day's work turned into 2 weeks, somehow.)
3662
36632007-01-30 07:00  gb
3664
3665        * compiler/X86/X8664/x8664-backend.lisp, lib/ffi-darwinx8664.lisp,
3666        lib/ffi-freebsdx8664.lisp, lib/ffi-linuxx8664.lisp: New callback
3667        stuff for x8664 (all platfroms appear to use the same ABI.)
3668
36692007-01-30 03:26  gb
3670
3671        * level-0/X86/x86-misc.lisp: Don't use boxed "disp" for
3672        displacement in %ATOMIC-INCF-NODE.
3673
36742007-01-29 07:27  gb
3675
3676        * lib/macros.lisp: Enable new callback stuff on #+ppc-target.
3677
36782007-01-29 07:27  gb
3679
3680        * lib/ffi-darwinppc64.lisp: new callback stuff.
3681
36822007-01-29 07:27  gb
3683
3684        * lib/ffi-darwinppc32.lisp: typos-r-us.
3685
36862007-01-29 04:37  gb
3687
3688        * lib/ffi-darwinppc32.lisp: Flesh out darwinppc32 callback stuff.
3689
36902007-01-29 04:37  gb
3691
3692        * lib/ffi-linuxppc64.lisp: Fix some typos/bugs; more likely remain.
3693
36942007-01-29 04:36  gb
3695
3696        * lib/foreign-types.lisp: REQUIRE-FOREIGN-TYPE-BITS.
3697
36982007-01-29 04:36  gb
3699
3700        * lib/macros.lisp: Use new callback scheme for darwinppc32, too.
3701
37022007-01-29 04:36  gb
3703
3704        * compiler/PPC/PPC32/ppc32-backend.lisp: No more (old) callback
3705        stuff here.
3706
37072007-01-29 02:33  gb
3708
3709        * lib/ffi-darwinppc32.lisp: Flesh out the new callback stuff.
3710
37112007-01-28 21:47  gb
3712
3713        * lib/: ffi-linuxppc32.lisp, ffi-linuxppc64.lisp: Flesh things out
3714        a bit more, change the API, get things working ... still a moving
3715        target.
3716
37172007-01-28 21:46  gb
3718
3719        * lib/macros.lisp: For linuxppc, use the new callback mechanism.
3720        (Other platforms still need more bootstrapping.)
3721
37222007-01-28 21:44  gb
3723
3724        * compiler/PPC/PPC32/ppc32-backend.lisp: Lose the old eabi-callback
3725        stuff; linuxppc 32/64-bit callbacks now use the new scheme.
3726
37272007-01-28 03:21  gb
3728
3729        * lib/ffi-linuxppc32.lisp: Remove some typos.  Need to pass
3730        dynamic-extent, other decls separately.
3731
37322007-01-28 03:20  gb
3733
3734        * compiler/PPC/PPC32/ppc32-backend.lisp: Fix some of this stuff;
3735        use the new (ftd-based) scheme.
3736
37372007-01-28 01:43  gb
3738
3739        * compiler/PPC/PPC64/ppc64-backend.lisp: Fix some typos.  (This
3740        code's getting replaced, but fix 'em anyway.)
3741
37422007-01-28 01:42  gb
3743
3744        * lib/db-io.lisp: If a .cdb file can't be opened, show the
3745        translated pathname and mention the fact that this might indicate a
3746        problem with "ccl:"'s logical translations.
3747
37482007-01-25 04:37  gb
3749
3750        * lib/foreign-types.lisp: Never fully understood the concept
3751        "auxiliary" foreign types, but try to canonicalize intermediate
3752        struct/union/enum references, so that (EQ (PARSE-FOREIGN-TYPE
3753        '(:STRUCT :FOO))     (PARSE-FOREIGN-TYPE '(:STRUCT :FOO))) is more
3754        likely to return T (e.g., something registered in the FTD.
3755       
3756        It seems clear that this is the right thing when the structure
3757        reference is in global scope; I'm not sure what it'd mean for that
3758        not to be the case.
3759
37602007-01-25 04:32  gb
3761
3762        * lib/ffi-linuxppc32.lisp: More plausible callback-bindings
3763        callback.
3764
37652007-01-24 23:41  gb
3766
3767        * lib/ffi-linuxppc32.lisp: First cut at callback-bindings thing;
3768        may not even compile.
3769
37702007-01-24 02:39  gb
3771
3772        * compiler/: PPC/PPC32/ppc32-backend.lisp,
3773        PPC/PPC64/ppc64-backend.lisp, X86/X8664/x8664-backend.lisp: Stubs
3774        for new FTD functions.
3775
37762007-01-24 02:28  gb
3777
3778        * lib/foreign-types.lisp: A few more fields (for callbacks) in ftd
3779        defstruct.
3780
37812007-01-23 15:28  gb
3782
3783        * compiler/PPC/: PPC32/ppc32-backend.lisp,
3784        PPC64/ppc64-backend.lisp: Get FPRs from where subprim saved them.
3785        Return FPRs in the same place.  (Will need to re-work all of this
3786        for platform-dependent structure stuff.)
3787
37882007-01-23 15:26  gb
3789
3790        * lisp-kernel/ppc-spentry.s: poweropen-callback, callbackX; save fp
3791        args here.  Return all (arg) GPRs and FPRs (needs cooperation from
3792        the lisp side.)
3793
37942007-01-23 15:21  gb
3795
3796        * lisp-kernel/: ppc-constants32.s, ppc-constants64.s: Add room in
3797        c_reg_save for saved fp args (f1-f13).
3798
37992007-01-23 15:14  gb
3800
3801        * lib/foreign-types.lisp: FF-CALL implemented in terms of the new
3802        ftd hook.
3803
38042007-01-23 07:19  gb
3805
3806        * level-1/l1-clos-boot.lisp: ppc32, ppc64 also had trouble with
3807        (CLASS-OF non-simple-string).
3808
38092007-01-23 07:02  gb
3810
3811        * level-1/l1-clos-boot.lisp: x8664 class-of: typo in non-simple
3812        array case, needed new string definition.
3813
38142007-01-23 07:01  gb
3815
3816        * lib/: ffi-darwinx8664.lisp, ffi-freebsdx8664.lisp,
3817        ffi-linuxx8664.lisp: Define ffi stuff in terms of common things in
3818        compiler/X86/X8664/x8664-backend.
3819
38202007-01-23 06:59  gb
3821
3822        * compiler/X86/X8664/x8664-backend.lisp: Define (common) x8664 ffi
3823        stuff here.
3824
38252007-01-21 08:32  gb
3826
3827        * compiler/X86/x862.lisp: Name vinsn ff-call-return-registers (not
3828        "-returning-").
3829       
3830        Typecheck the :registers arg.
3831
38322007-01-21 08:32  gb
3833
3834        * compiler/X86/X8664/x8664-vinsns.lisp: ff-call-return-registers.
3835
38362007-01-21 08:31  gb
3837
3838        * compiler/X86/X8664/x8664-arch.lisp: WITH-FFCALL-RESULTS: zero the
3839        stack-block.
3840
38412007-01-21 08:31  gb
3842
3843        * lisp-kernel/x86-spentry64.s: Don't use save3 in
3844        .SPffcall_return_registers (save3 = r11); use save2 (= r13)
3845        instead.
3846
38472007-01-21 06:46  gb
3848
3849        * compiler/PPC/PPC64/ppc64-arch.lisp: WITH-FFCALL-RESULTS needs
3850        space for 13 float registers, not 31.
3851
38522007-01-21 06:45  gb
3853
3854        * compiler/X86/X8664/x8664-arch.lisp: WITH-FFCALL-RESULTS for
3855        x86-64.
3856
38572007-01-21 06:38  gb
3858
3859        * compiler/X86/x862.lisp: ff-call: handle n-word struct-by-value,
3860        register return without typos.
3861
38622007-01-21 06:15  gb
3863
3864        * compiler/X86/x862.lisp: ff-call: handle n-word struct-by-value,
3865        register return.
3866
38672007-01-21 06:14  gb
3868
3869        * compiler/nx1.lisp: Don't assume that passing a structure by value
3870        in N words is Darwin-specific.  (LinuxPPC32 is probably the only
3871        platform that doesn't support the convention.)
3872
38732007-01-21 06:12  gb
3874
3875        * compiler/X86/X8664/x8664-arch.lisp: .SPffcall-return-registers
3876        replaces .SPunused-4.
3877
38782007-01-21 06:10  gb
3879
3880        * lisp-kernel/: x86-spentry64.s, x86-spjump64.s:
3881        .SPffcall_return_registers (just returns %rax/rdx, %xmm0/%xmm1).
3882        (replaces .SPunused_4).
3883
38842007-01-21 00:05  gb
3885
3886        * lib/: ffi-linuxppc32.lisp, ffi-linuxppc64.lisp: Use
3887        argument/result coercion functions in os::expand-ff-call.
3888
38892007-01-20 23:53  gb
3890
3891        * lib/: ffi-darwinppc32.lisp, ffi-darwinppc64.lisp: Coerce arg,
3892        results when expanding an ff-call.
3893
38942007-01-20 23:52  gb
3895
3896        * lib/foreign-types.lisp: Default (no-op) functions for coercing
3897        foreign args, results.
3898
38992007-01-20 22:31  gb
3900
3901        * lib/ffi-linuxppc64.lisp: 4 down.  Whether 2 or 3 to go depends on
3902        your perspective (and on how close x86-64 Linux and x86-64 FreeBSD
3903        are to each other.  I'd guess that they're pretty close, and that
3904        x86-64 Darwin is random.)
3905
39062007-01-20 21:55  gb
3907
3908        * lib/ffi-linuxppc32.lisp: Pretty simple.  3 down, 4 to go.
3909
39102007-01-20 19:34  gb
3911
3912        * compiler/X86/X8664/x8664-backend.lisp: Package prefixes.  D'oh!
3913
39142007-01-20 19:25  gb
3915
3916        * compiler/X86/X8664/x8664-backend.lisp: Add references to the
3917        right os::ff-call-expander.
3918
39192007-01-20 19:24  gb
3920
3921        * compiler/PPC/PPC64/ppc64-arch.lisp: Remove some wip code.
3922
39232007-01-20 19:24  gb
3924
3925        * compiler/PPC/: PPC32/ppc32-backend.lisp,
3926        PPC64/ppc64-backend.lisp: Use os::expand-ff-call, for each value of
3927        OS.
3928
39292007-01-20 19:23  gb
3930
3931        * level-1/l1-sockets.lisp: Saw an opportunity to use PAREF;
3932        probably several more.
3933
39342007-01-20 19:22  gb
3935
3936        * lib/ffi-darwinppc64.lisp: Two down, 5 to go.
3937
39382007-01-20 19:21  gb
3939
3940        * lib/ffi-darwinppc32.lisp: Looks mostly right; might need to be
3941        extended to handle coercions at the Cocoa level, and probably needs
3942        some cooperation from %EXTERNAL-CALL-EXPANDER (e.g., what's
3943        installed by #_).
3944
39452007-01-20 19:18  gb
3946
3947        * lib/db-io.lisp: Encode, decode union types in arglists.
3948
39492007-01-20 19:17  gb
3950
3951        * lib/foreign-types.lisp: ftd's :ff-call-expand-function is
3952        os::expand-ff-call.
3953       
3954        Canonicalize the :void type a bit better.
3955
39562007-01-20 19:16  gb
3957
3958        * library/parse-ffi.lisp: Remove the debugging FORMAT call.
3959
39602007-01-18 23:15  gb
3961
3962        * level-1/l1-boot-2.lisp: Load with the new ffi-backend fasls.
3963
39642007-01-18 23:15  gb
3965
3966        * lib/compile-ccl.lisp: Deal with the new ffi-backend sources.
3967
39682007-01-18 23:15  gb
3969
3970        * lib/systems.lisp: Add the new ffi-backend sources.
3971
39722007-01-18 23:14  gb
3973
3974        * lib/: ffi-darwinppc32.lisp, ffi-darwinppc64.lisp,
3975        ffi-darwinx8664.lisp, ffi-freebsdx8664.lisp, ffi-linuxppc32.lisp,
3976        ffi-linuxppc64.lisp, ffi-linuxx8664.lisp: New (so far, empty)
3977        files.
3978
39792007-01-18 04:35  gb
3980
3981        * level-1/version.lisp: Bump.
3982
39832007-01-18 04:17  gb
3984
3985        * examples/bridge.lisp: Some word-size conditionalization.  Will
3986        need more work to handle struct return/asssignment correctly on all
3987        platforms.
3988
39892007-01-18 04:15  gb
3990
3991        * examples/: cocoa-editor.lisp, cocoa-backtrace.lisp: Use CGFloat,
3992        type casts, etc.  Likwise for :<NSI>nteger, :<NSUI>nteger.
3993
39942007-01-18 04:13  gb
3995
3996        * examples/: cocoa-prefs.lisp, cocoa-listener.lisp: Use CGFloat,
3997        type casts, etc.
3998
39992007-01-18 04:12  gb
4000
4001        * examples/cocoa-window.lisp: Use CGFloat, type casts, etc.  Avoid
4002        deprecated NSFont stuff.
4003
40042007-01-18 04:11  gb
4005
4006        * examples/objc-clos.lisp: Handle ivars, class
4007        creation/initialization differently for ObjC 2.0.
4008
40092007-01-18 04:10  gb
4010
4011        * examples/objc-runtime.lisp: More ObjC 2.0, ppc64 changes.
4012
40132007-01-18 04:09  gb
4014
4015        * examples/objc-support.lisp: Note which protocols are actually
4016        used when walking classes.  (There doesn't seem to be a good way of
4017        finding a Protocol object pre-objc-2.0, and we may need to test
4018        protocol compliance to disambiguate message sends in some cases.)
4019
40202007-01-18 04:07  gb
4021
4022        * examples/opengl-ffi.lisp: Conditionalize for darwin (not
4023        necessarily darwinppc).
4024
40252007-01-18 04:06  gb
4026
4027        * examples/addressbook.lisp: Conditionalize for darwin (not
4028        necessarily darwinppc).  May want to conditionalize for bundle
4029        executable name, as well.
4030
40312007-01-18 04:05  gb
4032
4033        * compiler/PPC/PPC64/ppc64-arch.lisp: WITH-FFCALL-RESULTS.  Start
4034        to sketch out structure return code (structures are often
4035        "returned" by returning field values in registers pn DarwinPPC64.)
4036
40372007-01-18 04:04  gb
4038
4039        * compiler/PPC/PPC64/ppc64-backend.lisp: New ftd stuff; new
4040        attributes for structure args/results.
4041
40422007-01-18 04:03  gb
4043
4044        * compiler/PPC/PPC64/ppc64-vinsns.lisp: ffcall-returning registers.
4045         (Will need this for other platforms, too.)
4046
40472007-01-18 04:01  gb
4048
4049        * lib/macros.lisp: Arch-specific macro interface for
4050        WITH-FFCALL-RESULTS.
4051
40522007-01-18 04:00  gb
4053
4054        * lib/db-io.lisp: Handle the case of an encoded structure type as a
4055        return value.
4056
40572007-01-18 04:00  gb
4058
4059        * lisp-kernel/: ppc-spentry.s, ppc-spjump.s:
4060        .SPpoweropen_ffcall_return_registers.
4061
40622007-01-18 03:59  gb
4063
4064        * library/parse-ffi.lisp: At least optionally, make structure
4065        return explicit (expecting it to be handled by higher-level code.)
4066
40672007-01-18 03:58  gb
4068
4069        * lib/foreign-types.lisp: ff-call-expand-function in ftd.  Don't
4070        try to type-expand :registers <exp> form in EXTERNAL-CALL.
4071
40722007-01-18 03:55  gb
4073
4074        * level-0/PPC/ppc-misc.lisp: Get the contents of the register that
4075        may hold OS thread context.
4076
40772007-01-18 03:54  gb
4078
4079        * compiler/PPC/PPC32/ppc32-backend.lisp: ff-call-expander function
4080        in ftd.
4081
40822007-01-18 03:53  gb
4083
4084        * compiler/PPC/PPC32/ppc32-arch.lisp: WITH-FFCALL-RESULTS arch
4085        macro.
4086
40872007-01-18 03:52  gb
4088
4089        * compiler/PPC/ppc2.lisp: Poweropen ff-calls might need to return
4090        all possible result regs.  (Maybe poweropen syscall, too.)
4091
40922007-01-18 03:51  gb
4093
4094        * compiler/PPC/ppc-arch.lisp: Replace unused subprim with
4095        .SPpoweropen-ff-call-return-registers.
4096
40972007-01-18 03:50  gb
4098
4099        * compiler/nx1.lisp: Support :registers <exp> in %ff-call; when
4100        supported, backend will return all (potential) result registers in
4101        buffer at <exp>.
4102
41032007-01-16 02:01  gb
4104
4105        * level-1/l1-streams.lisp: Make sure that STREAM-READ-IVECTOR and
4106        STREAM-WRITE-IVECTOR are defined on binary stream classes.  (These
4107        functions make less sense for character streams/strings than they
4108        used to.)
4109
41102007-01-16 01:39  gb
4111
4112        * level-1/l1-sockets.lisp: Ensure that the :FORMAT argument
4113        defaults to :BIVALENT
4114
41152007-01-16 01:37  gb
4116
4117        * level-0/l0-init.lisp: Put :OPENMCL-UNICODE-STRINGS on *FEATURES*.
4118
41192007-01-11 23:58  gb
4120
4121        * compiler/PPC/ppc2.lisp: Transform (/ (* constant1 exp) constant2)
4122        into (* (/ constant1 constant2) exp).  Not very general, but makes
4123        some foreign address arithmetic better.
4124
41252007-01-11 23:56  gb
4126
4127        * lib/macros.lisp: Simple PAREF: (paref pointer
4128        foreign-pointer-or-array-type index) does simple arithmetic for
4129        you.
4130
41312007-01-11 23:54  gb
4132
4133        * lib/foreign-types.lisp: %FOREIGN-ARRAY-ACCESS-FORM.
4134
41352007-01-10 15:50  gb
4136
4137        * compiler/PPC/ppc2.lisp: ppc2-vref1: lose extra arg to
4138        double->heap vinsn.
4139
41402007-01-09 11:33  gb
4141
4142        * lisp-kernel/x86-spentry64.s: When running an unwind-protect
4143        cleanup and multiple values are being thrown, be sure to set
4144        tcr.xframe from the target catch frame.  This is necessary on
4145        general principles (GC safety), and especially necessary if the
4146        cleanup form does a non-local exit.
4147
41482007-01-08 22:12  gb
4149
4150        * examples/: objc-clos.lisp, objc-runtime.lisp, objc-support.lisp:
4151        Revive some of the old GNUstep support; add partial ObjC 2.0
4152        support (for 64-bit targets only, so far.)
4153
41542007-01-08 22:11  gb
4155
4156        * examples/cocoa.lisp: Conditionalize for darwin-target, not
4157        darwinppc-target.
4158
41592007-01-08 22:10  gb
4160
4161        * examples/cocoa-listener.lisp: Disable background layout in the
4162        listener; the whole two-thread scheme probably isn't viable, but
4163        doing this seems to suppress a timing-related symptom.
4164
41652007-01-08 22:09  gb
4166
4167        * examples/cocoa-editor.lisp: Document-begin-editing,
4168        document-end-editing: both seem to have been conditionalized
4169        backwards.
4170
41712007-01-05 16:22  gb
4172
4173        * level-0/l0-numbers.lisp: Fix another typo ...
4174
41752007-01-05 16:16  gb
4176
4177        * level-0/l0-numbers.lisp: Fix typo (ppc32::, not ppc2::).
4178
41792007-01-05 15:27  gb
4180
4181        * compiler/PPC/PPC32/ppc32-vinsns.lisp: Missing MISC-SET-C-S32 for
4182        PPC32.
4183
41842007-01-05 06:20  gb
4185
4186        * level-0/l0-cfm-support.lisp: OPEN-SHARED-LIBRARY: freebsd version
4187        of #_dlopen doesn't return a link map, but calling #_dlinfo on the
4188        result (with the right arg) does obtain a link map.
4189       
4190        Revive shared libraries on FreeBSD, but don't do the strange
4191        Linux-specific re-opening there.  (It seems like it's possible to
4192        #_dlopen something that already has a loaded link map - like the
4193        FreeBSD dynamic linker - or something.)
4194
41952007-01-04 05:46  gb
4196
4197        * level-1/l1-pathnames.lisp: %component-match-p: handle :WILD,
4198        :WILD-INFERIORS.
4199
42002007-01-04 05:45  gb
4201
4202        * lisp-kernel/pmcl-kernel.c: Try to check for old libc versions
4203        (which may use %gs instead of %fs for tls).
4204
42052007-01-04 05:44  gb
4206
4207        * lib/numbers.lisp: Explicitly require NUMBER-CASE-MACRO.
4208
42092007-01-04 05:44  gb
4210
4211        * level-0/l0-numbers.lisp:
4212        fixnum-sfloat-compare,fixnum-dfloat-compare: if the fixnum can be
4213        accurately represented in float, do so.
4214
42152007-01-03 03:35  gb
4216
4217        * lib/sequences.lisp: Fix a few type errors, check for explicit
4218        vector-type length earlier.
4219
42202007-01-03 03:31  gb
4221
4222        * level-1/l1-files.lisp: %STD-NAME-COMPONENT, %STD-TYPE-COMPONENT:
4223        preserved :WILD, don't map it to "*".
4224
42252007-01-03 03:30  gb
4226
4227        * lib/pathnames.lisp: More whack-a-mole with pathnames
4228        (specifically, preserving :WILD as name/type value and dealing with
4229        the consequences of doing so.)
4230
42312007-01-03 03:27  gb
4232
4233        * lib/numbers.lisp: Small (mostly cosmetic) change to RATIONAL.
4234
42352007-01-02 09:57  gb
4236
4237        * lib/macros.lisp: Keep fixing CTYPECASE.
4238
42392007-01-02 09:57  gb
4240
4241        * level-1/l1-streams.lisp: DOH! STREAM-READ-LINE method on
4242        BASIC-CHARACTER-INPUT-STREAM returns both values.
4243       
4244        "Composite" (two-way, concatenated, etc) streams need a close
4245        protocol.
4246
42472007-01-02 07:00  gb
4248
4249        * level-0/l0-pred.lisp: EQUAL on physical pathnames ignores the
4250        (new) version slot, as does practically everything else.
4251
42522007-01-02 06:59  gb
4253
4254        * level-0/l0-numbers.lisp: Don't assume that fixnums can be
4255        accurately coerced to floats when comparing fixnums and floats; do
4256        the logical equvalent of calling RATIONAL on the float instead.
4257
42582007-01-01 23:41  gb
4259
4260        * level-1/l1-files.lisp: ENOUGH-NAMESTRING: don't incorporate
4261        version into returned namestring for physical pathnames.
4262
42632006-12-31 10:15  gb
4264
4265        * release-notes.txt: Update.
4266
42672006-12-31 09:13  gb
4268
4269        * lisp-kernel/image.h, xdump/heap-image.lisp: Bump image/abi
4270        version.
4271
42722006-12-31 08:57  gb
4273
4274        * xdump/faslenv.lisp: Bump fasl-min-vers.
4275
42762006-12-31 08:49  gb
4277
4278        * lib/nfcomp.lisp: Bump current fasl version.
4279
42802006-12-31 08:33  gb
4281
4282        * lisp-kernel/: linuxppc/elf32ppclinux.x, linuxppc64/elf64ppc.x:
4283        Tweak the executable start address.
4284
42852006-12-31 02:44  gb
4286
4287        * lisp-kernel/x86-spjump64.s: On Darwin, use a .space directive to
4288        ensure that there's nothing interesting in the first few pages of
4289        the address space (and ensure that those pages are mapped.)
4290
42912006-12-31 02:43  gb
4292
4293        * lisp-kernel/darwinx8664/Makefile: Sadly, we can't use -sectalign
4294        on x86-64 (ld64 does some floating-point arithmetic, fails to
4295        account for roundoff error, and claims that 0x1000 isn't a power of
4296        2.) If you can't say anything good about a linker, it's best not to
4297        say anything at all.
4298       
4299        We can force the first segment to be mapped at 0x1000, and can
4300        waste a few pages to ensure that all low-memory pages that the lisp
4301        wants are mapped.
4302
43032006-12-31 02:33  gb
4304
4305        * level-1/l1-pathnames.lisp: %SPLIT-COMPONENT: be a little more
4306        defensive.
4307
43082006-12-31 02:32  gb
4309
4310        * compiler/nx0.lisp: NX-FORM-TYPE: handle quoted constants.
4311
43122006-12-31 02:29  gb
4313
4314        * xdump/faslenv.lisp: Bump $fasl-vers.
4315
43162006-12-31 02:28  gb
4317
4318        * level-1/version.lisp: Bump; remove "Beta" designation.
4319
43202006-12-29 20:13  gb
4321
4322        * compiler/X86/X8664/x8664-arch.lisp, lisp-kernel/area.h,
4323        lisp-kernel/lisp_globals.h, lisp-kernel/x86-constants64.h,
4324        lisp-kernel/x86-constants64.s, xdump/xx8664-fasload.lisp: Move NIL
4325        up a page on x86-64 as well.
4326
43272006-12-29 16:09  gb
4328
4329        * lisp-kernel/ppc-spjump.s: Be a little clearer about where we're
4330        .orged.
4331
43322006-12-29 15:32  gb
4333
4334        * compiler/PPC/PPC32/ppc32-arch.lisp, lisp-kernel/area.h,
4335        lisp-kernel/ppc-constants32.h, lisp-kernel/ppc-constants32.s,
4336        lisp-kernel/darwinppc/Makefile, xdump/xppcfasload.lisp: Static area
4337        (including NIL) now one page higher on ppc32, as well.
4338
43392006-12-29 02:38  gb
4340
4341        * level-0/PPC/ppc-float.lisp: SQRT in LAP (todo: inline it.)
4342
43432006-12-29 01:38  gb
4344
4345        * compiler/PPC/PPC64/ppc64-arch.lisp: Move ppc64::nil-value (and
4346        ppc64::reservation-discharge) up a page.
4347
43482006-12-29 01:37  gb
4349
4350        * xdump/xppcfasload.lisp: xload-static-space-address for ppc64 is
4351        #x2000; still #x1000 for ppc32.  (need to set this for x86-64)
4352
43532006-12-29 01:36  gb
4354
4355        * xdump/xfasload.lisp: *xload-static-space-address* depends on the
4356        backend.  ppc64 wants it one page higher than it has been, to avoid
4357        letting unmapped pages get claimed by the dynamic linker on Darwin.
4358
43592006-12-29 01:35  gb
4360
4361        * lisp-kernel/darwinppc64/Makefile: Change seg1addr/sectalign, so
4362        that the image starts at #x1000 and aligned section data for the
4363        text section starts on the next page.
4364
43652006-12-29 01:33  gb
4366
4367        * lisp-kernel/ppc-spjump.s: Org the spjump table 3 pages from where
4368        the aligned text section data starts.
4369
43702006-12-29 01:32  gb
4371
4372        * lisp-kernel/: ppc-constants64.h, ppc-constants64.s: nil_value,
4373        etc a page higher.
4374
43752006-12-29 01:32  gb
4376
4377        * lisp-kernel/pmcl-kernel.c: Don't remap ppc64 spjump table if it's
4378        already where it should be.
4379
43802006-12-29 01:32  gb
4381
4382        * lisp-kernel/lisp_globals.h: Access lisp_globals/nrs_symbols a
4383        page higher.
4384
43852006-12-29 01:30  gb
4386
4387        * lisp-kernel/area.h: Move STATIC_BASE_ADDRESS up a page for ppc64.
4388
43892006-12-22 01:40  gb
4390
4391        * lisp-kernel/ppc-exceptions.c: Ensure that sqrt() is prototyped.
4392
43932006-12-22 01:39  gb
4394
4395        * lisp-kernel/pmcl-kernel.c: Insist on at least Panther for
4396        PPC32/Darwin.
4397       
4398        Use dlopen() on 64-bit Darwin variants.  Might want to do a runtime
4399        test and use dlfcn functions if at least Tiger.
4400       
4401        (The old dyld functions are deprecated under Leopard, and there's
4402        reason to believe that they don't work correctly on at least ppc64/
4403        Leopard; attempting to use NSCreateObjectFileImageFromFile to open
4404        a 64-bit .dylib seems to lead to memory corruption rather than
4405        returning NSObjectFileImageInappropriateFile.
4406       
4407        The old functions work better than the dlfcn functions on pre-Tiger
4408        systems.)
4409
44102006-12-19 01:24  gb
4411
4412        * library/parse-ffi.lisp: Just to be on the safe side (new pathname
4413        bugs, or old ?), append -BAK to (NAMESTRING (TRUENAME path)), not
4414        just (NAMESTRING path) when renaming.  (MERGE-PATHNAMES call is
4415        producing a pathane with a non-null VERSION component, as it
4416        arguably should have been all along.
4417
44182006-12-18 13:22  gb
4419
4420        * lib/sequences.lisp: COERCE/MAKE-SEQUENCE try to simplify vector
4421        types into concrete vector types.
4422
44232006-12-18 13:04  gb
4424
4425        * level-1/l1-pathnames.lisp: Try (halfheartedly) to maintain
4426        PATHNAME-VERSION of physical pathnames.  (Totally meaningless, but
4427        failing to do this leads to many test failures.)
4428
44292006-12-18 13:03  gb
4430
4431        * level-1/l1-numbers.lisp: Don't call out to do sqrt.
4432
44332006-12-18 12:57  gb
4434
4435        * level-1/l1-files.lisp: Try (halfheartedly) to maintain
4436        PATHNAME-VERSION of physical pathnames.  (Totally meaningless, but
4437        failing to do this leads to many test failures.)
4438
44392006-12-18 12:54  gb
4440
4441        * level-0/X86/x86-float.lisp: Do single/double-float sqrt inline.
4442
44432006-12-16 05:28  gb
4444
4445        * level-0/PPC/ppc-float.lisp: Recognize that fsqrt/fsqrts
4446        instructions have a minor opcode in frb and only have one source
4447        operand.
4448
44492006-12-16 05:27  gb
4450
4451        * level-1/ppc-error-signal.lisp: If we get an FP exception during a
4452        SQRT, note that there's only one operand and that it's in frb.
4453
44542006-12-16 05:25  gb
4455
4456        * lisp-kernel/ppc-exceptions.c: Handle (some) unimplemented
4457        instructions, notably fsqrt/fqrts, which are optional and not
4458        implemented on some PPC machines.
4459
44602006-12-16 05:24  gb
4461
4462        * lisp-kernel/ppc-asmutils.s: Add get_fpscr().
4463
44642006-12-14 19:47  gb
4465
4466        * lisp-kernel/ppc-exceptions.c: Need to handle SIGQUIT on ppc, too.
4467
44682006-12-14 16:43  gb
4469
4470        * compiler/X86/X8664/x8664-vinsns.lisp: Constraints on some
4471        double-float arithmetic vinsns should say :double-float, not
4472        :single-float.  (I suspect cut-and-paste, frankly.)
4473
44742006-12-14 16:25  gb
4475
4476        * level-1/l1-lisp-threads.lisp: *initial-lisp-thread*, not
4477        initial-thread.
4478
44792006-12-14 16:24  gb
4480
4481        * level-1/x86-trap-support.lisp: Use frame pointer when signaling
4482        error.
4483
44842006-12-14 16:14  gb
4485
4486        * library/lispequ.lisp: Add a %PHYSICAL-PATHAME-VERSION slot to
4487        physical pathnames. (Yes, this is kind of silly.)
4488
44892006-12-14 16:01  gb
4490
4491        * level-1/x86-trap-support.lisp: Recognize the kernel's attempt to
4492        signal errors for (e.g.) failed memory allocation.
4493
44942006-12-14 16:00  gb
4495
4496        * lisp-kernel/x86-exceptions.c: If a memory allocation request
4497        fails, signal a lisp error (what a concept.)
4498
44992006-12-14 15:51  gb
4500
4501        * lisp-kernel/x86-exceptions.h: Define DARWIN_USE_PSEUDO_SIGRETURN.
4502       
4503        Might be worth revisiting this.
4504
45052006-12-14 15:50  gb
4506
4507        * lisp-kernel/x86-exceptions.c: Go back to using the
4508        pseudo_sigreturn mechanism on Darwin, since doing a real sigreturn
4509        from a fake context may not be reliable.
4510       
4511        When handling an interrupt with a partially created temp stack
4512        frame, do the right thing.  (That basically means reset the frame
4513        before calling out and recreating it if we return from the
4514        callout.)
4515       
4516        Handle SIGQUIT on the altstack, to provide a way of forcibly
4517        terminating threads that's a bit more GC-safe than doing it via
4518        #_pthread_cancel.
4519       
4520        Note the tcr of the gc thread on gc entry; if an exception happens
4521        in that thread, print a message and sleep for 60 seconds.
4522       
4523        Note that there's still a race condition here: if thread A gets an
4524        exception and thread B gets the mach_exception_lock (to GC) before
4525        the exception thread can handle the message, we deadlock (thread A
4526        would be suspended in the kernel and can't respond to a suspend
4527        signal.)  We can tell that this has happened and make a good guess
4528        as to why it happened, but dealing with it will require some
4529        thought.  (If we've already issued a suspend signal and eventually
4530        raise the suspended thread's resume semaphore, it'll suspend and
4531        resume once the mach exception thread makes it runnable.  Who
4532        cleans up its exception context in that case ?  Does it matter ?)
4533
45342006-12-14 15:19  gb
4535
4536        * lisp-kernel/thread_manager.c: Ensure that newly-created threads
4537        have all signals unmasked.
4538       
4539        If a tcr is dead, ensure that its stack areas are empty.
4540       
4541        Try to run shutdown_thread_tcr as a pthread cleanup action,
4542        hopefully before Mach clobbers the thread's signal mask.
4543
45442006-12-14 15:16  gb
4545
4546        * lisp-kernel/pmcl-kernel.c: lazarus() runs with a lock on the
4547        TCR_AREA_LOCK.
4548
45492006-12-14 15:15  gb
4550
4551        * lisp-kernel/memprotect.h: Don't declare do_memo_reset(), which
4552        hasn't existed in years.
4553
45542006-12-14 15:14  gb
4555
4556        * level-1/version.lisp: Bump.
4557
45582006-12-14 15:14  gb
4559
4560        * level-1/l1-readloop.lisp: PREPARE-TO-QUIT: wait for the
4561        termination semaphore.
4562
45632006-12-14 15:13  gb
4564
4565        * level-1/l1-processes.lisp: PROCESS objects are created with a
4566        termination semaphore.
4567
45682006-12-14 15:12  gb
4569
4570        * level-1/l1-lisp-threads.lisp: THREAD-ENABLE: second arg is
4571        TERMINATION-SEMAPHORE.
4572       
4573        KILL-LISP-THREAD: don't use #_pthread_cancel, which may force the
4574        target thread to transition from running lisp code to running
4575        foreign code without advertising that fact. Send a SIGQUIT instead,
4576        and trust the SIGQUIT handler to manage that transition.  Don't try
4577        to kill the initial thread.
4578
45792006-12-09 09:52  gb
4580
4581        * level-1/l1-streams.lisp: STRING-OUTPUT-STREAMs need to override
4582        their CLEAR-OUTPUT methods.
4583       
4584        MAKE-STRING-INPUT-STREAM: handle displaced strings better (remember
4585        their displaced-index-offsets.)
4586
45872006-12-09 09:49  gb
4588
4589        * lisp-kernel/thread_manager.c: Disable underflow traps in new
4590        threads on x86-64.  (The PPC never got around to enabling them.)
4591
45922006-12-09 09:47  gb
4593
4594        * lib/macros.lisp: WITH-OUTPUT-TO-STRING: if string provided,
4595        evaluate the ELEMENT-TYPE expression (for side-effects) and ignore
4596        the result of its evaluation.
4597       
4598        Some fixes in CTYPECASE handling, which hopefully didn't break
4599        anything else.
4600
46012006-12-09 09:36  gb
4602
4603        * compiler/X86/x862.lisp: In aset2/aset3, ensure that the (final,
4604        1d) index register is set - even if the index is a constant - if we
4605        think that the store needs EGC memoization.
4606       
4607        (Note that the test case that exposed this involved storing
4608        SINGLE-FLOATs, which don't need EGC write-barrier handling on
4609        64-bit platforms.)
4610       
4611        In aref2, don't worry about reserving unscaled index registers when
4612        targeting the 1d index; the unscaled index registers aren't live
4613        after, could be NULL if the index is a constant, and any overlap
4614        between one of them and the 1d index should be handled in the
4615        vinsn(s).
4616
46172006-12-09 09:30  gb
4618
4619        * level-1/l1-typesys.lisp: Ensure that the (relatively new)
4620        built-in-classes SIMPLE-FIXNUM-VECTOR and FIXNUM-VECTOR have
4621        class-translations.
4622
46232006-12-09 09:27  gb
4624
4625        * level-1/l1-aprims.lisp: In list case of ELT: who says that value
4626        returned by NTHCDR is a LIST ? (It's not necessarily a list, so
4627        don't segfault taking its CAR without checking.)
4628
46292006-12-06 18:48  gb
4630
4631        * level-0/X86/x86-float.lisp: x86-64 version of
4632        SFLOAT-SIGNIFICAND-ZEROS: count zero bits in the shifted float, not
4633        in %imm1 (which is undefined here ...)
4634
46352006-12-06 17:05  gb
4636
4637        * compiler/nx0.lisp: DEFINE-COMPILER-MACRO: if a SETF name, use the
4638        right symbol for the named block.
4639       
4640        COMPILER-MACRO-FUNCTION, (SETF COMPILER-MACRO-FUNCTION): deal with
4641        (SETF NAME).
4642
46432006-12-05 22:44  gb
4644
4645        * release-notes.txt: Update for 061205.
4646
46472006-12-05 20:31  gb
4648
4649        * lisp-kernel/darwinppc64/Makefile: Change LDFLAGS, to keep ld64
4650        from putting a linkedit segment in the wrong place and making
4651        32-bit memory unmappable.
4652
46532006-12-05 20:30  gb
4654
4655        * level-1/version.lisp: Bump.
4656
46572006-12-05 20:29  gb
4658
4659        * lisp-kernel/pmcl-kernel.c: Use _exit(), just in case.
4660
46612006-12-05 18:53  gb
4662
4663        * level-1/l1-reader.lisp: *ALTERNATE-LINE-TERMINATOR* set to
4664        #\Return on #+darwin-target, not just #+darwinppc-target. Change
4665        doc string for *ALTERNATE-LINE-TERMINATOR*.
4666
46672006-12-04 15:13  gb
4668
4669        * level-1/version.lisp: Append a patchlevel to the version string,
4670        at least until new tarballs can be built.
4671
46722006-12-04 15:12  gb
4673
4674        * level-1/l1-streams.lisp: If stream element type upgrades to
4675        FIXNUM, upgrade it further (to largest supported SIGNED-BYTE
4676        element-type.)
4677
46782006-12-04 13:02  gb
4679
4680        * level-0/l0-bignum32.lisp: BIGNUM-BIGNUM-GCD (whatever it's
4681        called): don't bother to shift by 0 bits.  Do shift the initial U
4682        if non-zero trailing 0 BITS (was testing for non-zero trailing
4683        DIGITS.)
4684
46852006-12-04 12:52  gb
4686
4687        * level-1/l1-streams.lisp: Choke earlier on unsupported stream
4688        element-types; do some upgrading to support some more element types
4689        (BIT -> (UNSIGNED-BYTE 8)).
4690       
4691        Maybe support arbitrarily large integer types someday soon.  Maybe
4692        not.
4693
46942006-12-04 12:48  gb
4695
4696        * level-1/l1-clos-boot.lisp: Make built-in classes for istruct
4697        types (compiler stuff, mostly).
4698
46992006-12-04 12:46  gb
4700
4701        * level-0/X86/X8664/x8664-bignum.lisp: Ensure that %ASHL handles
4702        shift count of 32 (and returns 0 in that case.)
4703
47042006-12-04 12:46  gb
4705
4706        * level-0/l0-bignum64.lisp: In BIGNUM-SHIFT-RIGHT-LOOP-1, use
4707        %ASHL, not %ILSL.  (Don't want nonsense in the high 32 bits, just
4708        in case.)
4709
47102006-12-04 12:43  gb
4711
4712        * level-0/l0-numbers.lisp: Bugs in GCD-2.  Long-standing bugs in
4713        GCD-2 ...
4714
47152006-12-04 09:26  gb
4716
4717        * level-1/l1-streams.lisp: STREAM-CLEAR-INPUT: don't inherit method
4718        for STRING-INPUT-STREAMs.
4719
47202006-12-04 09:24  gb
4721
4722        * level-0/l0-bignum64.lisp: BIGNUM-SHIFT-RIGHT-1: handle shift by 0
4723        bits.  BIGNUM-BIGNUM-GCD (whatever it's called): don't bother to
4724        shift by 0 bits.
4725
47262006-12-04 09:21  gb
4727
4728        * level-1/ppc-trap-support.lisp: Reset error-reentry count before
4729        doing %SLOT-UNBOUND-TRAP.
4730
47312006-12-04 09:21  gb
4732
4733        * level-1/l1-streams.lisp: Default STREAM-POSITION method for
4734        STREAMs, returns NIL.  STREAM-POSITION method for
4735        STRING-INPUT-STREAMs.
4736
47372006-12-04 09:19  gb
4738
4739        * level-1/l1-pathnames.lisp: Derive ccl-directory from pathname
4740        containing heap image.
4741
47422006-12-03 07:41  gb
4743
4744        * level-1/l1-streams.lisp: FORCE-OUTPUT, FINISH-OUTPUT on
4745        STRING-OUTPUT-STREAMs are no-ops.
4746       
4747        Need an ioblock-based character-read-vector function for
4748        string-input-streams.
4749
47502006-12-03 07:37  gb
4751
4752        * lib/describe.lisp: Minimal DESCRIBE support for
4753        CCL::BASIC-STREAM.
4754
47552006-12-03 07:36  gb
4756
4757        * lib/macros.lisp: If :element-type is supplied in
4758        WITH-OUTPUT-TO-STRING, don't quote it.
4759
47602006-12-03 05:11  gb
4761
4762        * level-1/x86-trap-support.lisp: Define RIP-REGISTER-OFFSET, which
4763        isn't necessarily 16.
4764
47652006-12-03 05:10  gb
4766
4767        * level-1/x86-error-signal.lisp: Use RIP-REGISTER-OFFSET, which
4768        isn't necessarily 16.
4769       
4770        Use WITH-ERROR-REENTRY-DETECTION n %xerr-disp; dtrt for
4771        %slot-unbound-trap.
4772
47732006-12-03 05:09  gb
4774
4775        * level-1/l1-streams.lisp: Tweak stream hierarchy a little, to
4776        avoid some NO-NEXT-METHODs.
4777
47782006-12-03 02:42  gb
4779
4780        * compiler/nx1.lisp: Handle VALUES type specifiers in THE forms a
4781        bit better.
4782
47832006-12-03 02:41  gb
4784
4785        * compiler/nx0.lisp: Handle VALUES type specifiers in THE forms a
4786        bit.
4787
47882006-12-03 02:28  gb
4789
4790        * lisp-kernel/x86-spentry64.s: Do vector bounds checking by
4791        clearing the low byte of the header, shifting it right, and
4792        comparing the index to that.  (It's not reliable to shift the index
4793        left.)
4794
47952006-12-03 02:26  gb
4796
4797        * level-1/l1-unicode.lisp: Memory/vector encode functions: don't
4798        write BOM, leave that up to higher-level code.
4799       
4800        Start to write some higher-level code.
4801
48022006-12-03 02:23  gb
4803
4804        * level-1/l1-sysio.lisp: Fix some indentation.
4805
48062006-12-03 02:21  gb
4807
4808        * compiler/X86/X8664/x8664-vinsns.lisp: CHECK-MISC-BOUNDS: shift
4809        the header word right (after clearing its low byte) and compare the
4810        index to that.  (Shifting the index left - d'oh - obviously fails
4811        for indices of large magnitude.)
4812
48132006-11-29 21:07  gb
4814
4815        * lib/db-io.lisp: Indentation change.
4816       
4817        Add CDB-ENUMERATE-KEYS.
4818
48192006-11-29 18:37  gb
4820
4821        * lib/level-2.lisp: %DESTRUCTURE-LAMBDA-LIST: other callers of
4822        VERIFY-LAMBDA-LIST (hopefully) check to see if the alleged list is
4823        LISTP first.  (I hope ...).  Do so.
4824
48252006-11-28 18:42  gb
4826
4827        * lisp-kernel/x86-spentry64.s: Wrong register typo in .SPaset2.
4828
48292006-11-28 16:14  gb
4830
4831        * examples/cocoa-window.lisp: DEFAULT-FONT: retain the font.
4832
48332006-11-28 16:12  gb
4834
4835        * examples/objc-runtime.lisp: Wrap a (primitive)
4836        WITH-AUTORELEASE-POOL around the code which detaches the dummy
4837        NSThread.
4838
48392006-11-28 16:09  gb
4840
4841        * examples/cocoa-listener.lisp: Don't claim that a callback
4842        parameter is ignored; use IGNORABLE instead.
4843
48442006-11-21 01:28  gb
4845
4846        * level-1/l1-sockets.lisp: Typo in PATH-FROM-UNIX-ADDRESS
4847        conditionalization.
4848
48492006-11-21 00:55  gb
4850
4851        * level-1/l1-sockets.lisp: INIT-UNIX-SOCKADDR: don't use
4852        %COPY-IVECTOR-TO-PTR to copy string to foreign memory.
4853       
4854        Basic file-socket streams.
4855
48562006-11-10 05:08  gb
4857
4858        * release-notes.txt: Update.
4859
48602006-11-10 04:28  gb
4861
4862        * lisp-kernel/image.h: Bump min image version.
4863
48642006-11-10 04:19  gb
4865
4866        * xdump/heap-image.lisp: bump current image version.
4867
48682006-11-10 04:19  gb
4869
4870        * lisp-kernel/image.h: bump current, max image version.
4871
48722006-11-10 04:10  gb
4873
4874        * xdump/faslenv.lisp: Bump min fasl version.
4875
48762006-11-10 03:56  gb
4877
4878        * lib/nfcomp.lisp: bump current fasl version.
4879
48802006-11-10 03:47  gb
4881
4882        * lisp-kernel/x86-exceptions.c: save_application: use #__exit, not
4883        #_exit
4884
48852006-11-10 03:46  gb
4886
4887        * compiler/X86/x862.lisp: TYPE typo.
4888
48892006-11-10 03:32  gb
4890
4891        * xdump/faslenv.lisp: Bump max fasl version.
4892
48932006-11-10 03:25  gb
4894
4895        * level-1/version.lisp: Bump.  New snapshots today!
4896
48972006-11-09 16:26  gb
4898
4899        * level-1/l1-readloop.lisp: QUIT uses #__quit.
4900       
4901        PREPARE-TO-QUIT kill stragglers without waiting as long.
4902
49032006-11-09 15:50  gb
4904
4905        * lisp-kernel/pmcl-kernel.c: Use #_ _exit for fatal termination.
4906       
4907        Try to run lisp code after #_exit via lazarus(); this is for some
4908        cases of SAVE-APPLICATION (e.g., in the Cocoa GUI).
4909       
4910        The environment in which The Undead code runs is a little funky,
4911        especially on PPC.  There might be GC implications (cstack will
4912        contain call history as of the point when #_exit called atexit
4913        handlers, vstack & tstack are emptied in lazarus()).  We should
4914        barely run any code in this environment, but we will GC a time or
4915        two ...
4916
49172006-11-09 15:45  gb
4918
4919        * lisp-kernel/ppc-exceptions.c: Use _exit afer save-application.
4920
49212006-11-09 15:43  gb
4922
4923        * examples/: cocoa-window.lisp, cocoa.lisp: Change the quit
4924        protocol.
4925
49262006-11-09 15:42  gb
4927
4928        * examples/cocoa-listener.lisp: :set-document-edited for listener
4929        "documents" is a no-op.
4930
49312006-11-09 15:39  gb
4932
4933        * compiler/PPC/: ppc2.lisp, PPC32/ppc32-vinsns.lisp,
4934        PPC64/ppc64-vinsns.lisp: 3d-array accessor stuff for PPC as well.
4935
49362006-11-09 12:50  gb
4937
4938        * compiler/X86/x862.lisp: Always check that array-ctype's
4939        dimensions are a list before taking their length.
4940
49412006-11-09 12:13  gb
4942
4943        * compiler/X86/X8664/x8664-vinsns.lisp: 3d-unscaled-index does the
4944        right thing ...
4945
49462006-11-09 10:08  gb
4947
4948        * compiler/: nx1.lisp, X86/x862.lisp, X86/X8664/x8664-vinsns.lisp:
4949        Three-arg aref/(setf aref) for x8664.
4950
49512006-11-09 05:37  gb
4952
4953        * compiler/nx0.lisp: Map array-type keywords to 3d-array type
4954        errors.
4955
49562006-11-09 05:37  gb
4957
4958        * compiler/nxenv.lisp: Operators for 3d array access.
4959
49602006-11-09 05:36  gb
4961
4962        * compiler/arch.lisp, level-1/l1-error-system.lisp,
4963        lisp-kernel/errors.s, lisp-kernel/lisp-errors.h: Type-errors for 3d
4964        array types.
4965
49662006-11-08 12:50  gb
4967
4968        * level-1/x86-trap-support.lisp: In darwin Fake Structures For
4969        Leopard nonsense: define the stack context struct separately, make
4970        the ucontext stack field an instance of it.  (Not -sure- if that
4971        was necessary, but :poweropen-target was accidentally on *FEATURES*
4972        and foreign struct layout was using read-time condtionalization to
4973        decide whether or not to use brain-dead structure-alignment rules
4974        leftover from AIX/PowerOpen.
4975
49762006-11-08 12:46  gb
4977
4978        * lisp-kernel/x86-spentry64.s: Fix comment ("/*", not "/%" ...).
4979
49802006-11-08 12:40  gb
4981
4982        * compiler/optimizers.lisp: Try to infer/insert the array type when
4983        compiler-macroexpanding MAKE-ARRAY calls.
4984
49852006-11-08 12:39  gb
4986
4987        * compiler/PPC/PPC32/ppc32-backend.lisp: DarwinPPC32 FTD follows
4988        :poweropen-alignment rules.
4989
49902006-11-08 12:38  gb
4991
4992        * lib/foreign-types.lisp: parse-foreign-record-fields: conformance
4993        to poweropen structure layout rules should be an attribute of the
4994        FTD, not done via read-time conditionalization.
4995
49962006-11-08 05:15  gb
4997
4998        * level-1/version.lisp: Bump.
4999
50002006-11-08 05:15  gb
5001
5002        * level-1/l1-streams.lisp: Some bivalent/binary fixes.
5003       
5004        TODO: get rid of "bivalent" streams, but allow switching some
5005        streams (sockets) between "character mode" and "binary mode".
5006
50072006-11-08 02:39  gb
5008
5009        * compiler/PPC/ppc2.lisp: Typo in misc-ref-u64 vinsn emit.
5010
50112006-11-07 21:10  gb
5012
5013        * compiler/optimizers.lisp: Transform three-argument AREF->%AREF3,
5014        ASET->%ASET3.
5015
50162006-11-07 20:40  gb
5017
5018        * compiler/X86/x862.lisp: Implement %aset2 in the x8664 backend.
5019
50202006-11-07 20:39  gb
5021
5022        * level-0/X86/x86-array.lisp: %aref3, %aset3.
5023
50242006-11-07 20:38  gb
5025
5026        * level-0/l0-array.lisp: Use %aref2,%aref3.
5027
50282006-11-07 20:37  gb
5029
5030        * compiler/X86/X8664/x8664-vinsns.lisp: More (often redundant)
5031        vector-store vinsns.
5032
50332006-11-07 20:37  gb
5034
5035        * compiler/X86/X8664/x8664-arch.lisp: .SParef3, .SPaset3.
5036
50372006-11-07 10:28  gb
5038
5039        * lisp-kernel/: x86-spentry64.s, x86-spjump64.s: .SParef3,
5040        .SPaset3.
5041
50422006-11-07 10:27  gb
5043
5044        * level-0/PPC/ppc-array.lisp: %ref3, %aset3.
5045
50462006-11-07 10:26  gb
5047
5048        * lisp-kernel/ppc-spentry.s, lisp-kernel/ppc-spjump.s,
5049        compiler/PPC/ppc-arch.lisp: .SPref3, .SPaset3.
5050
50512006-11-07 10:26  gb
5052
5053        * lisp-kernel/ppc-macros.s: Define mullr, which expands into one of
5054        mullw/mulld.
5055
50562006-11-07 04:12  gb
5057
5058        * compiler/PPC/ppc2.lisp: :signed-64-bit-vector is signed ...
5059
50602006-11-06 22:07  gb
5061
5062        * compiler/nx0.lisp: nx-error-for-simple-2d-array-type: forgot the
5063        :fixnum-vector case.
5064
50652006-11-06 22:04  gb
5066
5067        * compiler/PPC/ppc2.lisp: Handle vector assignment differently;
5068        handle (setf (aref ...)) of simple 2d-arrays inline if the type is
5069        known/declared.
5070
50712006-11-06 22:02  gb
5072
5073        * compiler/PPC/: PPC32/ppc32-vinsns.lisp, PPC64/ppc64-vinsns.lisp:
5074        Add vinsns for misc-set-s* and variants. (Identical to the unsigned
5075        versions, but it helps not to have to remember which are
5076        implemented and which aren't.)
5077
50782006-11-06 22:01  gb
5079
5080        * compiler/nxenv.lisp: general-aset2, simple-typed-aset2.
5081
50822006-11-06 22:00  gb
5083
5084        * compiler/nx1.lisp: New %ASET2 handling.
5085
50862006-11-06 21:59  gb
5087
5088        * compiler/nx0.lisp: ACODE-FORM-TYPE: use var-inittype if var is
5089        never assigned to.
5090
50912006-11-05 22:09  gb
5092
5093        * level-1/x86-trap-support.lisp: Try to work around
5094        incompatibilites in Tiger/Leopard headers.
5095
50962006-11-05 22:08  gb
5097
5098        * level-1/l1-sockets.lisp: LOOKUP-PORT: use the macro HTONS, since
5099        the foreign function may not exist.
5100
51012006-11-05 20:41  gb
5102
5103        * compiler/X86/x862.lisp: 2d array error lookup -> nx.
5104
51052006-11-05 07:55  gb
5106
5107        * level-0/X86/x86-misc.lisp: %VALID-REMAINING-TIMESPEC-TIME-P for
5108        x86-64, as well.
5109
51102006-11-05 07:52  gb
5111
5112        * level-0/X86/x86-array.lisp: %AREF2, %ASET2 in x8664 lap.
5113
51142006-11-05 07:50  gb
5115
5116        * lisp-kernel/x86-spentry64.s: pre-add displacement in .SParef2,
5117        .SPaset2.
5118
51192006-11-05 07:48  gb
5120
5121        * lisp-kernel/ppc-spentry.s: .SParef2, .SPaset2: since we aren't
5122        testing simple-array-ness, add the (possibly 0) displacement from
5123        the header before handling the simple aref of the data vector.
5124
51252006-11-05 07:47  gb
5126
5127        * lib/foreign-types.lisp: PRINT-OBJECT method for EEPS: handle
5128        pointers on PPC(64), print 64-bit addresses on 64-bit platforms.
5129
51302006-11-05 07:46  gb
5131
5132        * level-1/version.lisp: Bump; new binaries soon.
5133
51342006-11-05 07:46  gb
5135
5136        * level-1/l1-lisp-threads.lisp: %NANOSLEEP calls
5137        %VALID-REMAINING-TIMESPEC-TIME-P, which is better than sleeping for
5138        4G seconds after an EINTR on Leopard.
5139
51402006-11-05 07:44  gb
5141
5142        * level-0/PPC/PPC64/ppc64-bignum.lisp: MACPTR->FIXNUM returns NIL
5143        if any non-fixnum bits would be set in the result.  (Should
5144        probably make this true on all platforms; for PPC64, it's important
5145        for foreign function addresses that're ... suboptimally aligned.)
5146
51472006-11-05 07:42  gb
5148
5149        * level-0/PPC/ppc-misc.lisp: Try to detect the case where
5150        %NANOSLEEP's second (by reference) argument contains garbage after
5151        an EINTR.  (The L word, again.)
5152
51532006-11-05 07:41  gb
5154
5155        * level-0/PPC/ppc-array.lisp: %AREF2, %ASET2: in LAP, just call
5156        into the kernel.
5157
51582006-11-05 07:40  gb
5159
5160        * level-0/l0-cfm-support.lisp: Some platforms (the L-word) generate
5161        ppc64 functions whose addresses are not 0 mod 8, so (a) make
5162        MACPTR->FIXNUM return NIL if an address isn't representable as a
5163        fixnum and (b) make FOREIGN-SYMBOL-ENTRY return an address if it
5164        can't return a fixnum on PPC (really just affects PPC64.)
5165
51662006-11-05 07:37  gb
5167
5168        * level-0/l0-array.lisp: %aref2, %aset2: call into kernel.
5169
51702006-11-05 07:36  gb
5171
5172        * compiler/PPC/: PPC32/ppc32-vinsns.lisp, PPC64/ppc64-vinsns.lisp:
5173        2d aref support/changes.
5174
51752006-11-05 07:36  gb
5176
5177        * compiler/PPC/ppc2.lisp: Get the PPC2 backend caught up with the
5178        x8664 wrt 2d aref.  Stll a ways to go.
5179
51802006-11-05 07:35  gb
5181
5182        * compiler/nx0.lisp: NX-ERROR-FOR-SIMPLE-2D-ARRAY-TYPE.
5183
51842006-11-04 00:05  gb
5185
5186        * level-1/version.lisp: Bump.
5187
51882006-11-03 23:10  gb
5189
5190        * level-1/ppc-error-signal.lisp: fix parens.
5191
51922006-11-03 23:09  gb
5193
5194        * compiler/PPC/: PPC32/ppc32-arch.lisp, PPC64/ppc64-arch.lisp: arch
5195        gvector types contains :struct, not :structure.
5196
51972006-11-03 23:08  gb
5198
5199        * compiler/PPC/ppc2.lisp: aref2: new operator name(s), always call
5200        subprim.
5201       
5202        ppc2-fixed-call-builtin: (tail-)call subprims even if they aren't
5203        in the builtin functions table.
5204
52052006-11-03 15:19  gb
5206
5207        * compiler/PPC/ppc-arch.lisp: New .SParef2, .SPaset2 subprims.
5208
52092006-11-03 15:18  gb
5210
5211        * compiler/PPC/ppc-asm.lisp: Comments/indentation.
5212
52132006-11-03 15:17  gb
5214
5215        * level-1/ppc-error-signal.lisp: Change decoding/handlng of
5216        type-error UUOs.
5217
52182006-11-03 15:16  gb
5219
5220        * lisp-kernel/: ppc-spentry.s, ppc-spjump.s: .SParef2, .SPaset2.
5221
52222006-11-03 15:16  gb
5223
5224        * lisp-kernel/: ppc-constants32.s, ppc-constants64.s: Define arrayH
5225        (array-header) layout.
5226
52272006-11-03 13:46  gb
5228
5229        * level-1/l1-clos-boot.lisp: CANONICALIZE-SPECIALIZERS optionally
5230        returns its argument if all members are SPECIALIZERS.
5231       
5232        Use CANONICALIZE-SPECIALIZERS to canonicalize FIND-METHOD
5233        arguments, for the benefit of people who haven't read the MOP spec
5234        or who don't realize that the MOP defines some things differently
5235        from CLHS.
5236
52372006-11-03 13:38  gb
5238
5239        * compiler/X86/x862.lisp: Consistently use :struct (not :structure)
5240        to refer to primitive structure type.
5241       
5242        Fix array-ctype-dimensions check in %aref1, add it to %aset1.
5243
52442006-11-03 13:37  gb
5245
5246        * compiler/X86/X8664/x8664-arch.lisp: Ensure that :STRUCT (not
5247        :STRUCTURE) is on target-gvector-types.
5248
52492006-11-03 12:53  gb
5250
5251        * lisp-kernel/x86-uuo.s: uuo_error_array_bounds, such as it is.
5252
52532006-11-03 12:52  gb
5254
5255        * lisp-kernel/: x86-spentry64.s, x86-spjump64.s: SParef2, .SPaset2.
5256         More to come ...
5257
52582006-11-03 12:52  gb
5259
5260        * lisp-kernel/x86-constants64.s: Define array-header layout.
5261
52622006-11-03 12:51  gb
5263
5264        * lisp-kernel/: errors.s, lisp-errors.h: New type-error uuo
5265        encodings, new type-error constants.
5266
52672006-11-03 12:50  gb
5268
5269        * level-1/x86-error-signal.lisp: New range/encoding of type-error
5270        traps.
5271
52722006-11-03 12:49  gb
5273
5274        * level-1/l1-utils.lisp: (temporary) mechanism to avoid
5275        constant-redefinition CERRORs.
5276
52772006-11-03 12:48  gb
5278
5279        * level-1/l1-error-system.lisp: New %type-error-typespecs%.
5280
52812006-11-03 12:47  gb
5282
5283        * level-0/l0-pred.lisp: array--header -> array-header.
5284
52852006-11-03 12:47  gb
5286
5287        * compiler/X86/X8664/x8664-vinsns.lisp: Fix misc-set-c-u64 braino;
5288        add/change some 2d array stuff.
5289
52902006-11-03 12:43  gb
5291
5292        * compiler/X86/X8664/x8664-arch.lisp: Define .SParef2/.SPaset2
5293        subprims; seem to be much (>5x) faster than the lisp/lap versions
5294        (though we can generally be faster still when we know the
5295        element-type and/or know whether the array is simple or explicitly
5296        displaced.)
5297
52982006-11-03 12:41  gb
5299
5300        * compiler/X86/x862.lisp: Change handling of 2d-aref; lots of
5301        related changes.
5302       
5303        Split the code which handles bounds/type-checking in vref out from
5304        the code which actually does the reference, so that the latter can
5305        be used in multidimensional cases.
5306       
5307        Need to do this on PPC as well; need to do more (%aset2, 3d cases,
5308        general case.)
5309
53102006-11-03 12:38  gb
5311
5312        * compiler/nx1.lisp: Change handling of 2d-aref.
5313
53142006-11-03 12:37  gb
5315
5316        * compiler/nxenv.lisp: aref2 -> simple-typed-aref2, add
5317        general-aref2.  More changes to come (and this may affect
5318        compilation on PPC until some PPC compiler changes are
5319        made/checked-in.)
5320
53212006-11-03 12:35  gb
5322
5323        * compiler/arch.lisp: type-errors (as encoded in UUOs) are now in
5324        the range 128-255, rather than 64-127; more are defined.
5325
53262006-11-02 09:43  gb
5327
5328        * level-1/l1-error-system.lisp: Move along, nothing to see here.
5329
53302006-11-02 09:37  gb
5331
5332        * compiler/arch.lisp: New error constants; work in progress ...
5333
53342006-11-01 11:40  gb
5335
5336        * lisp-kernel/errors.s: Some new constants; more to check in later.
5337
53382006-10-31 03:39  gb
5339
5340        * level-0/l0-io.lisp: You must be reading the OLD rule book
5341        (Leopard and #$EINTR).
5342
53432006-10-31 03:21  gb
5344
5345        * lisp-kernel/ppc-exceptions.c: handle_protection_violation: pass
5346        the tcr.  Initialize "addr" before testing it ...
5347
53482006-10-31 03:21  gb
5349
5350        * lisp-kernel/lisp-exceptions.h: handle_protection_violation: pass
5351        the tcr.
5352
53532006-10-30 20:40  gb
5354
5355        * lib/defstruct.lisp: DEFSTRUCT-REF-TRANSFORM for typed vector
5356        expands into something more useful.
5357
53582006-10-30 20:39  gb
5359
5360        * lisp-kernel/ppc-spentry.s: Fix ppc32
5361        misc_ref_double_float_vector.
5362
53632006-10-30 00:24  gb
5364
5365        * level-0/l0-bignum64.lisp: Enable the destructive version of
5366        %BIGNUM-BIGNUM-GCD; conditionalize it for 64-bit targets and
5367        provide/fix supporting functions.  Seems to work on ppc64; needs
5368        testing on x8664.
5369
53702006-10-27 17:49  gb
5371
5372        * darwin-x86-headers64/libc/C/: .cvsignore, populate.sh: New file.
5373
53742006-10-25 20:36  gb
5375
5376        * level-1/l1-streams.lisp: %BIVALENT-IOBLOCK-READ-U8-BYTE (and
5377        variants): always clear the untyi-char.
5378       
5379        %ENCODED-IOBLOCK-PEEK-CHAR: the read-char-when-locked function
5380        needs an argument.
5381       
5382        SETUP-IOBLOCK-OUTPUT: there are no special output functions for
5383        bivalent streams.
5384       
5385        %IOBLOCK-BINARY-READ-VECTOR: clear any untyi char.
5386
53872006-10-24 12:35  gb
5388
5389        * level-1/version.lisp: Bump.
5390
53912006-10-24 01:29  gb
5392
5393        * lisp-kernel/x86-spentry64.s: Fix :ALLOW-OTHER-KEYS check in
5394        _SPdestbind1 (still used in inlining, sometimes.)
5395
53962006-10-24 01:05  gb
5397
5398        * release-notes.txt: Change the date, add/change some content.
5399
54002006-10-24 01:05  gb
5401
5402        * lib/macros.lisp: Reference the (bound) STREAM-VAR argument - not
5403        STREAM - in the expansion of WITH-OUTPUT-TO-STRING.
5404
54052006-10-24 00:56  gb
5406
5407        * lib/ccl-export-syms.lisp: Reference the (bound) STREAM-VAR
5408        argument - not STREAM - in the expansion of WITH-OUTPUT-TO-STRING.
5409
54102006-10-24 00:55  gb
5411
5412        * level-1/l1-streams.lisp: When recycling
5413        string-output-stream-ioblocks, set the IOBLOCK-CHARPOS to 0.
5414        (Failure to do this can screw up the pretty-printer, among other
5415        things.)
5416
54172006-10-24 00:52  gb
5418
5419        * level-1/l1-sockets.lisp: DEFAULT-CHARACTER-ENCODING for :SOCKET,
5420        *DEFAULT-SOCKET-CHARACTER-ENCODING*.
5421
54222006-10-23 17:03  gb
5423
5424        * release-notes.txt: Updated; almost ready to go (still a
5425        WITH-OUTPUT-TO-STRING/PPRINT (?) bug).
5426
54272006-10-23 16:43  gb
5428
5429        * level-1/l1-sysio.lisp: NORMALIZE-EXTERNAL-FORMAT: use
5430        *DEFAULT-EXTERNAL-FORMAT* value for :DEFAULT.
5431
54322006-10-23 16:42  gb
5433
5434        * level-1/l1-streams.lisp: Use NORMALIZE-EXTERNAL-FORMAT in (SETF
5435        STREAM-EXTERNAL-FORMAT) methods.
5436
54372006-10-23 16:41  gb
5438
5439        * lib/ccl-export-syms.lisp: Export some unicode/external-format
5440        stuff.
5441
54422006-10-23 08:27  gb
5443
5444        * level-1/version.lisp: Bump; binaries today, honest.
5445
54462006-10-23 08:27  gb
5447
5448        * level-1/l1-streams.lisp: freelist string-output-stream-ioblocks.
5449
54502006-10-23 08:26  gb
5451
5452        * lib/macros.lisp: Some/most/all of the WITH-IOBLOCK-OUTPUT-LOCKED
5453        macros were checking for the presence of an input lock ...
5454
54552006-10-23 05:40  gb
5456
5457        * level-1/l1-streams.lisp: Optimize write-string on string streams
5458        a little.
5459
54602006-10-23 05:26  gb
5461
5462        * lib/macros.lisp: WITH-OUTPUT-TO-STRING: don't expand into code
5463        which evaluates the string form twice; don't do whatever was being
5464        done to default the element type of the string stream.
5465
54662006-10-23 05:24  gb
5467
5468        * compiler/optimizers.lisp: MAKE-STRING-OUTPUT-STREAM: skip some
5469        keyword/subtype checking if element-type not provided.  (Could also
5470        skip it if it's explicit and obviously OK.)
5471
54722006-10-23 05:22  gb
5473
5474        * level-0/X86/x86-misc.lisp: %HEAP-BYTES-ALLOCATED: don't add
5475        "current" allocation if nothing's reserved.
5476
54772006-10-23 05:19  gb
5478
5479        * lisp-kernel/x86-exceptions.c: In handle_alloc_trap(), fix call to
5480        update_bytes_allocated (sign of "disp").
5481
54822006-10-22 08:02  gb
5483
5484        * compiler/PPC/ppc2.lisp: MULTIPLE-VALUE-PROG1: treat the first
5485        form like a PROGN if there are no other forms.
5486
54872006-10-22 08:01  gb
5488
5489        * level-1/l1-streams.lisp: Don't disable interrupts when calling
5490        ioblock functions.
5491       
5492        New string-stream implementation.  Better ...
5493
54942006-10-22 07:59  gb
5495
5496        * lib/macros.lisp: If WITH-OUTPUT-TO-STRING gets the string, do so
5497        before the stream closes.
5498
54992006-10-22 07:59  gb
5500
5501        * lib/pprint.lisp: Don't assume that string output stream strings
5502        have a fill-pointer; use STREAM-POSITION instead.
5503
55042006-10-22 07:57  gb
5505
5506        * lib/streams.lisp: Don't disable interrupts when calling ioblock
5507        functions, after all.
5508       
5509        Go through (new) ioblock-unread-char-function.
5510
55112006-10-22 07:55  gb
5512
5513        * lisp-kernel/darwinppc/.gdbinit: Stop trying to print strings via
5514        x/s
5515
55162006-10-21 18:46  gb
5517
5518        * level-1/l1-streams.lisp: Typo.
5519
55202006-10-21 18:41  gb
5521
5522        * lisp-kernel/x86-exceptions.c: Initialize (zero, usually) more
5523        fields in pseudo sigcontexts.
5524
55252006-10-21 18:40  gb
5526
5527        * level-1/l1-streams.lisp: Mostly locking changes (don't lock
5528        twice, etc.)
5529
55302006-10-21 18:35  gb
5531
5532        * level-0/l0-array.lisp, level-0/l0-init.lisp,
5533        level-0/l0-pred.lisp, level-0/l0-utils.lisp,
5534        level-0/PPC/ppc-array.lisp, level-0/PPC/ppc-symbol.lisp,
5535        level-0/X86/x86-symbol.lisp, level-1/l1-aprims.lisp,
5536        lib/sequences.lisp: Remove vestival #+target-8-bit-chars stuff.
5537
55382006-10-21 16:45  gb
5539
5540        * level-1/l1-unicode.lisp: New! Improved! Now with more iso-8859
5541        encodings!
5542
55432006-10-19 13:48  gb
5544
5545        * level-0/PPC/ppc-misc.lisp: Reference the source argument - not
5546        arg_z - in %safe-get-ptr.
5547
55482006-10-19 13:22  gb
5549
5550        * level-0/l0-aprims.lisp: %CSTR-POINTER: make #\Nul termination
5551        optional, use #\Sub char-code as replaement char.
5552
55532006-10-19 13:21  gb
5554
5555        * examples/objc-runtime.lisp: Missing close paren.
5556
55572006-10-19 13:19  gb
5558
5559        * examples/: cocoa-editor.lisp, cocoa-listener.lisp: Careful BLTing
5560        strings to/from foreign memory.
5561
55622006-10-19 13:18  gb
5563
5564        * compiler/PPC/PPC32/ppc32-vinsns.lisp: Typos in UNBOX-S8.
5565
55662006-10-18 08:04  gb
5567
5568        * level-1/version.lisp: Bump.  Binaries later today ?
5569
55702006-10-18 07:38  gb
5571
5572        * level-1/l1-clos-boot.lisp: The post-bootstrapping version of
5573        (SETF FIND-CLASS) only introduces (or removes) a type name if the
5574        class becomes (or ceases to be) a properly named class.
5575       
5576        The pre-bootstrapping version handles simpler cases of that; use
5577        ALIAS-CLASS to register some early class names as type names.
5578
55792006-10-18 07:36  gb
5580
5581        * level-1/l1-clos.lisp: (SETF CLASS-NAME) can affect the type
5582        system, since only symbols which name properly-named classes are
5583        type specifiers.  Changing the name of a class can either introduce
5584        or remove a properly-named class.
5585       
5586        Classes that have the kernel-p attribute shouldn't have their names
5587        changed casually.
5588
55892006-10-18 07:33  gb
5590
5591        * level-1/l1-sockets.lisp: Accept an :EXTERNAL-FORMAT argument to
5592        MAKE-SOCKET, pass it down to whatever function actually creates a
5593        stream socket.
5594
55952006-10-18 02:12  gb
5596
5597        * compiler/X86/x862.lisp: Allow closed-over addresses in
5598        conditional-form, NOT.
5599
56002006-10-18 01:43  gb
5601
5602        * lisp-kernel/x86-exceptions.c: handle_fault() checks for
5603        safe_ref_addres.
5604
56052006-10-18 01:43  gb
5606
5607        * level-0/X86/x86-misc.lisp: %safe-get-ptr for x8664.
5608
56092006-10-18 01:41  gb
5610
5611        * compiler/X86/X8664/x8664-vinsns.lisp: Compare stack
5612        addresses/vcells to nil.
5613
56142006-10-18 01:41  gb
5615
5616        * compiler/X86/x862.lisp: Stuff for comparing memory (stack)
5617        addresses to NIL.
5618       
5619        Mark arg_z and rcx/nargs as being in use when restoring interrupt
5620        level inline.
5621
56222006-10-18 01:39  gb
5623
5624        * compiler/X86/x86-disassemble.lisp: We've had UUO-ERROR-UNBOUND
5625        for a few months now.  The disassembler is always the last to know.
5626
56272006-10-17 19:15  gb
5628
5629        * compiler/PPC/PPC32/ppc32-arch.lisp,
5630        compiler/PPC/PPC64/ppc64-arch.lisp,
5631        compiler/X86/X8664/x8664-arch.lisp, examples/objc-runtime.lisp,
5632        level-0/l0-misc.lisp, level-0/PPC/ppc-misc.lisp,
5633        lisp-kernel/ppc-constants32.h, lisp-kernel/ppc-constants32.s,
5634        lisp-kernel/ppc-constants64.h, lisp-kernel/ppc-constants64.s,
5635        lisp-kernel/ppc-exceptions.c, lisp-kernel/x86-constants64.h,
5636        lisp-kernel/x86-constants64.s: add safe-ref-address to tcr.
5637       
5638        Handle memory faults to safe-ref-addres on PPC (so far).
5639       
5640        Try using SAFE-GET-PTR in objc runtime (untested).
5641
56422006-10-17 17:34  gb
5643
5644        * compiler/PPC/ppc2.lisp: ppc backend %aref1/%aset1: notice array
5645        type in acode.
5646
56472006-10-17 14:02  gb
5648
5649        * level-1/l1-unicode.lisp: BOM-ENCODING.
5650
56512006-10-17 14:02  gb
5652
5653        * level-1/l1-sysio.lisp: FILE-STRING-LENGTH actually does
5654        something.
5655       
5656        Clear the pending-bom flag when seeking.
5657
56582006-10-17 14:01  gb
5659
5660        * level-1/l1-streams.lisp: (SETF STREAM-EXTERNAL-FORMAT) for
5661        ioblock-based character streams.
5662
56632006-10-17 13:45  gb
5664
5665        * compiler/X86/: x862.lisp, X8664/x8664-vinsns.lisp: bind/unbind
5666        *interrupt-level* inline.
5667
56682006-10-17 13:44  gb
5669
5670        * compiler/X86/x86-disassemble.lisp: Act like ud2a takes a one-byte
5671        immmediate operand (xuuo).
5672
56732006-10-17 13:39  gb
5674
5675        * level-1/l1-streams.lisp, lib/streams.lisp: Disable interrupts
5676        when necessary.
5677
56782006-10-17 13:39  gb
5679
5680        * compiler/PPC/: ppc2.lisp, PPC32/ppc32-vinsns.lisp,
5681        PPC64/ppc64-vinsns.lisp: bind/unbind *interrupt-level* inline.
5682
56832006-10-15 17:51  gb
5684
5685        * level-1/l1-streams.lisp: Handle 32-bit character encodings.
5686       
5687        Start to extend STREAM-EXTERNAL-FORMAT, start to make it SETFable.
5688
56892006-10-15 17:51  gb
5690
5691        * level-1/l1-unicode.lisp: utf-32/ucs-4 and variants.
5692
56932006-10-15 17:50  gb
5694
5695        * level-1/l1-sysio.lisp: EXTERNAL-FORMATs are immutable, interned.
5696
56972006-10-14 07:41  gb
5698
5699        * compiler/PPC/ppc2.lisp: Fix use of ^,<- vinsn macros inside
5700        ENSURING-NODE-TARGET.
5701       
5702        Inline the fixnum case of two-arg numeric comparisons.
5703
57042006-10-14 07:39  gb
5705
5706        * compiler/PPC/: PPC32/ppc32-vinsns.lisp, PPC64/ppc64-vinsns.lisp:
5707        INLINE-SUB2 support.
5708
57092006-10-14 06:30  gb
5710
5711        * lib/defstruct.lisp: Don't (DECLARE (OPTIMIZE (SAFETY 3))) in
5712        generated DEFSTRUCT accessors.
5713
57142006-10-14 06:27  gb
5715
5716        * compiler/X86/x862.lisp: Fix many cases of ENSURING-NODE-TARGET.
5717       
5718        Do the fixnum case of two-argument subtraction inline.
5719       
5720        Inline the fixnum case of two-argument numeric comparisons.
5721       
5722        STRUCT-REF avoids typechecking when reckless.
5723
57242006-10-14 06:21  gb
5725
5726        * compiler/backend.lisp: It makes no sense to use the vinsn macros
5727        <- and ^ inside ENSURING-NODE-TARGET, so make it check for that.
5728
57292006-10-14 06:20  gb
5730
5731        * compiler/X86/X8664/x8664-vinsns.lisp: Do vector bounds-checking a
5732        little differently.
5733       
5734        Add xchg-registers.
5735
57362006-10-13 04:54  gb
5737
5738        * compiler/nx1.lisp: Use new NUMCMP operator.
5739
57402006-10-13 04:53  gb
5741
5742        * compiler/nx0.lisp: Change inline expansion: use optimize settings
5743        in effect at call time, not those in effect at definition time.
5744
57452006-10-13 04:50  gb
5746
5747        * level-0/l0-numbers.lisp: Change >=-2, <=-2, /=-2 to avoid
5748        inlining issues.
5749
57502006-10-13 04:30  gb
5751
5752        * compiler/nxenv.lisp: Replace unused num= with numcmp.
5753
57542006-10-12 19:46  gb
5755
5756        * lisp-kernel/pmcl-kernel.c: Terminate argument processing when
5757        "--" is seen.
5758
57592006-10-12 19:45  gb
5760
5761        * level-1/: l1-streams.lisp, l1-sysio.lisp, l1-unicode.lisp: Handle
5762        newline translation differenly (at the character I/O level, not the
5763        buffer level).
5764       
5765        All character encoding/decoding functions operate on octets, not
5766        necessarily code units.  (The stream encode/decode functions are an
5767        exception; serialization and byte ordering are handled by the
5768        stream.)
5769
57702006-10-09 16:34  gb
5771
5772        * level-1/l1-streams.lisp: Write  #\Sub's char-code if we can't
5773        encode a character in (implicit) iso-8859-1.
5774
57752006-10-09 16:33  gb
5776
5777        * level-0/l0-misc.lisp: %COPY-STRING-TO-U8: use #\Sub (ascii 26) as
5778        a replacement character.
5779
57802006-10-09 16:31  gb
5781
5782        * level-1/l1-unicode.lisp: :stream-encode/decode functions always
5783        write/read something, even if it's a replacement character of some
5784        sort.
5785
57862006-10-09 15:19  gb
5787
5788        * level-1/l1-streams.lisp: More stuff about line termination.  When
5789        will this end ?
5790
57912006-10-09 15:19  gb
5792
5793        * lib/chars.lisp: Use a hashtable to map characters to their names.
5794         (Maybe a sparse vector ?).
5795
57962006-10-09 15:18  gb
5797
5798        * level-1/l1-reader.lisp: Use a hashtable to map characters to
5799        their names.  (Maybe a sparse vector ?).
5800       
5801        Define #\Sub and #\Replacement_Character.
5802
58032006-10-08 21:17  gb
5804
5805        * level-1/l1-readloop-lds.lisp: SELECT-BACKTRACE: it's been all
5806        NEW-BACKTRACE for a while now.
5807
58082006-10-08 21:16  gb
5809
5810        * lisp-kernel/lisptypes.h: Need to #include <sys/signal.h> to keep
5811        Panther happy.
5812
58132006-10-08 20:30  gb
5814
5815        * lisp-kernel/x86_print.c: Print hex with leading #x, not #0x ...
5816
58172006-10-08 20:30  gb
5818
5819        * lib/dumplisp.lisp: Do some sanity checks on SAVE-APPLICATION
5820        pathname, before it's too late ...
5821
58222006-10-08 20:29  gb
5823
5824        * level-1/l1-unicode.lisp: ASCII, some other changes.
5825
58262006-10-08 20:29  gb
5827
5828        * level-1/l1-sysio.lisp: Rearrange a few things; pass
5829        :line-termination option to MAKE-FD-STREAM.
5830
58312006-10-08 20:28  gb
5832
5833        * level-1/l1-streams.lisp: Yet another line-termination translation
5834        scheme; hopefully, the last for a while. (More tedium before it's
5835        actually installed.)
5836
58372006-10-08 20:27  gb
5838
5839        * level-1/l1-reader.lisp: Add character names for #\Line_Separator,
5840        #\Paragraph_separator.
5841
58422006-10-07 20:35  gb
5843
5844        * level-1/l1-init.lisp: *TERMINAL-CHARACTER-ENCODING-NAME*.
5845
58462006-10-07 20:34  gb
5847
5848        * level-1/l1-error-signal.lisp: In %ERROR, go straight to the
5849        kernel debugger if interactive streams aren't initialized yet.
5850        (We'd probably get there sooner or later in that case; try to get
5851        there sooner.)
5852
58532006-10-07 20:33  gb
5854
5855        * level-1/l1-boot-2.lisp: Don't initialize interactive streams via
5856        DEF-LOAD-POINTERS.  Wrap that up in a function, and set a flag when
5857        the function's called (from APPLICATION's TOPLEVEL-FUNCTION
5858        method.)
5859
58602006-10-07 20:32  gb
5861
5862        * level-1/l1-application.lisp: Handle the (new)
5863        -K/--terminal-encoding command-line argument.
5864
58652006-10-07 11:14  gb
5866
5867        * level-1/l1-streams.lisp: INPUT-STREAM-P, OUTPUT-STREAM-P are true
5868        of instances if INPUT-STREAM/ OUTPUT-STREAM, respectively (not just
5869        instances of FUNDAMENTAL-INPUT/OUTPUT-STREAM).
5870
58712006-10-07 11:13  gb
5872
5873        * lisp-kernel/lisp-debug.c: Do abort() if kernel debugger is
5874        entered when --batch is in effect.
5875
58762006-10-07 11:12  gb
5877
5878        * level-1/l1-readloop.lisp: QUIT: flush *STDOUT* in
5879        PROCESS-EXIT-APPLICATION.
5880
58812006-10-07 11:11  gb
5882
5883        * level-1/l1-processes.lisp: PROCESS-EXIT-APPLICATION: flush
5884        *stdout* here.
5885
58862006-10-06 04:49  gb
5887
5888        * level-1/l1-streams.lisp: CODE-UNIT, not CODE-ELEMENT.  Add a
5889        TRANSLATE slot to IO-BUFFER.
5890
58912006-10-06 04:40  gb
5892
5893        * level-1/l1-sockets.lisp: basic (vs fundamental) socket streams.
5894
58952006-10-06 04:39  gb
5896
5897        * level-1/l1-sysio.lisp: Real, live EXTERNAL-FORMAT structures.
5898
58992006-10-06 04:38  gb
5900
5901        * level-1/version.lisp: Bump.
5902
59032006-10-06 04:38  gb
5904
5905        * level-0/l0-misc.lisp: %COPY-STRING-TO-U8: use #\? as a
5906        replacement character.
5907
59082006-10-05 14:46  gb
5909
5910        * lisp-kernel/lisptypes.h: More register name aliases.  FMH.
5911
59122006-10-05 14:46  gb
5913
5914        * lisp-kernel/x86-asmutils64.s: get_mxcsr, set_mxcsr.
5915
59162006-10-05 14:46  gb
5917
5918        * lisp-kernel/x86-exceptions.c: Save the mxcsr, load it with a
5919        C-like value (all exceptions masked) before doing a callback.  (Not
5920        doing this meant that tcr.foreign_mxcsr was often set to a "lispy"
5921        value, where most exceptions were unmasked, and this caused FP
5922        exceptions when calling out to foreign code with the "lispy"
5923        tcr.foreign_mxcsr in effect.)
5924       
5925        Mach exception stuff arranges to return via sigreturn.  Didn't fix
5926        the spurious SIGTRAPs, but might be the right idea (and might save
5927        a context switch or two.)
5928       
5929        Mach exception stuff initializes rflags to exception rflags when
5930        arranging to resume thread at handler.  Leaving them uninitialized
5931        was causing spurious SIGTRAPs, since the trace bit(s) may have been
5932        set.
5933
59342006-10-05 06:09  gb
5935
5936        * lib/macros.lisp: WITH-ENCODED-CSTR(s).  (Hey, it's a start.)
5937
59382006-10-05 06:09  gb
5939
5940        * lib/chars.lisp: CHAR-NAME: try to use at least 4 hex digits for
5941        #\U+xxxx syntax.
5942
59432006-10-05 06:08  gb
5944
5945        * level-1/l1-unicode.lisp: UCS-2, some other changes.
5946
59472006-10-05 06:07  gb
5948
5949        * level-1/l1-sysio.lisp: Try to get
5950        line-termination/external-format stuff working.
5951
59522006-10-05 05:35  gb
5953
5954        * level-1/l1-streams.lisp: Assume that character data is always
5955        encoded as one or more 8-bit octets.
5956
59572006-10-05 04:59  gb
5958
5959        * level-1/l1-boot-2.lisp: Set class-prototypes for basic-streams
5960        just before we make the first one.
5961
59622006-10-02 08:13  gb
5963
5964        * lisp-kernel/x86-exceptions.h: Darwin uses _sigtramp glue to call
5965        handlers, so we need to make handlers do a sigreturn after
5966        switching off the signal stack, etc.
5967
59682006-10-02 08:11  gb
5969
5970        * lisp-kernel/x86-exceptions.c: Don't use SIGRETURN to return from
5971        signal_handler() on Darwin (since we depend on pseudo_sigreturn
5972        handling for cleanup of tcr pending exception and since we can't
5973        easily restore the signal mask.)
5974       
5975        (Up until this point, SIGRETURN has been a nop on Darwin.)
5976
59772006-10-02 04:59  gb
5978
5979        * lisp-kernel/lisptypes.h: Compile on ppc,ppc64 osx 10.4 and
5980        earlier.
5981
59822006-10-02 04:47  gb
5983
5984        * lisp-kernel/: lisptypes.h, ppc-exceptions.c, ppc-exceptions.h:
5985        Compile on post OSX 10.4 systems, for ppc/ppc64.  (Broken on
5986        systems <= 10.4).
5987
59882006-10-02 02:46  gb
5989
5990        * lisp-kernel/: lisptypes.h, x86-exceptions.c, x86-exceptions.h:
5991        Try to make x86-64 version compile under 10.4 again; see if this
5992        breaks post-10.4 compilation.
5993
59942006-10-02 02:33  gb
5995
5996        * lisp-kernel/: lisptypes.h, pmcl-kernel.c, x86-exceptions.c,
5997        x86-exceptions.h: Change things so that they compile for x86-64 on
5998        systems later than 10.4.  Almost certainly break 10.4 compilation
5999        in the process.  (Thanks, Apple!  Any time I can cause you to waste
6000        hours on crap like this, just let me know!)
6001
60022006-09-27 20:33  gb
6003
6004        * lib/misc.lisp: DOCUMENTATION works on character-encodings.
6005
60062006-09-27 20:33  gb
6007
6008        * level-1/l1-unicode.lisp: Character-encodings have doc strings.
6009
60102006-09-27 05:46  gb
6011
6012        * level-1/l1-sysio.lisp: More FILE-STREAM changes.  Give
6013        BASIC-STREAM classes a class prototype.
6014
60152006-09-27 05:45  gb
6016
6017        * level-1/l1-streams.lisp: Some changes to FD-STREAM
6018        initialization, to make it easier to use MAKE-FD-STREAM to open
6019        (seekable) FILE-STREAMs.
6020
60212006-09-27 05:41  gb
6022
6023        * lisp-kernel/: x86-exceptions.c, x86-exceptions.h: Decode and
6024        handle UUO_ERROR_DEBUG_TRAP_WITH_STRING.
6025
60262006-09-27 05:39  gb
6027
6028        * lisp-kernel/x86-spentry64.s: Still get very occasional SIGFPE on
6029        return from (e.g.) #_asin on x86-64 Darwin.  (#_asin often does a
6030        division-by-zero, but that should be masked when in foreign code.)
6031        Don't reload the lisp mxcsr until other registers have been popped,
6032        to make debugging easier in case it's the act of reloading the
6033        mxcsr that causes the spurious trap.)
6034
60352006-09-27 05:36  gb
6036
6037        * level-0/X86/x86-misc.lisp: DEBUG-TRAP-WITH-STRING.
6038
60392006-09-27 05:35  gb
6040
6041        * level-0/nfasload.lisp: Not sure when it happened, but %FASLOAD
6042        was parenthesized in such a way as to not return the error value on
6043        error.
6044
60452006-09-27 05:34  gb
6046
6047        * level-0/l0-misc.lisp: On x8664, use a new UUO for BUG.  (Not
6048        passing context into the kernel makes it too difficult to debug/get
6049        backtrace, etc.)
6050
60512006-09-27 05:33  gb
6052
6053        * compiler/X86/: x86-asm.lisp, x86-disassemble.lisp:
6054        UUO-ERROR-DEBUG-TRAP-WITH-STRING.
6055
60562006-09-27 05:05  gb
6057
6058        * level-1/l1-clos-boot.lisp: CLASS-PROTOTYPE method for CLASS class
6059        (mostly for BUILT-IN-CLASSes).
6060
60612006-09-26 20:49  gb
6062
6063        * level-1/l1-sysio.lisp: SELECT-STREAM-CLASS: should probably take
6064        a BASIC-P argument.
6065
60662006-09-26 20:47  gb
6067
6068        * level-1/l1-streams.lisp: More changes.  Imagine that.
6069
60702006-09-26 20:46  gb
6071
6072        * compiler/: X86/X8664/x8664-vinsns.lisp, X86/x862.lisp,
6073        optimizers.lisp: (Redundant) FIXNUM decls in LDB compiler macro.
6074
60752006-09-26 20:43  gb
6076
6077        * level-1/l1-unicode.lisp: Memory/vector encode/decode functions
6078        take/return strings, not chars.
6079       
6080        Some bom stuff.
6081
60822006-09-24 20:14  gb
6083
6084        * lib/chars.lisp: Check for assumptions about character size.
6085        Remove some %i-isms (fixnum arithmetic), make assertions about type
6086        of char-code.
6087
60882006-09-24 20:12  gb
6089
6090        * level-1/l1-aprims.lisp: Remove unused (probably ancient)
6091        CHKBOUNDS function.  Simpler STRING-START-END.
6092
60932006-09-24 20:11  gb
6094
6095        * level-1/l1-streams.lisp: Some stuff to infer line-termination.
6096        Probably belongs elsewhere; some encodings may not make it at all
6097        possible.
6098
60992006-09-24 20:07  gb
6100
6101        * compiler/PPC/: PPC32/ppc32-vinsns.lisp, PPC64/ppc64-vinsns.lisp:
6102        Load-character-constant: accept :u32const on PPC32, PPC64, too.
6103
61042006-09-24 20:00  gb
6105
6106        * level-1/l1-streams.lisp: A little more u16 stuff.  Remove
6107        line-termination slot from ioblock and corresponding arg from
6108        functions which initialize it.
6109
61102006-09-24 19:59  gb
6111
6112        * level-1/l1-sysio.lisp: Input-filter, output-filter in
6113        file-ioblock.
6114
61152006-09-24 19:58  gb
6116
6117        * level-1/l1-unicode.lisp: Buffer translation functions don't
6118        belong here; start thinking about BOM.
6119
61202006-09-24 19:57  gb
6121
6122        * compiler/X86/X8664/x8664-vinsns.lisp: LOAD-CHARACTER-CONSTANT:
6123        it's been a :u32const for the last few weeks ...
6124
61252006-09-24 04:29  gb
6126
6127        * lib/chars.lisp: CHAR-NAME looks in the *CHARACTER-NAMES* array if
6128        the code is within its bounds.
6129
61302006-09-24 04:27  gb
6131
6132        * level-1/l1-reader.lisp: Lots more character names.  Maintain
6133        mappings in a vector and a hash table, rather than in an alist.
6134
61352006-09-24 04:26  gb
6136
6137        * level-0/nfasload.lisp, xdump/xfasload.lisp, lib/nfcomp.lisp: Doh!
6138        character constant fasl encoding ($fasl-char).
6139
61402006-09-23 05:31  gb
6141
6142        * level-1/l1-unicode.lisp: Some other iso8859-n encodings.  (Not
6143        sure which are the most important.)
6144
61452006-09-23 05:29  gb
6146
6147        * level-1/l1-sysio.lisp: Start to separate
6148        line-termination/external-format stuff.
6149
61502006-09-23 05:28  gb
6151
6152        * level-1/l1-streams.lisp: Lots-o-changes.
6153
61542006-09-23 05:28  gb
6155
6156        * level-1/l1-boot-2.lisp: Make initial interactive streams use
6157        UTF-8 (mostly for debugging utf-8 ...)
6158
61592006-09-21 04:07  gb
6160
6161        * lisp-kernel/x86-spentry64.s: don't clobber callback index when
6162        doing the DARWIN_GS_HACK stuff in _SPcallback (syscall sometimes
6163        clobbered r11, sometimes didn't.)
6164
61652006-09-21 04:05  gb
6166
6167        * lisp-kernel/pmcl-kernel.c: Require mach/port.h.
6168
61692006-09-21 04:05  gb
6170
6171        * lisp-kernel/x86-exceptions.c: Save and restore errno in
6172        callback_for_interrupt.
6173
61742006-09-21 04:04  gb
6175
6176        * lisp-kernel/lisptypes.h: Guess again about preprocessor stuff for
6177        x86-64 ucontext/mcontext on Darwin.
6178
61792006-09-21 04:02  gb
6180
6181        * level-1/l1-lisp-threads.lisp: Use underscore prefix on all Darwin
6182        flavors.
6183       
6184        Add a type decl in %nanosleep.
6185
61862006-09-21 04:01  gb
6187
6188        * compiler/X86/X8664/x8664-vinsns.lisp: sign-extend/zero-extend
6189        vinsns.
6190
61912006-09-21 04:01  gb
6192
6193        * compiler/X86/x862.lisp: sign/zero-extend ffcall, syscall return
6194        values.  (Probably only matters in a few cases, like the Darwin
6195        x86-64 version of #_nanosleep, which returns a non-sign-extended
6196        "int" value if the sleep is interruted.)
6197
61982006-09-20 06:34  gb
6199
6200        * level-1/version.lisp: Bump.
6201
62022006-09-20 04:24  gb
6203
6204        * compiler/PPC/: PPC32/ppc32-vinsns.lisp, PPC64/ppc64-vinsns.lisp:
6205        slight improvements in signed-byte boxing, typechecking.
6206
62072006-09-20 04:22  gb
6208
6209        * lib/streams.lisp: WRITE-BYTE for BASIC-STREAMs.
6210
62112006-09-20 04:21  gb
6212
6213        * lib/macros.lisp: %SWAP-U16, %SWAP-U32.
6214
62152006-09-20 04:21  gb
6216
6217        * lib/level-2.lisp: %EVAL-REDEFs for new require-xx functions.
6218
62192006-09-20 04:20  gb
6220
6221        * level-1/l1-unicode.lisp: UTF-16, in native and byte-swapped
6222        versions.  Need a "logical" UTF-16, which deals with byte-order
6223        marks and a means of installing a concrete encoding.  Needs
6224        testing.
6225
62262006-09-20 04:15  gb
6227
6228        * level-1/l1-streams.lisp: Numerous changes.
6229
62302006-09-20 04:15  gb
6231
6232        * level-1/l1-sockets.lisp: %bswap16: fix type declaration.
6233
62342006-09-20 04:14  gb
6235
6236        * compiler/X86/X8664/x8664-vinsns.lisp: vinsns for signed/unsigned
6237        byte 8,16,32,64.  Tighten up some signed-byte boxing.
6238
62392006-09-20 04:12  gb
6240
6241        * compiler/X86/x862.lisp: New require ops for signed/unsigned byte
6242        8,16,32,64
6243
62442006-09-19 01:38  gb
6245
6246        * compiler/PPC/: PPC32/ppc32-vinsns.lisp, PPC64/ppc64-vinsns.lisp:
6247        vinsns for REQUIRE-[US][8,16,32,64]
6248
62492006-09-19 01:37  gb
6250
6251        * compiler/PPC/PPC32/ppc32-arch.lisp: Need
6252        THREE-DIGIT-BIGNUM-HEADER to recognize some cases of (UNSIGNED-BYTE
6253        64).
6254
62552006-09-19 01:36  gb
6256
6257        * compiler/PPC/ppc-backend.lisp: clean up an error message.
6258
62592006-09-19 01:36  gb
6260
6261        * compiler/PPC/ppc2.lisp: handle require-[us][8,16,32,64]
6262        operators.
6263
62642006-09-19 01:34  gb
6265
6266        * compiler/optimizers.lisp: REQUIRE-TYPE: transform into
6267        require-[us][8,16,32,64] when possible.
6268
62692006-09-19 01:34  gb
6270
6271        * compiler/nx1.lisp: inline require-[us][8,16,32,64].
6272
62732006-09-19 01:33  gb
6274
6275        * compiler/nxenv.lisp: New operators for require-[us][8,16,32,64].
6276
62772006-09-19 01:15  gb
6278
6279        * compiler/X86/X8664/x8664-vinsns.lisp: x8664 vinsns for
6280        typechecking signed/unsigned bytes of sizes 8,16,32,64.
6281
62822006-09-19 00:36  gb
6283
6284        * level-1/l1-streams.lisp: More changes; hard to bootstrap.
6285
62862006-09-18 21:42  gb
6287
6288        * lib/macros.lisp: Macros for locking the input/output locks of an
6289        ioblock, assuming that it exists.
6290
62912006-09-17 00:45  gb
6292
6293        * level-1/l1-streams.lisp: more changes
6294
62952006-09-13 06:52  gb
6296
6297        * level-1/l1-io.lisp: Direct BASIC-STREAM stuff for WRITE-CHAR,
6298        WRITE-STRING, TERPRI.
6299
63002006-09-13 06:08  gb
6301
6302        * lib/streams.lisp: READ-LINE changes for BASIC-STREAMs.
6303
63042006-09-13 06:07  gb
6305
6306        * level-1/l1-unicode.lisp: GET-CHARACTER-ENCODING errors if the
6307        named encoding isn't defined.
6308       
6309        Terse PRINT-OBJECT method for CHARACTER-ENCODING.
6310
63112006-09-13 06:06  gb
6312
6313        * level-1/l1-streams.lisp: More functions in the ioblock, some
6314        support for 8-bit encodings (like utf-8).  Not finished, but
6315        getting hard to bootstrap; need to check in and build on all
6316        platforms before it gets even harder.
6317
63182006-09-12 05:34  gb
6319
6320        * level-0/l0-misc.lisp: Use %CSTR-POINTER (not
6321        %copy-ivector-to-pointer) in BUG.
6322
63232006-09-12 05:31  gb
6324
6325        * lisp-kernel/x86-exceptions.c: Enter the debugger if
6326        altstack_signal_handler is entered in foreign code.  (Maybe want to
6327        signal a lisp error in some cases, but this is currently fatal and
6328        we might as well die earlier than with a stack overflow.)
6329
63302006-09-12 05:29  gb
6331
6332        * lisp-kernel/thread_manager.c: os_get_stack_bounds(): get stack
6333        direction right on FreeBSD.  (Much better than randomly scribbling
6334        on memory in the GC, as the FreeBSD port has been doing for months
6335        now ...)
6336
63372006-09-11 21:31  gb
6338
6339        * compiler/X86/x862.lisp: x862-explicit-non-fixnum-type-p looks for
6340        intersection.
6341
63422006-09-11 21:21  gb
6343
6344        * compiler/X86/x862.lisp: Partly inline 2-arg logior, logand.
6345
63462006-09-11 20:10  gb
6347
6348        * level-1/l1-unicode.lisp: Character encodings contain a
6349        LITERAL-CHAR-CODE-LIMIT field.
6350
63512006-09-11 20:09  gb
6352
6353        * level-1/l1-streams.lisp: extend IOBLOCK a bit.  Start to provide
6354        functionality for encoded streams.
6355
63562006-09-11 20:08  gb
6357
6358        * compiler/PPC/ppc2.lisp: Partialy inline 2-arg logior/logand.
6359
63602006-09-09 04:39  gb
6361
6362        * compiler/PPC/: PPC32/ppc32-vinsns.lisp, PPC64/ppc64-vinsns.lisp:
6363        REQUIRE-CHAR-CODE: compare against boxed char-code-limit.
6364
63652006-09-09 04:21  gb
6366
6367        * level-1/l1-reader.lisp: NAME-CHAR: insist on something more
6368        reasonable for ^c syntax; don't do MOD for octal.
6369
63702006-09-09 04:21  gb
6371
6372        * compiler/X86/X8664/x8664-vinsns.lisp: require-char-code checks
6373        agains boxed Unicode limit
6374
63752006-09-09 03:56  gb
6376
6377        * lisp-kernel/x86-gc.c: purify_range(), impurify_range(): handle
6378        x8664 functions, hash tables.  (PPC versions should handle hash
6379        table key movement.)
6380
63812006-09-08 22:47  gb
6382
6383        * lib/chars.lisp: CHAR-NAME: use U+xxxx for chars with codes >=
6384        #x100.
6385
63862006-09-08 22:38  gb
6387
6388        * compiler/PPC/: PPC32/ppc32-vinsns.lisp, PPC64/ppc64-vinsns.lisp:
6389        FIXNUM->CHAR: return NIL for surrogate pairs.
6390
63912006-09-08 22:33  gb
6392
6393        * compiler/PPC/ppc2.lisp: Don't be overly unsafe in %CHAR-CODE.
6394
63952006-09-08 22:31  gb
6396
6397        * lib/ppc-backtrace.lisp: Fix CFP-LFUN (fake stack frame case,
6398        sanity-check fn/lr).
6399
64002006-09-08 18:55  gb
6401
6402        * compiler/X86/x862.lisp: Don't be so reckless in %CODE-CHAR (don't
6403        necessarily want arbitrary expressions to be compiled unsafely; do
6404        want to avoid a little type-checking sometimes.)
6405
64062006-09-08 18:52  gb
6407
6408        * compiler/X86/X8664/x8664-vinsns.lisp: FIXNUM->CHAR returns NIL
6409        for values in the surrogate-pairs range.  (There are other things
6410        that it could plausibly return NIL for.)
6411
64122006-09-08 18:51  gb
6413
6414        * lisp-kernel/x86-gc.c: Start to get purify working on x86-64; for
6415        now, just purify strings.
6416
64172006-09-08 18:48  gb
6418
6419        * lib/macros.lisp: %CODE-CHAR asserts that code is (UNSIGNED-BYTE
6420        8), which is still useful (and exactly what it used to do.)
6421
64222006-09-08 18:47  gb
6423
6424        * lib/: compile-ccl.lisp, systems.lisp: Add l1-unicode.
6425
64262006-09-08 18:44  gb
6427
6428        * level-1/level-1.lisp: Load l1-unicode.
6429
64302006-09-08 18:44  gb
6431
6432        * level-1/l1-unicode.lisp: New file.
6433
64342006-09-07 03:50  gb
6435
6436        * lisp-kernel/area.h: Larger PURESPACE_RESERVE for x8664.
6437
64382006-09-07 03:44  gb
6439
6440        * xdump/: heap-image.lisp, xfasload.lisp, xppcfasload.lisp,
6441        xx8664-fasload.lisp: Bump abi version.  Make purespace-reserve an
6442        attribute of the backend (may need more pure space on x86-64.)
6443
64442006-09-07 03:43  gb
6445
6446        * lisp-kernel/image.h: Bump abi version.
6447
64482006-09-07 03:43  gb
6449
6450        * level-1/version.lisp: Bump.
6451
64522006-09-07 02:58  gb
6453
6454        * lisp-kernel/x86-exceptions.c: FreeBSD (at least with libthr)
6455        seems to mask synchronous signals.  Unmask them in signal handlers.
6456
64572006-09-07 02:57  gb
6458
6459        * lisp-kernel/thread_manager.c: suspend_resume_handler() : ignore
6460        signal mask.
6461
64622006-09-07 02:56  gb
6463
6464        * lisp-kernel/: lisptypes.h, ppc-constants32.h, ppc-constants32.s,
6465        ppc-constants64.h, ppc-constants64.s, ppc-gc.c, x86-constants64.h,
6466        x86-constants64.s: Lose the CHAR_SIZE_32 bootstrapping conditional
6467        (char are 32 bits wide on all platforms now.)
6468
64692006-09-07 00:40  gb
6470
6471        * lisp-kernel/x86-exceptions.c: SIGBUS might be
6472        SIGNUM_FOR_PROCESS_INTERRUPT.
6473
64742006-09-07 00:12  gb
6475
6476        * lisp-kernel/x86-spentry64.s: _SPbuiltin_aref1: use
6477        box_fixnum_no_flags.
6478
64792006-09-07 00:12  gb
6480
6481        * lisp-kernel/x86-macros.s: Define box_fixnum_no_flags (uses lea
6482        vice imul).
6483
64842006-09-06 21:18  gb
6485
6486        * compiler/X86/X8664/x8664-arch.lisp: Need
6487        MIN/MAX-8-BIT-IVECTOR-SUBTAG.
6488
64892006-09-06 18:37  gb
6490
6491        * lisp-kernel/x86-spentry64.s: misc_ref/misc_set: handle 32-bit
6492        strings.
6493
64942006-09-06 18:36  gb
6495
6496        * lisp-kernel/x86-macros.s: Zero-extend early when extracting
6497        typecodes.
6498
64992006-09-06 18:36  gb
6500
6501        * level-1/l1-streams.lisp: GET-OUTPUT-STREAM-STRING: use
6502        ENSURE-SIMPLE-STRING rather than horrible COERCE nonsense.
6503
65042006-09-06 18:35  gb
6505
6506        * level-1/l1-aprims.lisp: x8664 *immheader-1-array-element-types*
6507        contains entry for 32-bit BASE-CHAR.
6508
65092006-09-06 18:35  gb
6510
6511        * compiler/X86/X8664/x8664-vinsns.lisp: zero-extend early when
6512        extracting typecodes.
6513
65142006-09-06 18:34  gb
6515
6516        * compiler/X86/X8664/: x8664-arch.lisp, x8664-backend.lisp:
6517        32-bit-chars.
6518
65192006-09-06 18:33  gb
6520
6521        * compiler/X86/: x86-backend.lisp, x862.lisp: Defer handling of the
6522        :rcontext pseudo-register name until the target backend is in
6523        place.
6524
65252006-09-06 16:39  gb
6526
6527        * compiler/X86/: x862.lisp, X8664/x8664-vinsns.lisp: 32-bit chars
6528        stuff for x8664.
6529
65302006-09-06 16:39  gb
6531
6532        * level-1/l1-reader.lisp: kids: bourbon and editing COPY-READTABLE
6533        don't mix!
6534
65352006-09-06 16:38  gb
6536
6537        * lib/compile-ccl.lisp: :verbose argument to rebuild-ccl.
6538
65392006-09-06 16:38  gb
6540
6541        * level-1/linux-files.lisp: process input/output: don't assume
6542        8-bit strings.
6543
65442006-09-06 14:42  gb
6545
6546        * compiler/PPC/PPC64/ppc64-backend.lisp: PPC64 callbacks are always
6547        #+poweropen-target; don't conditionalize the fp-arg-ptr argument
6548        (since that creates confustion when cross-compiling from a
6549        non-poweropen host.)
6550
65512006-09-06 00:08  gb
6552
6553        * compiler/PPC/PPC64/: ppc64-arch.lisp, ppc64-backend.lisp: remove
6554        8-bit char stuff.
6555
65562006-09-06 00:08  gb
6557
6558        * compiler/X86/X8664/x8664-arch.lisp: Forgot to set char-code-limit
6559        here.
6560
65612006-09-05 22:49  gb
6562
6563        * lib/macros.lisp: In DO-GC-AREAS, don't use comma before call to
6564        AREA-SUCC.  (Cross-compilation/ word-size issue.)
6565
65662006-09-05 22:42  gb
6567
6568        * level-0/l0-utils.lisp: If ENSURE-SIMPLE-STRING has to make a copy
6569        of a non-simple string, understand char width issues.
6570
65712006-09-05 22:41  gb
6572
6573        * level-0/nfasload.lisp: Some fixnum decls in %FIND-PKG.
6574
65752006-09-05 22:40  gb
6576
6577        * level-1/l1-aprims.lisp: ppc64 ARRAY-ELEMENT-SUBTYPES includes new
6578        string type.
6579
65802006-09-05 22:39  gb
6581
6582        * level-0/PPC/ppc-array.lisp: cr3, nor c33, in ppc64 %init-misc.
6583
65842006-09-05 22:38  gb
6585
6586        * compiler/nx0.lisp: NX-FORM-TYPEP uses NX-TARGET-TYPE.
6587
65882006-09-05 09:13  gb
6589
6590        * compiler/PPC/PPC32/ppc32-backend.lisp: darwinppc32 backend uses
6591        32-bit chars, too.
6592
65932006-09-05 09:01  gb
6594
6595        * compiler/PPC/PPC32/: ppc32-arch.lisp, ppc32-backend.lisp: ppc32
6596        defaults to 32-bit chars.
6597
65982006-09-05 05:18  gb
6599
6600        * xdump/xfasload.lisp: Deal with 32-bit lisp strings.
6601
66022006-09-05 05:18  gb
6603
6604        * lisp-kernel/linuxppc/.gdbinit: Start to depend on calling
6605        print_lisp_object, since x/s doesn't deal with 32-bit lisp strings.
6606
66072006-09-05 05:17  gb
6608
6609        * lisp-kernel/ppc-gc.c: conditionalize purify_displaced_object()
6610        for char size.
6611
66122006-09-05 05:16  gb
6613
6614        * lisp-kernel/plsym.c: find_symbol(): don't assume 8-bir lisp
6615        strings.
6616
66172006-09-05 05:15  gb
6618
6619        * lisp-kernel/lisptypes.h: Try using "u8_t" and "u32_t" for
6620        lisp_char_code; this may be more portable.
6621
66222006-09-05 05:14  gb
6623
6624        * lib/sequences.lisp: SIMPLE-1D-ARRAY-SUBSEQ: handle new strings.
6625
66262006-09-05 05:13  gb
6627
6628        * level-1/linux-files.lisp: CALL-WITH-STRING-VECTOR: don't assume
6629        8-bit char/strings.
6630
66312006-09-05 05:13  gb
6632
6633        * level-1/l1-streams.lisp: Use heap-ivectors of element-type
6634        (UNSIGNED-BYTE 8) for character streams.  (Should really depend on
6635        the coding system in use.)
6636
66372006-09-05 05:09  gb
6638
6639        * level-1/l1-aprims.lisp: Various archaic string functions: don't
6640        assume 8-bit strings.
6641
66422006-09-05 05:08  gb
6643
6644        * level-0/l0-array.lisp: Handle 32-bit strings in %UVECTOR-REPLACE.
6645
66462006-09-05 05:07  gb
6647
6648        * compiler/PPC/PPC64/ppc64-arch.lisp: No "x" in simple-base-string,
6649        when #-target-8-bit-chars.
6650
66512006-09-05 05:06  gb
6652
6653        * compiler/PPC/: PPC32/ppc32-vinsns.lisp, PPC64/ppc64-vinsns.lisp:
6654        REQUIRE-CHAR-CODE: comparison of OBJECT with TAG is not a CMPI.
6655
66562006-09-05 05:05  gb
6657
6658        * compiler/PPC/ppc2.lisp: PPC2-VREF: handle the 32-bit
6659        :SIMPLE-STRING case with constant index.
6660
66612006-09-04 17:44  gb
6662
6663        * lisp-kernel/lisptypes.h: Linux doesn't define uint8_t.  Try
6664        "unsigned char", and cross fingers.
6665
66662006-09-04 17:38  gb
6667
6668        * lisp-kernel/: lisptypes.h, ppc_print.c, x86_print.c: Define
6669        lisp_char_code type, use it when printing lisp string in the kernel
6670        debugger.
6671
66722006-09-04 17:28  gb
6673
6674        * level-1/version.lisp: Bump.
6675
66762006-09-04 17:18  gb
6677
6678        * level-0/PPC/ppc-array.lisp: Sigh.  Test for 8-bit-char case was
6679        conditionalized backwards in PPC64 %INIT-MISC.
6680
66812006-09-04 17:05  gb
6682
6683        * level-1/l1-init.lisp: Initial value of CHAR-CODE-LIMIT derived
6684        from the target arch (for bootstrapping.)
6685
66862006-09-04 17:04  gb
6687
6688        * level-1/l1-reader.lisp: Use (UNSIGNED-BYTE 8) for array element
6689        type of rdtab.ttab.
6690       
6691        Don't treat (code-char #xca) as whitespace; do treat (code-char
6692        #xa0) as whitespace.  (The former happens to be how the latter was
6693        encoded in MacRoman.)
6694       
6695        Handle U+<hex> syntax in NAME-CHAR.
6696
66972006-09-04 16:16  gb
6698
6699        * compiler/PPC/PPC64/ppc64-vinsns.lisp: LOAD-CHARACTER-CONSTANT:
6700        and the char code with #xff to get the low byte.
6701
67022006-09-04 16:15  gb
6703
6704        * compiler/PPC/PPC32/ppc32-vinsns.lisp: LOAD-CHARACTER-CONSTANT:
6705        and the char code with #xff or 255., not with #x255.  (Cause lots
6706        of wackiness, mostly in readtable initialization.)
6707
67082006-09-04 16:12  gb
6709
6710        * compiler/PPC/ppc2.lisp: Use u32->char (which is defined) vice
6711        u8->char (which is no more) in %CHAR-CODE.
6712
67132006-09-04 06:04  gb
6714
6715        * compiler/PPC/: PPC32/ppc32-vinsns.lisp, PPC64/ppc64-vinsns.lisp:
6716        Gak.  Get guard/predicate syntax right in LOAD-CHARACTER-CONSTANT.
6717
67182006-09-04 06:03  gb
6719
6720        * level-0/PPC/ppc-array.lisp: New constants in ppc32 typecode range
6721        assertion.
6722
67232006-09-04 03:44  gb
6724
6725        * level-0/PPC/ppc-array.lisp: ppc32/ppc64 %init-misc tweaks.
6726
67272006-09-04 03:43  gb
6728
6729        * compiler/PPC/ppc-lapmacros.lisp: Typo in the (unused) 64-bit/no
6730        crf case of UNBOX-BASE-CHAR.
6731
67322006-09-04 02:30  gb
6733
6734        * level-1/l1-error-system.lisp: Object-not- (mod #x110000) type
6735        error.
6736
67372006-09-04 02:29  gb
6738
6739        * level-0/PPC/ppc-symbol.lisp: conditionalize %pname-hash for char
6740        size.
6741
67422006-09-04 02:26  gb
6743
6744        * lisp-kernel/: ppc-constants32.h, ppc-constants32.s,
6745        ppc-constants64.h, ppc-constants64.s: Conditionalize for
6746        CHAR_SIZE_32.
6747
67482006-09-04 02:24  gb
6749
6750        * compiler/PPC/PPC32/ppc32-arch.lisp,
6751        compiler/PPC/PPC32/ppc32-vinsns.lisp,
6752        compiler/PPC/PPC64/ppc64-arch.lisp,
6753        compiler/PPC/PPC64/ppc64-vinsns.lisp, level-0/l0-array.lisp,
6754        level-0/l0-pred.lisp: Conditionalize for #-target-8-bit-chars.
6755
67562006-09-04 02:23  gb
6757
6758        * compiler/PPC/ppc2.lisp: Deal - sometimes conditionally - with
6759        32-bit characters.
6760
67612006-09-04 02:22  gb
6762
6763        * compiler/arch.lisp: ERROR-OBJECT-NOT-MOD-CHAR-CODE-LIMIT.
6764
67652006-09-03 16:03  gb
6766
6767        * lisp-kernel/: x86-constants64.h, x86-constants64.s:
6768        conditionalize new string types.
6769
67702006-09-03 16:03  gb
6771
6772        * level-0/X86/x86-symbol.lisp: %pname-hash: conditionalize for
6773        string element size.
6774
67752006-09-03 16:02  gb
6776
6777        * compiler/X86/X8664/x8664-arch.lisp, level-0/l0-array.lisp,
6778        level-0/l0-pred.lisp: Sketch out new string types (read-time
6779        conditionalized.)
6780
67812006-09-03 15:02  gb
6782
6783        * level-0/l0-init.lisp: Put :target-8-bit-chars on *features*, for
6784        bootstrapping.
6785
67862006-09-03 14:20  gb
6787
6788        * level-1/l1-streams.lisp: More missing BASIC-STREAM methods.
6789
67902006-09-03 13:22  gb
6791
6792        * compiler/: X86/X8664/x8664-backend.lisp,
6793        PPC/PPC32/ppc32-backend.lisp, PPC/PPC64/ppc64-backend.lisp:
6794        :target-8-bit-chars on target features.
6795
67962006-09-03 13:21  gb
6797
6798        * level-0/l0-int.lisp: Some comments/indentation.
6799
68002006-09-03 13:01  gb
6801
6802        * compiler/PPC/: PPC32/ppc32-arch.lisp, PPC64/ppc64-arch.lisp: Make
6803        CHAR-CODE-LIMIT an attribute of the target arch, for bootstrapping.
6804
68052006-09-02 11:24  gb
6806
6807        * level-1/x86-error-signal.lisp, lib/db-io.lisp: Fix typo.
6808
68092006-09-02 11:15  gb
6810
6811        * lisp-kernel/x86_print.c: hex/decimal integer printers: 3 is also
6812        a hex digit.
6813
68142006-09-02 11:11  gb
6815
6816        * lisp-kernel/x86-exceptions.c: Install a "bogus signal handler" on
6817        Darwin, to deal with apparent race conditions/Mach kernel lossage.
6818       
6819        Don't do the whole msg_server here; just do the exc_server thing.
6820       
6821        Fix a couple of Mach exception-handling bugs; at least one more may
6822        remain.
6823
68242006-09-02 11:07  gb
6825
6826        * lisp-kernel/x86-asmutils64.s: Use a hlt instruction to trap in
6827        pseudo_sigreturn.
6828       
6829        Still get spurious SIGTRAPs.
6830
68312006-09-02 11:06  gb
6832
6833        * lisp-kernel/thread_manager.c: Define some things in terms of
6834        USE_MACH_SEMAPHORES or USE_POSIX_SEMAPHORES.
6835       
6836        sem_wait_forever() does repeated timed waits, since I thought that
6837        Darwin was having trouble interrpting things that waited
6838        indefinitely.  (That might just be a GDB bug.  Who can tell ?)
6839
68402006-09-02 11:03  gb
6841
6842        * lisp-kernel/Threads.h: Define some things in terms of
6843        USE_MACH_SEMAPHORES or USE_POSIX_SEMAPHORES.  Note that as of Q3
6844        2006, Darwin still doesn't implement enough POSIX semaphore
6845        functionality to make it possible to avoid the use of Mach
6846        semaphores.
6847
68482006-09-02 11:01  gb
6849
6850        * lib/db-io.lisp:
6851        Try to avoid things like %COPY-IVECTOR-TO-IVECTOR when strings are
6852        involved.
6853
68542006-09-02 11:01  gb
6855
6856        * level-1/x86-threads-utils.lisp: Things that're %HEAP-IVECTOR-P
6857        aren't bogus objects.
6858
68592006-09-02 11:00  gb
6860
6861        * level-1/l1-streams.lisp: Try to avoid things like
6862        %COPY-IVECTOR-TO-IVECTOR when strings are involved.
6863
68642006-09-02 10:59  gb
6865
6866        * level-1/l1-events.lisp: AUTO-FLUSH-INTERACTIVE-STREAMS: use
6867        FORCE-OUTPUT.
6868
68692006-09-02 10:57  gb
6870
6871        * level-0/l0-misc.lisp: %COPY-U8-TO-STRING, %COPY-STRING-TO-U8:
6872        new, to avoid %COPY-IVECTOR-TO-IVECTOR when strings are involved.
6873       
6874        %STR-FROM-PTR: take dest string as optional arg, don't assume 8-bit
6875        chars.
6876       
6877        %GET-CSTRING: change type decl, use %GET-UNSIGNED-BYTE.
6878
68792006-09-02 10:55  gb
6880
6881        * level-0/l0-aprims.lisp: %CSTR-POINTER and %CSTR-SEGMENT-POINTER:
6882        don't assume 8-bit chars.
6883
68842006-08-28 17:35  gb
6885
6886        * lisp-kernel/ppc-spentry.s: Fix tag check in 32-bit
6887        misc_set_single_float_vector.
6888
68892006-08-28 17:01  gb
6890
6891        * xdump/faslenv.lisp: Bump max fasl version.
6892
68932006-08-28 16:48  gb
6894
6895        * lib/nfcomp.lisp: Use new string ops.  Bump current fasl version.
6896
68972006-08-28 16:33  gb
6898
6899        * xdump/faslenv.lisp: Bump (max) fasl version.
6900
69012006-08-28 16:30  gb
6902
6903        * xdump/xfasload.lisp: xloader was missing a few new ops.
6904
69052006-08-28 05:34  gb
6906
6907        * xdump/xfasload.lisp: New string stuff here, too.
6908
69092006-08-28 05:28  gb
6910
6911        * level-0/nfasload.lisp: New string stuff.
6912
69132006-08-28 04:57  gb
6914
6915        * level-1/l1-streams.lisp: More missing BASIC-STREAM methods
6916        (STREAM-LINE-COLUMN, STREAM-LISTEN, STREAM-EOFP.)
6917
69182006-08-28 04:57  gb
6919
6920        * level-1/l1-reader.lisp: Use READ-CHAR instead of
6921        STREAM-READ-CHAR, since it may be faster in some cases.
6922
69232006-08-28 04:56  gb
6924
6925        * level-1/l1-events.lisp: Unscramble auto-flush-streams stuff
6926        (don't assume ioblock-based stream.)
6927
69282006-08-28 04:55  gb
6929
6930        * level-1/l1-boot-2.lisp: Initial FD-STREAMs are BASIC-STREAMs.
6931
69322006-08-28 04:55  gb
6933
6934        * level-0/PPC/ppc-symbol.lisp: Change some REQUIRE forms; cosmetic.
6935         (Maybe not even cosmetic.)
6936
69372006-08-28 04:54  gb
6938
6939        * compiler/PPC/: ppc2.lisp, PPC32/ppc32-vinsns.lisp,
6940        PPC64/ppc64-vinsns.lisp: %unbox-u8, u8-vref stuff.
6941
69422006-08-28 04:53  gb
6943
6944        * xdump/faslenv.lisp: New fasl ops for new string encodings.
6945
69462006-08-28 04:52  gb
6947
6948        * lib/macros.lisp: %CHAR-CODE: for how long has limit not been 2^16
6949        ?  For how long will limit be 2^8 ?
6950
69512006-08-28 04:51  gb
6952
6953        * level-0/nfasload.lisp: More fasl ops.
6954
69552006-08-28 04:51  gb
6956
6957        * compiler/X86/: x862.lisp, X8664/x8664-vinsns.lisp: %UNBOX-U8,
6958        u8-vref stuff.
6959
69602006-08-28 04:50  gb
6961
6962        * compiler/arch.lisp: Add CHAR-CODE-LIMIT slot to TARGET-ARCH; may
6963        not be the best way to do this.
6964
69652006-08-26 13:58  gb
6966
6967        * release-notes.txt: Updated.
6968
69692006-08-26 13:50  gb
6970
6971        * release-notes.txt: Updated.
6972
69732006-08-26 13:50  gb
6974
6975        * darwin-x86-headers64/libc/.cvsignore: Added.
6976
69772006-08-26 03:17  gb
6978
6979        * level-1/version.lisp: Bump.  New snapshots soon, I hope.
6980
69812006-08-26 03:12  gb
6982
6983        * lisp-kernel/darwinx8664/Makefile: Pass -g in ASFLAGS; same
6984        problems as always, but avoids problems with Darwin x86-64 ld64
6985        segfaulting for unknown reasons.
6986
69872006-08-26 03:11  gb
6988
6989        * lisp-kernel/x86-exceptions.h: Need to do an explicit sigreturn on
6990        Darwin (because of the sigaltstack hacks; Darwin uses sigtramp glue
6991        that we can't just return to after switching off of the alt stack.)
6992
69932006-08-26 03:08  gb
6994
6995        * lib/numbers.lisp: Check fpu overflow bit (not underflow) when
6996        deciding whether or not to signal overflow.
6997
69982006-08-26 03:08  gb
6999
7000        * level-1/x86-trap-support.lisp: Need an indirection to access
7001        mcontext from ucontext on Darwin; invent xp-gp-regs to get at
7002        mcontext64.ss.
7003
70042006-08-26 03:06  gb
7005
7006        * level-1/x86-error-signal.lisp: Add a declaration, to make this
7007        easier to step through.
7008
70092006-08-26 03:05  gb
7010
7011        * level-0/l0-float.lisp: SINGLE-FLOAT-HALF-PI: use f0 not e0, just
7012        in case.
7013
70142006-08-25 20:35  gb
7015
7016        * level-1/l1-boot-lds.lisp, level-1/l1-events.lisp,
7017        lib/ccl-export-syms.lisp: Hyphenate ADD-AUTO-FLUSH-STREAM and
7018        REMOVE-AUTO-FLUSH-STREAM.
7019       
7020        Export them, too.
7021
70222006-08-25 20:22  gb
7023
7024        * lib/streams.lisp: READ-LINE on BASIC-INPUT-STREAM w/o
7025        STREAM-READ-LINE.
7026
70272006-08-25 20:22  gb
7028
7029        * lib/macros.lisp: HANDLER-CASE: the :NO-ERROR clause can appear at
7030        most once but doesn't have to be the last clause.
7031
70322006-08-25 20:21  gb
7033
7034        * level-1/l1-streams.lisp: BASIC-OUTPUT-STREAM isn't an
7035        INPUT-STREAM.
7036       
7037        Some STREAM-READ-LINE support for BASIC-CHARACTER-INPUT-STREAM.
7038
70392006-08-25 20:19  gb
7040
7041        * level-1/l1-readloop.lisp: PREPARE-TO-QUIT: other threads should
7042        be dead by the time that streams on *OPEN-FILE-STREAMS* are closed,
7043        so unlock those streams with extreme prejudice before closing them.
7044
70452006-08-25 20:18  gb
7046
7047        * level-1/l1-pathnames.lisp: FULL-PATHNAME: remove some weird old
7048        code that assumed that interfered with handling of relative logical
7049        pathnames.
7050
70512006-08-25 20:17  gb
7052
7053        * level-1/l1-events.lisp: Rename EVENT-POLL to
7054        AUTO-FLUSH-INTERACTIVE-STREAMS.
7055       
7056        Make AUTO-FLUSH-INTERACTIVE-STREAMS do conditional locking on each
7057        stream (doing nothing if it's not :SHARING :LOCK; unconditional
7058        locking on the *AUTO-FLUSH-STREAMS-LOCK*.
7059       
7060        ADD-AUTOFLUSH-STREAM ensures that the stream is :SHARING :LOCK.
7061       
7062        REMOVE-AUTOFLUSH-STREAM.
7063
70642006-08-25 20:13  gb
7065
7066        * level-1/l1-boot-lds.lisp: MAKE-MCL-LISTENER-STREAM uses
7067        ADD-AUTOFLUSH-STREAM, REMOVE-AUTOFLUSH-STREAM.
7068
70692006-08-23 22:59  gb
7070
7071        * lisp-kernel/x86-exceptions.c: Darwin needs to decode the mxcsr on
7072        SIGFPE.
7073       
7074        DARWIN_GS_HACK changes in altstack handlers for interrupt/suspend.
7075
70762006-08-23 22:58  gb
7077
7078        * lisp-kernel/x86-spentry64.s: x86-64 Darwin's math library is
7079        pretty casual about causing spurious exceptions, so ignore them.
7080
70812006-08-23 22:57  gb
7082
7083        * lisp-kernel/darwinx8664/.gdbinit: New file; like the linuxx8664
7084        version, with different signals to be ignored by gdb.
7085
70862006-08-23 22:56  gb
7087
7088        * lisp-kernel/x86-asmutils64.s: Using ud2b to force an exception in
7089        pseudo_sigreturn() seems to cause/be related to spurious SIGTRAPs.
7090        Use int $0 instead.
7091
70922006-08-23 22:55  gb
7093
7094        * level-1/x86-trap-support.lisp: First attempt at Darwinx8664
7095        support; may need more work.
7096
70972006-08-22 02:08  gb
7098
7099        * lisp-kernel/x86_print.c: Try not to use sprintf() (at least not
7100        for printing integers), since it seems to need access to pthread
7101        data (and calling print_lisp_object() from GDB might fail if %gs is
7102        pointing at the lisp TCR.)
7103
71042006-08-22 02:06  gb
7105
7106        * lisp-kernel/x86-spentry64.s: Unbox %arg_z (boxed entrypoint)
7107        earlier in _SPffcall, before entering foreign context.  (Need to
7108        check PPC version(s) as well.)
7109       
7110        Use DARWIN_GS_HACK to swap %gs memory around when transitioning
7111        between foreign code and lisp.
7112
71132006-08-22 02:04  gb
7114
7115        * lisp-kernel/x86-macros.s: Fix a typo.
7116
71172006-08-22 02:04  gb
7118
7119        * lisp-kernel/x86-exceptions.h: Define a few more things ...
7120
71212006-08-22 02:03  gb
7122
7123        * lisp-kernel/x86-exceptions.c: Lots of changes, especially to Mach
7124        exception handling code.
7125       
7126        Do the DARWIN_GS_HACK things to overload %gs.
7127
71282006-08-22 02:02  gb
7129
7130        * lisp-kernel/x86-asmutils64.s: atomic_and(), pseudo_sigreturn()
7131        for DarwinX8664.
7132
71332006-08-22 02:01  gb
7134
7135        * lisp-kernel/thread_manager.c: Some PPC64 conditionalizations
7136        should really have tested WORD_SIZE.
7137       
7138        DARWIN_GS_HACK stuff around suspend/resume signal handlers.  (May
7139        not be necessary.)
7140       
7141        Ensure that tcr.linear gets set on x86, even if not HAVE_TLS.
7142
71432006-08-22 01:59  gb
7144
7145        * lisp-kernel/pmcl-kernel.c: Don't really flush cache lines on
7146        x8664.
7147       
7148        Some PPC64 conditionalizations should really have tested WORD_SIZE.
7149
71502006-08-22 01:58  gb
7151
7152        * lisp-kernel/m4macros.m4: Define SYSCALL_SETS_CARRY_ON_ERROR for
7153        FreeBSDX664, DarwinX8664.
7154
71552006-08-22 01:57  gb
7156
7157        * lisp-kernel/darwinx8664/Makefile: Much smaller pagezero, much
7158        lower seg1addr.
7159       
7160        Something in the (m4-generated) symbolic info in some .s files is
7161        screwy and causes ld64 to segfault; it's currently necesssary to
7162        use "strip -S" on the assembler-generated .o files.
7163
71642006-08-22 01:55  gb
7165
7166        * scripts/openmcl64: Untested changes for Darwinx8664.
7167
71682006-08-22 01:54  gb
7169
7170        * xdump/xx8664-fasload.lisp: Fix typo in darwinx8664
7171        xload-backend-info (compiler target is :darwinx8664, not
7172        :linuxx8664).
7173
71742006-08-22 01:53  gb
7175
7176        * lib/nfcomp.lisp: Dump concatenated functions from xfunctions when
7177        cross-compiling to x86 from x86.
7178
71792006-08-22 01:52  gb
7180
7181        * lib/misc.lisp: MACHINE-VERSION:  conditionalize on :DARWIN-TARGET
7182        (not :DARWINPPC-TARGET).
7183
71842006-08-22 01:50  gb
7185
7186        * lib/foreign-types.lisp: :DARWIN-TARGET (not :DARWINPPC-TARGET).
7187
71882006-08-22 01:50  gb
7189
7190        * lib/compile-ccl.lisp: :DARWINX8664 stuff.
7191
71922006-08-22 01:49  gb
7193
7194        * level-1/version.lisp: Bump.
7195
71962006-08-22 01:49  gb
7197
7198        * level-1/l1-sysio.lisp: FILE-STREAM-EXTERNAL-FORMAT stuff for
7199        BASIC-STREAMs.
7200
72012006-08-22 01:48  gb
7202
7203        * level-1/: l1-sockets.lisp, linux-files.lisp: Conditionalize on
7204        DARWIN-TARGET, not DARWINPPC-TARGET.
7205
72062006-08-22 01:47  gb
7207
7208        * level-0/l0-init.lisp: DarwinX8664 *features*.
7209
72102006-08-22 01:47  gb
7211
7212        * level-0/l0-cfm-support.lisp: Some DARWINPPC-TARGET conditionals
7213        really want to be DARWIN-TARGET.
7214
72152006-08-22 01:46  gb
7216
7217        * compiler/X86/X8664/x8664-arch.lisp: YIELD-SYSCALL for
7218        DarwinX8664.
7219
72202006-08-22 01:45  gb
7221
7222        * compiler/X86/x862.lisp: Use CROSS-CREATE-X86-FUNCTION if not
7223        compiling natively.
7224       
7225        Fix X862-FIXUP-FWD-REFS if not native function on x86.
7226
72272006-08-22 01:44  gb
7228
7229        * compiler/X86/x86-lap.lisp: Ensure that CROSS-CREATE-X86-FUNCTION
7230        is defined, even on x86.  Use it if not compiling natively on x86.
7231
72322006-08-20 23:59  gb
7233
7234        * lisp-kernel/darwinx8664/Makefile: Define DARWIN_GS_HACK.
7235
72362006-08-20 23:58  gb
7237
7238        * lisp-kernel/x86-exceptions.c: Still needs lots of work.
7239
72402006-08-20 23:58  gb
7241
7242        * lisp-kernel/x86-exceptions.h: Include Mach stuff on Darwin;
7243        prototypes for DARWIN_GS_HACK %gs segment switching.
7244
72452006-08-20 23:57  gb
7246
7247        * lisp-kernel/x86-subprims64.s: Manipulate the %gs register when a
7248        lisp thread starts, exits and DARWIN_GS_HACK is defined.
7249       
7250        This isn't so bad, but doing it around every ff-call might be.
7251
72522006-08-20 23:56  gb
7253
7254        * lisp-kernel/x86-macros.s: DARWIN_GS_HACK macros.
7255
72562006-08-20 23:53  gb
7257
7258        * lisp-kernel/thread_manager.c: Note the need for DARWIN_GS_HACK.
7259
72602006-08-20 23:51  gb
7261
7262        * lisp-kernel/x86-asmutils64.s: DARWIN_GS_HACK hacks.
7263
72642006-08-20 23:51  gb
7265
7266        * lisp-kernel/m4macros.m4: Hope that the need for DARWIN_GS_HACK is
7267        also temporary.
7268
72692006-08-20 23:50  gb
7270
7271        * lisp-kernel/lisptypes.h: Hope that the workaround for missing
7272        mcontext64 in x8664 Darwin is temporary.
7273
72742006-08-20 20:35  gb
7275
7276        * library/darwinx664-syscalls.lisp: typo
7277
72782006-08-20 20:35  gb
7279
7280        * library/darwinx8664-syscalls.lisp: spell name right
7281
72822006-08-20 17:10  gb
7283
7284        * xdump/xx8664-fasload.lisp: :darwinx8664 stuff.
7285
72862006-08-20 17:10  gb
7287
7288        * lib/db-io.lisp: :struct-by-value: don't read-time conditionalize
7289        (do other things still use read-time conditionals ?)
7290
72912006-08-20 17:09  gb
7292
7293        * compiler/X86/X8664/x8664-backend.lisp: Darwinx8664: overload %gs,
7294        setup syscall mask.
7295
72962006-08-20 17:08  gb
7297
7298        * compiler/nx1.lisp: Handle syscall, ff-call for :darwinx8664 as
7299        well.
7300
73012006-08-20 17:06  gb
7302
7303        * library/darwinx664-syscalls.lisp: New file; or's in the bit for
7304        Unix syscalls on Darwinx8664.  (Screw: should (carefully) review
7305        word-size issues.)
7306
73072006-08-20 17:03  gb
7308
7309        * library/darwinppc-syscalls.lisp: Mask for PPC.
7310
73112006-08-20 17:02  gb
7312
7313        * level-0/l0-io.lisp, level-1/l1-sockets.lisp,
7314        level-1/linux-files.lisp: Syscall conditionalization.
7315
73162006-08-20 17:01  gb
7317
7318        * level-1/l1-streams.lisp: Syscall conditionalization.
7319       
7320        SELECTION-INPUT-STREAM created with :sharing :lock.
7321
73222006-08-20 17:00  gb
7323
7324        * examples/objc-runtime.lisp: Fencepost in
7325        POINTER-IN-CFSTRING-SECTION-P.
7326
73272006-08-20 16:16  gb
7328
7329        * library/: darwinppc-syscalls.lisp, darwin-syscalls.lisp: rename
7330
73312006-08-18 09:50  gb
7332
7333        * lisp-kernel/thread_manager.c: Enable FP underflow detection on
7334        x8664.  Should do this on PPC as well, and should probably offer
7335        some backward-compatible behavior for reader.
7336
73372006-08-18 09:47  gb
7338
7339        * compiler/X86/X8664/x8664-backend.lisp: Dress up the Darwin x86-64
7340        backend a little.
7341       
7342        Explicily define lisp-context-register slot in each backend (%gs
7343        for those imolementations that follow the standard ABI, %fs for
7344        Darwin.)
7345
73462006-08-18 09:44  gb
7347
7348        * compiler/X86/X8664/x8664-vinsns.lisp: Use :rcontext when
7349        necessary.
7350
73512006-08-18 09:43  gb
7352
7353        * compiler/X86/: x86-backend.lisp, x86-lap.lisp: Recognize
7354        :rcontext as a reference to the backend's LISP-CONTEXT-REGISTER
7355        slot.
7356
73572006-08-18 09:42  gb
7358
7359        * compiler/backend.lisp: Backend now has a lisp-context-register
7360        slot.
7361
73622006-08-18 09:42  gb
7363
7364        * compiler/X86/X8664/x8664-arch.lisp: No more (constant) rcontext.
7365
73662006-08-18 09:40  gb
7367
7368        * level-0/X86/: x86-def.lisp, x86-float.lisp, x86-io.lisp,
7369        x86-misc.lisp, x86-symbol.lisp, x86-utils.lisp: Refer to rcontext
7370        segment register as :rcontext, since x86-64 Darwin doesn't laugh
7371        and play like the other children.
7372
73732006-08-18 09:29  gb
7374
7375        * lisp-kernel/x86-exceptions.c: Copy some of the Mach exception
7376        code from the PPC version and tweak it a little; needs more work.
7377
73782006-08-18 09:27  gb
7379
7380        * lisp-kernel/x86-exceptions.h: Provide some interim Darwin
7381        conditionalization.
7382
73832006-08-18 09:25  gb
7384
7385        * lisp-kernel/m4macros.m4: Spell FREEBSD correctly.
7386       
7387        Generate an equate for HAVE_TLS.
7388
73892006-08-18 09:23  gb
7390
7391        * lisp-kernel/x86-gc.c: Changes in purify_xp().
7392
73932006-08-18 09:19  gb
7394
7395        * lisp-kernel/x86-spentry64.s: Darwin x86-64 assembler doesn't like
7396        absolute jumps, prefers slower ones.
7397       
7398        Move lock prefixes to their own lines, to satisfy you-know-who.
7399       
7400        If we don't have thread-local-storage (TLS), it's hard to avoid the
7401        get_tcr() call on each calback.
7402
74032006-08-18 09:13  gb
7404
7405        * lisp-kernel/: freebsdx8664/Makefile, linuxx8664/Makefile: Tell m4
7406        that we HAVE_TLS.
7407
74082006-08-17 10:41  phil
7409
7410        * examples/FFI/:
7411        Allocating-foreign-data-on-the-lisp-heap/ptrtest-compile.sh,
7412        Allocating-foreign-data-on-the-lisp-heap/ptrtest.c,
7413        Allocating-foreign-data-on-the-lisp-heap/ptrtest.lisp,
7414        Using-basic-calls-and-types/Readme.rtf,
7415        Using-basic-calls-and-types/typetest-compile.sh,
7416        Using-basic-calls-and-types/typetest.c,
7417        Using-basic-calls-and-types/typetest.lisp: Initial version
7418
74192006-08-17 10:40  phil
7420
7421        * examples/FFI/Allocating-foreign-data-on-the-lisp-heap/Readme.rtf:
7422        [no log message]
7423
74242006-08-08 13:07  gb
7425
7426        * lisp-kernel/darwinx8664/Makefile: New file.
7427
74282006-08-08 13:07  gb
7429
7430        * lisp-kernel/x86-exceptions.h: xp accessors for Darwinx8664.
7431
74322006-08-08 13:06  gb
7433
7434        * lisp-kernel/x86-constants64.h: REG_* constants for Darwin.
7435
74362006-08-08 13:05  gb
7437
7438        * lisp-kernel/x86-asmutils64.s: Darwin assembler doesn't like lock
7439        instructions on the same line as the locked instruction.  (Maybe
7440        there's a better way to do this, than just pretending that lock is
7441        a standalone instruction, but that lock instruction does seem to be
7442        treated as a prefix.)
7443
74442006-08-08 13:03  gb
7445
7446        * lisp-kernel/pmcl-kernel.c: Treat X8664 like PPC64 (e.g., use
7447        dlfcn) on Darwin.
7448
74492006-08-08 13:02  gb
7450
7451        * lisp-kernel/lisptypes.h: xcode 2.4 headers: <i386/ucontext.h>
7452        doesn't define mcontext64, but lots of other things reference it.
7453        #define it here for now, but that'll likely break when the headers
7454        are fixed.
7455
74562006-08-08 12:58  gb
7457
7458        * lisp-kernel/lisp-debug.c: Define Iregnames for darwinx8664.
7459
74602006-08-08 12:58  gb
7461
7462        * lisp-kernel/area.h: Define an IMAGE_BASE_ADDRESS for
7463        x8664/Darwin.
7464
74652006-07-29 08:41  gb
7466
7467        * level-1/l1-streams.lisp: STREAM-WRITE-BYTE, STREAM-WRITE-IVECTOR.
7468         :BASIC defaults to T in OPEN; BASIC-FILE-STREAM probably still
7469        needs READ/WRITE- SEQUENCE support.
7470
74712006-07-29 07:39  gb
7472
7473        * level-1/l1-aprims.lisp: ALLOCATE-RESOURCE, FREE-RESOURCE: use
7474        lock.  TODO: evaluate whether resources are worthwhile;  used for
7475        string-output-stream allocation and DELETE-DUPLICATES.
7476
74772006-07-29 06:27  gb
7478
7479        * library/lispequ.lisp: Resources aren't thread-private, need
7480        locks.
7481
74822006-07-29 06:26  gb
7483
7484        * level-1/l1-sysio.lisp: MAKE-FILE-STREAM: support for
7485        BASIC-STREAMs.
7486
74872006-07-29 06:26  gb
7488
7489        * level-1/l1-streams.lisp: OPEN handles BASIC-STREAMs; not yet the
7490        default.
7491
74922006-07-29 06:25  gb
7493
7494        * level-1/l1-reader.lisp: *PARSE-STRING-RESOURCE* probably hasn't
7495        been used in 10 or 12 years.
7496
74972006-07-29 03:40  gb
7498
7499        * level-1/l1-sysio.lisp: Most BASIC-FILE-STREAM stuff.
7500
75012006-07-29 03:40  gb
7502
7503        * library/lispequ.lisp: BASIC-FILE-STREAM.EXTERNAL-FORMAT, at least
7504        for now.
7505
75062006-07-29 03:39  gb
7507
7508        * level-1/l1-streams.lisp: BASIC-IO-STREAM; ALLOCATE-BASIC-STREAM
7509        makes one more slot in BASIC-FILE-STREAM.
7510
75112006-07-28 04:17  gb
7512
7513        * level-1/version.lisp: Bump.
7514
75152006-07-28 04:15  gb
7516
7517        * level-1/l1-streams.lisp: A couple of more (soon-to-be-used) slots
7518        in IOBLOCK.
7519
75202006-07-28 01:17  gb
7521
7522        * level-1/l1-streams.lisp: Lots of changes; lots more to go.
7523
75242006-07-28 01:16  gb
7525
7526        * level-1/l1-sockets.lisp: Pass :CHARACTER-P T to MAKE-FD-STREAM.
7527
75282006-07-28 00:58  gb
7529
7530        * examples/cocoa-listener.lisp: Want :SHARING :LOCK on listener
7531        output.
7532       
7533        (SLIME probably faces the same issue; should probably do something
7534        in the auto-flush case.  Of course, it's hard to know just what to
7535        do in that case. or at least what to do safely in that case.)
7536
75372006-07-28 00:49  gb
7538
7539        * level-1/l1-sysio.lisp: Define SELECT-STREAM-CLASS on
7540        FUNDAMENTAL-FILE-STREAM.
7541
75422006-07-28 00:49  gb
7543
7544        * lib/streams.lisp: READ-BYTE for BASIC-STREAMs.
7545
75462006-07-28 00:48  gb
7547
7548        * library/lispequ.lisp: Need an explicit
7549        BASIC-STREAM-FLAG.OPEN-CHARACTER bit, due to bivalence.
7550
75512006-07-28 00:47  gb
7552
7553        * lib/macros.lisp: BASIC-STREAM-IOBLOCK.
7554
75552006-07-25 03:48  gb
7556
7557        * compiler/optimizers.lisp: Compiler-macro for BASIC-STREAM-P.
7558
75592006-07-24 04:55  gb
7560
7561        * lib/streams.lisp: READ-CHAR bypasses STREAM-READ-CHAR for
7562        BASIC-STREAMs.
7563
75642006-07-24 04:55  gb
7565
7566        * level-1/l1-streams.lisp: Some BASIC-STREAM stuff starts to
7567        appear.
7568
75692006-07-24 04:51  gb
7570
7571        * library/lispequ.lisp: Add a plist to basic-/basic-file-stream.
7572
75732006-07-24 02:43  gb
7574
7575        * level-1/l1-sysio.lisp: FILE-STREAM is now abstract (and some
7576        sublasses may get that way); FUNDAMENTAL-FILE-STREAM is an
7577        implementation of it (and BASIC-FILE-STREAM soon will be.)
7578
75792006-07-23 03:05  gb
7580
7581        * level-1/l1-clos-boot.lisp: *class-table* entry for BASIC-STREAM.
7582
75832006-07-23 03:03  gb
7584
7585        * level-1/l1-streams.lisp: STREAM-IOBLOCK now takes 2 required args
7586        and is inlined.
7587       
7588        Some bug fixes; STREAM class no longer has slots.
7589       
7590        IOBLOCK-READ-CHAR-FUNCTION used by READ-CHAR.  %ioblock-read-byte
7591        variants; fix read-byte botch (should vector according to
7592        element-type.)
7593
75942006-07-23 02:54  gb
7595
7596        * level-1/: linux-files.lisp, l1-sysio.lisp, l1-sockets.lisp:
7597        STREAM-IOBLOCK now takes 2 required args.
7598
75992006-07-23 02:54  gb
7600
7601        * level-1/version.lisp: Bump.
7602
76032006-07-23 02:53  gb
7604
7605        * library/lispequ.lisp: Start to define what a BASIC-STREAM looks
7606        like.
7607
76082006-07-23 02:53  gb
7609
7610        * lib/macros.lisp: Move stream-ioblock access/locking macros here.
7611       
7612        Likewise WITH-EAGAIN.
7613
76142006-07-23 01:12  gb
7615
7616        * level-1/: l1-sysio.lisp, l1-streams.lisp, l1-boot-2.lisp,
7617        l1-sockets.lisp: Fix a few botches.
7618       
7619        :private arg to stream creation primitives replaced with :sharing,
7620        which can have values:
7621       
7622         :private (the default; stream can only be accessed by the creating
7623        thread)
7624         :lock  (the old, often slow, default); most accesses to stream
7625        involve locking
7626         :nil or :external (stream code doesn't enforce exclusion).
7627
76282006-07-22 23:57  gb
7629
7630        * level-1/l1-streams.lisp: Bootstrapping stuff.
7631       
7632        Move along, nothing to see here.
7633
76342006-07-20 03:43  gb
7635
7636        * level-1/: l1-boot-2.lisp, l1-sockets.lisp, l1-streams.lisp,
7637        l1-sysio.lisp: First (rough) cut at making streams "private"
7638        (effectively always locked by the "owning" thread) to reduce some
7639        locking overhead.  More to come, some of which will be a little
7640        tricky to bootstrap.
7641
76422006-07-20 01:09  gb
7643
7644        * lisp-kernel/: ppc-constants32.h, ppc-constants32.s,
7645        ppc-constants64.h, ppc-constants64.s, x86-constants64.h,
7646        x86-constants64.s: subtag_lisp_thread -> subtag_basic_stream.
7647
76482006-07-20 01:09  gb
7649
7650        * library/lispequ.lisp: new (istruct-based) LISP-THREAD accessors.
7651
76522006-07-20 01:08  gb
7653
7654        * level-1/version.lisp: Bump.
7655
76562006-07-20 01:07  gb
7657
7658        * level-1/l1-streams.lisp: Introduce "owner" slot in basic ioblock.
7659         A little tricky to bootstrap.
7660
76612006-07-20 01:05  gb
7662
7663        * level-0/l0-misc.lisp, level-1/l1-processes.lisp,
7664        level-1/l1-clos-boot.lisp, level-1/l1-lisp-threads.lisp: Use new
7665        (istruct-based) lisp-thread accessors.
7666
76672006-07-20 01:02  gb
7668
7669        * compiler/: PPC/PPC32/ppc32-arch.lisp, PPC/PPC64/ppc64-arch.lisp,
7670        X86/X8664/x8664-arch.lisp: Get rid of the lisp-thread subtag
7671        (lisp-thread's are ISTRUCTs now); re-use it for (to-be-introduced)
7672        BASIC-STREAM.
7673
76742006-07-15 15:02  gb
7675
7676        * level-1/l1-error-system.lisp: Insert some fresh lines in the
7677        IMPOSSIBLE-NUMBER condition :REPORT method.
7678
76792006-07-15 15:00  gb
7680
7681        * compiler/X86/x862.lisp: x862-%aref1,x862-%aset1: don't try to do
7682        simple vector operations unless we're sure that the vector is a
7683        (SIMPLE-ARRAY * (*)) and we know the element-type (these were
7684        leaping into the simple-typed-vector case when the element-type was
7685        known but the vector wasn't known to be SIMPLE.
7686
76872006-07-14 05:57  gb
7688
7689        * compiler/nx0.lisp: NX-FORM-TYPEP: unqoute constants.
7690
76912006-07-13 16:01  gb
7692
7693        * level-1/l1-typesys.lisp: SPECIALIZED-ARRAY-ELEMENT-TYPES needs to
7694        know about FIXNUM arrays.
7695
76962006-07-11 14:23  gb
7697
7698        * compiler/X86/x862.lisp: Destination and 1st source arg overlap
7699        (2-address instructions) in natural logical, arithmetic operations.
7700
77012006-07-05 02:38  gb
7702
7703        * release-notes.txt: Update.
7704
77052006-07-05 02:22  gb
7706
7707        * level-0/l0-init.lisp: Reluctantly put :MCL back on *features*;
7708        its removal needs to be better publicized.
7709
77102006-07-04 22:24  gb
7711
7712        * level-1/linux-files.lisp: Use NATIVE-TRANSLATED-NAMESTRING on the
7713        PROGRAM arg to RUN-PROGRAM.
7714
77152006-07-04 22:23  gb
7716
7717        * level-1/version.lisp: Bump.
7718
77192006-06-29 02:11  gb
7720
7721        * lisp-kernel/image.h, xdump/heap-image.lisp: Bump
7722        image-abi-version.
7723
77242006-06-28 05:24  gb
7725
7726        * level-0/l0-cfm-support.lisp: *rtld-default* wants to be a null
7727        pointer on DarwinPPC32 (at the very least, that platform's
7728        xFindSymbol gets confused by anything but a null pointer/global
7729        lookup.)
7730
77312006-06-28 05:09  gb
7732
7733        * level-1/version.lisp: Bump.  Call the FreeBSD/AMD64 version
7734        "Alpha", which may be a bit generous (pretty regular deadlock,
7735        random thread creation errors, other bugs.)
7736
77372006-06-28 05:07  gb
7738
7739        * lisp-kernel/freebsdx8664/.gdbinit: new; awfully similar to linux
7740        x86-64 version.
7741
77422006-06-28 04:04  gb
7743
7744        * lisp-kernel/x86-exceptions.c: FreeBSD doesn't do a good job of
7745        identifying the cause of XMM FP exceptions.  Try to do that by
7746        looking at MXCSR bits.
7747
77482006-06-28 04:03  gb
7749
7750        * lisp-kernel/x86-spentry64.s: FreeBSD syscalls set carry flag to
7751        indicate error return.
7752
77532006-06-28 04:03  gb
7754
7755        * level-1/: l1-sockets.lisp, linux-files.lisp,
7756        x86-trap-support.lisp: Some FreeBSD changes/fixes.
7757
77582006-06-28 04:02  gb
7759
7760        * level-0/l0-cfm-support.lisp: Remove a #+freebsd-target
7761        breakpoint.
7762
77632006-06-27 18:08  gb
7764
7765        * level-0/l0-cfm-support.lisp: fix (?) nested #+/#-.  Maybe.
7766
77672006-06-27 17:30  gb
7768
7769        * lisp-kernel/x86-exceptions.h: Fix Linux def of IS_MAYBE_INT_TRAP.
7770
77712006-06-27 17:27  gb
7772
7773        * lisp-kernel/pmcl-kernel.c: (possibly) make get_r_debug more
7774        portable; possibly break it completely ...
7775
77762006-06-27 08:55  gb
7777
7778        * lisp-kernel/x86-exceptions.c: map the altstack
7779        read/write/execute.
7780
77812006-06-27 08:54  gb
7782
7783        * lisp-kernel/thread_manager.c: Fix os_get_stack_bounds() for
7784        FreeBSD.
7785
77862006-06-27 08:54  gb
7787
7788        * lisp-kernel/Threads.h: FreeBSD needs prototypes from
7789        <pthread_np.h>
7790
77912006-06-27 08:53  gb
7792
7793        * lib/compile-ccl.lisp: New (renamed) kernel-build-direcory for
7794        :freebsdx8664.
7795
77962006-06-27 08:53  gb
7797
7798        * level-1/x86-trap-support.lisp: freebsd x8664 GPR indices.  (Needs
7799        testing.)
7800       
7801        Don't conditionalize as much code. Indices/offsets are
7802        platform-specific, but accessors defiend in terms of them needn't
7803        be.
7804
78052006-06-27 08:51  gb
7806
7807        * level-1/x86-callback-support.lisp: Remove 1st line (bogus
7808        comment.)
7809
78102006-06-27 08:50  gb
7811
7812        * level-0/l0-init.lisp: More freebsd x8664 features.
7813
78142006-06-27 08:50  gb
7815
7816        * scripts/openmcl64: Update for FreeBSD/amd64.
7817
78182006-06-27 08:47  gb
7819
7820        * compiler/X86/X8664/x8664-backend.lisp: FreeBSD backend has
7821        :freebsdx8664-target as a target-specific-feature.
7822
78232006-06-27 05:05  gb
7824
7825        * lisp-kernel/: freebsdx8664/Makefile, freebsd8664/Makefile,
7826        freebsd8664/elf_x86_64.x: directory rename
7827
78282006-06-27 04:59  gb
7829
7830        * xdump/xx8664-fasload.lisp: FreeBSD xload-backend.
7831
78322006-06-27 04:47  gb
7833
7834        * lisp-kernel/x86-exceptions.h: Some macros for FreeBSD changes.
7835
78362006-06-27 04:46  gb
7837
7838        * lisp-kernel/x86-exceptions.c: FreeBSD changes (at least enough to
7839        recognize UUOs, which generate SIGBUS vice SIGSEGV.)
7840
78412006-06-27 04:45  gb
7842
7843        * lisp-kernel/x86-asmutils64.s: Define freebsd_sigreturn.
7844       
7845        TODO (maybe): copy the sigtramp code when evacuating the altstack.
7846
78472006-06-27 04:44  gb
7848
7849        * lisp-kernel/thread_manager.c: FreeBSD sigreturn from
7850        suspend_resume_handler.
7851
78522006-06-27 04:44  gb
7853
7854        * lisp-kernel/pmcl-kernel.c: Some FreeBSD conditionalization;
7855        get_r_debug() for ELF platforms.  (Needs testing under Linux.)
7856
78572006-06-27 04:43  gb
7858
7859        * lisp-kernel/imports.s: Don't import metering-control; do import
7860        get_r_debug().
7861
78622006-06-27 04:42  gb
7863
7864        * library/x8664-freebsd-syscalls.lisp: New file.  Should check
7865        word-size stuff (here and in other versions.)
7866
78672006-06-27 04:42  gb
7868
7869        * lib/misc.lisp: Find MACHINE-VERSION string via #_sysctl on
7870        FreeBSD.
7871
78722006-06-27 04:39  gb
7873
7874        * lib/foreign-types.lisp: Signed char nonsense (should use target
7875        ftd, not reader macros here.)
7876
78772006-06-27 04:38  gb
7878
7879        * lib/compile-ccl.lisp: Some FreeBSD support.
7880
78812006-06-27 04:36  gb
7882
7883        * level-1/: l1-sockets.lisp, l1-streams.lisp, linux-files.lisp:
7884        Some FreeBSD changes/conditionalization. Maybe not enough.
7885
78862006-06-27 04:35  gb
7887
7888        * level-1/l1-boot-1.lisp: Recognize FREEBSD platform-os-name.
7889
78902006-06-27 04:34  gb
7891
7892        * level-0/X86/: .cvsignore, X8664/.cvsignore: Ignore *fsl.
7893
78942006-06-27 04:34  gb
7895
7896        * level-0/l0-io.lisp: FreeBSD syscalls.
7897
78982006-06-27 04:33  gb
7899
7900        * level-0/l0-init.lisp: Some FreeBSD features.
7901
79022006-06-27 04:33  gb
7903
7904        * level-0/l0-cfm-support.lisp: Lots of FreeBSD conditionalization,
7905        changes.
7906       
7907        MAY HAVE BROKEN LINUX PORTS; need to recompile on those platforms
7908        and test.
7909       
7910        Now depends on an imported lisp-kernel function on ELF platforms
7911        (Linux/FreeBSD), and therefore depends on recent kernel changes.
7912
79132006-06-27 04:30  gb
7914
7915        * level-0/.cvsignore: Ignore *fsl.
7916
79172006-06-27 04:29  gb
7918
7919        * compiler/X86/X8664/x8664-backend.lisp: Fix platform-syscall-mask
7920        in freebsd backend.
7921
79222006-06-27 04:27  gb
7923
7924        * compiler/X86/X8664/x8664-arch.lisp: Don't import
7925        metering-control; do import get-r-debug (for Elf shared libraries.)
7926       
7927        A yield-syscall constant for FreeBSD. (This is all a bad idea ...)
7928
79292006-06-27 04:26  gb
7930
7931        * compiler/PPC/: PPC32/ppc32-arch.lisp, PPC64/ppc64-arch.lisp:
7932        Don't import metering-control; do import get-r-debug (for Elf
7933        shared libraries.)
7934
79352006-06-27 04:26  gb
7936
7937        * compiler/nx1.lisp: Use the non-eabi syscall on freebsd as well.
7938
79392006-06-26 16:38  gb
7940
7941        * compiler/X86/X8664/x8664-vinsns.lisp:
7942        SET-BIGITS-AND-HEADER-FOR-FIXNUM-OVERFLOW: need to change the
7943        (wrong) sign of the top 3 (fixnumshift) bits only.  Where did the
7944        constant #xffff000000000000 come from ?
7945
79462006-06-26 16:35  gb
7947
7948        * compiler/X86/x862.lisp: Fix some indentation.
7949
79502006-06-25 20:32  gb
7951
7952        * compiler/X86/X8664/x8664-backend.lisp: FreeBSD x8664 backend;
7953        change initialiation of x8664 foreign-type stuff.
7954
79552006-06-25 20:31  gb
7956
7957        * compiler/backend.lisp: PLATFORM-OS-FREEBSD.
7958
79592006-06-23 19:52  gb
7960
7961        * darwin-headers/: gl/C/.cvsignore, libc/C/.cvsignore,
7962        quicktime/C/.cvsignore: Ignore Developer subdirectory.  c
7963
79642006-06-23 19:28  gb
7965
7966        * release-notes.txt: Update some.
7967
79682006-06-23 19:11  gb
7969
7970        * examples/gtk2-clock.lisp: New file.
7971
79722006-06-23 18:56  gb
7973
7974        * level-1/version.lisp: Bump.
7975
79762006-06-23 18:52  gb
7977
7978        * lib/ccl-export-syms.lisp: Export DEFLOADVAR.
7979
79802006-06-22 13:39  gb
7981
7982        * x86-headers64/gnome2/C/.cvsignore: new
7983
79842006-06-22 13:36  gb
7985
7986        * x86-headers64/: gl/C/.cvsignore, gnome2/C/populate.sh: new
7987
79882006-06-22 13:33  gb
7989
7990        * x86-headers64/: gl/.cvsignore, gl/C/populate.sh,
7991        gnome2/.cvsignore: new
7992
79932006-06-22 13:30  gb
7994
7995        * examples/opengl-ffi.lisp: #+linuxppc-target -> #+linux-target.
7996
79972006-06-22 13:28  gb
7998
7999        * level-1/version.lisp: Bump.
8000
80012006-06-21 15:15  gb
8002
8003        * lisp-kernel/: ppc-constants64.h, ppc-constants64.s,
8004        ppc-spentry.s: Define new string subtags; handle them in ppc64
8005        misc_ref/misc_set.
8006
80072006-06-21 15:14  gb
8008
8009        * level-0/PPC/ppc-array.lisp: Fix %INIT-MISC (both ppc2 and ppc64
8010        versions) to handle FIXNUM vectors, new UCS4 strings.
8011
80122006-06-21 15:14  gb
8013
8014        * level-0/l0-array.lisp: Fix %INIT-MISC (bot ppc2 and ppc64
8015        versions) to handle FIXNUM vectors, new UCS4 strings.
8016
80172006-06-21 15:12  gb
8018
8019        * darwin-headers/: carbon/C/populate.sh, cocoa/C/populate.sh,
8020        gl/C/populate.sh, libc/C/populate.sh, quicktime/C/populate.sh,
8021        webkit/C/populate.sh: Use 10.4u headers from XCode SDK.
8022
80232006-06-21 15:11  gb
8024
8025        * compiler/PPC/PPC64/ppc64-arch.lisp: Add SUBTAG-NEW-STRING.
8026
80272006-06-21 15:11  gb
8028
8029        * compiler/PPC/PPC32/ppc32-arch.lisp: MAX-32-BIT-IVECTOR-SUBTAG
8030        wasn't updated with the introduction of fixnum vectors, (unused)
8031        UCS4 "new"strings.
8032
80332006-06-16 03:50  gb
8034
8035        * examples/objc-support.lisp: Re-compute static NSString info after
8036        opening an extension framework.
8037
80382006-06-16 03:45  gb
8039
8040        * examples/webkit.lisp: Use new functions for augmenting
8041        interfaces, loading framework.
8042
80432006-06-16 03:43  gb
8044
8045        * examples/objc-runtime.lisp: Juggle things around so that add-on
8046        framework bundles get loaded on appication re-launch.
8047       
8048        REVIVE-OBJC-CLASSES tells MAP-OBJC-CLASSES not to hit the database,
8049        since (a) it may not be there, or may not be where we can find it
8050        yet and (b) it's probably more reasonable to do that than it would
8051        be to teach CLOS about classes that're "discovered" when the
8052        appication's launched on a newer OS release than it was saved on.
8053
80542006-06-16 03:39  gb
8055
8056        * examples/cocoa-application.lisp: Touch tha application bundle
8057        before saving an image into it.  That -may- convincve
8058        LaunchServices to do the right thing.
8059
80602006-06-16 03:38  gb
8061
8062        * examples/objc-support.lisp: Reload any addon/framework bundles
8063        that had been loaded before the image was saved when starting a
8064        bundled application.
8065       
8066        Juggle things around, so that that works (need to be able to use
8067        low-level bridge features early.)
8068
80692006-06-16 03:36  gb
8070
8071        * lib/db-io.lisp: Disable the #? reader macro.
8072
80732006-06-14 15:42  gb
8074
8075        * level-0/: PPC/ppc-def.lisp, X86/x86-def.lisp: Fix #+APPLY+
8076        lfun-bits.
8077
80782006-06-12 20:24  gb
8079
8080        * lib/ppc-backtrace.lisp: PPC version of
8081        %find-register-argument-value had the same sort of fencepost as the
8082        x86-64 version had a few days ago.
8083
80842006-06-10 23:52  gb
8085
8086        * lib/arglist.lisp: %ARGLIST-INTERNAL: if generic-function, return
8087        its GENERIC-FUNCTION-LAMBDA-LIST.
8088
80892006-06-10 23:51  gb
8090
8091        * level-1/l1-clos.lisp: Give reader/writer method args more
8092        descriptive names. (Barely more descriptive ...)
8093
80942006-06-10 19:25  gb
8095
8096        * level-1/l1-clos-boot.lisp: Arrgh.  In
8097        %MAYBE-STD-SETF-SLOT-VALUE-USING-CLASS, we know nothing about the
8098        type of the instance, so don't use INSTANCE.SLOTS (instead, let
8099        INSTANCE-SLOTS do a TYPECASE; it's inlined at this point.)
8100       
8101        This was keeping non-standard instances - like ObjC classes and
8102        metaclasses - from having some of their slots initialized
8103        correctly.
8104
81052006-06-10 19:22  gb
8106
8107        * examples/objc-clos.lisp: PRINT-OBJECT methods for objc-class,
8108        objc-metaclass: don't die if the class is unnamed (makes it easier
8109        to print classes for debugging during initialization.)
8110
81112006-06-10 13:05  gb
8112
8113        * level-1/ppc-trap-support.lisp: Fix LinuxPPC64 versions of
8114        XP-FPSCR-INFO and XP-DOUBLE-FLOAT.
8115
81162006-06-08 05:01  gb
8117
8118        * release-notes.txt: Update a bit.
8119
81202006-06-08 03:56  gb
8121
8122        * lisp-kernel/image.h, xdump/heap-image.lisp: Bump
8123        image-abi-version.
8124
81252006-06-08 03:46  gb
8126
8127        * xdump/faslenv.lisp: Bump (min) fasl version.
8128
81292006-06-08 03:35  gb
8130
8131        * lib/nfcomp.lisp: Bump (current) fasl-version.
8132
81332006-06-08 03:28  gb
8134
8135        * lisp-kernel/linuxx8664/Makefile: -O2.
8136
81372006-06-08 03:26  gb
8138
8139        * xdump/faslenv.lisp: Bump (max) fasl version.
8140
81412006-06-08 03:18  gb
8142
8143        * level-1/version.lisp: Bump; give x86-64 port the benefit of the
8144        doubt and claim that it's a beta.
8145
81462006-06-08 03:18  gb
8147
8148        * lisp-kernel/darwinppc64/Makefile: Enable -O2.
8149
81502006-06-08 03:17  gb
8151
8152        * lisp-kernel/darwinppc/Makefile: Some commented-out debugging
8153        options; enable -O2.
8154
81552006-06-08 02:55  gb
8156
8157        * lisp-kernel/x86-exceptions.c: thread_signal_setup() moved here.
8158        Handle suspend (and maybe someday resume, again) signals on the
8159        altstack, since we don't really want a signal context in the middle
8160        of the tagged lisp stack ...
8161
81622006-06-08 02:52  gb
8163
8164        * lisp-kernel/thread_manager.c: thread_signal_setup() moved to
8165        PLATFORM-exceptions.c; some constants/prototypes moved to
8166        Threads.h.
8167
81682006-06-08 02:51  gb
8169
8170        * lisp-kernel/ppc-exceptions.c: suspend_resume_handler() installed
8171        via install_signal_handler(); thread_signal_setup() moved here, to
8172        do that installation.
8173
81742006-06-08 02:50  gb
8175
8176        * lisp-kernel/pmcl-kernel.c: Don't enable_fp_exceptions() twice.
8177       
8178        Don't call (or define) prepare_for_the_worst(), which is kind of
8179        too bad ...
8180
81812006-06-08 02:49  gb
8182
8183        * lisp-kernel/Threads.h: suspend/resume constants, prototypes.
8184
81852006-06-08 01:11  gb
8186
8187        * level-1/l1-files.lisp: Back out of ill-advised changed to %LOAD;
8188        let OPTIMIZE proclamations persist beyond the LOAD.
8189
81902006-06-07 21:45  gb
8191
8192        * lisp-kernel/x86-subprims64.s: No nore %tsp/%Rnext_tsp.
8193
81942006-06-07 21:38  gb
8195
8196        * lisp-kernel/x86-spentry64.s: Don't maintain current/next tsp in
8197        MMX regs.  Do maintain them in TCR.
8198
81992006-06-07 21:37  gb
8200
8201        * lisp-kernel/x86-macros.s: Don't maintain %tsp when stack-consing;
8202        update (decrement) tcr.next_tsp atomically, use %stack_temp as a
8203        temporary (old tsp), finish frame by storing into tcr.save_tsp.
8204
82052006-06-07 21:34  gb
8206
8207        * lisp-kernel/x86-exceptions.c: tsp is in the TCR now.
8208
82092006-06-07 21:33  gb
8210
8211        * lisp-kernel/x86-constants64.s: No more %tsp, %Rnext_tsp.  Define
8212        %stack_temp.
8213
82142006-06-07 21:32  gb
8215
8216        * lisp-kernel/x86-constants64.h: No more Itsp, Inext_tsp.
8217
82182006-06-07 21:30  gb
8219
8220        * level-0/X86/x86-def.lisp: %CURRENT-TSP: the tsp is in the TCR
8221        now.
8222
82232006-06-07 21:30  gb
8224
8225        * compiler/X86/X8664/x8664-vinsns.lisp: Don't try to maintain %tsp
8226        (since it no longer exists ...).  Use %stack-temp in some cases.
8227
82282006-06-07 21:29  gb
8229
8230        * compiler/X86/X8664/x8664-arch.lisp: No more %tsp or %next-tsp.
8231        %stack-temp is a symbolic name for an MMX register that can be used
8232        for (e.g.) linking frames on the temp/foreign stacks (or for any
8233        other purpose ...)
8234
82352006-06-07 15:29  gb
8236
8237        * compiler/X86/X8664/x8664-vinsns.lisp: No more %Rforeign_sp.  Keep
8238        tcr.next_tsp in sync with %next_tsp Check to ensure that
8239        %tsp,tcr.save_tsp,and tcr.next_tsp all have the same value when
8240        allocating on the temp stack.  (This will soon change, so that %tsp
8241        and %next_tsp will not be canonical and the tcr fields are, then
8242        will change so that %tsp and %next_tsp will cease to exist.)
8243
82442006-06-07 15:25  gb
8245
8246        * lisp-kernel/x86-subprims64.s: No more %Rforeign_sp.
8247
82482006-06-07 15:25  gb
8249
8250        * lisp-kernel/: x86-macros.s, x86-spentry64.s: Keep tcr.next_tsp in
8251        sync with %Rnext_tsp.  No more %Rforeign_sp, but we can use %mm5 as
8252        a temporary.
8253
82542006-06-07 15:23  gb
8255
8256        * lisp-kernel/x86-exceptions.c: Find the foreign RSP from the TCR;
8257        don't need FP regs for this.  (They're sometimes invalid and
8258        sometimes missing, which is the point of recent changes.)
8259
82602006-06-07 15:21  gb
8261
8262        * lisp-kernel/x86-constants64.s: No foreign_sp.  Rename %next_tsp
8263        to %Rnext_tsp to avoid potential m4 lossage.
8264
82652006-06-07 15:20  gb
8266
8267        * lisp-kernel/x86-constants64.h: No Iforeign_sp.
8268
82692006-06-07 15:20  gb
8270
8271        * lisp-kernel/thread_manager.c: Initialize tcr->next_tsp on X86.
8272
82732006-06-07 15:19  gb
8274
8275        * level-1/version.lisp: Bump.
8276
82772006-06-07 15:19  gb
8278
8279        * level-0/X86/x86-def.lisp: Get foreign-sp from the TCR.
8280
82812006-06-07 15:18  gb
8282
8283        * compiler/X86/X8664/x8664-arch.lisp: More bootstrapping: no more
8284        foreign-sp register (though some code still uses %mm5 as a
8285        temporary, the "canonical" foreign SP is maintained in the TCR.)
8286
82872006-06-07 04:52  gb
8288
8289        * lisp-kernel/x86-macros.s: When making a catch/unwind-protect
8290        frame, get the foreign SP out of the TCR.
8291
82922006-06-07 04:52  gb
8293
8294        * compiler/X86/X8664/x8664-vinsns.lisp,
8295        lisp-kernel/x86-spentry64.s: More bootstrapping: continue to
8296        maintain the foreign sp in both the TCR and the MMX register, but
8297        consider the TCR version to be canonical.
8298
82992006-06-07 02:46  gb
8300
8301        * compiler/X86/X8664/x8664-vinsns.lisp: More bootstrapping: if the
8302        %tsp MMX register doesn't match the value in the tcr, trap.
8303        Likewise for %foreign-sp.
8304
83052006-06-07 01:29  gb
8306
8307        * compiler/X86/X8664/x8664-vinsns.lisp, lisp-kernel/x86-macros.s,
8308        lisp-kernel/x86-spentry64.s: Try to keep tcr.save_tsp in synch with
8309        %tsp, and likewise for %Rforeign_sp/tcr.foreign_sp.
8310       
8311        (The idea is to keep the temp/foreign stack pointers in the tcr and
8312        only use the MMX registers as temporaries, since it seems that
8313        handlers for asynchronous signals can't count on the MMX register
8314        values in the signal context being correct.  This seems to either
8315        be a Linux kernel bug or ill-considered if it's intentional
8316        behavior, but it seems better to work around it this way.)
8317       
8318        This is just an early step in bootstrapping that change; it's being
8319        checked into CVS so that it doesn't get lost (and so that I can
8320        recover to this point if/when I hose things on a later step.)
8321
83222006-06-07 01:24  gb
8323
8324        * compiler/X86/X8664/x8664-arch.lisp: Add a next-tsp slot to the
8325        tcr.
8326
83272006-06-07 01:22  gb
8328
8329        * lisp-kernel/: x86-constants64.h, x86-constants64.s: Add a
8330        next_tsp slot to the tcr.
8331
83322006-06-06 04:25  gb
8333
8334        * lib/ppc-metering.lisp: no hope
8335
83362006-06-06 04:22  gb
8337
8338        * lib/x86-backtrace.lisp: %find-register-argument-value: Current
8339        frame (cfp argument) could be an exception callback frame (xcf-p
8340        may be true of it), in which case the saved register value is in
8341        the xcf.xp context.  (Basically, this means look at the first frame
8342        if it's an xcf, otherwise skip it and start with the child.)
8343
83442006-06-06 01:48  gb
8345
8346        * compiler/X86/x86-lapmacros.lisp,
8347        compiler/X86/X8664/x8664-vinsns.lisp, lisp-kernel/x86-macros.s:
8348        Using imul to box fixnums is smaller and seems to be faster than
8349        using lea with a scale factor.
8350
83512006-06-05 23:56  gb
8352
8353        * lisp-kernel/thread_manager.c: I don't think that
8354        suspend_resume_handler wants to have suspend signals unmasked, does
8355        it ?
8356
83572006-06-05 12:43  gb
8358
8359        * library/chud-metering.lisp: area-readonly is in ccl:: now.
8360
83612006-06-03 03:11  gb
8362
8363        * lisp-kernel/x86-spentry64.s: In _SPnthrowvalues: don't skip the
8364        last catch frame, do skip others (test was backwards.  As it
8365        probably had been in the single-value case at one point.)
8366
83672006-06-02 03:48  gb
8368
8369        * lib/encapsulate.lisp: Don't print trace indent/outdent stuff to
8370        *terminal-io*; do print it to *trace-output*.
8371
83722006-06-01 20:20  gb
8373
8374        * level-0/l0-array.lisp: There's a T in subtag.
8375
83762006-06-01 20:17  gb
8377
8378        * compiler/X86/x862.lisp: X862-MVCALL wasn't handling things like:
8379       
8380        (multiple-value-bind (...)   (multiple-value-call #'foo ...))
8381       
8382        correctly.
8383
83842006-06-01 20:16  gb
8385
8386        * compiler/nx0.lisp: Defvars for global optimization quantities
8387        moved to level-0.
8388
83892006-06-01 20:15  gb
8390
8391        * level-1/l1-files.lisp: Bind the variables which hold global
8392        compiler optimization quantities, since people persist in doing
8393        things like:
8394       
8395        (declaim (optimize
8396        <something-that-they-probably-think-has-local-effects>))
8397       
8398        without bothering to use EVAL-WHEN or otherwise thinking very
8399        clearly.
8400       
8401        Note that this means that anyone who wanted such a declamation to
8402        have persistent global effects is now SOL.  Blame whoever wrote
8403        (for instance) clx/glx.lisp.
8404
84052006-06-01 20:11  gb
8406
8407        * level-0/l0-init.lisp: Move *nx-speed*, etc here, so that they can
8408        be referenced early in the cold load.
8409
84102006-06-01 13:13  gb
8411
8412        * lib/x86-backtrace.lisp: In %FIND-REGISTER-ARGUMENT-VALUE, pass a
8413        pointer to ENCODED-GPR-LISP if we have to get the register value
8414        from an exception frame.
8415
84162006-05-30 19:27  gwking
8417
8418        * tools/asdf.lisp: Updated asdf to the current CVS head (revision
8419        1.98)
8420
84212006-05-30 17:12  gb
8422
8423        * level-1/version.lisp: bump again.
8424
84252006-05-30 16:31  gb
8426
8427        * lisp-kernel/x86-spentry64.s: When unwinding the stack, try to
8428        ensure that tcr.xframe is updated from the catch frame (a) in all
8429        execution paths and (b) before RSP is updated.
8430
84312006-05-30 16:30  gb
8432
8433        * level-0/l0-array.lisp, lib/sequences.lisp: Handle (simple) fixnum
8434        vectors.
8435
84362006-05-30 16:29  gb
8437
8438        * level-1/l1-typesys.lisp: Add a DEFTYPE for fixnum vectors.
8439
84402006-05-30 16:29  gb
8441
8442        * release-notes.txt: Update some more ...
8443
84442006-05-30 16:23  gb
8445
8446        * lib/ccl-export-syms.lisp: There are two 'e's in UNPROCESSED.
8447        Apparently.
8448
84492006-05-30 16:15  gb
8450
8451        * release-notes.txt: updated
8452
84532006-05-30 01:58  gb
8454
8455        * level-1/version.lisp: Bump.
8456
84572006-05-30 01:48  gb
8458
8459        * lisp-kernel/x86-exceptions.c: altstack_interrupt_handler: having
8460        made copies of the signal context and siginfo on the foreign stack,
8461        don't pass the originals to interrupt_handler().
8462       
8463        (altstack_interrupt_handler() looks suspiciously like
8464        altstack_signal_handler(), which probably had the same bug a few
8465        months ago ...)
8466       
8467        Since the alternate signal stack (as we use it) isn't reentrant,
8468        the next signal (perhaps a suspend signal) overwrote the context.
8469        Which is one reason to have made a copy in the first place ...
8470
84712006-05-30 01:43  gb
8472
8473        * level-1/l1-lisp-threads.lisp: In THREAD-ENABLE, use the new
8474        %TIMED-WAIT-ON-SEMAPHORE-PTR; regardless of whether or not a
8475        timeout is a good idea here, make sure that the timeout isn't
8476        fooled by #$EINTR.
8477
84782006-05-30 01:39  gb
8479
8480        * level-1/linux-files.lisp: Rename the old
8481        %TIMED-WAIT-ON-SEMAPHORE-PTR to %PROCESS-WAIT-ON-SEMAPHORE-PTR,
8482        since it basically waits indefinitely.
8483       
8484        Split out the functionality in TIMED-WAIT-ON-SEMAPHORE into a new
8485        %TIMED-WAIT-ON-SEMAPHORE-PTR function, so that it's possible to do
8486        a "timed wait" that handles interruptions, etc. when the caller
8487        just has a "raw" (native) semaphore.
8488       
8489        Change callers, endure warnings.  New binaries soon.
8490
84912006-05-30 01:36  gb
8492
8493        * level-0/l0-misc.lisp: When waiting for a lock, use the new
8494        %PROCESS-WAIT-ON-SEMAPHORE-PTR.
8495
84962006-05-29 22:34  gb
8497
8498        * lisp-kernel/x86-exceptions.c: The
8499        clear_tcr_save_allocptr_tag_instruction opcode array was one byte
8500        too small ...
8501
85022006-05-29 14:03  gb
8503
8504        * level-1/linux-files.lisp: In %OS-GETCWD: don't trust
8505        syscall-based getcwd (it doesn't work as it once did/is documented
8506        to on linuxx8664); use the library function on all platforms.
8507
85082006-05-29 14:02  gb
8509
8510        * lisp-kernel/x86-exceptions.c: Clear interrupt_pending flag before
8511        processing interrupt.
8512
85132006-05-28 17:01  gb
8514
8515        * lisp-kernel/ppc-exceptions.c: If we handle a
8516        SIGNAL_FOR_PROCESS_INTERRUPT trap, clear tcr->interrupt_pending.
8517       
8518        Back out of the hack that tried to work around a Darwin bug (FP
8519        exception flags were cleared in the MSR after a thread had been
8520        interrupted via pthread_kill()), since the fix seems not to be
8521        GC-safe.
8522       
8523        Add some debugging code to print when the exception lock is
8524        acquired/released.
8525
85262006-05-28 01:10  gb
8527
8528        * level-1/solaris-files.lisp: long gone
8529
85302006-05-23 20:25  gb
8531
8532        * compiler/: PPC/ppc2.lisp, X86/x862.lisp: D'oh!
8533
85342006-05-22 22:59  gb
8535
8536        * darwin-headers/addressbook/: C/populate.sh, .cvsignore,
8537        C/.cvsignore: New file.
8538
85392006-05-22 22:57  gb
8540
8541        * level-1/l1-processes.lisp: PROCESS-SUSPEND: don't allow current
8542        thread to suspend itself.
8543
85442006-05-22 22:57  gb
8545
8546        * compiler/PPC/PPC64/ppc64-vinsns.lisp: Use the SP red zone to load
8547        SINGLE-FLOAT constants.
8548       
8549        SINGLE-FLOAT foreign args are stored in the low 32 bits of each
8550        64-bit arg word, regardless of whether they're also passed in
8551        f1-f13 as well.
8552
85532006-05-22 22:55  gb
8554
8555        * compiler/PPC/PPC64/ppc64-backend.lisp: Callback fixes:
8556        SINGLE-FLOATs passed in memory are passed in the low 32 bits of the
8557        64-bit word.
8558
85592006-05-22 22:54  gb
8560
8561        * compiler/PPC/PPC32/ppc32-vinsns.lisp: Use the red zone (on SP)
8562        for LOAD-SINGLE-FLOAT-CONSTANT, LOAD-DOUBLE-FLOAT-CONSTANT.
8563
85642006-05-22 22:53  gb
8565
8566        * compiler/PPC/PPC32/ppc32-backend.lisp: "poweropen ABI" (Darwin)
8567        callback fixes: SINGLE-FLOATs passed in memory are passed as ...
8568        SINGLE-FLOATs, so don't use %GET-SINGLE-FLOAT-FROM-DOUBLE-PTR to
8569        access them.
8570
85712006-05-22 03:53  gb
8572
8573        * level-1/version.lisp: Bump.
8574
85752006-05-22 03:32  gb
8576
8577        * compiler/X86/X8664/x8664-vinsns.lisp: fixnum->float vinsns.
8578
85792006-05-22 03:31  gb
8580
8581        * compiler/X86/x862.lisp: Numeric contagion on binops,
8582        fixnum->float.
8583
85842006-05-22 03:29  gb
8585
8586        * compiler/PPC/ppc2.lisp: Do stupid self-tail-call tricks on PPC as
8587        well.
8588
85892006-05-22 03:28  gb
8590
8591        * compiler/PPC/PPC32/ppc32-vinsns.lisp: Load tcr.cs-limit a little
8592        earlier when creating a stack frame inline.  Doesn't seem to affect
8593        latency much.
8594
85952006-05-22 03:27  gb
8596
8597        * compiler/X86/x862.lisp: Comment formatting on the first line of
8598        the file.
8599
86002006-05-22 03:26  gb
8601
8602        * compiler/nx0.lisp: Check argument counts on self-calls.  (AFAIK,
8603        this hasn't been done for at least 20 years in MCL/OpenMCL ...)
8604
86052006-05-21 07:34  gb
8606
8607        * compiler/X86/x862.lisp: Long-standing X862-COPY-REGISTER bug.
8608
86092006-05-21 07:32  gb
8610
8611        * compiler/PPC/ppc2.lisp: Implement (late) div2; use (simple)
8612        numeric-contagion stuff for arithmetic ops.
8613
86142006-05-21 07:31  gb
8615
8616        * compiler/nx1.lisp: Use div2 for /-2.
8617
86182006-05-21 07:31  gb
8619
8620        * compiler/nx0.lisp: Binop numeric contagion.
8621
86222006-05-21 06:49  gb
8623
8624        * compiler/nx0.lisp: ACODE-REAL-CONSTANT-P.
8625
86262006-05-21 06:49  gb
8627
8628        * compiler/PPC/ppc2.lisp: Weird case in ppc2-copy-register wasn't
8629        weird, just wrong.
8630
86312006-05-21 06:17  gb
8632
8633        * level-0/l0-pred.lisp: PPC64: %typep recognizes
8634        SIMPLE-FIXNUM-VECTORs.
8635
86362006-05-21 06:16  gb
8637
8638        * compiler/PPC/: PPC32/ppc32-vinsns.lisp, PPC64/ppc64-vinsns.lisp:
8639        Fixnum vector stuff.  FIXNUM->FPR uses SP red zone.
8640
86412006-05-21 06:16  gb
8642
8643        * compiler/PPC/PPC32/ppc32-arch.lisp,
8644        compiler/PPC/PPC64/ppc64-arch.lisp, lisp-kernel/ppc-constants64.h,
8645        lisp-kernel/ppc-constants64.s, lisp-kernel/ppc-spentry.s: Fixnum
8646        vector stuff.
8647
86482006-05-21 06:15  gb
8649
8650        * compiler/PPC/ppc2.lisp: %fixnum-to-single, %fixnum-to-double.
8651       
8652        Fixnum vector vref/vset.
8653
86542006-05-21 06:15  gb
8655
8656        * compiler/: nx1.lisp, nxenv.lisp: %fixnum-to-single,
8657        %fixnum-to-double.
8658
86592006-05-21 06:14  gb
8660
8661        * compiler/nx0.lisp: More operator result types.
8662
86632006-05-21 04:35  gb
8664
8665        * level-0/l0-array.lisp, level-0/l0-pred.lisp,
8666        level-1/l1-aprims.lisp, level-1/l1-clos-boot.lisp: Integrate
8667        specialized FIXNUM array-element-type into type system, CLOS.
8668        (Knock wood.)
8669
86702006-05-21 04:34  gb
8671
8672        * lisp-kernel/x86-spentry64.s: Support for (out-of-line)
8673        fixnum-vector access (.SPmisc_ref, .SPmisc_set).
8674
86752006-05-21 04:33  gb
8676
8677        * compiler/X86/X8664/x8664-arch.lisp,
8678        lisp-kernel/x86-constants64.h, lisp-kernel/x86-constants64.s: New
8679        subtag for :fixnum-vector.
8680
86812006-05-21 04:32  gb
8682
8683        * compiler/X86/x862.lisp: 64-bit vset wasn't handling non-constant
8684        indices correctly.
8685       
8686        64-bit vset, vref: handle :FIXNUM-VECTOR.
8687
86882006-05-21 00:22  gb
8689
8690        * level-0/l0-aprims.lisp: Spell istruct-typep correctly.
8691
86922006-05-20 18:13  gb
8693
8694        * compiler/X86/x862.lisp: Do some self-tail calls (fixed args, no
8695        stack args) without restoring/re-saving NVRs.
8696
86972006-05-19 15:07  gb
8698
8699        * level-1/linux-files.lisp: RUN-PROGRAM: waiting for the child's
8700        completion semaphore (when :WAIT is true) happens inside an
8701        UNWIND-PROTECT cleanup and therefore needs to explicitly allow
8702        interrupts.
8703
87042006-05-19 15:06  gb
8705
8706        * level-0/l0-aprims.lisp: Add SEMAPHOREP, make it a type-predicate
8707        for SEMAPHORE.
8708
87092006-05-19 12:23  gwking
8710
8711        * lib/misc.lisp: Added help and redisplay to select-item-from-list.
8712        Also changed it so that it displays all items before trying to get
8713        an answer.
8714
87152006-05-19 12:00  gwking
8716
8717        * .cvsignore: The *fsl wasn't cutting it for me..., take two
8718
87192006-05-19 11:57  gwking
8720
8721        * .cvsignore: The *fsl wasn't cutting it for me...
8722
87232006-05-19 11:50  gb
8724
8725        * level-1/version.lisp: Bump.
8726
87272006-05-19 11:49  gb
8728
8729        * level-1/l1-streams.lisp: Change the EVAL-WHEN that requires
8730        syscall definitions so that it can be moused on.
8731
87322006-05-19 11:48  gb
8733
8734        * compiler/X86/X8664/: x8664-arch.lisp, x8664-vinsns.lisp:
8735        .SPeabi-syscall -> .SPsyscall.
8736
87372006-05-19 11:45  gb
8738
8739        * compiler/X86/x862.lisp: Inline ADD2, unless we know that at least
8740        one arg couldn't be a fixnum.  (Should do the same for SUB2.) This
8741        does indeed burn cache lines, but going out of line isn't cheap
8742        either.  (100 million iterations of (+ x (+ y z)) - where X Y and Z
8743        are in fact fixnums and no overflow is involved - seems to be about
8744        2X faster when inlined this way.  Not sure if that'll be the case
8745        on PPC.)
8746
87472006-05-19 11:40  gb
8748
8749        * compiler/nx0.lisp: Use NX-TARGET-TYPE in some of the acode-type
8750        stuff.
8751
87522006-05-18 14:47  gb
8753
8754        * lisp-kernel/ppc-spentry.s: When unwinding the stack (hopefully,
8755        in all places that do so ...), update tcr.xframe from
8756        catch_frame.xframe on all execution paths (in particular, do so
8757        before SP is restored from the catch_frame, since a tcr.xframe
8758        "beyond" SP is clearly bogus.)
8759
87602006-05-18 02:34  gb
8761
8762        * level-1/version.lisp: Bump.
8763
87642006-05-17 23:12  gb
8765
8766        * compiler/PPC/ppc2.lisp: "late" acode-type stuff (add2/sub2/mul2)
8767        for PPC, too.
8768
87692006-05-17 22:53  gb
8770
8771        * level-0/X86/x86-float.lisp: %FP-ERROR-FROM-STATUS: don't cons an
8772        &REST arg.  Should do a quicker test (logandc2 and a shift) to see
8773        if any unmasked exceptions were raised before even calling this ...
8774
87752006-05-17 22:51  gb
8776
8777        * compiler/X86/X8664/x8664-vinsns.lisp: If we have to spill
8778        SINGLE-FLOAT registers, spill them (boxed) on the vstack.
8779
87802006-05-17 22:50  gb
8781
8782        * compiler/X86/x862.lisp: Work harder to find acode types in some
8783        cases.
8784
87852006-05-17 22:50  gb
8786
8787        * compiler/X86/x86-disassemble.lisp: Handle (new-style) byte
8788        registers in OP-REG.
8789       
8790        Don't want to use RET very often if at all, but disassembler should
8791        treat as as a :JUMP.
8792
87932006-05-17 22:48  gb
8794
8795        * compiler/nxenv.lisp: MUL2, DIV2.
8796
87972006-05-17 22:48  gb
8798
8799        * compiler/: nx0.lisp, nx1.lisp: A little of that there
8800        type-inferencing (or, more accurately, paying a little more
8801        attention here and there.)
8802
88032006-05-12 20:40  gwking
8804
8805        * examples/addressbook.lisp: added examples/addressbook.lisp
8806
88072006-05-11 18:42  gb
8808
8809        * level-1/l1-application.lisp: Stop processing command-line
8810        arguments when "--" is encountered; anything after that "--" is
8811        retained in CCL:*UNPROCESSED-COMMAND-LINE-ARGUMENTS*.
8812
88132006-05-11 18:42  gb
8814
8815        * lib/ccl-export-syms.lisp: Export command-line stuff
8816
88172006-05-11 18:40  gb
8818
8819        * level-1/l1-processes.lisp: Lennart Staflin's fix to PRINT-OBJECT
8820        method for LOCKs.
8821
88222006-05-11 18:39  gb
8823
8824        * level-1/l1-files.lisp: In %DIFECTORY-LIST-NAMESTRING: all strings
8825        are base-strings (and always have been in OpenMCL.)
8826
88272006-05-11 18:37  gb
8828
8829        * level-1/l1-sockets.lisp: CCL:BASE-CHARACTER -> CL:BASE-CHAR.
8830
88312006-05-11 08:11  gwking
8832
8833        * lib/db-io.lisp: Added a check that the directory exists to
8834        fid-open-output in order to make it clearer what is wrong when one
8835        is unable to rebuild interface files because they are trying to do
8836        so in a place without FFI files to read!
8837
88382006-05-11 05:14  gb
8839
8840        * level-1/version.lisp, lisp-kernel/image.h, xdump/heap-image.lisp:
8841        Bump lisp-implementation-version, image-abi-version.
8842
88432006-05-11 05:04  gb
8844
8845        * xdump/faslenv.lisp: Bump (min) fasl version.
8846
88472006-05-11 04:52  gb
8848
8849        * lib/nfcomp.lisp: Bump (current) FASL version.
8850
88512006-05-11 04:52  gb
8852
8853        * level-1/l1-files.lisp: FASL-FILE-P looks for inital #xFF00
8854        (big-endian) instead of just #xff, to avoid UTF-16 BOM confusion.
8855
88562006-05-11 04:35  gb
8857
8858        * xdump/faslenv.lisp: Bump (max) fasl version.
8859
88602006-05-11 04:32  gb
8861
8862        * compiler/X86/X8664/x8664-backend.lisp: Little-endianness is a
8863        target-specific feature.
8864
88652006-05-11 03:35  gb
8866
8867        * compiler/PPC/PPC32/ppc32-arch.lisp,
8868        compiler/PPC/PPC32/ppc32-vinsns.lisp, level-0/l0-array.lisp,
8869        level-0/l0-pred.lisp, level-0/PPC/ppc-array.lisp,
8870        level-1/l1-aprims.lisp, level-1/l1-clos-boot.lisp,
8871        lisp-kernel/ppc-constants32.h, lisp-kernel/ppc-constants32.s,
8872        lisp-kernel/ppc-spentry.s, xdump/xppcfasload.lisp: Juggle PPC32
8873        typecodes around: get rid of the (unused) old 16-bit string; add an
8874        (as yet unused) UCS-4 string type.
8875       
8876        These changes generally involve cross-compilation (or some very
8877        tricky bootstrapping that I didn't attempt)  FASL versions and
8878        kernel ABI versions will need to change, and new binaries will be
8879        made available soon.
8880
88812006-05-10 20:20  gb
8882
8883        * compiler/PPC/ppc-lapmacros.lisp,
8884        compiler/PPC/PPC32/ppc32-arch.lisp,
8885        compiler/PPC/PPC32/ppc32-vinsns.lisp,
8886        lisp-kernel/ppc-constants32.h, lisp-kernel/ppc-constants32.s:
8887        Change CHARCODE-SHIFT constant on PPC32, so that the (currently
8888        8-bit) character code is stored in the #x0000xx00 byte of a
8889        CHARACTER, rather than in the #x00xx0000 byte,  This is hard to
8890        bootstrap natively (which is why I was trying to make ppc64->ppc32
8891        cross-compilation work.)
8892       
8893        Change related macros/visnsns as well.
8894
88952006-05-10 19:00  gb
8896
8897        * xdump/xppcfasload.lisp: Reintroduce a TARGET-ARCH-CASE, but I
8898        think that this is just hard to do right the way that it's being
8899        done.
8900
89012006-05-10 18:59  gb
8902
8903        * level-1/ppc-threads-utils.lisp: BOGUS-THING-P is hard to do right
8904        when cross-compiling (because word-size differences aren't handled
8905        correctly by macros.)  Until the macros are fixed, don't even try
8906        ...
8907
89082006-05-10 18:58  gb
8909
8910        * level-1/l1-clos-boot.lisp: In NEW-CLASS-WRAPPER-HASH-INDEX, user
8911        target::target-most-positive-fixnum (not the host's
8912        MOST-POSITIVE-FIXNUM).
8913
89142006-05-10 18:57  gb
8915
8916        * compiler/: nx0.lisp, nx1.lisp: Use NX-TARGET-TYPE in at least a
8917        few places.
8918
89192006-05-10 18:56  gb
8920
8921        * compiler/nx.lisp: XCOMPILE-LAMBDA binds *TARGET-BACKEND*.
8922
89232006-05-10 18:55  gb
8924
8925        * compiler/nx-basic.lisp: NX-TARGET-TYPE: there may be other
8926        differences between host and target types, but try to turn
8927        references to FIXNUM to the appropriate target-specific type.
8928
89292006-05-09 21:01  gb
8930
8931        * compiler/PPC/PPC32/ppc32-vinsns.lisp: UNBOX-BASE-CHAR just checks
8932        that the lowbyte is SUBTAG-CHARACTER; it used to rotate things
8933        around to check the high bits of the char code, but all chars have
8934        been base-chars for several years now ...
8935       
8936        UNBOX-CHARACTER was unused.
8937       
8938        (This is the first step of what may be several bootstrapping steps
8939        to change PPC32::CHARCODE-SHIFT from 16 to 8, so that we have 24
8940        easily-accessed char-code bits on PPC32.)
8941
89422006-05-09 11:48  gb
8943
8944        * lisp-kernel/xlbt.c: No psn in cs_area.
8945
89462006-05-09 02:42  gb
8947
8948        * lisp-kernel/: gc.h, ppc-gc.c: Back out of the extra Boolean arg
8949        to mark_simple_area_range().
8950
89512006-05-09 02:33  gb
8952
8953        * compiler/PPC/: PPC32/ppc32-backend.lisp,
8954        PPC64/ppc64-backend.lisp: Endianness is also target-specific.
8955
89562006-05-09 02:25  gb
8957
8958        * lisp-kernel/thread_manager.c: Thread stack areas are "owned by"
8959        the containing TCR, to make low-level debugging a bit easier.
8960
89612006-05-09 02:25  gb
8962
8963        * lisp-kernel/ppc-gc.c: Mostly some added consistency/sanity checks
8964        and debugging printfs.
8965
89662006-05-09 02:24  gb
8967
8968        * lisp-kernel/ppc-exceptions.h: Note that pc_luser_xp() needs an
8969        extra (signed_natural *) arg, for allocptr displacement.
8970
89712006-05-09 02:23  gb
8972
8973        * lisp-kernel/ppc-exceptions.c: Lots of #ifdef DEBUG fprintfs.
8974       
8975        Change the way that pc_luser_xp() and normalize_tcr() handle alloc
8976        regs/ saved TCR fields.  The general idea is that the after they
8977        run, all threads have tcr->save_allocptr/tcr_save_allocbase set to
8978        VOID_ALLOCPTR; if the thread was interrupted in lisp code, the
8979        allocbase register will be set to VOID_ALLOCPTR and allocptr will
8980        be set to either VOID_ALLOCPTR or to VOID_ALLOCPTR-disp.
8981       
8982        On an interrupt, the caller needs to pass in a signed_natural * to
8983        pick up the allocptr displacement (if consing was interrupted at
8984        the alloc trap); the interrupt handler uses this value to fix up
8985        alloptr when it returns if consing was interrupted.
8986       
8987        This is all pretty clearly right, but something still goes wrong
8988        under some combination of high thread stress, frequent allocation,
8989        and blocking ff-calls.
8990
89912006-05-09 02:17  gb
8992
8993        * lisp-kernel/plbt.c: No psn currently available.
8994
89952006-05-09 02:16  gb
8996
8997        * lisp-kernel/lisp-debug.c: Bug() passes xp to lisp_Debugger(),
8998        where it may come in handy ...
8999
90002006-05-09 02:16  gb
9001
9002        * lisp-kernel/gc.h: mark_simple_area_range() takes an added Boolean
9003        arg.
9004
90052006-05-09 02:13  gb
9006
9007        * lisp-kernel/area.h: area struct's owner is a (TCR *).
9008
90092006-05-09 02:12  gb
9010
9011        * level-1/l1-error-system.lisp: $xfunbnd was used after all.
9012        Restore it.
9013
90142006-05-09 02:12  gb
9015
9016        * level-0/l0-error.lisp, library/lispequ.lisp,
9017        lisp-kernel/errors.s: $xfunbnd was used after all.  Restore it, and
9018        recycle $XNOCDR.
9019
90202006-05-09 02:11  gb
9021
9022        * compiler/PPC/PPC64/ppc64-backend.lisp: :64-bit-target is ...
9023        target-specific.
9024
90252006-05-09 02:11  gb
9026
9027        * compiler/PPC/PPC32/ppc32-backend.lisp: :32-bit-target is ...
9028        target-specific.
9029
90302006-05-09 00:40  gb
9031
9032        * level-1/l1-lisp-threads.lisp: Foreign thread callback stuff moved
9033        here.
9034
90352006-05-09 00:39  gb
9036
9037        * level-1/x86-threads-utils.lisp: Support for BOGUS-THING-P on
9038        x8664.
9039
90402006-05-09 00:39  gb
9041
9042        * level-1/ppc-threads-utils.lisp: Move foreign-thread callback
9043        stuff up to l1-lisp-threads.lisp.
9044
90452006-05-08 22:58  gb
9046
9047        * lisp-kernel/ppc-spentry.s: misc_ref/misc_set jump tables on PPC64
9048        handle array and vector headers.
9049
90502006-05-08 22:57  gb
9051
9052        * library/lispequ.lisp: Synch errors $xbadvec, $xsetbadvec (neither
9053        of which should ever happen) with the kernel.
9054
90552006-05-08 22:56  gb
9056
9057        * level-1/l1-processes.lisp: %PROCESS-PRESET-INTERNAL doesn't need
9058        the TCR either.
9059
90602006-05-08 22:55  gb
9061
9062        * level-1/l1-error-system.lisp: $XFUNBND is no more.
9063
90642006-05-08 22:55  gb
9065
9066        * level-0/l0-error.lisp: Define the format strings for $xbadvec,
9067        $xsetbadvec.
9068
90692006-05-08 03:26  gb
9070
9071        * lisp-kernel/x86-spentry64.s: .SPstkconslist_star: ensure that
9072        flags are set to the result of decrementing %nargs at the end of
9073        the loop.
9074
90752006-05-08 03:25  gb
9076
9077        * level-1/x86-error-signal.lisp: uuo-error-udf: %err-disp-internal
9078        wants a list of condition args, not a single arg.
9079
90802006-05-08 03:24  gb
9081
9082        * level-1/l1-processes.lisp: %PROCESS-PRESET-INTERNAL doesn't need
9083        CS-AREA.
9084
90852006-05-08 03:23  gb
9086
9087        * level-0/X86/x86-symbol.lisp: %FUNCTION: signal error via
9088        uuo_error_udf, not as a type error.
9089
90902006-05-07 16:50  gb
9091
9092        * lib/describe.lisp: INSPECTOR objects haven't had FORWARDED-P
9093        slots in a long time (they probably haven't -needed- them in even
9094        longer; I think that this had to do with the old partial MOP.)
9095        Don't define the slot for FUNCTION-INSPECTOR, and don't call the
9096        accessor in STANDARD-OBJECT-SETF-LINE-N.
9097
90982006-05-07 04:39  gb
9099
9100        * x86-headers64/gtk2/: .cvsignore, C/.cvsignore, C/populate.sh: New
9101        file.
9102
91032006-05-07 04:34  gb
9104
9105        * lisp-kernel/: area.h, lisp_globals.h, memory.c, pmcl-kernel.c,
9106        thread_manager.c: Combine the AREA_LOCK and TCR_LOCK into a single
9107        lock (TCR_AREA_LOCK).  (This makes it a little harder to deadlock
9108        if code that wants both locks isn't careful to try to obtain them
9109        in some canonical order.)
9110
91112006-05-07 04:29  gb
9112
9113        * lib/x86-backtrace.lisp: Finally find those pesky registers.
9114
91152006-05-07 04:29  gb
9116
9117        * level-1/x86-threads-utils.lisp: Stub BOGUS-THING-P moves here.
9118
91192006-05-07 04:28  gb
9120
9121        * level-0/l0-cfm-support.lisp: FOREIGN-SYMBOL-ENTRY: return NIL if
9122        xFindSymbol/dlsym returns 0 on x8664.
9123
91242006-05-07 04:27  gb
9125
9126        * compiler/X86/: x86-lapmacros.lisp, X8664/x8664-vinsns.lisp: Use
9127        PSRLQ/PSLLQ for single-float boxing/unboxing.  (A few months ago,
9128        I'd mistakenly decided that it was faster to go through memory than
9129        to use these instructions.  It seems to actually be substantially
9130        slower, as one would expect.)
9131
91322006-05-07 04:25  gb
9133
9134        * compiler/X86/x86-asm.lisp: Add support for
9135        PSRLQ/PSRLDQ/PSLLQ/PSLLDQ (sse2 shifts.)
9136
91372006-05-07 04:21  gb
9138
9139        * library/hash-cons.lisp: Fix doc in comments.
9140
91412006-05-07 04:21  gb
9142
9143        * lib/ppc-backtrace.lisp: GET/SET-REGISTER-VALUE.
9144
91452006-05-07 04:20  gb
9146
9147        * lib/format.lisp: YES-OR-NO-P: bell goes to *QUERY-IO*.
9148
91492006-05-07 04:19  gb
9150
9151        * lib/backtrace-lds.lisp: Move GET/SET-REGISTER-VALUE to
9152        TARGET-backtrace.lisp.
9153
91542006-05-07 04:18  gb
9155
9156        * level-1/l1-lisp-threads.lisp: Move (implementation-dependent)
9157        BOGUS-THING-P to TARGET-thread-utils.lisp.
9158
91592006-05-07 04:17  gb
9160
9161        * level-1/ppc-threads-utils.lisp: Move (implementation-dependent)
9162        BOGUS-THING-P support here.
9163
91642006-05-07 04:16  gb
9165
9166        * level-1/l1-processes.lisp: Don't set "owner" field of tcr.cs_area
9167        to psn.
9168
91692006-05-06 15:27  gb
9170
9171        * compiler/nx1.lisp: Ash left by constant: prefer the fixnum case
9172        to the "natural" case.
9173
91742006-05-06 15:26  gb
9175
9176        * compiler/X86/x862.lisp: Pass the right number of args to
9177        NATURAL-SHIFT-LEFT and NATURAL-SHIFT-RIGHT.
9178
91792006-05-06 15:26  gb
9180
9181        * compiler/X86/X8664/x8664-vinsns.lisp: Indentation.
9182
91832006-05-06 02:09  gb
9184
9185        * lisp-kernel/thread_manager.c: Let's see: if thread X holds local
9186        A and tries to obtain lock B, and thread Y holds lock B and tries
9187        to obtain lock A, what is that a classic case of ?
9188       
9189        Try to avoid that classic deadlock case in shutdown_thread_tcr()
9190        when HAVE_TLS is in effect.  suspend_other_threads wants to hold
9191        two locks at the same time, and that's always a bit dangerous; it
9192        might be safer to merge TCR_LOCK and AREA_LOCK into a single lock
9193        that must be owned in order to manipulate either the tcr or area
9194        queues.
9195
91962006-05-06 02:04  gb
9197
9198        * level-1/linux-files.lisp: Make (%REALPATH "") behave like
9199        %REALPATH of the current directory namestring, as it does by
9200        default on some platforms (but not Linux.)
9201
92022006-05-05 20:08  gb
9203
9204        * compiler/X86/x862.lisp: x862-ff-call: really implement the
9205        simple-foreign-args stuff.  Box u64/s64, or don't ... but don't do
9206        the el-bizarro <- with a (temp) node target.
9207
92082006-05-05 20:06  gb
9209
9210        * lib/x86-backtrace.lisp: Get PC-FROM-XCF right (it needs to be
9211        relative to the tagged entrypoint, not to the start of the
9212        underlying function-vector.)
9213
92142006-05-05 13:24  gb
9215
9216        * lisp-kernel/x86-spentry64.s: Preserve NEXT-METHOD-CONTEXT when
9217        heap-consing an &REST arg.  (%allocptr and %next-method-context are
9218        the same register, so &rest clobbbers %next-method-context.)
9219       
9220        Could make separate entry points, so that this is only done when
9221        %next-method-context needs to be preserved ...
9222
92232006-05-05 13:21  gb
9224
9225        * level-0/X86/x86-def.lisp: Use RESERVED-FRAME-MARKER.
9226
92272006-05-05 02:23  gb
9228
9229        * freebsd-headers64/libc/C/populate.sh: New file.  Needs some work.
9230
92312006-05-05 02:23  gb
9232
9233        * freebsd-headers64/libc/: .cvsignore, C/.cvsignore: New file.
9234
92352006-05-05 01:37  gb
9236
9237        * level-1/version.lisp: Bump du jour.
9238
92392006-05-05 01:36  gb
9240
9241        * level-0/X86/x86-def.lisp: %FF-CALL: maintain the distinction
9242        between the first 6 words of the outgoing frame (from which GPRs
9243        will be loaded) and other words (which stay on the stack); after
9244        the first 8 FP args, floats have to be passed on the stack, even if
9245        there's still room in the first 6 words of the outgoing frame.
9246       
9247        Need to understand the struct-by-value rules better: can a struct
9248        be passed partly in registers and partly on the stack ? RTFM (or,
9249        in this case, TF ABI spec.)
9250
92512006-05-05 01:31  gb
9252
9253        * compiler/X86/x862.lisp: In X862-FF-CALL:  - the general integer
9254        case should store relative to "other-offset" (rather than   
9255        "gpr-offset") when more than 6 (not 8) GPR args have been passed. 
9256        - both the single and double-float cases were incrementing
9257        "other-offset"     twice when more than 8 FP args were involved.
9258        This had the effect of     storing floats into every other word and
9259        writing beyond the bounds of     the outgoing stack frame, possibly
9260        overwriting return addresses on the     foreign stack.
9261
92622006-05-04 23:12  gb
9263
9264        * level-1/l1-streams.lisp: James Bielman's fix to
9265        READ-TOPLEVEL-FORM (INPUT-STREAM) (EOF handling/peek-char.)
9266
92672006-05-04 18:30  gb
9268
9269        * compiler/X86/X8664/x8664-backend.lisp: When binding FP args,
9270        decrement FPR-ARG-OFFSET by 8, not -8.
9271       
9272        (This could cause values outside of the stack frame to be read, but
9273        I still haven't found what's writing beyond the frame bounds.)
9274
92752006-05-04 18:27  gb
9276
9277        * lib/x86-backtrace.lisp: If its argument is an exception callback
9278        frame, %CFP-LFUN tries to determine the relative PC associated with
9279        the frame's nominal function and return that as a second value
9280        (just as it does for a real frame.)
9281       
9282        I think that this should work a high percentage of the time, but
9283        callers should generally be prepared to deal with a NULL second
9284        return value from %CFP-LFUN.
9285
92862006-05-04 11:12  gb
9287
9288        * compiler/X86/X8664/x8664-backend.lisp: More callback issues:
9289        since we're using the same stack pointer to return values as we are
9290        to find arguments, don't try to "optimize" its initialization.
9291
92922006-05-03 18:52  gb
9293
9294        * compiler/X86/X8664/x8664-backend.lisp: Clean  up x8664 callbacks
9295        a little.  Don't coerce single float results to double; bind
9296        stack-ptr variable even if no args (might be a return value form
9297        that references it.) Failure to do the latter was creating a weird
9298        free variable reference that wasn't handled by the fasloader.
9299
93002006-05-03 18:50  gb
9301
9302        * level-0/nfasload.lisp: $fasl-vmksym-special wasn't implemented.
9303
93042006-05-03 18:49  gb
9305
9306        * lib/nfcomp.lisp: Indent a comment.
9307
93082006-05-03 18:16  gb
9309
9310        * compiler/X86/x862.lisp, level-0/X86/x86-def.lisp: In an %FF-CALL
9311        that might involve a variable-length arglist (at this level,
9312        always), set %rax to the number (0-8) of FP arguments passed in xmm
9313        registers.
9314
93152006-05-03 13:26  gb
9316
9317        * lisp-kernel/x86-exceptions.c: In find_foreign_rsp(), mask with
9318        ~15, not ~!5.  (This was causing segfaults on return from
9319        interrupts sometimes.)
9320
93212006-05-03 13:24  gb
9322
9323        * lib/backtrace.lisp: CLOSURE-CLOSED-OVER-VALUES, which is needed
9324        by SWANK/SLIME.
9325
93262006-05-03 13:23  gb
9327
9328        * lib/backtrace-lds.lisp: FRAME-SUPPLIED-ARGS, hopefully in a form
9329        that'll work on all platforms.  (Note that FRAME-SUPPLIED-ARGS
9330        seems to get many things wrong.)
9331
93322006-05-03 11:37  gb
9333
9334        * level-1/version.lisp: You mist have yesterday's version.
9335
93362006-05-03 11:37  gb
9337
9338        * level-0/X86/x86-def.lisp: Implement #'%FF-CALL.  Not too much
9339        LAP.
9340
93412006-05-03 11:36  gb
9342
9343        * level-0/l0-init.lisp: Put :X86-64 and :AMD64 on *FEATURES* if
9344        #+x8664-target.
9345
93462006-05-03 11:36  gb
9347
9348        * compiler/X86/X8664/x8664-vinsns.lisp: Bad typo in UNBOX-S64, and
9349        it can just check for a 2-digit bignum header if it has something
9350        of tag TAG-MISC.
9351
93522006-05-03 11:34  gb
9353
9354        * compiler/X86/x862.lisp: X862-COPY-REGISTER: handle :S64
9355        destinations.
9356
93572006-05-03 11:33  gb
9358
9359        * compiler/X86/x86-disassemble.lisp: Recognize
9360        uuo-error-eep-unresolved.
9361
93622006-05-02 18:07  gb
9363
9364        * level-1/version.lisp: Bump.
9365
93662006-05-02 18:07  gb
9367
9368        * lib/: backtrace-lds.lisp, describe.lisp: Comment out stuff that's
9369        (mostly ?) unused and currently PPC-specific, if it works at all
9370        ...
9371
93722006-05-02 10:27  gb
9373
9374        * level-1/l1-streams.lisp: Don't definea STREAM-CLEAR-INPUT method
9375        for STRING-INPUT-STREAMs; it's not clear what such a method should
9376        do (and fairly clear that it shouldn't do what the previous
9377        definition was doing.)
9378
93792006-05-02 10:26  gb
9380
9381        * lib/format.lisp: clear input from *query-io*, not from
9382        *terminal-io* in YES-OR-NO-P, Y-OR-N-P
9383
93842006-05-02 10:26  gb
9385
9386        * library/hash-cons.lisp: x8664 lap
9387
93882006-05-02 10:26  gb
9389
9390        * lisp-kernel/x86-gc.c: hons area stuff
9391
93922006-04-29 09:14  gb
9393
9394        * lisp-kernel/x86-exceptions.c: Write-protect handlers for stack
9395        overflow (on value/temp stacks).
9396
93972006-04-29 09:13  gb
9398
9399        * level-1/x86-trap-support.lisp: Handle stack overflow in cmain
9400        callback.
9401
94022006-04-29 09:10  gb
9403
9404        * lisp-kernel/freebsd8664/Makefile: x86-gc.o.
9405       
9406        No linker script.
9407       
9408        Use -lthr, which offers 1:1 threads.
9409
94102006-04-29 09:09  gb
9411
9412        * lisp-kernel/lisptypes.h: Remove the __sighandler typedef.
9413
94142006-04-29 09:01  gb
9415
9416        * lisp-kernel/x86-exceptions.h: xpMMXreg for FreeBSD.
9417
94182006-04-29 09:00  gb
9419
9420        * lisp-kernel/x86-exceptions.c: Don't use __sighandler_t.  (See if
9421        anything cares ...)
9422
94232006-04-29 08:59  gb
9424
9425        * lisp-kernel/x86-constants64.h: FreeBSD register constants.
9426
94272006-04-29 08:58  gb
9428
9429        * lisp-kernel/lisp-debug.c: FreeBSD regiser names.
9430
94312006-04-29 08:58  gb
9432
9433        * lisp-kernel/area.h: Update IMAGE_BASE_ADDRESS for FreeBSD.
9434
94352006-04-28 21:28  gb
9436
9437        * level-1/version.lisp: bump.
9438
94392006-04-28 21:27  gb
9440
9441        * lib/backtrace.lisp: changes to print-call-history (and "internal"
9442        version).
9443
94442006-04-28 21:24  gb
9445
9446        * lib/ppc-backtrace.lisp: Fix typo.
9447
94482006-04-28 21:23  gb
9449
9450        * level-1/l1-readloop-lds.lisp: Add :NFRAMES break loop command.
9451       
9452        Change the command/keyword parser a little, so that :FOO is just
9453        :FOO and not (:FOO).
9454       
9455        Change :B break loop command (and :F) to allow focusing on a range
9456        of frames, and change PRINT-CALL-HISTORY to more easily support
9457        that.
9458
94592006-04-28 19:37  gb
9460
9461        * level-0/PPC/ppc-numbers.lisp: Remove a quote from a LAP
9462        LOAD-CONSTANT form.
9463
94642006-04-28 19:34  gb
9465
9466        * lib/: backtrace.lisp, ppc-backtrace.lisp, x86-backtrace.lisp:
9467        Factor out a little more.  Time to see what's broken on PPC ...
9468
94692006-04-28 19:34  gb
9470
9471        * level-1/: l1-readloop-lds.lisp, l1-streams.lisp: Make parens
9472        around colon-commands optional.
9473
94742006-04-28 04:11  gb
9475
9476        * lisp-kernel/linuxx8664/.gdbinit: 'lregs' calls the kernel
9477        debugger's register display code.
9478
94792006-04-28 04:11  gb
9480
9481        * lisp-kernel/xlbt.c: Don't claim that the (legitimate) last frame
9482        on the stack is bogus.
9483
94842006-04-28 04:10  gb
9485
9486        * lisp-kernel/x86-exceptions.c: Create fake stack frames (sort of
9487        ...) when calling back for an exception.
9488
94892006-04-28 03:36  gb
9490
9491        * lisp-kernel/x86-constants64.h: A few symbolic register names.
9492       
9493        xcf struct.
9494
94952006-04-28 03:36  gb
9496
9497        * library/lispequ.lisp: FAKE-STACK-FRAME is #+ppc-target.
9498
94992006-04-28 03:36  gb
9500
9501        * lib/x86-backtrace.lisp: Implemented some stuff.
9502       
9503        Backtrace (sort of) works on x8664 now; need to find register
9504        values,  hide tagged return addresses, a few other things.
9505
95062006-04-28 03:34  gb
9507
9508        * lib/ppc-backtrace.lisp: Stuff moved here from elsewhere.
9509
95102006-04-28 03:34  gb
9511
9512        * lib/backtrace-lds.lisp: LAST-CATCH-SINCE moved elsewhere.
9513
95142006-04-28 03:33  gb
9515
9516        * level-1/x86-trap-support.lisp: Flags register accessor.
9517       
9518        New exception callback scheme.
9519
95202006-04-28 03:33  gb
9521
9522        * level-1/x86-threads-utils.lisp: The lowlevel system keeps
9523        changing.
9524
95252006-04-28 03:32  gb
9526
9527        * level-1/x86-error-signal.lisp: New exception callback stuff.
9528
95292006-04-28 03:32  gb
9530
9531        * level-1/l1-readloop-lds.lisp: No fake stack frames on x86.
9532
95332006-04-28 03:32  gb
9534
9535        * level-1/l1-lisp-threads.lisp: Move more stuff to arch-specific
9536        files.
9537
95382006-04-28 03:31  gb
9539
9540        * level-1/l1-events.lisp: No fake-stack-frames on x86, but we do
9541        have exception callback frames ...
9542
95432006-04-28 03:30  gb
9544
9545        * level-1/l1-error-system.lisp: Tweak :report method for
9546        wrong-number-of-args errors.
9547
95482006-04-28 03:30  gb
9549
9550        * level-0/X86/x86-def.lisp: Implement APPLY+.
9551
95522006-04-28 03:29  gb
9553
9554        * compiler/X86/X8664/x8664-arch.lisp: eXception Callback Frame.
9555
95562006-04-28 03:27  gb
9557
9558        * compiler/X86/x86-lapmacros.lisp: Add missing IN-PACKAGE.
9559       
9560        CHECK-NARGS: don't enforce upper bound if it's null.
9561
95622006-04-28 03:17  gb
9563
9564        * compiler/X86/x86-arch.lisp: x86 xFLAGS bits.
9565
95662006-04-28 03:16  gb
9567
9568        * compiler/nx0.lisp: Allow (FUNCTION (SETF name)) in
9569        IGNORE/IGNORABLE/DYNAMIC-EXTENT declarations.
9570
95712006-04-26 14:18  gb
9572
9573        * compiler/nx0.lisp: Allow (SETF NAME) in DEFINE-COMPILER-MACRO.
9574
95752006-04-26 14:17  gb
9576
9577        * lib/misc.lisp: Disassemble is supposed to signal an error (or "be
9578        prepared" to do so) if its argument isn't a function designator, so
9579        don't quietly call METHOD-FUNCTION for the user.
9580
95812006-04-26 13:56  gb
9582
9583        * lib/encapsulate.lisp: Use REPLACE-FUNCTION-CODE (not (SETF (UVREF
9584        ...))) in ENCAPSULATE, REMOVE-ENCAPSULATION.
9585
95862006-04-26 03:59  gb
9587
9588        * lisp-kernel/: x86-spentry64.s, x86-subprims64.s: zero out the
9589        exception bits whenever mxcsr is stored in tcr.foreign_mxcsr, so no
9590        exceptions will be pending when we start an ff-call (and the mxcsr
9591        is loaded from that location.)
9592       
9593        tcr.ffi_exception will then contain non-zero exception bits iff the
9594        most recent ff-call raised a (probably masked) FP exception.
9595       
9596        TODO: make this reentrant (PROCESS-INTERRUPT should preserve this.)
9597
95982006-04-26 03:55  gb
9599
9600        * lisp-kernel/x86-constants.s: define mxcsr exception bits.
9601
96022006-04-26 03:23  gb
9603
9604        * lisp-kernel/x86-constants64.s: Update comment on
9605        tcr.ffi_exception.
9606
96072006-04-26 03:22  gb
9608
9609        * lisp-kernel/x86-spentry64.s: Maintain tcr.ffi_exception on return
9610        from ffcall.  (Should maybe clear exception bits on entry to
9611        foreign state, so we're sure that any exception bits set in the
9612        tcr.ffi_exception slot were caused by the most recent ff-call.)
9613
96142006-04-26 03:20  gb
9615
9616        * level-0/X86/x86-float.lisp: Check MXCSR status bits from last
9617        ffcall, compare them to unmasked exception bits in current MXCSR,
9618        maybe raise FP exception.  (Note: compile this change and rebuild
9619        image before making corresponding kernel change.)
9620
96212006-04-26 02:31  gb
9622
9623        * lisp-kernel/x86-spentry64.s: .SPbuiltin-logxor was calling out to
9624        LOGAND-2, not to LOGXOR-2.  Sheesh.
9625
96262006-04-26 02:01  gb
9627
9628        * compiler/X86/X8664/x8664-vinsns.lisp: %ILOGBITP treats "large"
9629        bit numbers as tests of the sign bit.   (This is probably best
9630        viewed as being "formally undefined", but it's not too expensive to
9631        check for that.  The case where the bit number's negative is
9632        definitely undefined; I think that it also gets treated as a test
9633        of the sign bit.)
9634
96352006-04-26 01:58  gb
9636
9637        * lisp-kernel/x86-spentry64.s: Logbitp calls out if bit number
9638        negative.
9639
96402006-04-26 01:32  gb
9641
9642        * lisp-kernel/x86-spentry64.s: If both args fixnums, handle bits >=
9643        61.  (Should check here for negative bit .)
9644
96452006-04-26 01:31  gb
9646
9647        * lisp-kernel/x86-exceptions.c: If we get the "no FP regs in
9648        context" error - which typically indicates a fault during exception
9649        processing - pass the context in to the kernel debugger.
9650
96512006-04-26 01:30  gb
9652
9653        * level-0/X86/x86-pred.lisp: Change EQL doc string.
9654
96552006-04-26 00:56  gb
9656
9657        * level-0/X86/x86-pred.lisp: EQL on two bignums works much better
9658        if it compares all corresponding digits, rather than repeatedly
9659        comparing the 0th digits N times ...
9660
96612006-04-25 17:38  gb
9662
9663        * lisp-kernel/x86-spentry64.s: _SPmvslide: skip the loop if nargs
9664        is 0, not if disp is 0.  ash: always make a signed integer out of
9665        the result,  since arg is always signed.
9666
96672006-04-25 17:37  gb
9668
9669        * level-0/X86/x86-float.lisp: Negate floats by fliping the sign
9670        bit, so (for instance) (- 0.0d0) is -0.0d0.
9671
96722006-04-25 17:36  gb
9673
9674        * level-0/X86/x86-hash.lisp: Hash bignums 32 bits (not 64!) at a
9675        time.
9676
96772006-04-25 17:35  gb
9678
9679        * compiler/X86/x862.lisp: %%INEG: need to ensure that source
9680        operand is in target reg (2-address issue.)
9681
96822006-04-24 16:42  gb
9683
9684        * lisp-kernel/x86-spentry64.s: How hard can misc_set_s32 be ?
9685        Apparently, pretty hard.  It was doing a logical shift right when
9686        typechecking the value, so negative values were rejected.
9687
96882006-04-24 16:41  gb
9689
9690        * lisp-kernel/x86-exceptions.c: Call out to handle SIGFPE.  cmain
9691        callback now takes a 'signo' argument.
9692
96932006-04-24 16:40  gb
9694
9695        * level-1/x86-trap-support.lisp: Initial support for handling
9696        arithmetic errors.  Will need more work to get operation and
9697        operands right.
9698
96992006-04-24 16:39  gb
9700
9701        * lib/compile-ccl.lisp: REBUILD-CCL: :reload arg defaults to T.
9702
97032006-04-24 13:58  gb
9704
9705        * level-1/x86-error-signal.lisp: SETQ (not #'SET) in the
9706        uuo-error-reg-not-type case.
9707
97082006-04-24 13:57  gb
9709
9710        * level-0/X86/x86-float.lisp: Generally want to use FPZERO, not
9711        FP0, for 0.0[d,f]0.  (One case wanted to use fp1, but that's
9712        another story.)
9713
97142006-04-24 13:55  gb
9715
9716        * compiler/X86/X8664/x8664-vinsns.lisp: REQUIRE-REAL,
9717        REQUIRE-NUMBER: mask wont fit in 32 bits.  OTOH, doesn't need to be
9718        boxed, either.
9719
97202006-04-24 12:02  gb
9721
9722        * lisp-kernel/x86-spentry64.s: misc_set_s32: register botch.
9723        _SPtcallnfngen: several bugs, which were already fixed in similar
9724        variants.
9725
97262006-04-24 12:01  gb
9727
9728        * lisp-kernel/x86-gc.c: Use FORCE_DWS_MARK to force use of the
9729        Deutch/Waite/Schorr marker.
9730
97312006-04-24 12:00  gb
9732
9733        * lisp-kernel/pmcl-kernel.c: Only turn on GC debug bit if
9734        GC_INTEGRITY_CHECKING is defined (e.g., in Makefile.)
9735
97362006-04-24 11:59  gb
9737
9738        * level-1/linux-files.lisp: Remove debugging FORMAT call.
9739
97402006-04-24 11:58  gb
9741
9742        * level-0/X86/x86-numbers.lisp: %ROUND-NEAREST-SHORT-FLOAT->FIXNUM:
9743        argument is a SINGLE/SHORT-FLOAT, so don't access as a
9744        DOUBLE-FLOAT.
9745
97462006-04-24 11:58  gb
9747
9748        * level-0/X86/x86-float.lisp: %MAKE-FLOAT-FROM-FIXNUMS: mask the
9749        high and low words of the mantissa, to ensure that no hidden bits
9750        are set.  (Some such bits were set, causing many double-float
9751        constansts - like MOST-POSITVE-DOUBLE-FLOAT - to be bogus NaNs).
9752
97532006-04-24 02:21  gb
9754
9755        * lisp-kernel/image.c: Expect a MANAGED_STATIC section in the
9756        image.
9757       
9758        (Don't expect it to have any contents yet; that'll require several
9759        more changes.   This is all intended to support PURIFY on x8664,
9760        where we'll want to ensure that any constant referenced by a
9761        function in readonly/pure memory has a fixed, static address.)
9762
97632006-04-24 02:14  gb
9764
9765        * lisp-kernel/image.h: Bump IMAGE_ABI_VERSION.  New managed_static
9766        section makes NUM_IMAGE_SECTIONS 4.
9767
97682006-04-24 02:13  gb
9769
9770        * lisp-kernel/area.h: Typo in the definition of
9771        AREA_MANAGED_STATIC.
9772
97732006-04-24 02:12  gb
9774
9775        * lisp-kernel/: pmcl-kernel.c, kernel-globals.h: Global pointers to
9776        more areas.
9777
97782006-04-24 02:12  gb
9779
9780        * lisp-kernel/ppc-exceptions.c: EGC write-barrier labels are the
9781        addresses of instructions (not pointers thereto ...)
9782
97832006-04-24 02:11  gb
9784
9785        * lisp-kernel/ppc-gc.c: Add conditionalization to force DWS marker
9786        (mostly so that I could step through it to remember how it worked
9787        ...).
9788
97892006-04-24 02:10  gb
9790
9791        * lisp-kernel/ppc-spentry.s: write-barrier exported symbols: remove
9792        indirection.
9793
97942006-04-24 02:09  gb
9795
9796        * lisp-kernel/x86-gc.c: Remove a sanity check.
9797
97982006-04-24 02:09  gb
9799
9800        * xdump/xfasload.lisp: Create (empty) managed-static section
9801        (mostly for x8664 PURIFY, but might be useful on PPC someday.)
9802
98032006-04-24 02:08  gb
9804
9805        * xdump/heap-image.lisp: New image-abi-version, for managed-static
9806        section.
9807
98082006-04-24 02:07  gb
9809
9810        * level-1/linux-files.lisp: GET-DESCRIPTOR-FOR: try not to leak
9811        fds, take CLOSE-ON-ERROR more seriously.
9812
98132006-04-24 02:06  gb
9814
9815        * compiler/PPC/ppc2.lisp: (eq %FOREIGN-STACK-POINTER
9816        %CURRENT-FRAME-PTR) on PPC32/64.
9817
98182006-04-24 00:50  gb
9819
9820        * level-1/version.lisp: Bump.  Getting there ...
9821
98222006-04-24 00:50  gb
9823
9824        * level-0/l0-misc.lisp: Use %GET-NATURAL where possible.
9825       
9826        Note that TCRs aren't guaranteed to be in the low 32 bits on x8664,
9827        so pass them as a pointer to avoid word-size issues.
9828
98292006-04-24 00:48  gb
9830
9831        * compiler/X86/: x862.lisp, X8664/x8664-vinsns.lisp: Implement
9832        things that had been missing.
9833
98342006-04-24 00:48  gb
9835
9836        * compiler/X86/x86-disassemble.lisp: Recognize recently-defined
9837        UUOs.
9838
98392006-04-24 00:48  gb
9840
9841        * compiler/X86/x86-backend.lisp: Fix FIXUP-OPCODE-ORDINALS (again).
9842
98432006-04-24 00:47  gb
9844
9845        * compiler/X86/x86-asm.lisp: UUO-ERROR-ARRAY-BOUNDS.
9846
98472006-04-24 00:47  gb
9848
9849        * compiler/PPC/PPC64/ppc64-vinsns.lisp: A little word-size cleanup.
9850
98512006-04-24 00:47  gb
9852
9853        * compiler/nxenv.lisp: %FOREIGN-STACK-POINTER.
9854
98552006-04-24 00:46  gb
9856
9857        * compiler/nx1.lisp: WITH-C-FRAME, WITH-VARIABLE-C-FRAME: use (new)
9858        %FOREIGN-STACK-POINTER, not %CURRENT-FRAME-PTR (differ on x8664;
9859        need to boostrap on PPC).
9860       
9861        Parse %FOREIGN-STACK-POINTER.
9862
98632006-04-22 03:30  gb
9864
9865        * lisp-kernel/thread_manager.c: If we're using thread-local-storage
9866        (HAVE_TLS is defined), make shutdow_thread_tcr() dequeue the tcr,
9867        because (a) nothing else will and (b) the tcr will likely become
9868        unmapped soon, and we don't want things that walk the tcr list to
9869        segfault.
9870
98712006-04-22 03:27  gb
9872
9873        * lisp-kernel/x86-exceptions.c: Something's clearly wrong in
9874        find_foreign_rsp; call Bug() and exit() if the context has no
9875        fpregs.  (That's a symptom, not the proble, but it's slightly
9876        better to do this than to double fault, which is what seems to be
9877        happening.)
9878
98792006-04-21 10:12  gb
9880
9881        * lisp-kernel/x86-exceptions.c: implement pc_luser_xp; just has to
9882        worry about consing, write-barrier stuff.
9883
98842006-04-21 10:11  gb
9885
9886        * lisp-kernel/x86-constants.h: Define X86 flags register bits
9887        (condition codes.)
9888
98892006-04-21 10:11  gb
9890
9891        * lisp-kernel/x86-exceptions.h: change the signature of pc_luser_xp
9892        (again.)
9893       
9894        Define enumeration constants for matching the instructions that can
9895        occur during consing.
9896
98972006-04-21 10:09  gb
9898
9899        * lisp-kernel/x86-spentry64.s: Preserve %temp0 in
9900        store_node_conditional, in case pc_luser_xp() needs to complete the
9901        memoization.
9902
99032006-04-21 02:50  gb
9904
9905        * lisp-kernel/x86-spentry64.s: Use only the value of the first
9906        instance of :ALLOW-OTHER-KEYS to determine whether unknown keys are
9907        allowed.
9908
99092006-04-21 02:49  gb
9910
9911        * lisp-kernel/lisp-debug.c: Tweak things so that %rip and %flags
9912        line up with GPRs.
9913
99142006-04-21 02:48  gb
9915
9916        * lib/sequences.lisp: SIMPLE-1D-ARRAY-SUBSEQ: 64-bit vector case is
9917        #+64-bit-target, not #+ppc64-target.
9918
99192006-04-21 02:47  gb
9920
9921        * level-0/X86/x86-array.lisp: %SIMPLE-BIT-BOOLE: shift by the right
9922        amount.
9923
99242006-04-21 02:46  gb
9925
9926        * level-0/l0-array.lisp: %UVECTOR-REPLACE: 64-bit vectors aren't
9927        unique to PPC64 (but do depend on #+64-bit-target).
9928
99292006-04-21 02:46  gb
9930
9931        * compiler/X86/x862.lisp: The binding(s) of *INTERRUPT-LEVEL*
9932        confuse PROGV; remove them, for now.
9933
99342006-04-20 23:35  gb
9935
9936        * lisp-kernel/x86-spentry64.s: In the bignum case of
9937        .SPinteger-sign, sign-extend the bignum's sign digit instead of ...
9938        whatever the code was trying to do there.
9939       
9940        In the lexpr-has-two-values case of .SPspread-lexprz, load arg_y
9941        and arg_z from the correct offsets within the lexpr.
9942
99432006-04-20 04:48  gb
9944
9945        * lisp-kernel/x86-gc.c: Get the link-inverting marker written;
9946        force it to always be used, for now.
9947
99482006-04-19 17:11  gb
9949
9950        * lisp-kernel/pmcl-kernel.c: (Very) different
9951        MAXIMUM_MAPPABLE_MEMORY for Solaris.
9952
99532006-04-19 17:10  gb
9954
9955        * lisp-kernel/area.h: (Very) different IMAGE_BASE_ADDRESS for
9956        Solaris.
9957
99582006-04-19 00:35  gb
9959
9960        * lisp-kernel/x86-gc.c: Write a few paragraphs outlining how the
9961        reversing-pointer marker should work.  (Perhaps it's a strong
9962        argument for implementing "purify" soon.)
9963
99642006-04-19 00:34  gb
9965
9966        * lisp-kernel/: x86-constants64.h, x86-constants64.s:
9967        function-boundary-marker.
9968
99692006-04-19 00:33  gb
9970
9971        * lisp-kernel/macros.h: Add node_aligned and indirect_node macros.
9972
99732006-04-18 19:35  gb
9974
9975        * lisp-kernel/x86-spentry64.s: Comparison was backwards in
9976        multiple-value case of THROW: don't want to do unbind_to if tcr's
9977        db-link matches target catch frame's.
9978
99792006-04-18 19:33  gb
9980
9981        * lisp-kernel/x86-uuo.s: Add UUO-ERROR-DEBUG-TRAP, remove
9982        UUO-ERROR-STACK-OVERFLOW.  Still need to get this completely in
9983        synch with x86-asm.
9984
99852006-04-18 19:33  gb
9986
9987        * level-1/l1-readloop-lds.lisp: Say more about the availability of
9988        :R in break messages.
9989       
9990        Say more about :C in :R.
9991
99922006-04-18 19:32  gb
9993
9994        * level-1/l1-readloop.lisp: Remove the #+x86-target debugging code
9995        in QUIT's PROCESS-INTERRUPT call, since the closure- trashing bug
9996        seems to have been fixed.
9997
99982006-04-18 19:31  gb
9999
10000        * level-1/x86-error-signal.lisp: Recognize (uuo-error-not-tag %rn
10001        x8664::subtag-catch-tag) as CANT-THROW-ERROR.  (Yes, this is a
10002        horrible kludge, but it only happens once.)
10003
100042006-04-18 19:19  gb
10005
10006        * level-1/l1-processes.lisp: Remove the #+x86-target debugging code
10007        in PROCESS-EXIT-APPLICATION, since the closure- trashing bug seems
10008        to have been fixed.
10009
100102006-04-18 19:18  gb
10011
10012        * level-0/X86/x86-pred.lisp: EQL on bignums wasn't using
10013        X8664::MISC-DATA-OFFSET, so it was comparing a few bytes beyond the
10014        ends of its arguments and ignoring the first few bytes (as well as
10015        doing misaligned memory references.)
10016
100172006-04-18 19:16  gb
10018
10019        * level-0/X86/x86-def.lisp: Insert the PPC version of APPLY+ here.
10020        This'll require some thought, mostly because of the reserved-frame
10021        issue(s).
10022
100232006-04-18 06:21  gb
10024
10025        * lisp-kernel/ppc-constants32.s: Comment mishaps.  These wacky
10026        adventures are about to end, I'm afraid.
10027
100282006-04-18 06:04  gb
10029
10030        * level-1/version.lisp: Daily bump.
10031
100322006-04-18 05:59  gb
10033
10034        * level-1/l1-sockets.lisp: Comment indentation.
10035
100362006-04-18 05:56  gb
10037
10038        * level-0/PPC/ppc-def.lisp: Move APPLY+ here.
10039
100402006-04-18 05:55  gb
10041
10042        * lib/setf-runtime.lisp: Move APPLY+ (which is defined in LAP) to
10043        ppc-def (that means that there will need to be an APPLY+ for
10044        x8664).
10045
100462006-04-18 05:38  gb
10047
10048        * compiler/X86/: x862.lisp, X8664/x8664-vinsns.lisp: Try to get the
10049        compiler and x8664-vinsn-templates to agree on vinsn-names and
10050        implement some vinsns that had been missing.  (About 15 or so
10051        undefined vinsns remain.)
10052
100532006-04-18 05:37  gb
10054
10055        * compiler/X86/x86-backend.lisp: The mechanism that tries to fixup
10056        opcode ordinals in vinsn templates (e.g., in case new instructions
10057        are defined in the assembler) wasn't checking to see if vinsn
10058        templates named in the hash table were defined.  (It was apparently
10059        getting away with this because CONSP was broken.)  So, don't try to
10060        fixup opcode ordinals in NIL, and optionally report templates
10061        that're referenced but not defined.
10062
100632006-04-18 04:38  gb
10064
10065        * compiler/X86/x862.lisp: CONSP was using the EXTRACT-FULLTAG vinsn
10066        (which only sets the low 8 bits of its destination), then comparing
10067        all 64-bits of the destination to a zero-extended 32-bit constant.
10068        (E.g., CONSP had little chance of being right all other things
10069        being equal, but may have been right more than one in 2^56 times if
10070        some random preceding instruction had zeroed the upper 56 bits.)
10071       
10072        (It's also shorter to do an 8-bit compare.)
10073
100742006-04-18 03:11  gb
10075
10076        * level-0/X86/x86-hash.lisp: box-fixnum arg order in %DFLOAT-HASH.
10077
100782006-04-18 02:51  gb
10079
10080        * compiler/X86/X8664/x8664-vinsns.lisp: Now that all assemblers are
10081        happy (well, as happy as they're going to be ...), back to finding
10082        bugs.  MULTIPLY-FIXNUMS has to unbox one arg (the source).
10083
100842006-04-18 01:26  gb
10085
10086        * lisp-kernel/thread_manager.c: Some Solaris changes.
10087
100882006-04-18 00:48  gb
10089
10090        * lisp-kernel/solarisx64/Makefile: The version of gm4 that Sun
10091        installs in /usr/sfw/bin is both newer and buggier than the version
10092        available on the "Solaris Companion" disk, which gets installed in
10093        /opt/sfw/bin.
10094       
10095        Ordinarily, I'd wonder why a "companion" disk offers to install
10096        software that's bundled as part of the installation (especially old
10097        versions of that software.)  Now I know.
10098
100992006-04-18 00:45  gb
10100
10101        * lisp-kernel/x86-spentry64.s: # __line__ wasn't a comment.
10102
101032006-04-18 00:45  gb
10104
10105        * lisp-kernel/m4macros.m4: Fix changecom.
10106
101072006-04-18 00:11  gb
10108
10109        * lisp-kernel/x86-spentry64.s: x8664 linux as doesn't like typos,
10110        but is otherwise fine with single-line /* */.
10111
101122006-04-18 00:09  gb
10113
10114        * lisp-kernel/: errors.s, imports.s, lisp.s, m4macros.m4,
10115        ppc-asmutils.s, ppc-constants.s, ppc-constants32.s,
10116        ppc-constants64.s, ppc-macros.s, ppc-spentry.s, ppc-spjump.s,
10117        ppc-subprims.s, ppc-uuo.s, x86-asmutils64.s, x86-constants.s,
10118        x86-constants64.s, x86-macros.s, x86-spentry64.s, x86-spjump64.s,
10119        x86-subprims64.s, x86-uuo.s, darwinppc/Makefile,
10120        darwinppc64/Makefile: Whoops.  Darwin as doesn't like #.  I dont
10121        like Darwin as, but we're back to single-line /* */, which is often
10122        pretty ugly and not well-supported by Emacs.
10123
101242006-04-17 23:23  gb
10125
10126        * lisp-kernel/: errors.s, imports.s, lisp.s, m4macros.m4,
10127        ppc-asmutils.s, ppc-constants.s, ppc-constants32.s,
10128        ppc-constants64.s, ppc-uuo.s, x86-asmutils64.s, x86-constants.s,
10129        x86-constants64.s, x86-macros.s, x86-spjump64.s, x86-subprims64.s,
10130        x86-uuo.s: Use #/newline for comment delimiters, which is supported
10131        by Emacs and by all current GAS versions (but see ARM conventions.)
10132         No more jerking around with this, knock wood.
10133
101342006-04-17 23:23  gb
10135
10136        * lisp-kernel/x86-spentry64.s: _SPspread_lexprz wasn't handling the
10137        case where caller provided args before the lexpr, which is much
10138        harder than the simple case.
10139       
10140        Use #/newline for comment delimiters, which is supported by Emacs
10141        and by all current GAS versions (but see ARM conventions.)  No more
10142        jerking around with this, knock wood.
10143
101442006-04-17 23:20  gb
10145
10146        * level-0/X86/x86-numbers.lisp: %FIXNUM-GCD was horrible, espcially
10147        when numbers differed greatly in magnitude.  Current (binary)
10148        algorithm is usually OK.
10149
101502006-04-17 23:17  gb
10151
10152        * compiler/X86/x86-lap.lisp: Condition name should be
10153        UNDEFINED-X86-LAP-LABEL, since it's (a) referenced and (b) that's
10154        not the problem.  Name wasn't spelled correctly in code that
10155        signals the condition, anyway.
10156
101572006-04-17 16:34  gb
10158
10159        * lisp-kernel/x86-exceptions.c: pc_luser_xp always takes a tcr
10160        argument, takes a new boolean to distinguish current tcr from
10161        others.  (The current tcr is only lusered on an interrupt; others
10162        are only lusered on GC entry.)
10163
101642006-04-17 16:33  gb
10165
10166        * lisp-kernel/x86-exceptions.h: X86 prototype for pc_luser_xp moved
10167        here.  (No deep reason not to share the new x86 signature on all
10168        architectures.)
10169
101702006-04-17 16:32  gb
10171
10172        * lisp-kernel/ppc-exceptions.h: PPC prototype for pc_luser_xp moved
10173        here.  (No deep reason not to share the new x86 signature on all
10174        architectures.)
10175
101762006-04-17 16:31  gb
10177
10178        * lisp-kernel/lisp-exceptions.h: prototype for pc_luser_xp is
10179        platform-dependent.
10180
101812006-04-17 06:49  gb
10182
10183        * level-1/l1-readloop.lisp: In the closure created in QUIT, only do
10184        CCL::DBG if (a) we're on X86 and (b) the inner closure is bad
10185        already.
10186
101872006-04-17 06:17  gb
10188
10189        * lisp-kernel/lisptypes.h: Don't know if there's such a thing as
10190        truly portable type name.
10191
101922006-04-17 06:16  gb
10193
10194        * lisp-kernel/: errors.s, lisp.s, m4macros.m4, x86-constants.s,
10195        x86-constants64.h, x86-constants64.s, x86-exceptions.c,
10196        x86-exceptions.h, x86-gc.c, x86-macros.s, x86-spentry64.s,
10197        x86-spjump64.s, x86-uuo.s: Well, // style comments seem to only
10198        work if they're at the start of a line in Linux GAS.  Try /* */
10199        comments, but limit them to a single line.  (May ultimately be
10200        better to use m4 dnl - carefully - and avoid end-of-line comments.)
10201
102022006-04-17 05:28  gb
10203
10204        * lisp-kernel/: x86-macros.s, x86-spentry64.s, x86-spjump64.s,
10205        x86-subprims64.s, x86-uuo.s: // comments.
10206
102072006-04-17 05:28  gb
10208
10209        * lisp-kernel/x86-gc.c: timeradd, timersub.  Other Solaris
10210        conditionalization.
10211
102122006-04-17 05:27  gb
10213
10214        * lisp-kernel/x86-exceptions.h: Solaris-related changes (xp
10215        accessors, etc.)
10216
102172006-04-17 05:26  gb
10218
10219        * lisp-kernel/x86-exceptions.c: Solaris-related changes (mostly in
10220        the sigstack trampoline stuff.)
10221
102222006-04-17 05:25  gb
10223
10224        * lisp-kernel/x86-constants64.h: // comments, Solaris-friendly
10225        integer types.
10226
102272006-04-17 05:24  gb
10228
10229        * lisp-kernel/: x86-asmutils64.s, x86-constants.s,
10230        x86-constants64.s: // comments.
10231
102322006-04-17 05:23  gb
10233
10234        * lisp-kernel/pmcl-kernel.c: Some Solaris conditionalization.
10235        Solaris mmap() is ... unusual.
10236
102372006-04-17 05:21  gb
10238
10239        * lisp-kernel/m4macros.m4: Use C++-style single-line comments,
10240        since Solaris version of GAS doen't handle multi-line comments (/*
10241        ... */).  It -seems- that other assemblers do handle them
10242        correctly; we'll see.
10243       
10244        Some Solaris conditionalization (ELFstabs, etc.)
10245
102462006-04-17 05:20  gb
10247
10248        * lisp-kernel/lisptypes.h: Conditionalize for Solaris (type names).
10249         We'll see what this breaks.
10250
102512006-04-17 05:19  gb
10252
10253        * lisp-kernel/lisp.h: PLATFORM_OS is PLATFORM_OS_SOLARIS when
10254        SOLARIS is defined.
10255
102562006-04-17 05:18  gb
10257
10258        * lisp-kernel/lisp-debug.c: Solaris conditionalization; print
10259        registers in predictable order.
10260
102612006-04-17 05:17  gb
10262
10263        * lisp-kernel/: errors.s, imports.s, lisp.s: Use C++-style
10264        single-line comments, since Solaris version of GAS doen't handle
10265        multi-line comments (/* ... */).  It -seems- that other assemblers
10266        do handle them correctly; we'll see.
10267
102682006-04-17 05:15  gb
10269
10270        * lisp-kernel/area.h: IMAGE_BASE_ADDRESS for SolarisX64.  Wrong.
10271
102722006-04-17 05:15  gb
10273
10274        * lisp-kernel/Threads.h: Conditionalize for Solaris.
10275       
10276        TODO: drop Jaguar support, use POSIX (vice Mach) semaphores on all
10277        platforms ?
10278
102792006-04-17 05:01  gb
10280
10281        * lisp-kernel/solarisx64/Makefile: new file
10282
102832006-04-17 04:56  gb
10284
10285        * lisp-kernel/linuxx8664/Makefile: Make it a little easier to
10286        change the name/usage of the linker script.
10287       
10288        Stop using the linker script (since spjump is the only thing in the
10289        kernel that has to be at a fixed address and we can copy it there.)
10290       
10291        Don't disable the EGC.
10292
102932006-04-17 04:54  gb
10294
10295        * lisp-kernel/x86-spjump64.s: Define spjump_start as the origin of
10296        the spjump table, exported for C (so that spjump can be mapped into
10297        low memory.)
10298
102992006-04-17 04:54  gb
10300
10301        * lisp-kernel/x86-spentry64.s: Use reserved_frame_marker.
10302       
10303        If the tlb's too small when trying to bind a special, push the
10304        binding index of the symbol we're binding (for the benefit of the
10305        handler.)
10306
103072006-04-17 04:52  gb
10308
10309        * lisp-kernel/x86-gc.c: Check for cases where a function has more
10310        code words than it has elements (can't happen, unless the
10311        function's code-words word is garbage, which seems to happen when
10312        closures get consed up in non-zeroed memory.)
10313       
10314        Make sure that we mark and forward Itemp2 (= %rcx = %temp2 =
10315        %nargs.q), which sometimes contains something tagged and
10316        non-immediate.
10317
103182006-04-17 04:48  gb
10319
10320        * lisp-kernel/x86-exceptions.c: new_heap_segment() (slowly) checks
10321        to ensure that everythings's zeroed.
10322       
10323        x8664 implementation of extend_tcr_tlb().
10324       
10325        on a gc trap, use tcr->save_allocptr (not the random value in %rbx)
10326        in call to update_bytes_allocated().
10327       
10328        normalize_tcr() - alway set tcr->save_allocptr/tcr->save_allocbase
10329        to VOID_ALLOCPTR (I -think- that this explains the crash-on-quit
10330        bug, and possibly some other instabiliy.)
10331       
10332        handle_exception: keep trying to guess how to distinguish memory
10333        faults from other sources of SIGSEGV.
10334       
10335        On debug traps, advance the PC past the UUO before entering the
10336        debugger.
10337       
10338        Handle XUUO_TLB_TOO_SMALL.
10339
103402006-04-17 04:42  gb
10341
10342        * lisp-kernel/: x86-constants64.h, x86-constants64.s:
10343        reserved_frame_marker.
10344
103452006-04-17 04:42  gb
10346
10347        * lisp-kernel/thread_manager.c: Remove implementation of
10348        extend_tcr_tlb().
10349
103502006-04-17 04:41  gb
10351
10352        * lisp-kernel/ppc-exceptions.h: Prototype for PPC version of
10353        extend_tcr_tlb().
10354
103552006-04-17 04:41  gb
10356
10357        * lisp-kernel/ppc-exceptions.c: PPC version of extend_tcr_tlb().
10358
103592006-04-17 04:40  gb
10360
10361        * lisp-kernel/pmcl-kernel.c: Remap the spjump table on x8664, so
10362        that we don't need to use a linker script.
10363
103642006-04-17 04:40  gb
10365
10366        * lisp-kernel/Threads.h: extend-tcr-tlb: signature defined by
10367        target xxx-exceptions.h now.
10368
103692006-04-17 04:39  gb
10370
10371        * lib/misc.lisp: Some comment formatting/editing.
10372
103732006-04-17 04:38  gb
10374
10375        * level-1/version.lisp: Bump.
10376
103772006-04-17 04:38  gb
10378
10379        * level-1/l1-readloop.lisp: Some debugging code in the code which
10380        creates the final closure.  It seems that when it's bad, it's bad
10381        on creation (here.)
10382
103832006-04-17 04:37  gb
10384
10385        * level-1/l1-processes.lisp: Some debugging code in
10386        PROCESS-EXIT-APPLICATION, to try to catch whatever's causing the
10387        final closure to be trashed.
10388       
10389        I don't think that other threads were getting their allocptr's
10390        nullified correctly by the GC/normalize_tcr(); with the current
10391        debugging code in place, it seems like the closure is consed on top
10392        of something other than free, thread-private heap memory (when it's
10393        bad, it fails the first check here.  I'm not sure that the latest
10394        round of GC/normalize-tcr() changes have fixed the problem, but I
10395        haven't seen it in a while now, either.)
10396
103972006-04-17 04:32  gb
10398
10399        * level-0/X86/x86-def.lisp: %FUNCTION-CODE-BYTE (for partial
10400        disassembly, etc.).
10401
104022006-04-17 04:31  gb
10403
10404        * compiler/X86/X8664/x8664-vinsns.lisp: Use RESERVED-FRAME-MARKER
10405        in RESERVE-OUTGOING-FRAME; don't use ENSURE-RESERVED-FRAME at all
10406        (anymore.)
10407       
10408        Subprims are down in low memory again; make INIT-CLOSURE skip
10409        setting the high byte of .SPcall-closure's address if it's zero.
10410
104112006-04-17 04:28  gb
10412
10413        * compiler/X86/X8664/x8664-arch.lisp: Define RESERVED-FRAME-MARKER,
10414        which may help backtrace.
10415
104162006-04-17 04:26  gb
10417
10418        * lib/: backtrace.lisp, ppc-backtrace.lisp: Split up RAW-FRAME-REF
10419        (interface/implementation.)
10420
104212006-04-15 09:20  gb
10422
10423        * level-1/x86-callback-support.lisp: Ensure that callback
10424        trampolines are allocated in executable memory.
10425
104262006-04-15 09:12  gb
10427
10428        * lib/dumplisp.lisp: Refresh external entry points before reviving
10429        callbacks.  Reset callback storage before reviving callbacks.
10430
104312006-04-15 09:10  gb
10432
10433        * level-1/x86-error-signal.lisp: Don't prefix the unknown trap
10434        error message with a %.  (Where did that come from ?)
10435
104362006-04-15 09:08  gb
10437
10438        * level-1/ppc-callback-support.lisp: Don't (knock wood) need to do
10439        anything in RESET-CALLBACK-STORAGE for PPC, since malloc()ed memory
10440        is executable.
10441
104422006-04-14 09:02  gb
10443
10444        * lib/time.lisp: Jeez.  Save buffer, why dontcha.
10445
104462006-04-14 08:21  gb
10447
10448        * lib/time.lisp: ENCODE-UNIVERSAL-TIME: treat year 0-99 as
10449        shorthand for the nearest matching year.
10450
104512006-04-14 08:20  gb
10452
10453        * lib/format.lisp: FORMAT-PRINT-NUMBER was printing commas even
10454        when : was missing.
10455
104562006-04-13 23:09  gb
10457
10458        * lib/ppc-backtrace.lisp: Eschew missing parens.
10459
104602006-04-13 23:08  gb
10461
10462        * lib/describe.lisp: Change NTH-VALUE-IN-FRAME call.
10463
104642006-04-13 23:08  gb
10465
10466        * lib/backtrace.lisp: DBG-FORM checks the second return value from
10467        ARGLIST-FROM-MAP.
10468
104692006-04-13 23:02  gb
10470
10471        * lib/arglist.lisp: Don't pass a "conser" function around (the idea
10472        is leftover from 68K MCL).  ARGLIST-FROM-MAP tries to be consistent
10473        about returning a second value; returns values NIL, T for functions
10474        that take no args and don't have a symbol map.
10475
104762006-04-13 22:53  gb
10477
10478        * level-1/l1-lisp-threads.lisp: Try to make args to
10479        NTH-VALUE-IN-FRAME et al a little saner.
10480
104812006-04-13 22:37  gb
10482
10483        * lib/numbers.lisp: Conditionalize on word size, not PPC processor
10484        type.
10485
104862006-04-13 22:36  gb
10487
10488        * level-1/version.lisp: Bump.
10489
104902006-04-13 22:35  gb
10491
10492        * level-1/l1-aprims.lisp: Remove the DBG trap from #'APPLY.  Still
10493        trying to find the cause of the crash-on-quit bug.
10494
104952006-04-13 07:30  gb
10496
10497        * lib/ppc-backtrace.lisp: Migrate some stuff here.
10498
104992006-04-13 07:29  gb
10500
10501        * level-1/l1-lisp-threads.lisp, lib/backtrace.lisp: Migrate some
10502        stuff to target-backtrace.
10503
105042006-04-13 06:45  gb
10505
10506        * lisp-kernel/x86-gc.c: mark_root: need to handle TRAs earlier.
10507
105082006-04-13 06:44  gb
10509
10510        * lisp-kernel/pmcl-kernel.c: Set GC debug bits manually here on
10511        x8664.
10512
105132006-04-13 06:44  gb
10514
10515        * level-1/x86-error-signal.lisp: XP-ARGUMENT-LIST: only the low 13
10516        bytes of %nargs_q contain arg count.
10517
105182006-04-13 06:43  gb
10519
10520        * level-1/l1-error-system.lisp: No EVAL-PROGRAM-ERROR. Please.
10521
105222006-04-13 06:43  gb
10523
10524        * level-1/l1-aprims.lisp: Trying to find what's (sometimes)
10525        trashing a closure during QUIT; embed a #+x86-target breakpoint in
10526        APPLY.
10527
105282006-04-13 06:42  gb
10529
10530        * level-0/X86/x86-numbers.lisp: Bad typo in %FIXNUM-GCD.
10531
105322006-04-13 06:41  gb
10533
10534        * compiler/X86/x862.lisp: Lap expression changes; recycle constant
10535        operands.
10536
105372006-04-13 06:41  gb
10538
10539        * compiler/X86/x86-lap.lisp: Freelist a lot of things; use
10540        "vector-lists" instead of adjustable arrays, simplify handling of
10541        constant expressions.  Still conses hysterically; need to find out
10542        where and tone it down a bit, if possible.
10543
105442006-04-13 06:39  gb
10545
10546        * compiler/X86/x86-disassemble.lisp: Maybe no lap immediate
10547        operands; maybe no lap constant-expressions.
10548
105492006-04-13 06:39  gb
10550
10551        * compiler/X86/x86-asm.lisp: Don't need
10552        *lap-constant-0-expression*.
10553
105542006-04-13 00:46  gb
10555
10556        * lisp-kernel/linuxx8664/Makefile: Kernel depends on Makefile,
10557        linker script.
10558
105592006-04-13 00:45  gb
10560
10561        * lisp-kernel/linuxx8664/elf_x86_64.x: Use linker script from ld
10562        2.16.1 (Thanks to James Bielman).
10563
105642006-04-12 18:53  gb
10565
10566        * lisp-kernel/linuxx8664/elf_x86_64.x: Try to avoid use of
10567        PROVIDE_HIDDEN, since some versions of GNU ld don't like it.  (Most
10568        of this seems to have to do with C++ static constructors, which
10569        aren't really relevant here.)
10570
105712006-04-12 18:28  gb
10572
10573        * lisp-kernel/x86-spentry64.s: Use movd (not movq) when moving
10574        between %Rforeign_sp and GPRs.
10575
105762006-04-12 18:22  gb
10577
10578        * lisp-kernel/linuxx8664/Makefile: egc flag
10579
105802006-04-12 18:08  gb
10581
10582        * lisp-kernel/x86-gc.c: Add current/prev (temporarily) to help find
10583        where we're losing here.
10584
105852006-04-12 18:07  gb
10586
10587        * lisp-kernel/x86-exceptions.c: pc_luser_xp: notice if we're in the
10588        write barrier code, crap out if so.
10589
105902006-04-12 18:06  gb
10591
10592        * lisp-kernel/pmcl-kernel.c: Disable EGC if DISABLE_EGC is defined
10593        (presumably in a Makefile).
10594
105952006-04-12 14:50  gb
10596
10597        * level-1/version.lisp: Bump.
10598
105992006-04-12 14:46  gb
10600
10601        * lib/: compile-ccl.lisp, ppc-backtrace.lisp, systems.lisp,
10602        x86-backtrace.lisp: new target backtrace stuff.
10603
106042006-04-12 14:45  gb
10605
10606        * lib/backtrace.lisp: Start splitting things up, ideally into a
10607        mostly abstract API and gory platform- dependent implementation
10608        details.
10609
106102006-04-11 21:40  gb
10611
10612        * lisp-kernel/pmcl-kernel.c: Only way to stress-test EGC is to turn
10613        the damned thing on.  (A little painful with integrity checking
10614        enabled, as it still is by default.)
10615       
10616        TODO:
10617       
10618        - sleep (me) - non-recursive (link-inverting) marker - pc-lusering
10619        (pc_luser_xp()) - backtrace - ANSI CL tests - purify - 2d-aref - FP
10620        exception handling - check UUO usage in kernel, disassembler,
10621        exception handlers - stack overflow recovery
10622
106232006-04-11 21:24  gb
10624
10625        * lisp-kernel/x86-gc.c: Skip over function code in
10626        check_refmap_consistency.
10627
106282006-04-11 21:23  gb
10629
10630        * lisp-kernel/x86-spentry64.s: Write barrier memoization sets bits
10631        backwards.
10632
106332006-04-11 19:11  gb
10634
10635        * compiler/X86/x862.lisp: Change LABELS for new closure format.
10636
106372006-04-11 19:11  gb
10638
10639        * lisp-kernel/x86-spentry64.s: 3 words of code + inner function in
10640        a closure, no lfname slot in closure.
10641
106422006-04-11 16:29  gb
10643
10644        * lisp-kernel/linuxx8664/.gdbinit: ada  prints active dynamic (GC)
10645        area.
10646
106472006-04-11 16:29  gb
10648
10649        * lisp-kernel/x86-subprims64.s: Maintain the MXCSR on transitions
10650        between lisp/foreign code.
10651
106522006-04-11 16:29  gb
10653
10654        * lisp-kernel/x86-spentry64.s: Add write barrier stuff (may have
10655        bit-order problems.)
10656       
10657        Maintain the MXCSR on transitions between lisp/foreign code.
10658
106592006-04-11 16:28  gb
10660
10661        * lisp-kernel/x86-macros.s: Access globals in expressions.
10662
106632006-04-11 16:27  gb
10664
10665        * lisp-kernel/x86-gc.c: Start to implement EGC for X8664; this'll
10666        need some bootstrapping stuff (function boundary markers) for a few
10667        reasons, as will DWS marker.
10668
106692006-04-11 16:27  gb
10670
10671        * lisp-kernel/x86-exceptions.c: If we get an FP exception, report
10672        the siginfo error code.
10673
106742006-04-11 16:26  gb
10675
10676        * lisp-kernel/: x86-constants64.h, x86-constants64.s: Define MXCSR
10677        fields in tcr.
10678
106792006-04-11 16:25  gb
10680
10681        * lisp-kernel/x86-constants.h: Define MXCSR bits.
10682
106832006-04-11 16:25  gb
10684
10685        * lisp-kernel/thread_manager.c: Setup the MXCSR somewhat sanely
10686        when starting a lisp thread.  (It'll be saner when FP exceptions
10687        are handled.)
10688
106892006-04-11 16:24  gb
10690
10691        * level-1/x86-error-signal.lisp: Recognize what complaints about
10692        non-uvectors are trying to tell us.
10693
106942006-04-11 16:23  gb
10695
10696        * level-1/l1-io.lisp: PRINT-OBJECT method for TRAs, symbol/function
10697        vectors.
10698
106992006-04-11 16:23  gb
10700
10701        * level-1/l1-clos-boot.lisp: Spell TAGGED-RETURN-ADDRESS with more
10702        Ses.  Define classes for function/symbol vectors.
10703
107042006-04-11 16:22  gb
10705
10706        * level-0/X86/x86-def.lisp: %RETURN-ADDRESS-OFFSET.
10707
107082006-04-11 16:21  gb
10709
10710        * compiler/X86/X8664/x8664-vinsns.lisp: Closure initialization
10711        needs to add a function boundary marker (but we can stop padding
10712        each closure with a null function name slot.)
10713
107142006-04-11 16:20  gb
10715
10716        * compiler/X86/X8664/x8664-arch.lisp: Define
10717        FUNCTION-BOUNDARY-MARKER, which should never exist in the wild.
10718
107192006-04-11 16:19  gb
10720
10721        * compiler/X86/x862.lisp: Emit a function boundary marker between
10722        code and constants. (For GC reasons.) Change closure initialization
10723        to account for it.
10724
107252006-04-11 16:18  gb
10726
10727        * compiler/X86/x86-lap.lisp: Emit a function boundary marker
10728        between code and constants. (For GC reasons.)
10729
107302006-04-11 16:17  gb
10731
10732        * compiler/X86/x86-disassemble.lisp: Require more stuff.
10733
107342006-04-11 16:17  gb
10735
10736        * compiler/nxenv.lisp: Require X8664ENV on X8664.
10737       
10738        See if we can get by without 68K condition code ...
10739
107402006-04-11 06:53  gb
10741
10742        * lisp-kernel/x86-exceptions.c: We'll need to handle FP exceptions
10743        soon.
10744
107452006-04-11 06:53  gb
10746
10747        * lib/numbers.lisp: Infinity constants conditionalized on/off
10748        during MXCSR adventures.  On now.
10749
107502006-04-11 06:52  gb
10751
10752        * lib/describe.lisp: Comment indentation.
10753       
10754        No such thing as an interpreted function; hasn't been for years.
10755
107562006-04-11 06:51  gb
10757
10758        * level-1/x86-threads-utils.lisp: Fixup lfun bits of %FIXNUM-SET et
10759        al.
10760
107612006-04-11 06:51  gb
10762
10763        * level-1/version.lisp: Bumped yesterday.
10764
107652006-04-11 06:50  gb
10766
10767        * level-1/l1-error-signal.lisp: Comments.
10768
107692006-04-11 06:50  gb
10770
10771        * level-1/l1-clos-boot.lisp: CLASS-OF handles non-simple vectors,
10772        at least.
10773
107742006-04-11 06:50  gb
10775
10776        * level-0/X86/x86-float.lisp: MXCSR stuff.  Better, mostly because
10777        a fixnum constant is boxed in %SET-MXCSR.
10778
107792006-04-11 06:49  gb
10780
10781        * level-0/X86/x86-def.lisp: Get info about register usage.
10782
107832006-04-11 06:49  gb
10784
10785        * compiler/X86/X8664/x8664-vinsns.lisp: Natural arithmetic; start
10786        work on 2d aref.  Fix MISC-SET-U64 (or some flavor thereof), which
10787        though that it was dealing with a scaled index.
10788
107892006-04-11 06:48  gb
10790
10791        * compiler/X86/x862.lisp: Natural arithmetic; start work on 2d
10792        aref.
10793
107942006-04-11 06:48  gb
10795
10796        * compiler/X86/x86-lap.lisp: FRAGs are freelisted.  Really need to
10797        do something about FRAG-CODE-BUFFERs, and need to tone down
10798        expression overkill.
10799
108002006-04-11 06:46  gb
10801
10802        * compiler/X86/x86-backend.lisp: Vinsn template fixup mechanism,
10803        for when opcode ordinals change.
10804
108052006-04-11 06:46  gb
10806
10807        * compiler/X86/x86-asm.lisp: UUO-ERROR-STACK-OVERFLOW ->
10808        UUO-ERROR-ARRAY-RANK.
10809       
10810        Vinsn template fixup mechanism, for when opcode ordinals change.
10811
108122006-04-11 06:45  gb
10813
10814        * compiler/X86/x86-arch.lisp: Try to unscramble MXCSR bits/masks.
10815
108162006-04-11 06:45  gb
10817
10818        * compiler/nx0.lisp: NX-U31-CONSTANT-P.
10819
108202006-04-11 06:44  gb
10821
10822        * compiler/dll-node.lisp: WITH-DLL-NODE-FREELIST: syntax to allow
10823        specialized list header initialization.
10824
108252006-04-11 06:43  gb
10826
10827        * level-1/l1-error-system.lisp, compiler/arch.lisp: Type errors for
10828        2d float arrays.
10829
108302006-04-10 10:19  gb
10831
10832        * lisp-kernel/x86-spentry64.s: _SPcallback is now called with the
10833        foreign SP properly obeying C alignment conventions.  In order to
10834        get it aligned for lisp usage during the callback, an extra word
10835        needs to be pushed before the backpointer to the old foreign RSP.
10836
108372006-04-10 10:18  gb
10838
10839        * lisp-kernel/x86-exceptions.c: Ensure that the copied sigcontext
10840        is 16-byte aligned, so that the foreign stack pointer is aligned
10841        according to C conventions when we enter the signal handler on that
10842        stack.
10843
108442006-04-10 10:13  gb
10845
10846        * lib/numbers.lisp: Define FP infinities, since we're running with
10847        FP exceptions masked. (We don't handle FP exceptions on X8664 yet,
10848        but this was crashing due to ldmxcsr/stmxcsr confusion, not because
10849        an unmasked FP exception was raised and unhandled.)
10850
108512006-04-10 10:10  gb
10852
10853        * lib/level-2.lisp: Remove the WARN and the conditionalization
10854        around bit/bitfield accessors on X8664.
10855
108562006-04-10 10:09  gb
10857
10858        * level-0/X86/x86-float.lisp: Repeat after me: to load the mxcsr
10859        from memory, we say "ldmxcsr".  We want to do such a load in order
10860        to write new values into the mxcsr.  To store it in memory, we say
10861        "stmxcsr".  We want to do such a store (and a subsequent load from
10862        memory) in order to access the value of the mxcsr.  Simple, no ?
10863
108642006-04-10 10:07  gb
10865
10866        * compiler/X86/: x862.lisp, X8664/x8664-vinsns.lisp:
10867        %GET-BIT/%SET-BIT.
10868
108692006-04-10 08:29  gb
10870
10871        * compiler/X86/X8664/x8664-vinsns.lisp: Float
10872        addition/multiplication: either arg can overlap result (and often
10873        will).  Float subtraction/division: caller should ensure that
10874