From 3c784ae4f4b25ebcc4019b77c77a7e365fdac261 Mon Sep 17 00:00:00 2001 From: Kaz Kylheku Date: Wed, 25 Nov 2009 15:46:54 -0800 Subject: More Valgrind support. New option --vg-debug which turns on Valgrind protection of free blocks. This works independently of --gc-debug. --- ChangeLog | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) (limited to 'ChangeLog') diff --git a/ChangeLog b/ChangeLog index 137aa61a..18dbddfd 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,28 @@ +2009-11-25 Kaz Kylheku + + More Valgrind support. New option --vg-debug which turns on + Valgrind protection of free blocks. This works independently + of --gc-debug. + + * gc.c (opt_vg_debug): New conditionally defined global variable. + (more): Mark entire heap of free blocks inaccessible, if + vg debugging is enabled. + (make_obj): If vg debugging enabled, mark returned block as accessible, + but undefined, and take care to grant self temporary access while + manipulating the free list. + (finalize): Removed old debugging logic of not freeing strings + and vectors during gc debug. If the null pointers are ever a problem + during debugging, they can be checked inside obj_print, and + turned into # notation. + (sweep): Switch to FIFO free block recycling if vg debugging is + enabled, just like when gc debugging is enabled. + Mark freed blocks as inaccessible, careful to grant self + temporary access while manipulating the free list. + + * txr.c (txr_main): Parse the --vg-debug option. + + * txr.h (opt_vg_debug): Conditionally declared. + 2009-11-25 Kaz Kylheku Fix a build breakage that may happen on some platforms. -- cgit v1.2.3