Skip to content
Snippets Groups Projects
  1. Apr 28, 2003
    • cracauer's avatar
      · 257c3a31
      cracauer authored
      Don't damage argv[0] when startup code is invoced with absolute path.
      
      If we ever do a patch release this should be in.
      257c3a31
  2. Mar 27, 2003
    • gerd's avatar
      * code/hash-new.lisp (make-hash-table): Put warning about · 9e89e4e5
      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.
      9e89e4e5
  3. Mar 23, 2003
    • gerd's avatar
      Optional control stack checking. This is controlled by the · 670d643f
      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.
      670d643f
  4. Mar 20, 2003
    • cracauer's avatar
      · d44b3cb4
      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.
      d44b3cb4
  5. Mar 19, 2003
  6. Mar 08, 2003
  7. Mar 06, 2003
    • pmai's avatar
      Fixes by Brian Uhrain for the alpha port: · 0da9ad68
      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.
      0da9ad68
  8. Mar 04, 2003
  9. Mar 03, 2003
  10. Mar 02, 2003
  11. Feb 25, 2003
  12. Feb 18, 2003
  13. Feb 12, 2003
  14. Feb 11, 2003
  15. Jan 29, 2003
    • cracauer's avatar
      · de993639
      cracauer authored
      Remove a #ifdef ITA which sneaked in with the profiler changes.  No
      functional change for normal builds.
      de993639
    • toy's avatar
      o Adds support for searching for the lisp.core file based on the · a20170bc
      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.
      a20170bc
    • toy's avatar
      Export print_generation_stats. · c551f431
      toy authored
      c551f431
  16. Jan 23, 2003
    • toy's avatar
      From Eric Marsden: · f315d7f1
      toy authored
          fix typos in comments, signal more specific error types, remove
          some stale code, fix a few compiler warnings in the runtime.
      f315d7f1
  17. Nov 19, 2002
  18. Nov 14, 2002
  19. Nov 13, 2002
  20. Nov 08, 2002
  21. Nov 05, 2002
    • cracauer's avatar
      · 65f0bdc0
      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.
      65f0bdc0
  22. Nov 02, 2002
  23. Oct 27, 2002
  24. Oct 25, 2002
  25. Oct 24, 2002
  26. Oct 14, 2002
  27. Oct 01, 2002
  28. Sep 04, 2002
Loading