]> git.llucax.com Git - software/druntime.git/blobdiff - src/gc/basic/gcx.d
First attempt at support for dynamic library loading and unloading. Currently, only...
[software/druntime.git] / src / gc / basic / gcx.d
index 0b6d1d0154e5042739a1b7c626adf3f0ab1ec64b..4c6396e72f7586e3a3403e8bd85f9d55b167e129 100644 (file)
@@ -86,21 +86,16 @@ private
 
     extern (C) void* rt_stackBottom();
     extern (C) void* rt_stackTop();
 
     extern (C) void* rt_stackBottom();
     extern (C) void* rt_stackTop();
-    extern (C) void* rt_staticDataBottom();
-    extern (C) void* rt_staticDataTop();
 
     extern (C) void rt_finalize( void* p, bool det = true );
 
 
     extern (C) void rt_finalize( void* p, bool det = true );
 
-    alias void delegate( void*, void* ) scanFn;
-
-    extern (C) void rt_scanStaticData( scanFn scan );
-
     version (MULTI_THREADED)
     {
         extern (C) bool thread_needLock();
         extern (C) void thread_suspendAll();
         extern (C) void thread_resumeAll();
 
     version (MULTI_THREADED)
     {
         extern (C) bool thread_needLock();
         extern (C) void thread_suspendAll();
         extern (C) void thread_resumeAll();
 
+        alias void delegate( void*, void* ) scanFn;
         extern (C) void thread_scanAll( scanFn fn, void* curStackTop = null );
     }
 
         extern (C) void thread_scanAll( scanFn fn, void* curStackTop = null );
     }
 
@@ -1126,21 +1121,6 @@ class GC
     }
 
 
     }
 
 
-    static void scanStaticData(gc_t g)
-    {
-        //debug(PRINTF) printf("+GC.scanStaticData()\n");
-        auto pbot = rt_staticDataBottom();
-        auto ptop = rt_staticDataTop();
-        g.addRange(pbot, ptop - pbot);
-        //debug(PRINTF) printf("-GC.scanStaticData()\n");
-    }
-
-    static void unscanStaticData(gc_t g)
-    {
-        auto pbot = rt_staticDataBottom();
-        g.removeRange(pbot);
-    }
-
     /**
      * add p to list of roots
      */
     /**
      * add p to list of roots
      */
@@ -2262,8 +2242,6 @@ struct Gcx
             pool.mark.copy(&pool.freebits);
         }
 
             pool.mark.copy(&pool.freebits);
         }
 
-        rt_scanStaticData( &mark );
-
         version (MULTI_THREADED)
         {
             if (!noStack)
         version (MULTI_THREADED)
         {
             if (!noStack)