Mercurial > emacs
view src/terminfo.c @ 17419:c9f73399244c
(elp-functionp): New function.
(elp-instrument-package): Don't attempt to instrument autoload functions.
(elp-elapsed-time): New function to calculate the different between
two `current-time' lists. This no longer throws away the top 16 bits
of information.
(elp-wrapper): Use elp-elapsed-time instead of elp-get-time. Also,
call `current-time' as close to the function entrance and exit as
possible so more of the overhead is eliminated from the times.
(elp-get-time): Obsolete, deleted.
(elp-restore-function):
When restoring, do not check assq elp-wrapper
if the symbol-function is a compiled lisp function (i.e. byte coded).
If it is byte-coded, it could not have been instrumented.
Don't do the symbol-function restoration if
the symbol has no function definition.
(elp-instrument-function): Always `restore' the funsym before instrumenting.
Fail if function is an autoload symbol.
(elp-instrument-list): Remove unnecessary condition-case.
(elp-results):
Noninteractive as a function is non-portable, use the
variable instead. buffer-substring with 3 arguments is non-portable.
(elp-instrument-function, elp-instrument-list):
Handle function symbols that have already been instrumented. Do
not instrument them twice.
(elp-recycle-buffers-p): New variable.
(elp-report-limit, elp-sort-by-function): New default values.
(elp-use-standard-output): New variable.
(elp-results): Optionally dump results to standard-output.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Sat, 12 Apr 1997 19:14:18 +0000 |
parents | 4580dcf4e0d1 |
children | 42cf8e9273ee |
line wrap: on
line source
/* Interface from Emacs to terminfo. Copyright (C) 1985, 1986 Free Software Foundation, Inc. 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 2, 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; see the file COPYING. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #include <config.h> /* Define these variables that serve as global parameters to termcap, so that we do not need to conditionalize the places in Emacs that set them. */ char *UP, *BC, PC; #ifdef HAVE_TERMIOS_H #include <termios.h> speed_t ospeed; #else short ospeed; #endif static buffer[512]; /* Interface to curses/terminfo library. Turns out that all of the terminfo-level routines look like their termcap counterparts except for tparm, which replaces tgoto. Not only is the calling sequence different, but the string format is different too. */ char * tparam (string, outstring, len, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) char *string; char *outstring; int arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9; { char *temp; extern char *tparm(); temp = tparm (string, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9); if (outstring == 0) outstring = ((char *) (malloc ((strlen (temp)) + 1))); strcpy (outstring, temp); return outstring; }