X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=gprof%2Fgprof.h;h=c919ea437c4215c5a7875db2dbb4662e13637493;hb=2d7cc5c7973b6d1bdd9205288863bedadeaf8b41;hp=e4177a9a0bbb9586188175ddb1610b36cf86ae9e;hpb=12516a373c27abe4516c2a3c84cfe9d94f02e18f;p=deliverable%2Fbinutils-gdb.git diff --git a/gprof/gprof.h b/gprof/gprof.h index e4177a9a0b..c919ea437c 100644 --- a/gprof/gprof.h +++ b/gprof/gprof.h @@ -1,28 +1,44 @@ /* - * Copyright (c) 1983 Regents of the University of California. - * All rights reserved. + * Copyright (c) 1983, 1993 + * The Regents of the University of California. All rights reserved. * - * Redistribution and use in source and binary forms are permitted - * provided that: (1) source distributions retain this entire copyright - * notice and comment, and (2) distributions including binaries display - * the following acknowledgement: ``This product includes software - * developed by the University of California, Berkeley and its contributors'' - * in the documentation or other materials provided with the distribution - * and in all advertising materials mentioning features or use of this - * software. Neither the name of the University nor the names of its - * contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. Neither the name of the University nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. * - * @(#)gprof.h 5.9 (Berkeley) 6/1/90 + * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. */ #ifndef gprof_h #define gprof_h -#include +/* Include the BFD sysdep.h file. */ #include "sysdep.h" +#include "bfd.h" + +#undef PACKAGE +#undef PACKAGE_NAME +#undef PACKAGE_STRING +#undef PACKAGE_TARNAME +#undef PACKAGE_VERSION +#include "gconfig.h" #ifndef MIN #define MIN(a,b) ((a) < (b) ? (a) : (b)) @@ -34,44 +50,23 @@ /* AIX defines hz as a macro. */ #undef hz -#ifdef MACHINE_H -#include MACHINE_H -#else -#if vax -#include "vax.h" -#endif -#if sun -#include "sun.h" -#endif -#if tahoe -#include "tahoe.h" -#endif -#endif - -#ifndef FOPEN_RB -#define FOPEN_RB "r" -#endif -#ifndef FOPEN_WB -#define FOPEN_WB "w" -#endif - #ifndef PATH_MAX #define PATH_MAX 1024 #endif -#define A_OUTNAME "a.out" /* default core filename */ +#define A_OUTNAME "a.out" /* default core filename */ #define GMONNAME "gmon.out" /* default profile filename */ #define GMONSUM "gmon.sum" /* profile summary filename */ -/* - * These may already be defined on some systems. We could probably - * just use the BFD versions of these, since BFD has already dealt - * with this problem. - */ -#undef FALSE -#define FALSE 0 -#undef TRUE -#define TRUE 1 +#ifdef HAVE_LOCALE_H +# include +#endif + +#ifdef ENABLE_NLS +/* Undefine BFD's `_' macro - it uses dgetext() and we want to use gettext(). */ +#undef _ +#define _(String) gettext (String) +#endif #define STYLE_FLAT_PROFILE (1<<0) #define STYLE_CALL_GRAPH (1<<1) @@ -79,6 +74,8 @@ #define STYLE_EXEC_COUNTS (1<<3) #define STYLE_ANNOTATED_SOURCE (1<<4) #define STYLE_GMON_INFO (1<<5) +#define STYLE_FUNCTION_ORDER (1<<6) +#define STYLE_FILE_ORDER (1<<7) #define ANYDEBUG (1<<0) /* 1 */ #define DFNDEBUG (1<<1) /* 2 */ @@ -103,35 +100,38 @@ typedef enum { - FF_AUTO = 0, FF_MAGIC, FF_BSD, FF_PROF + FF_AUTO = 0, FF_MAGIC, FF_BSD, FF_BSD44, FF_PROF } File_Format; -typedef int bool; typedef unsigned char UNIT[2]; /* unit of profiling */ extern const char *whoami; /* command-name, for error messages */ +extern const char *function_mapping_file; /* file mapping functions to files */ extern const char *a_out_name; /* core filename */ extern long hz; /* ticks per second */ /* * Command-line options: */ -extern int debug_level; /* debug level */ +extern int debug_level; /* debug level */ extern int output_style; -extern int output_width; /* controls column width in index */ -extern bool bsd_style_output; /* as opposed to FSF style output */ -extern bool discard_underscores; /* discard leading underscores? */ -extern bool ignore_direct_calls; /* don't count direct calls */ -extern bool ignore_static_funcs; /* suppress static functions */ -extern bool ignore_zeros; /* ignore unused symbols/files */ -extern bool line_granularity; /* function or line granularity? */ -extern bool print_descriptions; /* output profile description */ -extern bool print_path; /* print path or just filename? */ -extern File_Format file_format; /* requested file format */ - -extern bool first_output; /* no output so far? */ - -extern void done PARAMS ((int status)); +extern int output_width; /* controls column width in index */ +extern bfd_boolean bsd_style_output; /* as opposed to FSF style output */ +extern bfd_boolean demangle; /* demangle symbol names? */ +extern bfd_boolean ignore_direct_calls; /* don't count direct calls */ +extern bfd_boolean ignore_static_funcs; /* suppress static functions */ +extern bfd_boolean ignore_zeros; /* ignore unused symbols/files */ +extern bfd_boolean line_granularity; /* function or line granularity? */ +extern bfd_boolean print_descriptions; /* output profile description */ +extern bfd_boolean print_path; /* print path or just filename? */ +extern bfd_boolean ignore_non_functions; /* Ignore non-function symbols. */ +extern bfd_boolean inline_file_names; /* print file names after symbols */ + +extern File_Format file_format; /* requested file format */ + +extern bfd_boolean first_output; /* no output so far? */ + +extern void done (int status) ATTRIBUTE_NORETURN; #endif /* gprof_h */