]> git.llucax.com Git - software/dgc/cdgc.git/commitdiff
Remove Gcx destructor
authorLeandro Lucarella <llucax@gmail.com>
Tue, 29 Jun 2010 00:09:55 +0000 (21:09 -0300)
committerLeandro Lucarella <llucax@gmail.com>
Tue, 29 Jun 2010 00:09:55 +0000 (21:09 -0300)
There is no point on freeing memory as the OS will do it for us.

rt/gc/cdgc/gc.d
rt/gc/cdgc/iface.d

index 1e95f061b1895a035a83e25f9876f6ae28d5cc87..6ed0b1d4122a1ec13202742e834280c2f31732e2 100644 (file)
@@ -143,17 +143,6 @@ class GC
     }
 
 
-    void Dtor()
-    {
-        if (gcx)
-        {
-            gcx.Dtor();
-            cstdlib.free(gcx);
-            gcx = null;
-        }
-    }
-
-
     /**
      *
      */
@@ -1368,30 +1357,6 @@ struct Gcx
     }
 
 
-    void Dtor()
-    {
-        inited = 0;
-
-        for (size_t i = 0; i < npools; i++)
-        {
-            Pool *pool = pooltable[i];
-            pool.Dtor();
-            cstdlib.free(pool);
-        }
-
-        // Even when free() can be called with a null pointer, the extra call
-        // might be significant. On hard GC benchmarks making the test for null
-        // here (i.e. not making the call) can reduce the GC time by almost
-        // ~5%.
-        if (pooltable)
-            cstdlib.free(pooltable);
-        if (roots)
-            cstdlib.free(roots);
-        if (ranges)
-            cstdlib.free(ranges);
-    }
-
-
     void Invariant() { }
 
 
index eb87dfdf2c68491f1f80a3d780499f8a232ccb1d..fec035a68c11f1292ea0ef1c5a4f3946561c96d6 100644 (file)
@@ -102,7 +102,6 @@ extern (C) void gc_term()
         //
         _gc.fullCollectNoStack(); // not really a 'collect all' -- still scans
                                   // static data area, roots, and ranges.
-        _gc.Dtor();
     } else {
         // default (safe) clenup
         _gc.fullCollect();