- Mar 27, 2003
-
-
gerd authored
creating weak tables in #-gencgc. * lisp/gencgc.c (gc_assert): Ensure macro expansion is always a C statement. (struct hash_table): New struct. (HASH_TABLE_SIZE, EQ_HASH): New macros. (weak_hash_tables): New variable. (survives_gc, u32_vector, free_hash_entry, record_for_rehashing) (scav_hash_entries, scav_weak_entries, scan_weak_tables) (scav_hash_vector): New functions. (scav_vector): Removed. (scav_weak_pointer, trans_weak_pointer, scan_weak_pointers): Cleaned up. (gc_init_tables): Use scav_hash_vector instead of scav_vector. (garbage_collect_generation): Call scan_weak_tables. (everywhere): Add casts, change format strings, etc. to placate the compiler. * lisp/FreeBSD-os.h: Fix a function prototype.
-
- 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.
-
- Mar 20, 2003
-
-
cracauer authored
Add the symbols for the glibc malloc hooks to the stubs. That is neccessary to make the hooks work from C code loaded into CMUCL. Tested: enables malloc hook (debugging etc.) in the ITA builds.
-
- Mar 19, 2003
-
-
toy authored
Lisp core has :sparc-v9 feature. We use v9 instructions so we are a v8plus app.
-
- Mar 08, 2003
- Mar 06, 2003
-
-
pmai authored
Attached is the full patch containing the addition of the ISTREAM-MEMORY-BARRIER VOP, the change to GENTRAP to use the bugchk opcode, and also a boot file to allow the patched sources to be compiled with an unpatched binary.
-
- Mar 04, 2003
-
-
pmai authored
-
- Mar 03, 2003
- Mar 02, 2003
-
-
toy authored
-
emarsden authored
library calls to the list of symbols that need special handling when linking.
-
emarsden authored
files to be visible via DIRECTORY and friends: added stat64, fstat64, lstat64, statfs64, readdir64. This requires additional transitions to 64-bit wide data types, and additions to linux-stubs.S, given that some of the 64-bit stat variants are not accessible via dlsym(). Mostly from Pierre Mai.
-
- Feb 25, 2003
-
-
toy authored
-
- Feb 18, 2003
- Feb 12, 2003
-
-
emarsden authored
terminal when gencgc exhausts dynamic space.
-
- Feb 11, 2003
-
-
toy authored
-
- Jan 29, 2003
-
-
cracauer authored
Remove a #ifdef ITA which sneaked in with the profiler changes. No functional change for normal builds.
-
toy authored
location of the lisp C binary, when CMUCLLIB is not given, and the core file is not specified. o Add support for a CMUCLCORE envvar, and a -lib option for setting the path for the library: search-list. o Added some spare static symbols for the sparc port so we don't have to cross-compile again for a while. See cmucl-imp archives for some more details.
-
toy authored
-
- Jan 23, 2003
-
-
toy authored
fix typos in comments, signal more specific error types, remove some stale code, fix a few compiler warnings in the runtime.
-
- Nov 19, 2002
- Nov 14, 2002
-
-
toy authored
Noted by Fabricio Chalub.
-
- Nov 13, 2002
- Nov 08, 2002
-
-
toy authored
cases it's too small. (Should we dynamically allocate this?)
-
- Nov 05, 2002
-
-
cracauer authored
Make (time ...) and the profiler do precise measuring of space allocation. It will also not overflow or bomb out when consing amounts cross most-positive fixnum. The new profiler also has an interface to plug in your own print function (also dictates sorting or results). This is written on gencgc/x86 but tests indicated the fallsbacks for other platforms work. The dfixnum package included here is sketchy.
-
- Nov 02, 2002
-
-
toy authored
-
- Oct 27, 2002
-
-
toy authored
-
- Oct 25, 2002
-
-
toy authored
using the linkage-table.
-
- Oct 24, 2002
- Oct 14, 2002
-
-
toy authored
Mai's build scripts.
-
- Oct 01, 2002
-
-
toy authored
core, so don't remove them.
-
- Sep 04, 2002
- 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.
-