From 906452d66424c7569dbe6571d19f07fe8d4c2cd4 Mon Sep 17 00:00:00 2001 From: rtoy <rtoy> Date: Sat, 4 Feb 2006 03:32:31 +0000 Subject: [PATCH] o Disable gencgc consistency checks for DARWIN (but leave asserts enabled). o I think we should call update_dynamic_space_free_pointer for sparc and ppc, at the very least to set last_free_page. --- lisp/gencgc.c | 17 ++++++----------- 1 file changed, 6 insertions(+), 11 deletions(-) diff --git a/lisp/gencgc.c b/lisp/gencgc.c index f94197248..fe05365f1 100644 --- a/lisp/gencgc.c +++ b/lisp/gencgc.c @@ -7,7 +7,7 @@ * * Douglas Crosher, 1996, 1997, 1998, 1999. * - * $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/gencgc.c,v 1.69 2006/01/31 13:58:36 rtoy Exp $ + * $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/gencgc.c,v 1.70 2006/02/04 03:32:31 rtoy Exp $ * */ @@ -258,7 +258,7 @@ boolean pre_verify_gen_0 = FALSE; /* * Enable checking for bad pointers after gc_free_heap called from purify. */ -#if defined(DARWIN) +#if 0 && defined(DARWIN) boolean verify_after_free_heap = TRUE; #else boolean verify_after_free_heap = FALSE; @@ -290,7 +290,7 @@ boolean gencgc_unmap_zero = TRUE; /* * Enable checking that newly allocated regions are zero filled. */ -#if defined(DARWIN) +#if 0 && defined(DARWIN) boolean gencgc_zero_check = TRUE; boolean gencgc_enable_verify_zero_fill = TRUE; #else @@ -302,7 +302,7 @@ boolean gencgc_enable_verify_zero_fill = FALSE; * Enable checking that free pages are zero filled during gc_free_heap * called after purify. */ -#if defined(DARWIN) +#if 0 && defined(DARWIN) boolean gencgc_zero_check_during_free_heap = TRUE; #else boolean gencgc_zero_check_during_free_heap = FALSE; @@ -4866,7 +4866,7 @@ search_dynamic_space(lispobj * pointer) return search_space(start, pointer + 2 - start, pointer); } -#if defined(DARWIN) || defined(i386) || defined(__x86_64) +#if defined(i386) || defined(__x86_64) static int valid_dynamic_space_pointer(lispobj * pointer) { @@ -6114,7 +6114,7 @@ verify_space(lispobj * start, size_t words) * Does it point to a plausible object? This check slows it * down a lot. */ -#if defined(DARWIN) +#if 0 if (!valid_dynamic_space_pointer((lispobj *) thing)) { fprintf(stderr, "*** Ptr %x to invalid object %x\n", thing, start); @@ -6886,12 +6886,7 @@ collect_garbage(unsigned last_gen) gc_assert(boxed_region.free_pointer - boxed_region.start_addr == 0); gc_alloc_generation = 0; - /* Sparc and ppc don't need this because the dynamic space free - pointer is the same as the current region free pointer, which - is updated by the allocation routines appropriately. */ -#if !(defined(sparc) || defined(DARWIN)) update_dynamic_space_free_pointer(); -#endif set_current_region_free((lispobj) boxed_region.free_pointer); set_current_region_end((lispobj) boxed_region.end_addr); -- GitLab