Commit graph

101 commits

Author SHA1 Message Date
Juan Jose Garcia Ripoll
29bc665a5e Protect shared library operations from interrupts. 2008-10-12 00:07:43 +02:00
Juan Jose Garcia Ripoll
5f2fdff008 Protect shared library operations from interrupts. 2008-10-12 00:07:10 +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
89a5283927 Implemented an interface for setting/querying options with numeric values and used it for stack sizes and limits. 2008-10-02 11:11:58 +02:00
jjgarcia
f568712bc4 Code for detecting stack overflows, grown on top of ideas from Geo Carncross. 2008-09-30 21:09:35 +00:00
jjgarcia
1f20a4a62f ECL now is capable of detecting whether two calls to dlopen/LoadLibrary/etc returned the same handle. 2008-08-24 10:59:16 +00:00
jjgarcia
7fa40e8693 More robust mechanism for detecting whether a foreign library has been already loaded 2008-08-24 10:38:17 +00:00
jjgarcia
250b294aaa Added hooks for registering DEF* forms and their locations with some database. 2008-07-12 14:13:05 +00:00
jjgarcia
af6c551e80 When using the generational garbage collector, do not use dlopen/dlclose wrappers, which deactivate the garbage collector. In this case, we need not explicit calls to si_gc(Ct) in si_load_binary() 2008-05-31 12:58:01 +00:00
jjgarcia
d93be391f9 Seems we need to call the garbage collector in order to stabilize loading of binary files 2008-05-30 21:00:17 +00:00
jjgarcia
956af5c246 Do not force a full garbage collection every time a binary file is loaded 2008-05-30 12:29:01 +00:00
jgarcia
8800b254f5 Committed the changes to implement small conses 2008-04-30 14:24:20 +00:00
jgarcia
28535e8aa5 LOAD now accepts namestrings with large characters. 2008-04-29 10:50:33 +00:00
jgarcia
b4e1916be1 Let interpreted forms remember the file they come from 2008-04-22 12:29:44 +00:00
jgarcia
5ef5d32e74 Enforce indent and mode conditions on files 2008-01-26 10:30:41 +00:00
jgarcia
2f0be6692e Do not force reloading a shared library when it has been already loaded 2007-12-29 09:14:18 +00:00
jgarcia
9af535ade5 LOAD no longer defaults to try loading an unknown file as binary 2007-06-03 12:42:02 +00:00
jgarcia
8219dde991 Fixed copying of FASL files in Windows 2007-05-22 15:51:35 +00:00
jgarcia
35bba35c9d FASL duplication scheme now also for windows 2007-05-21 22:22:51 +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
23ea2b2cfb Entry functions in library, FASL and object files get a different prefix depending on file type. C:BUILDER now looks for libraries in the ASDF module list 2007-01-07 14:10:58 +00:00
jgarcia
75fb4cd6b6 Minimize number of headers included by ecl/ecl.h 2006-10-23 21:24:04 +00:00
jgarcia
b34b26b6bf ECL now uses dlopen() in OS X so that shared libraries can be loaded. 2006-10-23 16:12:55 +00:00
jgarcia
94d7ee29ee Implemented finalizers as lisp functions. 2006-09-25 08:32:46 +00:00
jgarcia
ff0be77070 Support for unicode strings as data structure (no clever handling of characters yet) contributed by Brian Spilsbury. 2006-05-29 08:51:21 +00:00
jjgarcia
936b7fb6f6 Header files are now kept in a directory named 'ecl', so as to avoid name clashes with other headers. 2006-02-28 14:05:47 +00:00
jjgarcia
66505e8fd9 ENSURE-GENERIC-FUNCTION implemented using only E-G-F-USING-CLASS. Removed assert_non_wild_pathname, as it is only required by one function. *LOAD-PATHNAME* contains the pathname supplied by the user, not the one merged with SI::GETCWD. 2006-01-09 09:15:10 +00:00
jjgarcia
48efb20909 Remove unused functions and use prefix ecl_ on all internal functions in file.d 2005-11-21 10:15:22 +00:00
jjgarcia
ce5471c0e0 The Mac OSX system headers define 'bool' to be a different type than 'int'. Also, tzset() does not define the global variable 'timezone' 2005-11-07 10:31:51 +00:00
jjgarcia
cc57385a24 Fixed limits of loop and moving of memory among overlapping regions 2005-10-27 14:12:45 +00:00
jjgarcia
8c730e452d When requesting to load a FASL twice, make a symbolic link to trick the dlopen() routine into thinking we are loading two different files. 2005-10-24 08:38:15 +00:00
jjgarcia
1bf5ae26e9 LOAD can now load source code from streams which are not associated to files. 2005-10-24 08:35:24 +00:00
jjgarcia
0ee18977e0 Implementation of dynamically created callbacks. FASL files and DLLs are now garbage collected unless a symbol has been referenced with si::find-foreign-symbol. 2005-10-17 10:29:33 +00:00
goffioul
45c74701d4 Make cl_core.libraries vector extendable. 2005-10-13 10:28:13 +00:00
jjgarcia
f67be57b37 Automatic generation of calls to C functions, plus fixes on the handling of :CSTRING arguments to C-INLINE 2005-10-10 10:23:42 +00:00
jjgarcia
ef8fbc903d Fixes for the old garbage collector 2005-10-08 14:46:09 +00:00
goffioul
b9e0348f37 - Added SI:LOAD-FOREIGN-MODULE to load a dynamic module into memory with load-only-once capability
- Added :DEFAULT as possible module argument to SI:FIND-FOREIGN-SYMBOL to look into the already
  loaded modules
2005-10-06 13:51:09 +00:00
jjgarcia
7b762a99c4 New functions for performing type inference.
Arithmetic operators *,+,/,- now have simple optimizers.
Fixed several "bugs" in the C code to let ECL compile with GCC 4.0
2005-08-12 15:23:10 +00:00
jjgarcia
0f08472bc2 When failed to load a binary file, a codeblock structure might be incomplete and cause a SIGSEGV 2005-08-10 16:51:31 +00:00
jjgarcia
8e7a684026 Silent ECL when garbage collecting FASL files if SI::*GC-VERBOSE* is T 2005-07-29 09:35:49 +00:00
jjgarcia
425335f570 Reduce the set of static roots by allocating the stacks with cl_alloc_atomic(). Ensure that the list of libraries is also marked as atomic, so as to allow garbage collection of FASL files 2005-07-11 12:27:54 +00:00
jjgarcia
c75664c86e COMPILE-FILE now honors the value of :OUTPUT-FILE, including the filename type 2005-06-27 14:19:00 +00:00
jjgarcia
15f645dba6 Fixes for Mac OSX 2005-06-06 08:38:33 +00:00
japhie
fd710690ad Don't go into infinite loop when unloading incorrectly loaded library. 2005-05-23 20:23:04 +00:00
japhie
15c7f2fd78 Make ecl correctly load .o files compiled with :system-p t that
contain dash in filename.
2005-05-23 01:43:00 +00:00
jjgarcia
1874635c95 The value of *LOAD-PATHNAME* should be a pathname 2005-05-20 15:20:20 +00:00
jjgarcia
8a4afd0424 Thread support for Mingw32 2005-01-31 17:59:46 +00:00
jjgarcia
9116e09331 Fixed out-of-bounds access to the elements in the vector. 2005-01-12 15:34:45 +00:00
jjgarcia
ea7b544af3 Xmas fixes. See CHANGELOG for list of changes. 2005-01-07 11:51:23 +00:00
jjgarcia
615200a550 First steps towards support of binary streams 2004-12-16 11:21:20 +00:00