Commit graph

2580 commits

Author SHA1 Message Date
Juan Jose Garcia Ripoll
5f2fdff008 Protect shared library operations from interrupts. 2008-10-12 00:07:10 +02: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
ed584a62c5 Deprecate name: cl_dealloc (-> ecl_dealloc) 2008-10-11 23:14:54 +02:00
Juan Jose Garcia Ripoll
0126a558fb Eliminate more uses of fake variable cl_env 2008-10-11 23:09:45 +02:00
Juan Jose Garcia Ripoll
7c5ab4f1fb Some functions now take a cl_env_ptr argument, becoming better isolated. 2008-10-11 22:32:54 +02:00
Juan Jose Garcia Ripoll
e0100efe51 Interrupts have to be explicitely activated at the thread entry point. 2008-10-11 20:19:51 +02:00
Juan Jose Garcia Ripoll
162b934fc4 Reactivate use of thread local storage via __thread flag. 2008-10-11 20:16:08 +02:00
Juan Jose Garcia Ripoll
774c4dd185 Factor the code for setting the thread environment. 2008-10-11 19:49:56 +02:00
Juan Jose Garcia Ripoll
d74230e758 Replaced multiple references to cl_env by a single call to ecl_process_env 2008-10-11 19:38:23 +02:00
Juan Jose Garcia Ripoll
18f24ea071 Fixed typo and removed debug statement. 2008-10-11 19:38:04 +02:00
Juan Jose Garcia Ripoll
55cea1530c If signals arrive before we have created an environment, we abort. 2008-10-11 19:18:29 +02:00
Juan Jose Garcia Ripoll
cbe49afc5b Unify the sources for windows and posix threads 2008-10-11 11:38:15 +02:00
Juan Jose Garcia Ripoll
8a3350f180 Protect the socket library with no-interrupt blocks 2008-10-11 00:28:17 +02:00
Juan Jose Garcia Ripoll
e578cc9aa8 DEFENTRY can now wrap forms in no interrupt blocks 2008-10-11 00:11:14 +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
8bf59c96ad When resizing the stack, enclose the update in an interrupts-free region 2008-10-10 22:56:15 +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
8ad4ad98a3 Interrupts are now deferred for all I/O operations 2008-10-10 17:08:14 +02:00
Juan Jose Garcia Ripoll
3305c9c0fd I/O now retries the operation which was interrupted by a signal. 2008-10-10 16:34:50 +02:00
Juan Jose Garcia Ripoll
b5119bfb90 Add a configuration flag for using mprotect.
Add an implementation of interrupt disable/enable without mprotect.
Set up interrupt barriers around I/O operations.
Force error routines to enable interrupts.
2008-10-08 23:49:31 +02:00
Juan Jose Garcia Ripoll
45ab6f72fe New signal handlers which delay signals until an interruptible safe point is reached. 2008-10-07 23:59:57 +02:00
Juan Jose Garcia Ripoll
edae4ae652 Every file now has an array with the functions it defines. 2008-10-06 22:00:52 +02:00
Juan Jose Garcia Ripoll
054989113e Save some space by directly using GENSYM with strings as arguments 2008-10-05 20:16:08 +02:00
Juan Jose Garcia Ripoll
5ba1221a49 TYPE-OF didn't output any value when the argument was a list. 2008-10-05 19:30:09 +02:00
Juan Jose Garcia Ripoll
38019ca33f The reader for logical pathnames always sets a non-NIL directory. GETCWD/CHDIR now affect *default-pathname-defaults*. *default-pathname-defaults* is set to the current directory on startup 2008-10-05 16:52:46 +02:00
Juan Jose Garcia Ripoll
825599ef07 Some symbols move to EXT package 2008-10-05 14:34:26 +02:00
Juan Jose Garcia Ripoll
82dfdc15b8 Move some documentation from help.lsp to the files where functions are defined. Add documentation for a few functions. 2008-10-05 13:24:42 +02:00
Juan Jose Garcia Ripoll
6b58fb9a4c In help.doc, do not add an arguments line if the documentation already includes it. 2008-10-05 12:00:42 +02:00
Juan Jose Garcia Ripoll
a117628dc4 The symbol *interrupt-enable* might not be defined before the first interrupt comes 2008-10-05 10:21:13 +02:00
Juan Jose Garcia Ripoll
a11903a1fe Fixed problem with argument of WEXITSTATUS 2008-10-05 10:16:38 +02:00
Juan Jose Garcia Ripoll
3f1419fe35 New flag --with-signed-zero (Juanjo). RUN-PROGRAM now returns exit code of program (Josh Elsasser). 2008-10-05 00:04:15 +02:00
Juan Jose Garcia Ripoll
ec7be1d5a7 Dump all functions and macros, including those without documentations. 2008-10-04 21:26:04 +02:00
Juan Jose Garcia Ripoll
d1de2832bc Some of the symbols now reside in FFI. 2008-10-04 20:14:55 +02:00
Juan Jose Garcia Ripoll
029e5ba037 ENSURE-DIRECTORIES-EXIST must merge the input pathname before building directories 2008-10-04 10:43:56 +02:00
Juan Jose Garcia Ripoll
b32826a3f0 Treat RLIM_INFINITY separately 2008-10-02 12:37:33 +02:00
Juan Jose Garcia Ripoll
045decaffa Larger pointer size and thus larger stack limits 2008-10-02 12:37:16 +02:00
Juan Jose Garcia Ripoll
7e7bd0fbb4 When setting the C stack size, add the safety area 2008-10-02 12:18:26 +02:00
Juan Jose Garcia Ripoll
8963d7d220 Differentiate between correctable and non-correctable stack overflows 2008-10-02 12:18:02 +02:00
Juan Jose Garcia Ripoll
c0a1638b99 Added stack checks to ecl_interpret 2008-10-02 12:03:40 +02:00
Juan Jose Garcia Ripoll
fc33c6e15e We chose a too large default size for the C stack 2008-10-02 12:03:02 +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
Juan Jose Garcia Ripoll
a86e4bfb5a Increase default stack sizes 2008-10-02 09:36:02 +02:00
Juan Jose Garcia Ripoll
ff71417821 Fix typo in handling of options 2008-10-02 09:35:52 +02:00
Juan Jose Garcia Ripoll
e68bf0204e Not all signals are defined in all platforms (SIGBUS is missing on Windows) 2008-10-02 09:35:43 +02:00
Juan Jose Garcia-Ripoll
8a36069121 Fixed conflict 2008-10-01 10:54:00 +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
612ef5b5f5 WinSock.h is needed for struct timeval (Claus Brod) 2008-09-28 22:41:44 +00:00
jjgarcia
8f337a9c2e The expansion of HANDLER-CASE introduces a variable binding that is only
sometimes used. This binding is declared IGNOREd. This fix
changes that declaration to an IGNORABLE (T. C. Rittweiler)
2008-09-28 22:39:42 +00:00
jjgarcia
23a3c78611 Now frame stack overflows can also be recovered. Functions for enlarging stack sizes. 2008-09-28 22:15:24 +00:00
jjgarcia
1a8633a0fe -0.0 and 0.0 do no longer compare EQL 2008-09-28 20:14:18 +00:00