Skip to content
Snippets Groups Projects
  1. Sep 29, 2003
  2. Sep 25, 2003
  3. Sep 22, 2003
  4. Sep 18, 2003
  5. Sep 16, 2003
  6. Sep 15, 2003
  7. Sep 13, 2003
    • gerd's avatar
      * src/lisp/alloc.c (alloc) [GENCGC]: Define as alloc_pseudo_atomic. · e31f8138
      gerd authored
      	* src/lisp/gencgc.c (set_pseudo_atomic_atomic)
      	(clr_pseudo_atomic_atomic) [i386]: Reverse the values assigned
      	to PSEUDO_ATOMIC_ATOMIC, remove semicolons.
      	(alloc_pseudo_atomic): New function wrapping alloc in a
      	pseudo-atomic section.
      	(alloc): Remove code for the non-PA case, rewrite the rest
      	to use a loop instead of goto.
      e31f8138
  8. Sep 04, 2003
  9. Aug 27, 2003
  10. Aug 22, 2003
  11. Aug 21, 2003
  12. Aug 20, 2003
  13. Aug 18, 2003
  14. Aug 15, 2003
  15. Aug 12, 2003
    • gerd's avatar
      Lisp executable support. From Fred Gilham. · 297cb596
      gerd authored
      	* src/lisp/validate.c (image_dynamic_space_size): New variable.
      	(validate): Allocate spaces differently if the core is part
      	of the executable.
      
      	* src/lisp/lisp.c (initial_function_addr): New variable.
      	(main): Use it for the initial function if appropriate.
      297cb596
  16. Aug 04, 2003
  17. Jul 28, 2003
  18. Jul 26, 2003
  19. Jul 25, 2003
    • gerd's avatar
      LDB backtrace for x86, first steps. · 49187a54
      gerd authored
      	* src/lisp/backtrace.c (VM_OCFP_SAVE_OFFSET)
      	(VM_RETURN_PC_SAVE_OFFSET): New defines.
      	(stack_pointer_p, ra_pointer_p, deref, print_entry_name)
      	(print_entry_list, print_entry_points, x86_call_context):
      	New functions.
      	(backtrace): Use x86_call_context.
      49187a54
  20. Jul 19, 2003
    • emarsden's avatar
      · 34b793ce
      emarsden authored
        - fix a signed/unsigned cast bug that was prevented the
          auto-gc-trigger from functioning correctly when using certain
          dynamic-space sizes (for platforms that don't have an internal gc
          trigger).
      
        - added a few #include files to avoid compiler warnings
      
        - changed some #ifdef semantics: DEBUG activates additional
          assertions, and PRINTNOISE activates debugging statements.
      34b793ce
  21. May 30, 2003
  22. May 29, 2003
    • toy's avatar
      Add control-stack checking for Sparc. Based on work from SBCL. · 72f0aa1e
      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.
      72f0aa1e
    • gerd's avatar
      Building with cgc. · f824769e
      gerd authored
      	* src/lisp/Config.FreeBSD (NM): Use linux-nm.
      
      	* src/code/gc.lisp: Use bytes_allocated for cgc because
      	get_bytes_allocated_{lower,higher} is only implemented for
      	gencgc.
      f824769e
  23. May 05, 2003
  24. 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
  25. 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
  26. 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
  27. 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
  28. Mar 19, 2003
  29. Mar 08, 2003
Loading