Skip to content
Snippets Groups Projects
  1. Jul 02, 2004
  2. Jun 29, 2004
    • rtoy's avatar
      Extra values were not correctly handled by the values setf expander. · 7348bfc2
      rtoy authored
      This causes
      
        (let ((a t) (b t) (c t) (d t) (e t) (f t))
          (setf (values a (values b c) (values d) (values e f)) (values 0 1 2 3 4 5 6))
          (list a b c d e f))
      
      to return the (0 1 2 3 4 5) instead of (0 1 nil 2 3 nil).
      7348bfc2
    • rtoy's avatar
      o Fix BIGNUM-LOAD-BYTE so that it works with signed and unsigned · 2ecccad7
      rtoy authored
        values.  BIGNUM-LOAD-BYTE is significantly faster than LDB when
        extracting out 32-bit sized pieces.
      o Initial start at fixing BIGNUM-DEPOSIT-BYTE.  Still broken from
        certain combinations of signed NEW-BYTE and BIGNUM and various
        border cases for BYTE-SPEC.  Many debug prints still in the code.
      2ecccad7
  3. Jun 21, 2004
  4. Jun 20, 2004
    • pmai's avatar
      Port of the *module-provider-functions* extension to cl:require from SBCL. · d71d9d0b
      pmai authored
      The old defmodule handler and the module:*-library.* loading have been
      factored out to their own module-provider functions, which are by default
      on *module-provider-functions*.  Note however that this implies one
      functional change for defmodule defined modules:  The loading of the files
      constituting such a module are now _NOT_ wrapped with without-package-locks.
      
      Wrapping of module:*-library.* files with without-package-locks is only
      retained temporarily, until proper changes to the various modules have
      been made.
      
      Also adjusted documentation of require to correctly state the default for
      *require-verbose* which has always been t, not nil as previously claimed.
      
      This change is still missing documentation in the user manual.
      d71d9d0b
    • pmai's avatar
      Special case the processing of the -quiet command-line flag in order to · 2d50bf26
      pmai authored
      ensure that its effects kick in early enough during startup, thus silencing
      loading of siteinit, siteinit-loaded files, etc.  Reported by JBThiel
      against the OS X port.
      2d50bf26
  5. Jun 18, 2004
    • rtoy's avatar
      o Fix a misplaced declaration in %unary-ftruncate/single-float · a71e3e77
      rtoy authored
      o Update %unary-ftruncate and the corresponding deftransform because
        it was not properly returning the correct sign for signed zeroes.
        If the number was in a good range, we used truncate, which loses the
        sign of zero.  (Should we have leave it in and add an explicit check
        for a zero result and adjust the sign appropriately?  That would
        allow us to use the fast builtin instructions at the expense of a
        test for zero and a fix.)
      a71e3e77
    • rtoy's avatar
      Less consy ROOM function. Also fixes an issue where ROOM appeared to · 5fcd7e43
      rtoy authored
      cause garbage to be retained with gencgc on x86 (but not sparc),
      eventually causing an out-of-heap error.
      
      From Helmut Eller, via cmucl-imp.
      5fcd7e43
  6. Jun 13, 2004
    • emarsden's avatar
      · 2e1e9491
      emarsden authored
      Fixes to REINITIALIZE-GLOBAL-TABLE: ignore invalid entries in the
      *GLOBAL-TABLE*, and reload files in the same order as they were initially
      loaded.
      
      From Lynn Quamm.
      2e1e9491
    • emarsden's avatar
      · dd722bc9
      emarsden authored
      Avoid a hang when calling SOFTWARE-VERSION on Linux kernel version 2.6.x.
      The hang is due to a bug in certain files in the proc filesystem, where the
      select() system call does not work correctly.
      dd722bc9
  7. Jun 10, 2004
  8. Jun 09, 2004
  9. Jun 04, 2004
  10. Jun 02, 2004
  11. Jun 01, 2004
  12. May 24, 2004
  13. May 18, 2004
  14. May 17, 2004
  15. May 15, 2004
  16. May 14, 2004
    • rtoy's avatar
      Add support for storing the symbol hash into a slot in the symbol · 4d7bf80f
      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.
      4d7bf80f
  17. May 12, 2004
    • rtoy's avatar
      Fix some issues with the complex functions with signed zeroes. See · 3e0a1c82
      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.
      3e0a1c82
  18. May 06, 2004
    • rtoy's avatar
      Merge in the 19a changes containing Helmut Eller's implementation for · 35ff77d3
      rtoy authored
      source location for defvar and friends.
      35ff77d3
    • rtoy's avatar
      From Helmut Eller: · c5c28c25
      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.
      c5c28c25
  19. May 05, 2004
  20. May 04, 2004
  21. Apr 28, 2004
    • emarsden's avatar
      · 7df69e0b
      emarsden authored
      On Linux/AMD64, we need to tell the platform linker to use the 32-bit
      linking mode instead of the default 64-bit mode. This can be done either
      via the LDEMULATION environment variable, or via the "-m" command-line
      option.
      
        - in EXT:LOAD-FOREIGN, add LDEMULATION=elf_i386 to the environment
          inherited by the linker
      
      This assumes that the LDEMULATION environment variable will be ignored by
      the platform linker on Linux/i386 platforms.
      7df69e0b
  22. Apr 23, 2004
Loading