]> granicus.if.org Git - gc/commitdiff
* darwin_stop_world.c (GC_push_all_stacks, GC_stop_world,
authorbryce <bryce@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 11 Apr 2006 21:56:27 +0000 (21:56 +0000)
committerguest <ivmai@mail.ru>
Fri, 29 Jul 2011 06:54:27 +0000 (10:54 +0400)
        GC_start_world): Call vm_deallocate to free act_list. Fix from
        Bruce Mitchener.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112867 138bc75d-0d04-0410-961f-82ee72b054a4

ChangeLog
darwin_stop_world.c

index 1195d7ee5e989547ad963d0ed83bc226f5e32758..936d3bfc2332dab687ab04a9790814b0c79d778f 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2006-04-11  Bryce McKinlay  <mckinlay@redhat.com>
+
+       * darwin_stop_world.c (GC_push_all_stacks, GC_stop_world,
+       GC_start_world): Call vm_deallocate to free act_list. Fix from
+       Bruce Mitchener.
+
 2006-03-24  Andreas Tobler  <a.tobler@schweiz.ch>
        John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
 
index 3c0c3710afbf6f653a0bea9053a4975470b247ad..c2a033d3cc44d2c9e547d39558676bcbc8ff37d2 100644 (file)
@@ -249,6 +249,7 @@ void GC_push_all_stacks() {
 #     endif
       GC_push_all_stack(lo, hi); 
     } /* for(p=GC_threads[i]...) */
+    vm_deallocate(current_task(), (vm_address_t)act_list, sizeof(thread_t) * listcount);
 }
 #endif /* !DARWIN_DONT_PARSE_STACK */
 
@@ -392,6 +393,7 @@ void GC_stop_world()
        changes = result;
        prev_list = act_list;
        prevcount = listcount;
+        vm_deallocate(current_task(), (vm_address_t)act_list, sizeof(thread_t) * listcount);
       } while (changes);
       
  
@@ -463,6 +465,7 @@ void GC_start_world()
        }
       }
     }
+    vm_deallocate(current_task(), (vm_address_t)act_list, sizeof(thread_t) * listcount);
 #   if DEBUG_THREADS
      GC_printf0("World started\n");
 #   endif