- Dec 04, 2010
-
-
rtoy authored
bugs with dumping unicode strings to fasls on a different endian architecture. Combined with cross-x86-sparc.lisp, this will successfully cross-compile from x86 (OSX) to sparc (Solaris). The result won't, unfortunately, built itself, but if the callback support is commented out, the build is successful. This new build can then be successfully used to do another build that includes callback support. don't know what is causing this issue. compiler/dump.lisp: o DUMP-DATA-MAYBE-BYTE-SWAPPING needs to byte-swap unicode (16-bit) strings. compiler/generic/new-genesis.lisp: o STRING-TO-CORE needs to swap the byte order of unicode strings if the backend and native backend have different endianness. o LOAD-CHAR-CODE should load characters based on the backend, not native-backend. (This not used anymore, though?) o Add new function byte-swap the char codes of a unicode string. o COLD-LOAD-SYMBOL calls MAYBE-BYTE-SWAP-STRING o FOP-UNINTERNED-SYMBOL-SAVE, FOP-UNINTERNED-SMALL-SYMBOL-SAVE, FOP-STRING, FOP-SMALL-STRING, FOP-FOREIGN-FIXUP, and FOP-FOREIGN-DATA-FIXUP need to call MAYBE-BYTE-SWAP-STRING for unicode strings. compiler/ppc/parms.lisp: compiler/sparc/parms.lisp: compiler/x86/parms.lisp: o Initialize backend foreign-linkage space start and entry size appropriately. The target versions are initialized from the backend values now too. lisp/os-common.c: o Some debugging stuff for foreign linkage data to print out symbol names. Currently ifdef'ed out.
-
- Dec 03, 2010
-
-
rtoy authored
-
- Dec 02, 2010
- Dec 01, 2010
-
-
rtoy authored
FreeBSD.
-
- Nov 30, 2010
- Nov 16, 2010
- Nov 12, 2010
- Nov 11, 2010
- Nov 10, 2010
-
-
rtoy authored
and entry size. Not yet used anywhere. This change needs a cross-compile; use boot-2010-11-1-cross.lisp as the cross-compile script. compiler/backend.lisp: o Add the two new slots to the backend. compiler/dump.lisp: o DUMP-DATA-MAYBE-BYTE-SWAPPING needs to handle (unicode) strings o DUMP-DATA-MAYBE-BYTE-SWAPPING should not swap bytes of a string. Genesis will make that happen. code/exports.lisp: o Export BACKEND-FOREIGN-LINKAGE-SPACE-START and BACKEND-FOREIGN-LINKAGE-ENTRY-SIZE. bootfiles/20b/boot-2010-11-1-cross.lisp: o Cross-compile script for this change.
-
rtoy authored
bootfiles for 20a.
-
- Nov 08, 2010
- Nov 04, 2010
- Nov 03, 2010
-
-
rtoy authored
-
- Nov 02, 2010
- Oct 28, 2010
-
-
rtoy authored
-
rtoy authored
default config.
-
rtoy authored
o realpart/complex-single-float, realpart/complex-double-float, imagpart/complex-double-float, %complex-double-float, and %complex-single-float were zeroing out the result register which is ok, except when the result register and the source register are the same. Use a temp register in this case. This bit of code tickles the bug: (defun zot-r (z) (declare (type (simple-array (complex double-float) (*)) z)) (realpart (aref z 0))) (defun zot-i (z) (declare (type (simple-array (complex double-float) (*)) z)) (imagpart (aref z 0))) (let ((z (make-array 1 :element-type '(complex double-float) :initial-element #c(42d0 -42d0)))) (zot-r z)) (let ((z (make-array 1 :element-type '(complex double-float) :initial-element #c(42d0 -42d0)))) (zot-i z)) The correct results are 42d0 and -42d0, not 0d0, of course.
-
- Oct 27, 2010
- Oct 26, 2010
-
-
rtoy authored
-
- Oct 22, 2010
-
-
rtoy authored
-
- Oct 15, 2010
-
-
rtoy authored
changed. Patch supplied by Stelian Ionescu, from a patch for gentoo.
-
- Oct 14, 2010
-
-
rtoy authored
-
rtoy authored
o Add -U option. This causes the updated translations to overwrite the *.po files in source tree. Without -U, the diff of the changes are printed, as before. The -U option is useful to prepare the po files for checking in to the CVS repository. lisp/GNUmakefile: o Put back the original translations target and rule, but rename the target to tranlations-update. This allows developers to overwrite the translations in the source tree, ready for analysis or checkin, as appropriate.
-
- Oct 13, 2010
-
-
rtoy authored
compiled with and without Unicode. This is needed so that the pot files have the same content for both unicode and non-unicode builds. (The _"" and _N"" are handled by the reader, so things that are conditionalized out still get processed, unlike using gettext.)
-
- Oct 12, 2010
-
-
rtoy authored
-
rtoy authored
of streams. This is a change from current 20a and 20b behavior which didn't signal errors, but matches the behavior for releases 19f and earlier. But allow them to work on binary-text-streams. This is the same behavior as before for binary-text-stream streams. However, read-sequence no longer allows reading from streams into arbitrary objects, unless the stream is a binary-text-stream stream. code/fd-stream-extfmt.lisp: o In %SET-FD-STREAM-EXTERNAL-FORMAT, only update fd-stream-in/fd-stream-out if we have a character or binary-text-stream stream. o Don't update the fd-stream-string-buffer or lisp-stream-in-buffer if we have a binary-text-stream because that will mess up how fast-read-char and fast-read-byte dispatch to do the right thing for binary-text-stream streams. code/fd-stream.lisp: o Set the fd-stream-in and fd-stream-bin slots appropriately depending on whether we have a character, binary, or binary-text-stream stream. o Only create the lisp-stream-in-buffer if we do NOT have a binary-text-stream. (Binary streams didn't use the lisp-stream-buffer previously, so no change there. Character streams use the lisp-stream-buffer and/or lisp-string-buffer.) o Set the fd-stream-flags appropriately for the kind of stream this is. Checking a fixnum is faster than checking the type of a stream. code/struct.lisp: o Add FLAGS slot to LISP-STREAM so we can tell what kind of stream (character, binary, binary-text-stream) we have. code/sysmacs.lisp: o Change FAST-READ-CHAR so that if we have a have a binary or binary-text-stream stream, we dispatch to the fast-read-char methods to do the right thing, including signaling an error for the wrong kind of stream. o Change FAST-READ-BYTE so that if we do not have a binary stream, we dispatch to the fast-read-char method to do the right thing. compiler/dump.lisp: o With the above changes, we can no longer write characters to a binary stream, like a FASL file. Make the fasl file a binary-text-stream so that we can. (Alternatively, we could create the FASL header as a string, convert to octets and dump the octest to the file. This is easier, and should still be fast for writing fasls.)
-
- Oct 10, 2010
-
-
rtoy authored
strings instead of having several slightly different versions all over.
-