Skip to content
Snippets Groups Projects
  1. May 19, 2004
  2. May 18, 2004
  3. May 13, 2004
  4. May 11, 2004
    • rtoy's avatar
      From Lynn Quam: · 836299e0
      rtoy authored
      	adds the mark_bit slot to weak-pointers and eliminates the
      	n-squared performance problem with scav_weak_pointer.
      836299e0
  5. May 06, 2004
    • emarsden's avatar
      · 0a73e5ab
      emarsden authored
        - fix syntax for C multiline strings
      0a73e5ab
  6. May 04, 2004
  7. May 03, 2004
  8. Apr 28, 2004
    • emarsden's avatar
      · eb8c3b1a
      emarsden authored
        - detect overflow of static and read-only spaces during PURIFY. You get
          dumped into LDB.
      
        - fix a few signed/unsigned confusions in casts
      eb8c3b1a
    • rtoy's avatar
      Increase static and read-only space to the maximum of 256 MB. (We · d0f77a5b
      rtoy authored
      already had space for this but were only allocating 128 MB.  If we
      want more, we'll have to move things around.)
      d0f77a5b
  9. Jan 16, 2004
  10. Jan 10, 2004
  11. Jan 09, 2004
    • toy's avatar
      Remove some unused code that we don't need anymore. · feaa7104
      toy authored
      feaa7104
    • toy's avatar
      0b4f3884
    • toy's avatar
      Oops. It's i386, not x86. · 9b81f8e5
      toy authored
      9b81f8e5
    • toy's avatar
      o Get the space_start values from internals.h · f7c525cc
      toy authored
      o Increase the max heap space to 2816 MB from 2048 MB.  (This is about as
        much as we can do, since some space is needed for the C stack located
        at high memory.)
      f7c525cc
    • toy's avatar
      Update to sparc gencgc so that alloc-tn holds the · 723055bb
      toy authored
      current-region-free-pointer.
      
      Cross compile may be needed, but I'm not sure.  I only used
      cross-compiling to do this change.
      
      sparc/macros.lisp:
      o Update the allocation macro appropriately for alloc-tn holding the
        current-region-free-pointer.
      
      lisp/gencgc.c:
      o Define macros for setting and getting *current-region-free-oointer*
        and *current-region-end-addr* so sparc can use alloc-tn.
        *current-region-free-pointer* isn't used anymore, but is still a
        static symbol.  It's been replaced by alloc-tn.
      o On sparc, set_alloc_pointer doesn't need to do anything anymore.
      o Don't need to call update_dynamic_space_free_pointer anymore.
      o The assertion that *current-region-free-pointer* is a fixnum is no
        longer valid on sparc because that is alloc-tn which contains the
        pseudo-atomic bits.
      
      lisp/sparc-arch.c:
      o The allocation trap instruction is now preceeded by a SUB
        instruction.  Handle that correctly.  Keep support for the OR
        instruction for now, but should be removed.
      o Set alloc-tn from current_dynamic_space_free_pointer.
      723055bb
    • toy's avatar
      Don't try to protect the hold for the dynamic_1 space when GENCGC is enabled, · a4484236
      toy authored
      because there is no dynamic_1 space with GENCGC.  This was causing CMUCL to
      segfault when using more than 512 MB of heap.
      a4484236
    • toy's avatar
      Define globals to hold the sizes of the read-only space, the binding stack, · 34d0aace
      toy authored
      the static space and the control stack so we can print them out with ROOM.
      34d0aace
  12. Nov 01, 2003
  13. Oct 24, 2003
    • toy's avatar
      Add support for x86 heap-overflow checking. · 10d10ac0
      toy authored
      	* x86-assem.S (multiple_value_return): Add new functions to handle
      	heap overflow warnings and errors.
      
      	* x86-arch.c (sigtrap_handler): Add cases for the two new heap
      	overflow traps.
      
      	* interrupt.c (interrupt_handle_space_overflow): Add support for
      	x86.
      
      	* parms.lisp (static-symbols): Add new static symbols for heap
      	overflow checking.  Add new trap types for heap overflow
      	checking.
      10d10ac0
    • toy's avatar
      Add support for catching heap overflows, similar to the control stack · 3e309c44
      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
      3e309c44
  14. Oct 16, 2003
Loading