[m-rev.] [b.schmidt at ugrad.unimelb.edu.au: Accurate GC debugging fix]

Zoltan Somogyi zs at csse.unimelb.edu.au
Thu Dec 14 19:38:31 AEDT 2006


----- Forwarded message from Ben Schmidt <b.schmidt at ugrad.unimelb.edu.au> -----

Date: Thu, 14 Dec 2006 16:52:30 +1100
From: Ben Schmidt <b.schmidt at ugrad.unimelb.edu.au>
To: Zoltan Somogyi <zs at csse.unimelb.edu.au>
Subject: Accurate GC debugging fix

Proposed diff and log message attached.

Ben.







Estimated hours taken: 2
Branches: <which CVS branches ("main", "release", etc.) this change
           will be committed on>

Fixed minor bug in accurate GC debugging.

runtime/mercury_accurate_gc.c:
	Fixed 'off by one' error ('<=' changes to '<') which was causing
	memory to be clobbered beyond the used portion of the old heap,
	thus triggering the redzone occasionally.




Index: runtime/mercury_accurate_gc.c
===================================================================
RCS file: /home/mercury/mercury1/repository/mercury/runtime/mercury_accurate_gc.c,v
retrieving revision 1.41
diff -u -r1.41 mercury_accurate_gc.c
--- runtime/mercury_accurate_gc.c	17 Mar 2006 03:25:54 -0000	1.41
+++ runtime/mercury_accurate_gc.c	11 Dec 2006 23:59:22 -0000
@@ -1038,7 +1038,7 @@
 
     if (MR_agc_debug) {
         fprintf(stderr, "Clearing old heap:\n");
-        for (tmp_hp = old_heap->MR_zone_min; tmp_hp <= old_hp; tmp_hp++) {
+        for (tmp_hp = old_heap->MR_zone_min; tmp_hp < old_hp; tmp_hp++) {
             *tmp_hp = 0xDEADBEAF;
         }
     }




----- End forwarded message -----
--------------------------------------------------------------------------
mercury-reviews mailing list
Post messages to:       mercury-reviews at csse.unimelb.edu.au
Administrative Queries: owner-mercury-reviews at csse.unimelb.edu.au
Subscriptions:          mercury-reviews-request at csse.unimelb.edu.au
--------------------------------------------------------------------------



More information about the reviews mailing list