- May 18, 2004
-
-
cwang authored
-
cwang authored
-
cwang authored
-
cwang authored
-
cwang authored
-
cwang authored
-
cwang authored
-
cwang authored
-
cwang authored
-
cwang authored
-
cwang authored
-
cwang authored
-
rtoy authored
-
rtoy authored
but the following gives wrong results: (macroexpand '(multiple-value-bind (&rest x) (foo y) d)) (MULTIPLE-VALUE-CALL #'(LAMBDA (&OPTIONAL &REST X &REST #:G858) (DECLARE (IGNORE #:G858)) D) (FOO Y)) Fix from Juan Jose Garcia Ripoll.
-
rtoy authored
Upcase path components when given a logical pathname. Preserves print/read consistency and fixes (I think) an issue with ASDF and logical pathnames
-
rtoy authored
-
rtoy authored
computation.
-
rtoy authored
to allow returning the -1 uninitialized hash indicator.
-
rtoy authored
-
rtoy authored
-
- May 17, 2004
- May 15, 2004
-
-
rtoy authored
instead of a random value, just like on sparc.
-
- May 14, 2004
-
-
rtoy authored
-
rtoy authored
allow larger stacks.
-
rtoy authored
on sparc.
-
rtoy authored
-
rtoy authored
itself. Only for sparc currently. Doesn't lazily compute the symbol hash yet. Simple test shows a 5% increase in compilation speed, despite making make-symbol significantly slower. * src/code/hash-new.lisp (internal-sxhash): Use the symbol-hash slot instead of computing the hash value. * src/compiler/generic/new-genesis.lisp (allocate-symbol): Write out the sxhash value of the symbol into the symbol-hash slot. * src/compiler/globaldb.lisp (info-hash): Update to use the symbol hash instead of computing the sxhash. * src/code/symbol.lisp (make-symbol): Compute the symbol hash when creating the symbol. * src/compiler/sparc/cell.lisp ((symbol-hash)): Add vop to extract out the symbol hash from a symbol. * src/compiler/generic/objdef.lisp: Rename the unused slot to hash, so we can make it the symbol hash.
-
- May 13, 2004
-
-
rtoy authored
CLOS/defmethod test in cl-bench to run. (I'm waiting for bug reports before adding this everywhere.) o Add a temp to the MOVE-ARGUMENT vop so we can store things on the stack with large offsets.
-
rtoy authored
o Add a global temp register, gtemp, for use in move-functions when a temp register is needed. Currently %g7, but could be changed to a5 (aka %l5) if necessary, which some more straightforward work.
-
rtoy authored
-
- May 12, 2004
-
-
rtoy authored
comment for full details, but the issue is that Lisp says mixing a real and a complex requires converting the real to complex before doing the operation. But Kahan's algorithms assume that this doesn't happen, like z-1 should not be computed as z-(1+0*i). One place where this was wrong was for acos(2 +/- 0i). Kahan says acos(2+0i) is +0 - i*acosh(2) and acos(2-0i) is +0 + i*acosh(2). We had this backwards for the above reason. I think this was caused by the erroneous deftransforms for real op complex which were removed sometime ago, causing these function to compute the wrong thing.
-
- May 11, 2004
- May 10, 2004
- May 06, 2004
-
-
rtoy authored
be used to tune it. (Still needs work.)
-
rtoy authored
source location for defvar and friends.
-
rtoy authored
the following enters an infinite recursion if it gets compiled two times: (def-alien-type nil (struct foo (f (* (function (values) (* (struct foo))))))) During the second compile, the existing type is compared with the to be defined type. This enters a recursion because (struct foo) is recursive and the comparison is done again. The current code has a "depth" counter and simply returns true if it exceeds 10. But it only works for pointers to records and loops forever for function pointers. The patch below should fix this. It keeps a hashtable of the already compared types and returns true if a pair is already in the hashtable.
-