Commit graph

669 commits

Author SHA1 Message Date
Juan Jose Garcia Ripoll
73db1aacd9 Add a couple more uses of ecl_unlikely and remove a duplicate definition of cs_check in ecl-cmp 2010-05-07 13:11:35 +02:00
Juan Jose Garcia Ripoll
e8cecf9935 Declarations for all Common Lisp functions.
Split out a new file, proclamations.lsp, with the declarations oof the types of functions in the ANSI specification and in ECL's extensions.
2010-04-30 14:40:36 +02:00
Juan Jose Garcia Ripoll
ed1bdcb0fe Use C code to guess the alignment of different types. 2010-04-27 13:05:49 +02:00
Juan Jose Garcia Ripoll
5b2a69c7ed Move FOREIGN-ELT-TYPE-P into ffi.d, because the list of types in ffi.lsp had become obsolete and difficult to maintain. 2010-04-26 14:17:47 +02:00
Juan Jose Garcia Ripoll
905a0bd4d8 Implemented SI:FOREIGN-DATA-P and used it to optimize (and inline) (TYPEP x 'SI:FOREIGN-DATA) 2010-04-23 20:07:48 +02:00
Juan Jose Garcia Ripoll
f058165214 GC now allows any number of arguments, ignoring them 2010-04-14 15:02:20 +02:00
Trail@.(none)
973090bc55 Use __MINGW32__ instead of mingw32 as preprocessor criterion of MinGW-ness. 2010-04-05 22:31:53 +02:00
Juan Jose Garcia Ripoll
36e0122ae9 Add a keyword argument, :external-format, to LOAD 2010-03-28 22:24:33 +02:00
Juan Jose Garcia Ripoll
dbc354ac49 Remove the object finalization queue, now that the garbage collector provides one. 2010-03-20 15:48:59 +01:00
Juan Jose Garcia Ripoll
8582998855 Use unsafe C++ pointer cast when building static copies of vectors. 2010-03-19 22:18:54 +01:00
Juan Jose Garcia Ripoll
e3ef43b906 Fix some warnings about noreturn functions that actually return (M. Kocic) 2010-03-01 18:48:07 +01:00
Juan Jose Garcia Ripoll
86fd17197c Function get_string_start_end() rewritten to provide more useful error messages 2010-02-28 12:00:53 +01:00
Juan Jose Garcia Ripoll
035a52823c Replaced many uses of type_of() with specialized macros (ECL_BIT_VECTOR_P, ECL_BASE_STRING_P, etc), now in the compiler as well. 2010-02-28 01:20:26 +01:00
Juan Jose Garcia Ripoll
01e227c402 Replaced many uses of type_of() with specialized macros (ECL_BIT_VECTOR_P, ECL_BASE_STRING_P, etc) 2010-02-28 01:09:13 +01:00
Juan Jose Garcia Ripoll
a3ad77d5a8 New macro unlikely_if improves readability of C code. 2010-02-27 18:36:47 +01: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
84fd7b1fe3 Introduced macros for fixnum comparison. 2010-02-27 16:02:38 +01:00
Juan Jose Garcia Ripoll
bc0fcb8f9e New macros for checking stream types. 2010-02-27 11:26:39 +01:00
Juan Jose Garcia Ripoll
3d5a6aed3d Remove unused function FEtype_error_stream 2010-02-27 09:49:57 +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
9da71f93a9 Replaced ecl_check_type_string with FEwrong_type_*_arg 2010-02-25 22:22:12 +01:00
Juan Jose Garcia Ripoll
c41efce884 Moved assert_type_hash_table() to hash.d and added more information to the error message. 2010-02-25 21:55:03 +01:00
Juan Jose Garcia Ripoll
e664971e42 Moved assert_type_readtable() to read.d and added more information to the error message. 2010-02-25 21:50:32 +01:00
Juan Jose Garcia Ripoll
0e68fa26a5 Removed nonexistent function assert_type_string from headers 2010-02-25 21:45:10 +01:00
Juan Jose Garcia Ripoll
5e2fb43a47 Removed nonexistent function assert_type_plist from headers 2010-02-25 21:44:31 +01:00
Juan Jose Garcia Ripoll
c98f900c1a Eliminated assert_type_{list,cons} 2010-02-25 21:43:29 +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
4d3464e0be Eliminated assert_type_package 2010-02-25 21:37:40 +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
499dc7db66 Removed unused FEtype_error_vector 2010-02-25 17:49:18 +01:00
Juan Jose Garcia Ripoll
458e92e86e Replaced FEtype_error_instance with FEwrong_type_*_arg 2010-02-25 17:45:50 +01:00
Juan Jose Garcia Ripoll
8db10bab79 Removed unused FEtype_error_alist 2010-02-25 17:39:04 +01:00
Juan Jose Garcia Ripoll
6dac1d197f Removed unused FEtype_error_flaot 2010-02-25 17:38:14 +01:00
Juan Jose Garcia Ripoll
871104a0cc Replaced FEtype_error_real with FEwrong_type_*_arg 2010-02-25 17:37:03 +01:00
Juan Jose Garcia Ripoll
778afbee6a Replaced FEtype_error_number with FEwrong_type_*_arg 2010-02-25 17:32:54 +01:00
Juan Jose Garcia Ripoll
2c2c329b09 Replaced FEtype_error_symbol with FEwrong_type_*_arg 2010-02-25 16:46:40 +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
1319e44f94 Introduced a new function, FEwrong_type_nth_arg, which produces better error messages and registers the function in the IHS stack if it was not there. 2010-02-25 14:30:42 +01:00
Juan Jose Garcia Ripoll
edf0ccdaa3 Added a new field to the IHS record, with the value of the BDS stack. This allows printing the special variable bindings of a function. 2010-02-24 12:33:32 +01:00
Juan Jose Garcia Ripoll
ec9727f9f5 Safer inline expansion for BOUNDP 2010-02-20 22:04:50 +01:00
Juan Jose Garcia Ripoll
ad2e216609 New global constant for the '/' string 2010-02-17 19:50:35 +01:00
Juan Jose Garcia Ripoll
b80914d746 Composite streams now have a flag that allows automatic closing of its components. 2010-02-17 14:48:46 +01:00
Juan Jose Garcia Ripoll
c1bc9cd655 Added more cases to the FFI to handle UINT8/INT8 2010-02-16 10:41:05 +01:00
Juan Jose Garcia Ripoll
2b1dd56dfe Fixed typo. 2010-02-16 08:59:03 +01:00
Juan Jose Garcia Ripoll
af7f5c2359 Missing symbols in ecl_ffi_tag. 2010-02-16 08:58:53 +01:00
Juan Jose Garcia Ripoll
d500289efa Reorganize the code for OP_LABELS/OP_FLET in ecl_interpret() to occupy less space and get faster. 2010-02-08 23:20:29 +01:00
Juan Jose Garcia Ripoll
89a4fc9e93 Mark in stacks.h the error conditions with ecl_unlikely(). 2010-02-08 21:49:31 +01:00
Juan Jose Garcia Ripoll
81e054971e ecl_cs_overflow() and SIGSEGV handler now share the same strategy: jump to the outermost frame when the error can not be cured. 2010-02-08 12:46:13 +01:00
Juan Jose Garcia Ripoll
790d466cec Reduce the size of the core using GCC's __attribute__((noreturn)) 2010-02-04 21:18:24 +01:00