- Aug 17, 2007
-
-
rtoy authored
-
- Nov 08, 2006
-
-
rtoy authored
dynamic-space-overflow-warning-hit.
-
- Jun 30, 2006
-
-
rtoy authored
The merge is from the tag "double-double-irrat-end". The double-double branch is now obsolete. The code should build without double-double support (tested on sparc) as well as build with double-double support (tested also on sparc).
-
- Sep 09, 2005
-
-
pmai authored
-
- Oct 24, 2003
-
-
toy authored
overflow checking. Enable with :heap-overflow-check. We reserve some number of pages on the heap. When the heap reaches the reserved pages, an overflow warning is signalled. The reserved pages are set 0. This allows some additional allocation to happen during debugging, if necessary. If another overflow happens, we throw to top-level. Sparc only right now. * lisp/sparc-assem.S (_do_dynamic_space_overflow_error): New function to handle a heap overflow error. (_do_dynamic_space_overflow_warning): New function to handle heap overflow warning. * lisp/sparc-arch.c (sigill_handler): Handle the two new traps caused by heap overflows. * lisp/interrupt.c (interrupt_handle_space_overflow): New function to handle interrupt caused by heap space overflows. * lisp/gencgc.c (handle_heap_overflow): New function to handle heap overflows. (gc_alloc_new_region): Use handle_heap_overflow. (gc_alloc_large): Use handle_heap_overflow * compiler/sparc/parms.lisp (static-symbols): Add new static symbols for heap overflow checking: dynamic-space-overflow-error-hit and dynamic-space-overflow-warning-hit. * compiler/generic/new-genesis.lisp (finish-symbols): Initialize the new dynamic-space-overflow-error-hit and dynamic-space-overflow-warning-hit static symbols. * code/lispinit.lisp (:heap-overflow-check): Add heap-overflow-check to *runtime-features*, if necessary. ("reserved_heap_pages"): Access to alien variable for heap overflow. (*reserved-heap-pages*): Default number of heap pages to reserve for heap overflow. (%top-level): Set reserved-heap-pages to the default. * code/interr.lisp (dynamic-space-overflow-warning-hit): Add function to handle heap overflow warnings. (dynamic-space-overflow-error-hit): Add function to handle heap overflow error. * code/error.lisp (heap-overflow): Add new condition type for heap overflow
-
- May 26, 2003
-
-
gerd authored
:expected-type, which lead to the conditions which were not displayable because the corresponding condition slots are not bound. * src/code/seq.lisp (coerce): * src/code/list.lisp (nreconc): * src/code/interr.lisp (invalid-array-index-error): * src/code/bignum.lisp (bignum-to-float): * src/code/byte-interp.lisp (%byte-car, %byte-cdr): Fix type-errors to include :datum and/or :expected-type. Add &more handling to the byte-compiler and -interpreter. Reported by Paul Werkowski on cmucl-imp. * src/compiler/byte-comp.lisp (make-xep-for): Handle &more. * src/code/byte-interp.lisp (hairy-byte-function): Change type of rest-arg-p slot. (invoke-xep): Handle &more.
-
- Apr 21, 2003
-
-
gerd authored
a type-error, as per ANSI.
-
- 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 28, 2002
-
-
pmai authored
o Conditionalized some code that is only used in linkage-table builds on :linkage-table and LINKAGE_TABLE respectively. o Modernized undefined_ff_tramp based on recent changes, and renamed it to undefined_foreign_symbol_trap, because it really isn't a trampoline. o Conditionalized a stray puts(...,dlerror()) in Linux-os.c on DEBUG o Installed an error reporter for UNDEFINED_FOREIGN_SYMBOL_ERROR, which for now signals a simple-program-error. We might want to introduced a new condition UNDEFINED-FOREIGN-SYMBOL or something, which could also be used by the old foreign linkage code.
-
- Oct 27, 2001
-
-
pmai authored
to be of type program-error, as required by section 3.5.1.6 of the standard. From a patch by Eric Marsden.
-
- May 01, 1999
-
-
dtc authored
handle zero length arrays and negative indexes; suggested by Raymond Toy.
-
- Dec 19, 1998
-
-
dtc authored
Based on patches from Peter Van Eynde.
-
- Aug 14, 1998
-
-
dtc authored
control-error with format-control and arguments. Fixes the printing of the informative error messages which was broken when control-error was fixed to inherit from error rather than simple-error.
-
- Jul 24, 1998
-
-
dtc authored
remove unnecessary conditionals.
-
- Mar 21, 1998
-
-
dtc authored
-
- Nov 15, 1997
-
-
dtc authored
so can be implemented efficiently, and is handy for type dispatch. Cleanup the realpart and imagpart source transforms, exploiting the complex rational test.
-
- Nov 01, 1997
-
-
dtc authored
types. Adds storage classes to the backend for these so they can be stored in registers or on the stack without consing; new primitive types etc. Also adds (simple-array (complex {single,double}-float)) array types to avoid consing and speed vectors operations. All these changes are conditional on the :complex-float feature. More work is needed to exploit these changes: improving the type dispatch in the various function; maybe compiler transforms or more VOPs to handle common functions inline.
-
- Apr 01, 1997
-
-
dtc authored
(signed-byte 16), (signed-byte 30), (signed-byte 32). These patches include the general support and the x86 backend support; more to follow. The important changes are conditional on the :signed-array feature so shouldn't affect the source without this feature. This work has been driven by Raymond Toy.
-
- Oct 31, 1994
-
-
ram authored
-
- Oct 19, 1994
-
-
ram authored
-
- Jun 24, 1993
-
-
ram authored
-
- May 29, 1993
-
-
wlott authored
code.
-
- Feb 26, 1993
-
-
ram authored
-
- Feb 08, 1993
-
-
ram authored
-
- Jan 15, 1993
-
-
ram authored
-
- Apr 15, 1992
-
-
wlott authored
the name from the fdefn object when its really a fdefn object that was undefined instead of a symbol.
-
- Mar 28, 1992
-
-
wlott authored
of requiring that the run-time and compile-time info remain consistent. Fixed FIND-INTERRUPTED-FRAME to FLUSH-FRAMES-ABOVE before returning the frame.
-
- Mar 10, 1992
-
-
wlott authored
frame for use with debug:*stack-top-hint*. Changed internal-error to bind debug:*stack-top-hint* before calling error.
-
- Feb 14, 1992
-
-
wlott authored
-
- Jan 21, 1992
-
-
ram authored
variable to detect recursion. In ERROR-ERROR, bind *PRINT-READABLY* to NIL to prevent bletcherous printing.
-
ram authored
it. Also moved FIND-CALLER-NAME here. Fixed up ERROR-ERROR in various ways: -- We now call STREAM-INIT to attempt to fix up the streams, rather than setting *TERMINAL-IO* to the (no longer defined) variable *REAL-TERMINAL-IO*. -- We now use WITH-STANDARD-IO-SYNTAX in case someone has mucked up the printer control variables. -- The message now mentions *maximum-error-depth*, which is now exported from KERNEL.
-
- Nov 09, 1991
- May 24, 1991
-
-
wlott authored
-
- Feb 08, 1991
-
-
ram authored
-
- Dec 11, 1990
-
-
wlott authored
signal conditions, so we can fill in the function name.
-
- Nov 26, 1990
- Nov 07, 1990
-
-
wlott authored
-
- Oct 03, 1990
-
-
wlott authored
-