- Nov 09, 2005
-
-
rtoy authored
before asking if it's a complex array.
-
rtoy authored
use an IR1 attribute but allow arbitrary functions to determine if the result is used or not. This allows us to handle SORT and ADJUST-ARRAY depending on the args. Use 19c/boot-2005-11-1.lisp to bootstrap this change. compiler/knownfun.lisp: o Remove IMPORTANT-RESULT attribute. o Add new slot to function-info the hold the function to indicate if the result is not used. o Adjust %defknown with a new keyword arg :result-not-used for the new slot. o Add functions for the result-not-used arg for o SORT-RESULT-NOT-USED-P: non-NIL if the sequence might be a list. o ADJUST-ARRAY-RESULT-NOT-USED-P: non-NIL if the array is not known to be adjustable. o FUNCTION-RESULT-NOT-USED-P: non-NIL if function result must be used (for functions like nreverse). compiler/ir1opt.lisp: o Remove now unused function CHECK-IMPORTANT-RESULT o Add check in IR1-OPTIMIZE-COMBINATION to see if function result should be used. compiler/fndb.lisp: o Remove IMPORTANT-RESULT attribute and replace with :result-not-used.
-
- Nov 08, 2005
-
-
rtoy authored
in the 19c release. o Move the new stuff to the new file, release-19d.txt.
-
rtoy authored
#P(<make-pathname args). So most pathnames can be printed readably, even if they have weird components. But we don't handle search-lists and patterns very well because we don't have readable syntax for those. code/sharpm.lisp: o Make the #P reader accept lists and apply make-pathname on them to create the pathname code/pathname.lisp: o If a pathname has no namestring, then try to print out the pathname object using #P(foo) syntax, if possible. If not possible, just print out the pathname unreadably, as we used to. o Put some conditional newlines when printing out unprintable pathnames so it wraps a bit better. (Needs work.)
-
- Nov 07, 2005
-
-
rtoy authored
If the parameter d is omitted, ... except that if the fraction to be printed is zero then a single zero digit should appear after the decimal point. Make it so.
-
rtoy authored
-
rtoy authored
-
rtoy authored
given. We now compute the length more carefully, only checking if to see that the list has the desired minumum and maximum (if applicable) length. This bug was found with ironclad 0.10. (Remove DOTTED-LIST-LENGTH later. We need it now to make bootstrapping easier. I'm lazy.)
-
rtoy authored
-
- Nov 04, 2005
- Nov 03, 2005
-
-
rtoy authored
-
- Oct 26, 2005
-
-
rtoy authored
that. o Add some more comments about what we're doing.
-
- Oct 25, 2005
-
-
rtoy authored
(defun zot () (flet ((%f (&key) :bad)) (%f nil nil))) This should produce a compile-time warning and a run-time error that NIL is not a valid keyword. To fix this, in CONVERT-MORE-CALL listify the name so we can distinguish no LOSER's or a LOSER whose name is NIL.
-
- Oct 24, 2005
-
-
rtoy authored
LOGICAL-PATHNAME-NAMESTRING-P wasn't defined anywhere. o Add LOGICAL-PATHNAME-NAMESTRING-P and adjust LOGICAL-PATHNAME to use it. o Print out identity when printing logical-hosts. (This unrelated change makes it easier to see that the user's BOGUS logical host isn't the same as the BOGUS logical host used in *LOGICAL-PATHNAME-DEFAULTS*.
-
- Oct 22, 2005
-
-
rtoy authored
name. (But we still have problems with print/read for :newest and :unspecific.)
-
- Oct 21, 2005
-
-
rtoy authored
so signal an error when we try to generate the the namestring.
-
rtoy authored
condition, or defstruct, and vice versa, so signal an error if we try to do that.
-
rtoy authored
-
rtoy authored
normally.
-
rtoy authored
converted to an internal number, an error of type reader-error is signaled." So, disable underflow traps, convert the number. If the resulting float is zero, but the number was not, signal a reader-error.
-
rtoy authored
underflow traps are enabled and rehash-threshold is very small.
-
rtoy authored
sure that we adjust the stack pointer by a multiple of 16-bytes.
-
rtoy authored
sure FULL_FRAME_SIZE is a multiple of 16. (From a patch to sbcl from Cyrus Harmon.)
-
- Oct 20, 2005
-
-
rtoy authored
10), and (log 17 10) returned different single-float results. I think this is allowed by ANSI CL, but I think it's unfortunate. Therefore, try to apply float contagion to the arguments before computing the log function. Also, if both args are single-floats or rationals, we coerce them to double-floats before computing the result. This makes (log 17 10) = (log 17.0 10). There are other cases still to be considered.
-
- Oct 19, 2005
-
-
rtoy authored
destructive functions (such as nreverse) modify constant args and for warning when the result of destructive functions is not used.
-
rtoy authored
nreverse) modify constant args and for warning when the result of destructive functions is not used. Detecting modification of constant args is done by adding a new IR1 transformation that checks that a function is not destructively modifying constants or literals. A new IR1 attribute, important-result, is used to determine if the result of a function should be used instead of discarded. (Note: this means some functions are not detected. This should probably be implemented as another transform so the compiler can detect those cases.) code/error.lisp: o Add new condition CONSTANT-MODIFIED. compiler/fndb.lisp: o Note destructive functions that should not modify constant args o Note destructive functions whose results should be used. compiler/ir1opt.lisp: o Add new function CHECK-IMPORTANT-RESULT to check if the result is used. o Update IR1-OPTIMIZE-COMBINATION to check if a function destructively modifies constant args or if the result of a destructive function is not used. compiler/knownfun.lisp: o Add new IR1 attribute, IMPORTANT-RESULT, to indicate that the result of a function should be used. o Add new FUNCTION-INFO slot, DESTROYED-CONSTANT-ARGS. This holds a function for computing the constant or literal arguments which are destructively modified by the function. o Add support functions for DESTROYED-CONSTANT-ARGS functions.
-
- Oct 18, 2005
- Oct 14, 2005
- Oct 11, 2005
-
-
rtoy authored
double-floats correctly. (Double's were broken before.) o Fix MAKE-CALLBACK-TRAMPOLINE-SEGMENT which wasn't saving all the callee-saved registers and was not adjusting the stack properly when saving these registers. These changes should (Ha!) fix all of the issues reported by Luis Oliveira for ppc callbacks.
-
- Oct 10, 2005
-
-
rtoy authored
PROBE-FILE return a pathname with directory and name components set appropriately. This is done by having UNIX-RESOLVE-LINKS append a slash when the pathname actually names a directory and not a file.
-
rtoy authored
PROBE-FILE return a pathname with directory and name components set appropriately. This is done by having UNIX-RESOLVE-LINKS append a slash when the pathname actually names a directory and not a file.
-
- Oct 07, 2005
-
-
rtoy authored
default encapsulation from :default to t for ppc, until this is fixed.
-
- Oct 06, 2005
- Oct 05, 2005
-
-
rtoy authored
from Rex Dieter, for gcc4 compatibility.
-