diff options
author | Stefan Monnier <monnier@iro.umontreal.ca> | 2019-04-26 08:54:02 -0400 |
---|---|---|
committer | Stefan Monnier <monnier@iro.umontreal.ca> | 2019-04-26 08:54:02 -0400 |
commit | 82fc8ca6ba179596928db614ab903e44968ef44e (patch) | |
tree | bbd6fc1f9726e85e385fc43bca84a23e6d63e229 /lib-src | |
parent | cc70501a3a77e2cb8649eee0f0c03689e8232a68 (diff) | |
download | emacs-82fc8ca6ba179596928db614ab903e44968ef44e.tar.gz emacs-82fc8ca6ba179596928db614ab903e44968ef44e.tar.bz2 emacs-82fc8ca6ba179596928db614ab903e44968ef44e.zip |
* lib-src/profile.c: Delete long-obsolete file
This auxiliary executable was used by the old `profile.el` which later
inspired `elp.el`. It was made obsolete when Emacs acquired native timers.
* lib-src/Makefile.in (UTILITIES): Remove profile.
(profile${EXEEXT}): Delete rule.
Diffstat (limited to 'lib-src')
-rw-r--r-- | lib-src/Makefile.in | 6 | ||||
-rw-r--r-- | lib-src/profile.c | 97 |
2 files changed, 1 insertions, 102 deletions
diff --git a/lib-src/Makefile.in b/lib-src/Makefile.in index b5b55b848eb..40222174bde 100644 --- a/lib-src/Makefile.in +++ b/lib-src/Makefile.in @@ -163,7 +163,7 @@ INSTALLABLES = etags${EXEEXT} ctags${EXEEXT} emacsclient${EXEEXT} $(CLIENTW) \ # Things that Emacs runs internally, or during the build process, # which should not be installed in bindir. -UTILITIES = profile${EXEEXT} hexl${EXEEXT} \ +UTILITIES = hexl${EXEEXT} \ $(if $(with_mailutils), , movemail${EXEEXT}) \ $(and $(use_gamedir), update-game-score${EXEEXT}) @@ -380,10 +380,6 @@ ebrowse${EXEEXT}: ${srcdir}/ebrowse.c ${srcdir}/../lib/min-max.h $(NTLIB) \ $(AM_V_CCLD)$(CC) ${ALL_CFLAGS} -DVERSION="\"${version}\"" \ $< $(NTLIB) $(LOADLIBES) -o $@ -profile${EXEEXT}: ${srcdir}/profile.c $(NTLIB) $(config_h) - $(AM_V_CCLD)$(CC) ${ALL_CFLAGS} $< \ - $(NTLIB) $(LOADLIBES) $(LIB_CLOCK_GETTIME) -o $@ - make-docfile${EXEEXT}: ${srcdir}/make-docfile.c $(NTLIB) $(config_h) $(AM_V_CCLD)$(CC) ${ALL_CFLAGS} $< $(NTLIB) $(LOADLIBES) -o $@ diff --git a/lib-src/profile.c b/lib-src/profile.c deleted file mode 100644 index 257008e92d9..00000000000 --- a/lib-src/profile.c +++ /dev/null @@ -1,97 +0,0 @@ -/* profile.c --- generate periodic events for profiling of Emacs Lisp code. - Copyright (C) 1992, 1994, 1999, 2001-2019 Free Software Foundation, - Inc. - -Author: Boaz Ben-Zvi <boaz@lcs.mit.edu> - -This file is part of GNU Emacs. - -GNU Emacs is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 3 of the License, or (at -your option) any later version. - -GNU Emacs is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with GNU Emacs. If not, see <https://www.gnu.org/licenses/>. */ - - -/** - ** To be run as an emacs subprocess. Input string that starts with: - ** 'z' -- resets the watch (to zero). - ** 'p' -- return time (on stdout) as string with format <sec>.<micro-sec> - ** 'q' -- exit. - ** - ** abstraction : a stopwatch - ** operations: reset_watch, get_time - */ - -#include <config.h> - -#include <inttypes.h> -#include <stdlib.h> - -#include <intprops.h> -#include <timespec.h> -#include <unlocked-io.h> - -static struct timespec TV1; -static int watch_not_started = 1; /* flag */ -static char time_string[INT_STRLEN_BOUND (uintmax_t) + sizeof "." - + LOG10_TIMESPEC_HZ]; - -/* Reset the stopwatch to zero. */ - -static void -reset_watch (void) -{ - TV1 = current_timespec (); - watch_not_started = 0; -} - -/* This call returns the time since the last reset_watch call. The time - is returned as a string with the format <seconds>.<nanoseconds> - If reset_watch was not called yet, exit. */ - -static char * -get_time (void) -{ - struct timespec TV2 = timespec_sub (current_timespec (), TV1); - uintmax_t s = TV2.tv_sec; - int ns = TV2.tv_nsec; - if (watch_not_started) - exit (EXIT_FAILURE); /* call reset_watch first ! */ - sprintf (time_string, "%"PRIuMAX".%0*d", s, LOG10_TIMESPEC_HZ, ns); - return time_string; -} - -int -main (void) -{ - int c; - while ((c = getchar ()) != EOF) - { - switch (c) - { - case 'z': - reset_watch (); - break; - case 'p': - puts (get_time ()); - break; - case 'q': - return EXIT_SUCCESS; - } - /* Anything remaining on the line is ignored. */ - while (c != '\n' && c != EOF) - c = getchar (); - } - return EXIT_FAILURE; -} - - -/* profile.c ends here */ |