Skip to content
Snippets Groups Projects
  1. Nov 30, 2009
    • rtoy's avatar
      Add support for static arrays that are not moved by GC. This is based · 7badf899
      rtoy authored
      on an idea from Carl and Lynn Quam's foreign vector code that he sent
      many years ago.  The static arrays will be GCed if nothing references
      them.
      
      The static arrays are currently limited to strings, 8, 16, and 32-bit
      integers (signed and unsigned), single and double floats, and complex
      single and double floats.  Static arrays are not adjustable because
      adjusting an array can change the address if the array grows.  (Ok
      if the array shrinks, but not implemented.)
      
      To indicate a static array, the data portion of the vector header word
      is set to 1.  It is normally 0 for all other Lisp vectors.
      
      code/array.lisp:
      o Add :ALLOCATION keyword arg to MAKE-ARRAY to allow allocation of
        static vectors.  Do the appropriate thing for static arrays.
      o Add MAKE-STATIC-VECTOR.  This is Lynn's foreign vector stuff
        rewritten in Lisp instead of the original mix of Lisp and C.
      o Add STATIC-ARRAY-P to tell if an array is static or not.
      o Signal errors in MAKE-ARRAY and ADJUST-ARRAY for invalid options
        with static arrays.
      
      code/describe.lisp:
      o Indicate if the array is static.
      
      compiler/fndb.lisp:
      o Tell compiler about new keyword argument, :allocation, for
        MAKE-ARRAY.
      7badf899
  2. Sep 09, 2009
  3. Jun 11, 2009
  4. Jun 20, 2007
  5. Jan 13, 2007
  6. Jan 11, 2007
  7. Jun 30, 2006
  8. Apr 13, 2005
  9. Apr 06, 2004
    • emarsden's avatar
      · 7862b94e
      emarsden authored
      Two unrelated fixes to ADJUST-ARRAY:
      
        - (adjust-array (make-array nil :initial-element 'zob) nil)
          was losing the :initial-element information
      
        - ADJUST-ARRAY was sometimes returning the same array despite
          ADJUSTABLE-ARRAY-P returning nil for that array (fix from SBCL)
      
      Fixes a number of AJUST-ARRAY.* tests in Paul Dietz's ANSI compliance
      suite.
      7862b94e
  10. Jul 23, 2003
  11. Jul 15, 2003
  12. May 05, 2003
  13. Feb 24, 2003
  14. Jul 10, 2002
    • toy's avatar
      From Eric Marsden: · 6e9a215f
      toy authored
       * (pcl:class-precedence-list (find-class 'null)) should have symbol
         occurring before list, as per CLHS.
      
       * minor changes to certain error conditions: eg trying to set
         DEFAULT-DIRECTORY to a non-existent directory should raise a
         condition of type FILE-ERROR. (Some of these changes are from
         Alexey Dejneka, via SBCL).
      
       * cleanup of some Hemlock-related symbols that shouldn't be exported
         when :no-hemlock is defined.
      6e9a215f
  15. Nov 21, 2001
    • pmai's avatar
      o When created displaced arrays, MAKE-ARRAY (unlike ADJUST-ARRAY) · 26e7aeea
      pmai authored
        didn't check whether the specified element-type was a subtype of the
        array-element-type of the displaced-to array.
      o One case in ADJUST-ARRAY didn't check for an array-header before
        calling %array-displaced-p on an array, so that sometimes an array
        element was accessed and checked instead.  Fixed this, and prevented
        ADJUST-ARRAY from shrinking non-adjustable arrays in-place, since
        this can violate naive user expectations for little gain.
      26e7aeea
  16. May 13, 2000
  17. May 12, 2000
  18. Jul 24, 1998
  19. Jul 14, 1998
    • pw's avatar
      This revision merges in many of the fixes for ANSI condition types · 42efe00d
      pw authored
      in various calls to ERROR. Those easily handled by using new condition
      types simple-file-error and simple-program-error are included.
      
      The only functional change here is that the function CHARACTER no longer
      accepts an integer argument so as to be ANSI compliant. This may
      break some code.
      42efe00d
  20. Mar 21, 1998
  21. Dec 18, 1997
  22. Nov 01, 1997
    • dtc's avatar
      Improved support for (complex single-float) and (complex double-float) · 4c3b1bb6
      dtc authored
      types. Adds storage classes to the backend for these so they can be
      stored in registers or on the stack without consing; new primitive
      types etc. Also adds (simple-array (complex {single,double}-float))
      array types to avoid consing and speed vectors operations.  All
      these changes are conditional on the :complex-float feature. More work
      is needed to exploit these changes: improving the type dispatch in the
      various function; maybe compiler transforms or more VOPs to handle
      common functions inline.
      4c3b1bb6
  23. Apr 01, 1997
    • dtc's avatar
      Support for some specialised signed array types: (signed-byte 8), · d5d4504f
      dtc authored
      (signed-byte 16), (signed-byte 30), (signed-byte 32).  These patches
      include the general support and the x86 backend support; more to
      follow. The important changes are conditional on the :signed-array
      feature so shouldn't affect the source without this feature. This work
      has been driven by Raymond Toy.
      d5d4504f
  24. Feb 23, 1997
  25. Feb 22, 1997
  26. Oct 31, 1994
  27. Sep 29, 1994
  28. Feb 11, 1994
  29. Aug 06, 1993
  30. Jan 13, 1993
  31. Dec 10, 1992
  32. Mar 24, 1992
  33. Dec 02, 1991
  34. Nov 09, 1991
  35. Jun 05, 1991
  36. May 28, 1991
  37. May 08, 1991
  38. Apr 24, 1991
  39. Feb 08, 1991
  40. Jan 14, 1991
Loading