Commit graph

83 commits

Author SHA1 Message Date
Juan Jose Garcia Ripoll
2c7c81f114 Added a routine that serializes certain objects. 2010-06-06 16:20:30 +02:00
Juan Jose Garcia Ripoll
a7a221e136 Optimized COPY-SUBARRAY and used it for improving REPLACE 2010-05-28 23:46:00 +02:00
Juan Jose Garcia Ripoll
f7ad326bee Changed the order of arguments in ASET to simplify the resulting SETF forms 2010-05-19 10:22:38 +02:00
Juan Jose Garcia Ripoll
557474044f FEwrong_dimensions() did not invoke cl_make_list() with enough arguments. 2010-05-05 23:01:12 +02:00
Juan Jose Garcia Ripoll
89b9a561ea Replaced ecl_fixnum_in_range() with explicit checks in the functions, which are cheaper and, thanks to ecl_unlikely, faster. 2010-02-27 16:23:21 +01:00
Juan Jose Garcia Ripoll
86c211a6a1 Optimize ecl-inl.h for small cons and use of ecl_unlikely. New macros ECL_CONSP, ECL_LISTP, ECL_ATOM, ECL_SYMBOLP 2010-02-27 09:47:05 +01:00
Juan Jose Garcia Ripoll
6e4d572bfb Tag many error checks using ecl_unlikely 2010-02-26 10:43:37 +01:00
Juan Jose Garcia Ripoll
9da71f93a9 Replaced ecl_check_type_string with FEwrong_type_*_arg 2010-02-25 22:22:12 +01:00
Juan Jose Garcia Ripoll
8281a9de7f Eliminated assert_type_array 2010-02-25 21:41:50 +01:00
Juan Jose Garcia Ripoll
56d1fbabac Eliminated assert_type_vector 2010-02-25 21:40:17 +01:00
Juan Jose Garcia Ripoll
11a111f703 Replaced most FEtype_error_string with FEwrong_type_*_arg 2010-02-25 17:53:31 +01:00
Juan Jose Garcia Ripoll
29325706cc Replaced most FEtype_error_array with FEwrong_type_*_arg 2010-02-25 17:48:10 +01:00
Juan Jose Garcia Ripoll
f7f823f505 Replaced FEtype_error_{character,integer} with FEwrong_type_*_arg 2010-02-25 16:42:28 +01:00
Juan Jose Garcia Ripoll
29a988d222 Replaced many calls to ecl_type_error() with the more expressive but uncorrectable FEwrong_type_nth_arg() 2010-02-25 15:32:42 +01:00
Juan Jose Garcia Ripoll
9c2297058c New function EXT:ARRAY-RAW-DATA returns an array of octets that overlaps with the data of a given array. 2009-11-08 15:04:37 +01:00
Juan Jose Garcia Ripoll
4bcd908a0a The function ecl_alloc_simple_vector() is responsible now for allocation of simple strings and it uses ecl_alloc_compact_object(). 2009-08-29 18:53:28 +02:00
Juan Jose Garcia Ripoll
95ac61115c ECL was still using the deprecated c_string_to_object 2009-08-29 10:53:54 +02:00
Juan Jose Garcia Ripoll
da641873e4 In structures ecl_{array,vector,base_string,string}, replaced the bitfields hasfillp and adjustable with a single integer holding all flags. This solves several problems with Microsoft C compiler. 2009-07-26 11:56:26 +02:00
Juan Jose Garcia Ripoll
d9d787f84d Set the value of the new field array.hasfillp to zero 2009-07-21 22:20:41 +02:00
Juan Jose Garcia Ripoll
39d9ee467d Implemented C function for inlining ARRAY-DIMENSION 2009-07-04 19:54:23 +02:00
Juan Jose Garcia Ripoll
509166541b New error functions that will be used in compiled code 2009-07-04 17:17:23 +02:00
Juan Jose Garcia Ripoll
f78b7ad8fc ecl_elttype_to_symbol() uses now a name table instead of dispatching with switch. 2009-07-03 14:48:56 +02:00
Juan Jose Garcia Ripoll
4ef65fa6cc Reordering statements in ecl_{aset,aref} gives 25% speedup 2009-07-03 14:34:24 +02:00
Juan Jose Garcia Ripoll
8a3c9cea2c Remove the call to ecl_array_elttype() in ecl_aset_unsafe 2009-07-03 09:35:35 +02:00
Juan Jose Garcia Ripoll
535863ff57 Consistently with SBCL, array type errors are not recoverable 2009-07-03 09:19:21 +02:00
Juan Jose Garcia Ripoll
95fc3c6413 Create really unchecked versions of aref/aset 2009-07-03 00:25:38 +02:00
Juan Jose Garcia Ripoll
866d8c8604 The array element type is stored in the arrays, vectors and strings, thus simplifying identification and code. Slight speedup in ecl_aref. 2009-07-02 23:48:20 +02:00
Juan Jose Garcia Ripoll
3eb08e8fd7 Fixed typo in the size of element type of unicode arrays. 2009-03-29 00:12:58 +01:00
Juan Jose Garcia Ripoll
37af713c87 Fixed typo from merge in c/array.d 2009-03-25 10:09:49 +01:00
Juan Jose Garcia Ripoll
0a4ae4ebd2 New functions FILL-ARRAY-WITH-ELT and FILL-ARRAY-WITH-SEQ used to inline MAKE-ARRAY and to speed it up. 2009-03-07 11:51:29 +01:00
Juan Jose Garcia Ripoll
ba9540e220 New specialized array types for 16, 32 and 64 bits large integers 2009-03-01 20:36:08 +01:00
Juan Jose Garcia Ripoll
150398b8b1 Extended strings are now arrays of 32-bit integers. 2009-02-07 19:54:34 +01:00
Juan Jose Garcia Ripoll
c9b36e4005 Merged the new_signals branch. 2008-12-23 12:08:29 +01:00
Juan Jose Garcia Ripoll
5a41a55a2d Since dpp now generates code that uses 'the_env', it has to be defined in functions that use @(return) 2008-10-11 23:47:40 +02:00
Juan Jose Garcia Ripoll
6bd1b30f5e start/end_critical_section does not make sense any more 2008-10-10 23:25:20 +02:00
Juan Jose Garcia Ripoll
5bda4b4f61 All allocation functions are now in the ECL library and they now have the ecl_* prefix. Old names are kept in macro form. 2008-10-10 22:36:15 +02:00
Juan Jose Garcia Ripoll
b899d38eb5 When using long double, use no specialized arrays for LONG-FLOAT 2008-07-25 17:39:53 +02:00
Juan Jose Garcia Ripoll
40a40250ac Call upgraded-array-element-type directly instead of using cl_funcall. 2008-05-25 11:13:51 +02:00
jgarcia
8f28327ddf Simplifed MAKE-ARRAY. Deactivated the old garbage collector. New optimizers for MAKE-ARRAY and VECTOR-PUSH*. Declarations are now held in *cmp-env* instead of in global variables. 2008-05-18 20:08:39 +00:00
jgarcia
8800b254f5 Committed the changes to implement small conses 2008-04-30 14:24:20 +00:00
jgarcia
5ef5d32e74 Enforce indent and mode conditions on files 2008-01-26 10:30:41 +00:00
jgarcia
aa3dfe4058 Prefix most functions with 'ecl_' to avoid name collisions when embedding ECL in other libraries 2007-01-18 11:46:07 +00:00
jgarcia
5eeac5bae4 Cannot displace arrays with element type T onto arbitrary memory pointed by a foreign pointer 2007-01-06 16:29:10 +00:00
jgarcia
e8f08ac8d4 Arrays can now be displaced to foreign data 2006-12-26 18:57:13 +00:00
jgarcia
d2d0dd1093 No need for using fixnnint() when we now the argument is a fixnum. 2006-11-01 17:46:44 +00:00
jgarcia
ce3489a846 Strict bounds checking with error recovery for most routines in array.d 2006-11-01 17:45:34 +00:00
jgarcia
1c2466c722 Added some restarts to the array errors. 2006-10-29 12:46:31 +00:00
jgarcia
8958390eae MAKE-STRING with Unicode accepts arbitrary type specifiers. New function ecl_base_char_code() used to coerce objects to char and unsigned 2006-10-27 21:40:34 +00:00
jgarcia
a8ba6f5c01 Initital support for long double and immediate short floats. 2006-10-13 17:28:51 +00:00
jgarcia
12799c7305 Move from short/long-float to single/double-float (by L. Brinkhoff) 2006-09-01 15:15:57 +00:00