free empty blocks at the end of GC
[ghc-hetmet.git] / rts / sm / Compact.c
index 53eb2fb..44b5242 100644 (file)
@@ -644,7 +644,8 @@ thread_obj (StgInfoTable *info, StgPtr p)
        return p + sizeofW(StgWeak);
     }
     
-    case MVAR:
+    case MVAR_CLEAN:
+    case MVAR_DIRTY:
     { 
        StgMVar *mvar = (StgMVar *)p;
        thread_(&mvar->head);
@@ -998,7 +999,7 @@ compact(void)
     }
 
     // the static objects
-    thread_static(scavenged_static_objects);
+    thread_static(gct->scavenged_static_objects /* ToDo: ok? */);
 
     // the stable pointer table
     threadStablePtrTable((evac_fn)thread);