summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/emacs.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/emacs.c b/src/emacs.c
index 7e6ac1413fc..05b044f57cf 100644
--- a/src/emacs.c
+++ b/src/emacs.c
@@ -1095,6 +1095,24 @@ the Bugs section of the Emacs manual or the file BUGS.\n", argv[0]);
#endif
}
+ /* Gerd Moellmann <gerd@acm.org> says this makes profiling work on
+ FreeBSD. It might work on some other systems too.
+ Give it a try and tell me if it works on your system. */
+#ifdef __FreeBSD__
+#ifdef PROFILING
+ if (initialized)
+ {
+ extern void _mcleanup ();
+ extern char etext;
+ extern void clear_glyph_matrix ();
+ atexit (_mcleanup);
+ monstartup (clear_glyph_matrix, &etext);
+ }
+ else
+ moncontrol (0);
+#endif
+#endif
+
initialized = 1;
#ifdef LOCALTIME_CACHE