- Jan 13, 2005
-
-
fgilham authored
lisp.c into the correct <foo>-os.h files.
-
- Jan 07, 2005
-
-
rtoy authored
(defun fn-492 (r p1) (declare (optimize speed (safety 1)) (type (simple-array (signed-byte 8) nil) r) (type (integer * 22050378) p1)) (setf (aref r) (lognand (the (integer 19464371) p1) 2257)) (values)) confuses the compiler and causes (values) to be deleted, and also deletes the return from the function so we just run past the end into junk. I think it's caused by confusion in type derivation. I changed the defoptimizer for %aset so it returns the specialized element-type of the array instead of the new-value. This is a workaround, not a solution.
-
- Jan 06, 2005
-
-
rtoy authored
type of (logior positive-integer 0) to (integer 0 0). Same problem with logxor.
-
- Dec 24, 2004
-
-
rtoy authored
on Linux/x86, the Lisp signal handler for SIGSEGV overwrites the beginning of the control stack. For SIGSEGV we use an extra signal stack and when the signal isn't handled by the GC or by the stack overflow handler we call eventually call_into_lisp. call_into_lisp tests whether the current stack pointer points to the normal control stack. But the test fails because we use the extra signal stack, so call_into_lisp just sets the stack pointer to the beginning of the normal control stack. This is not much fun for debugging because the backtrace is truncated and it's also no longer possible to throw to the top-level-catcher because its frame was overwritten. I tried to fix that with the patch below. The idea is to switch back to the normal stack before calling the Lisp handler. The patch may not be very elegant but it is at least short :) .
-
rtoy authored
-
- Dec 23, 2004
- Dec 22, 2004
-
-
rtoy authored
read-preserving-whitespace, read-delimited-list, and read-from-string all return a primary value of nil. Make it so. We were returning a list of NILs previously.
-
- Dec 21, 2004
- Dec 17, 2004
-
-
rtoy authored
-
- Dec 16, 2004
-
-
rtoy authored
done, because we don't do anything with the loop results. ir1util.lisp: o Make sure component initializes the outer-loop slot of the component. main.lisp: o Add defvar *loop-analyze*, defaulting to NIL. o Run loop analysis code when *loop-analyze* is T. node.lisp: o Make the outer-loop slot of a component a required arg and adjust the declared type appropriately. represent.lisp: o Add ASSIGN-TN-DEPTHS function to assign loop depths to TNs. vop.lisp: o Forgot to add the loop-depth slot for TNs.
-
- Dec 15, 2004
-
-
rtoy authored
-
rtoy authored
ANSI 5.1.3. (Based on the fixs in sbcl.)
-
rtoy authored
-
rtoy authored
o Fix the handling of parameters to ~{. We treat a NIL parameter as not given, as tested by ansi-tests. I suspect there are still cases that aren't handled. This also needs to be cleaned up. Lots of duplicated code between the ~{ interpreter and expander.
-
- Dec 14, 2004
-
-
rtoy authored
-
rtoy authored
more bugs remain. (Based on code in sbcl.)
-
rtoy authored
and make-sequence o Add derive-type optimizers for concatenate and make-sequence that only derives the type when the output sequence specifier is a subtype of sequence. (Only done for constant specifiers.) These changes fix the bug where the compiler deletes all code, including the return for (defun foo () (concatenate 'fixnum '(1 2 3))). This is caused by confusion in the compiler where derive-node-type conflicts with the declared return type and causes all trailing blocks to be deleted.
-
- Dec 13, 2004
- Dec 09, 2004
-
-
rtoy authored
in several places to signal socket errors instead of generic errors. (For better support for trivial-sockets.)
-
rtoy authored
-
rtoy authored
all following code (including function return) to be deleted, change the result-type of concatenate from consed-sequence to t. o Do the same for make-sequence. I think this is because the derived type from the derive-typ optimizer conflicts with the declared result type.
-
- Dec 06, 2004
-
-
rtoy authored
an error. o Fix the logic error in scale in flonum-to-digits, where the test for high-ok was wrong. o Take the opportunity to eliminate some common subexpressions to reduce computation and consing of bignums.
-
rtoy authored
for simple-streams. Add a test for this too. Bug report and fix from Lynn Quam, cmucl-imp, 2004-12-04.
-
rtoy authored
o Add new function EFFICIENCY-NOTE for printing out efficiency notes. The notes are printed unless brevity (inhibit-warnings) >= 2.5 ir1final.lisp: o Use EFFICIENCY-NOTE instead of COMPILER-NOTE.
-
- Dec 03, 2004
-
-
rtoy authored
Eller, cmucl-imp, 2004-12-03.
-
- Nov 22, 2004
- Nov 20, 2004
-
-
cwang authored
-
- Nov 19, 2004
-
-
cwang authored
-
- Nov 17, 2004
-
-
cwang authored
-
- Nov 16, 2004
- Nov 11, 2004
-
-
rtoy authored
-
- Nov 10, 2004