- Jun 26, 2003
-
-
toy authored
Non-simple-streams-related changes: * Stop commands which go through invoke-command-interactive from affecting the history variables. * Fix some typos in comments * When the GC closes a lost stream, revert to original contents * Replace #+nil with #+(or) in unix*.lisp [NIL is a potentially valid feature name] Simple-streams-related changes: * Teach reader to handle simple-streams * Add missing package prefixes in OPEN * Add unix:unix-msync for force-output on mmapped files * Add placeholder documentation * Numerous changes in simple-streams implementation * Add "external-formats" directory for external formats Note: :BIG-ENDIAN or :LITTLE-ENDIAN should be put on *features*
-
- May 29, 2003
-
-
toy authored
* lisp/sunos-os.h (PROTECTION_VIOLATION_SIGNAL): Define it for stack-checking. * lisp/solaris-os.c (segv_handler): Add stack-checking support for Solaris. * lisp/os.h (os_control_stack_overflow): Give a type name to the zone enums (mostly for the debugger). * lisp/os-common.c (guard_zones): Add stack-checking support for Solaris. (os_control_stack_overflow): Add stack-checking support for Solaris. * lisp/interrupt.c (build_fake_control_stack_frame): New function for building a stack frame without the foreign call stuff. Used for stack checking. (interrupt_install_low_level_handler): Only need to install alternate signal stack for x86. * lispinit.lisp: (scrub-control-stack): Rename to %scrub-control-stack to match x86 version so control stack guard is done. * parms.lisp (static-symbols): Added new static symbols for control stack checking.
-
- Mar 23, 2003
-
-
gerd authored
feature :stack-checking because it's not implemented for other systems/architectures yet. It is currently known to work on FreeBSD 4.8-RC/x86 and Debian 2.2.20/x86. * bootfiles/18e/boot3.lisp: New boot file, well, only a description of the boot procedure since no boot file is needed. * lisp/x86-validate.h (SIGNAL_STACK_START, SIGNAL_STACK_SIZE) [__FreeBSD__, __linux__]: New defines. (CONTROL_STACK_SIZE) {__FreeBSD__, __linux__]: Adjust for signal stack. * lisp/validate.c (validate) [RED_ZONE_HIT]: Call os_guard_control_stack. Some cleanup. * lisp/os.h (BOTH_ZONES, YELLOW_ZONE, RED_ZONE): New enums. Add function prototypes. * lisp/interrupt.c (interrupt_install_low_level_handler) [RED_ZONE_HIT]: Deliver protection violations on a dedicated signal stack. * lisp/os-common.c (os_stack_grows_down_1, os_stack_grows_down): New functions. (guard_zones, control_stack_zone, os_guard_control_stack) (os_control_stack_overflow) [RED_ZONE_HIT]: New functions. (os_control_stack_overflow) [!RED_ZONE_HIT]: Dummy function. * lisp/Linux-os.c (sigsegv_handler) [RED_ZONE_HIT]: Handle control stack overflows. * lisp/FreeBSD-os.c: General cleansing. (sigbus_handler) [RED_ZONE_HIT]: Handle control stack overflows. * lisp/FreeBSD-os.h (PROTECTION_VIOLATION_SIGNAL): New define. * lisp/Linux-os.h (PROTECTION_VIOLATION_SIGNAL): New define. * compiler/x86/system.lisp (lisp::%scrub-control-stack): Change defknown from sys:scrub-control-stack. (%scrub-control-stack): Rename VOP. * code/lispinit.lisp (os-guard-control-stack) [#+stack-checking]: Define alien os_guard_control_stack. (%scrub-control-stack) [#+x86]: New function. (scrub-control-stack) [#+x86]: Call %scrub-control-stack, call os-guard-control-stack if #+stack-checking. * code/interr.lisp (yellow-zone-hit, red-zone-hit) [#+stack-checking]: New functions. * code/error.lisp (stack-overflow) [#+stack-checking]: New condition. * compiler/generic/new-genesis.lisp (finish-symbols) [#+stack-checking]: Add symbols for control stack checking. * compiler/x86/parms.lisp (static-symbols): Likewise.
-
- Aug 23, 2002
-
-
pmai authored
it defaults to simple-program-error. Removed duplicate definition of simple-program-error from package.lisp, and converted various places to use the new simple-program-error function. Also rewrote the function check-disjoint for clarity.
-
- Jul 10, 2002
-
-
toy authored
* (pcl:class-precedence-list (find-class 'null)) should have symbol occurring before list, as per CLHS. * minor changes to certain error conditions: eg trying to set DEFAULT-DIRECTORY to a non-existent directory should raise a condition of type FILE-ERROR. (Some of these changes are from Alexey Dejneka, via SBCL). * cleanup of some Hemlock-related symbols that shouldn't be exported when :no-hemlock is defined.
-
- Jul 12, 2001
-
-
pw authored
-
- Jul 08, 2001
-
-
pw authored
This patch makes QUIT call a list of functions at exit, so that the Motif interface can clean up without having to redefine it.
-
- Apr 07, 2001
-
-
pw authored
Allow duplicate keyword arguments in macro calls and destructuring-bind to be ANSI compliant. Offending clause in VALIDATE-KEYWORD is commented out in case anyone needs to revive the old behaviour.
-
- Mar 04, 2001
-
-
pw authored
-
- Oct 16, 2000
-
-
dtc authored
-
- Sep 14, 2000
-
-
dtc authored
confusing output noted by Tunc Simsek.
-
- Jan 17, 2000
-
-
dtc authored
VOP takes care to decrease the stack pointer as the stack is scrubbed, which allows a grow-down control stack to be used on Linux.
-
- Dec 04, 1999
-
-
dtc authored
-
- Sep 26, 1998
-
-
pw authored
approximately twice as long as requested.
-
- Apr 10, 1998
-
-
pw authored
-
- Jan 16, 1998
-
-
dtc authored
of heap corruption and to try and handle return address on the stack. Enhance new-genesis to save the code fixups for x86 code objects allowing the code to be placed in the dynamic heap and thus garbage collected by purify.
-
- Jan 04, 1998
-
-
dtc authored
sys:wait-until-fd-usable but uses process-wait so avoids blocking if there are other runnable processes. Redefine the sleep function to use process-wait-with-timeout to avoid blocking if there are other runnable processes.
-
- Nov 21, 1997
-
-
dtc authored
compiled with support.
-
- Nov 18, 1997
-
-
dtc authored
-
- Nov 04, 1997
-
-
dtc authored
common binaries to be run on both: * The immediate-stack storage class has been removed, this is unnecessary as the descriptor-stack SC can be used. It may have once been part of some GC stragety to reduce the number of stack slots that needed to be noted for a GC. * The object allocation has been abstracted and cleaned up. This should produce slightly faster smaller code with CGC, and can be compiled to support inline allocation with GENCGC. CGC compiled code will run under GENCGC, and GENCGC binaries that don't use inline allocation will run under CGC. * A random hash is now placed in the unused symbol object slot (the symbol-hash slot). This saves flushing the info cache at each GC, and may have other uses for symbol based hash tables. Should help MP safety. * Common set of static symbols used by both CGC and GENCGC. * Corrections to the stack-ref VOP; now returns lisp objects not unsigned numbers. Required some patches to debug-int. * Inline unsigned/signed byte 32 to bignum allocation enabled. * Support for the x86 xadd instruction applied to instance slot and symbol values - may be handy for some MP code. * Bump up the FASL file version from 1 to 2.
-
- Sep 15, 1997
-
-
dtc authored
*current-unwind-protect-block*.
-
- Jan 18, 1997
-
-
ram authored
-
- May 07, 1996
-
-
ram authored
-
- Jul 26, 1995
-
-
phg authored
Note *batch-mode* is set at the command line.
-
- Oct 31, 1994
-
-
ram authored
-
- Feb 15, 1994
-
-
ram authored
wedge the error system if the type is malformed or undefined.
-
- Feb 11, 1994
-
-
cvs2git authored
-
- Sep 03, 1993
-
-
wlott authored
%initial-function so that we can handler-bind before the defvar top-level-form has run.
-
- Aug 30, 1993
-
-
ram authored
-
- Aug 26, 1993
-
-
wlott authored
values* and deposit it, instead of depositing the index.
-
- Aug 19, 1993
- May 25, 1993
-
-
wlott authored
forms to get rid of warnings.
-
- May 22, 1993
-
-
wlott authored
-
- Feb 26, 1993
-
-
ram authored
-
- Feb 21, 1993
-
-
ram authored
initializations.
-
- Feb 04, 1993
-
-
ram authored
-