+extern HsInt64 getAllocations( void )
+{ return (HsInt64)total_allocated * sizeof(W_); }
+
+/* -----------------------------------------------------------------------------
+ Dumping stuff in the stats file, or via the debug message interface
+ -------------------------------------------------------------------------- */
+
+static void
+statsPrintf( char *s, ... )
+{
+ FILE *sf = RtsFlags.GcFlags.statsFile;
+ va_list ap;
+
+ va_start(ap,s);
+ if (sf == NULL) {
+ vdebugBelch(s,ap);
+ } else {
+ vfprintf(sf, s, ap);
+ }
+ va_end(ap);
+}
+
+static void
+statsFlush( void )
+{
+ FILE *sf = RtsFlags.GcFlags.statsFile;
+ if (sf != NULL) {
+ fflush(sf);
+ }
+}
+
+static void
+statsClose( void )
+{
+ FILE *sf = RtsFlags.GcFlags.statsFile;
+ if (sf != NULL) {
+ fclose(sf);
+ }
+}