#include "RtsFlags.h"
#include "OSThreads.h"
#include "Trace.h"
+#include "Stable.h"
/* Comment from ADR's implementation in old RTS:
stgFree(stable_ptr_table);
stable_ptr_table = NULL;
SPT_size = 0;
+#ifdef THREADED_RTS
+ closeMutex(&stable_mutex);
+#endif
}
/*
if (p->sn_obj == NULL) {
// StableName object is dead
freeStableName(p);
- debugTrace(DEBUG_stable, "GC'd Stable name %ld",
- p - stable_ptr_table);
+ debugTrace(DEBUG_stable, "GC'd Stable name %ld",
+ (long)(p - stable_ptr_table));
continue;
} else {
p->addr = (StgPtr)isAlive((StgClosure *)p->addr);
debugTrace(DEBUG_stable,
"stable name %ld still alive at %p, ref %ld\n",
- p - stable_ptr_table, p->addr, p->ref);
+ (long)(p - stable_ptr_table), p->addr, p->ref);
}
}
}