Commit graph

97 commits

Author SHA1 Message Date
Juan Jose Garcia Ripoll
64a9168434 CHARACTERP, BASE_CHAR_P, BASE_CHAR_CODE_P, CODE_CHAR, CHAR_CODE, REAL_TYPE, IMMEDIATE, IMMEDIATE_TAG, FIXNUM_TAG, FIXNUM_MINUSP, FIXNUM_PLUSP, FIXNUMP and fix get the ecl_ prefix 2012-06-06 11:19:55 +02:00
Juan Jose Garcia Ripoll
fbd3587b1a Removed further warnings about uninitialized or unused variables and functions 2012-04-11 23:04:27 +02:00
Juan Jose Garcia Ripoll
036cb55928 Fixes to remove warnings about unused variables. Replaced some uses of @(return) with ecl_return*() 2012-04-10 23:20:40 +02:00
Juan Jose Garcia Ripoll
4c4b58c5cf Fixed various type warnings issued by Clang 2012-04-09 22:31:09 +02:00
Juan Jose Garcia Ripoll
e8d8c45e8d Fixed some improper uses of FEtype_error_index (Jerry James) 2012-02-06 21:54:36 +01:00
Juan Jose Garcia Ripoll
56139f6a53 When extracting the byte content of an array, create vectors with a fill pointer. 2012-01-06 11:47:00 +01:00
Juan Jose Garcia Ripoll
0102aed9f5 We introduce two functions, ecl_to_fix/ecl_to_size, which may be inlined and are more focused than fixint/fixnnint 2012-01-01 23:39:01 +01:00
Juan Jose Garcia Ripoll
efc0ca6b9e COPY-SUBARRAY (and REPLACE for that matter) did not always work when arrays overlapped. 2011-10-30 12:11:42 +01:00
Juan Jose Garcia Ripoll
853ec3ebc5 Errors in array/sequence indexes are now a bit more uniform. Eliminated FEillegal_index. Changed prototype for FEtype_error_index. Fixed typo in FEwrong_index. 2011-04-03 10:03:50 +02:00
Juan Jose Garcia Ripoll
a86bbd3605 Fixed various warnings to allow compiling ECL with CLang 2011-01-23 16:06:47 +01:00
Juan Jose Garcia Ripoll
f8c9558a5d SI:ARRAY-ELEMENT-TYPE-BYTE-SIZE now accepts an array instead of a type (A Gavrilov) 2010-10-14 09:50:45 +02:00
Juan Jose Garcia Ripoll
294a4280c6 MAKE-ARRAY did not check the type of its first argument 2010-09-12 15:06:38 +02:00
Alexander Gavrilov
8ed8a8e807 Add a function for retrieving the array element size in bytes.
This information is necessary for various alignment needs and
other low-level memory manipulation. For bit it returns a ratio.
2010-08-20 20:29:04 +02:00
Alexander Gavrilov
7c7a40e4bd Add a function for computing the pointer to a row-major-aref item.
This is necessary for open-coding the actual array access, while
keeping the array object type and index bound check. The array
element type is not checked; instead the function ensures that the
specified number of bytes at the returned ptr are within bounds.
2010-08-20 20:29:03 +02:00
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