- Nov 30, 2009
-
-
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.
-
- Sep 09, 2009
-
-
rtoy authored
-
- Jun 11, 2009
-
-
rtoy authored
unicode-utf16-extfmt-2009-06-11.
-
- Jun 20, 2007
-
-
rtoy authored
Signal an error if they're not. (Previously, only checked to see if the element-type was a subtype of the displaced-to array.)
-
- Jan 13, 2007
-
-
fgilham authored
-
- Jan 11, 2007
-
-
fgilham authored
return value is discarded. Since (adjust-array) may return a new array, this is wrong.
-
- Jun 30, 2006
-
-
rtoy authored
The merge is from the tag "double-double-irrat-end". The double-double branch is now obsolete. The code should build without double-double support (tested on sparc) as well as build with double-double support (tested also on sparc).
-
- Apr 13, 2005
-
-
pwerkowski authored
AFAICT, ANSI does not specify any type of exceptional condition for array bounds errors, and a type-error doesn't seem appropriate here. Reverting to SIMPLE-ERROR.
-
- Apr 06, 2004
-
-
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.
-
- Jul 23, 2003
-
-
gerd authored
of nil. From Alexey Dejneka/SBCL. * src/code/array.lisp (make-array, adjust-array): Add supplied-p parameter for initial-contents and use it. (data-vector-from-inits): Add initial-contents-p parameter.
-
- Jul 15, 2003
-
-
gerd authored
type-error for invalid indices.
-
- May 05, 2003
-
-
emarsden authored
package)
-
- Feb 24, 2003
-
-
emarsden authored
from generic errors to conditions of type PROGRAM-ERROR.
-
- Jul 10, 2002
-
-
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.
-
- Nov 21, 2001
-
-
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.
-
- May 13, 2000
-
-
dtc authored
new-value which is already boxed.
-
- May 12, 2000
-
-
dtc authored
wasn't even checking that the array had a header causing random data to be returned when passed a simple-array. Ndote by Sam Steingold, with suggestions from Raymond Toy.
-
- Jul 24, 1998
-
-
dtc authored
remove unnecessary conditionals.
-
- Jul 14, 1998
-
-
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.
-
- Mar 21, 1998
-
-
dtc authored
-
- Dec 18, 1997
-
-
dtc authored
arrays; the number of bits is 128 in this case not (integer 1 64).
-
- Nov 01, 1997
-
-
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.
-
- Apr 01, 1997
-
-
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.
-
- Feb 23, 1997
-
-
dtc authored
performance improvements, realp test was overkill as it must be a fixnum.
-
- Feb 22, 1997
-
-
pw authored
-
- Oct 31, 1994
-
-
ram authored
-
- Sep 29, 1994
-
-
ram authored
dimension (hence having no elements whatsoever.)
-
- Feb 11, 1994
-
-
cvs2git authored
-
- Aug 06, 1993
-
-
ram authored
-
- Jan 13, 1993
-
-
cvs2git authored
-
- Dec 10, 1992
-
-
ram authored
-
- Mar 24, 1992
-
-
phg authored
were not created with :adjustable non-nil to be adjusted to new dimensions. Adjustable-array-p has been updated to ANSI standards. It returns T if adjust ADJUST-ARRAY would return an EQ array.
-
- Dec 02, 1991
-
-
ram authored
correct type.
-
- Nov 09, 1991
-
-
wlott authored
-
- Jun 05, 1991
-
-
wlott authored
of sequence, not just lists. Fixed vector-push and vector-push-extend to return the original fill pointer, not the new fill pointer. Fixed vector-pop to return the value indexed by the new fill pointer, not the original fill pointer.
-
- May 28, 1991
-
-
ram authored
checking will happen correctly, and backtrace will show the right value.
-
- May 08, 1991
-
-
ram authored
%APPLY-SVSET.
-
- Apr 24, 1991
-
-
ram authored
and also correctly handles multi-level displacement. Made SVREF, et al, safe so that bounds checking is done.
-
- Feb 08, 1991
-
-
ram authored
-
- Jan 14, 1991
-
-
wlott authored
-