blob: 3e18cc6dd89a0963823f959504396d268ad5515b [file] [log] [blame]
2001-06-11 Alan Modra <amodra@bigpond.net.au>
Merge from mainline.
2001-05-16 Alexandre Oliva <aoliva@redhat.com>
* gmon_io.c (gmon_io_read, gmon_io_write_vma,
gmon_io_write_32, gmon_io_write_8, gmon_io_write): Adjust
argument list for K&R C.
2001-03-13 David Mosberger <davidm@hpl.hp.com>
* hist.c (hist_dimension): Declare as an array of 16 characters.
(hist_read_rec): If SAMPLEDEBUG, print each histogram bin count.
* basic_blocks.c: Whitespace and formatting changes.
* bb_exit_func.c: Ditto.
* call_graph.c: Ditto.
* call_graph.h: Ditto.
* cg_arcs.c: Ditto.
* cg_print.c: Ditto.
* cg_print.h: Ditto.
* corefile.c: Ditto.
* corefile.h: Ditto.
* gmon_io.c: Ditto.
* gmon_io.h: Ditto.
* gmon_out.h: Ditto.
* gprof.c: Ditto.
* hist.c: Ditto.
* hist.h: Ditto.
* i386.c: Ditto.
* search_list.c: Ditto.
* search_list.h: Ditto.
* source.c: Ditto.
* source.h: Ditto.
* sym_ids.c: Ditto.
* sym_ids.h: Ditto.
* symtab.c: Ditto.
* symtab.h: Ditto.
* tahoe.c: Ditto.
* utils.c: Ditto.
* vax.c: Ditto.
* gmon_out.h (gmon_hist_hdr): Delete.
(gmon_cg_arc_record): Delete.
* gmon_io.c (put_vma): Declare "static".
(get_vma): Ditto.
(gmon_io_write): New function.
(gmon_io_write_8): Ditto.
(gmon_io_write_32): Ditto.
(gmon_io_write_vma): Ditto.
(gmon_io_read): Ditto.
(gmon_io_read_32): Ditto.
(gmon_io_read_vma): Ditto.
* basic_blocks.c (bb_read_rec): Use gmon_io_read* / gmon_io_write*
to read/write data file in a more portable fashion.
(bb_write_blocks): Ditto.
* call_graph.c (cg_read_rec): Ditto.
(cg_write_arcs): Ditto.
* hist.c (hist_read_rec): Ditto.
(hist_write_hist): Ditto.
From Jes Sorensen <jes@linuxcare.com>
* gmon_out.h: Use GMON_PTR_SIZE instead of sizeof(char*).
* gmon.h: Ditto.
* configure.in: Get GMON_PTR_SIZE from existing <sys/gmon_out.h>
if it exists.
* acconfig.h: New file. Mention and document GMON_PTR_SIZE.
* gconfig.h: Regenerate.
* configure: Regenerate.
* Makefile.in: Regenerate.
2001-02-27 Alan Modra <alan@linuxcare.com.au>
* configure.in (BFD_VERSION): New.
(AM_INIT_AUTOMAKE): Use $BFD_VERSION.
* configure: Regenerate.
* gconfig.in: Regenerate.
* Makefile.am: Run "make dep-am"
* Makefile.in: Regenerate.
2001-06-10 Philip Blundell <philb@gnu.org>
* configure.in: Set version to 2.11.1.
* configure: Regenerate.
2001-06-07 Alan Modra <amodra@bigpond.net.au>
* Many files: Update copyright notices.
2001-03-16 Philip Blundell <philb@gnu.org>
* configure: Regenerate.
2001-03-11 Philip Blundell <philb@gnu.org>
* configure.in: Set version to 2.11.
2001-01-27 Michael Sokolov <msokolov@ivan.Harhan.ORG>
* basic_blocks.c: #include <unistd.h> only if it exists.
2000-11-06 Nick Clifton <nickc@redhat.com>
* gprof.texi: Add GNU Free Documentation License.
2000-09-07 H.J. Lu <hjl@gnu.org>
* configure.in (AC_ISC_POSIX): Put after AC_CANONICAL_SYSTEM.
* configure: Rebuild.
2000-09-06 Alexandre Oliva <aoliva@redhat.com>
* aclocal.m4, configure: Rebuilt with new libtool.m4.
2000-09-02 Nick Clifton <nickc@redhat.com>
* configure.in: Increase version number to 2.10.91.
* configure: Regenerate.
* aclocal.m4: Regenerate.
* config.in: Regenerate.
2000-08-31 Alexandre Oliva <aoliva@redhat.com>
* acinclude.m4: Include libtool and gettext macros from the
top level.
* aclocal.m4, configure: Rebuilt.
2000-07-26 Nick Clifton <nickc@cygnus.com>
* bb_exit_func.c: Assign copyright to FSF. Note that David
Mosberger-Tang <David.Mosberger@acm.org> continuted this code.
2000-07-24 Nick Clifton <nickc@cygnus.com>
* basic_blocks.c: Add copyright notice.
* basic_blocks.h: Add copyright notice.
* call_graph.c: Add copyright notice.
* call_graph.h: Add copyright notice.
* cg_print.c: Add copyright notice.
* cg_print.h: Add copyright notice.
* corefile.c: Add copyright notice.
* corefile.h: Add copyright notice.
* gmon_io.c: Add copyright notice.
* gmon_io.h: Add copyright notice.
* gmon_out.h: Add copyright notice.
* hist.c: Add copyright notice.
* hist.h: Add copyright notice.
* search_list.c: Add copyright notice.
* search_list.h: Add copyright notice.
* source.c: Add copyright notice.
* source.h: Add copyright notice.
* sym_ids.c: Add copyright notice.
* sym_ids.h: Add copyright notice.
* symtab.c: Add copyright notice.
* symtab.h: Add copyright notice.
2000-07-05 Kenneth Block <krblock@computer.org>
* gprof.c: Add optional style to demangle switch
* gprof.texi: Document optional style to demangle switch.
2000-06-05 DJ Delorie <dj@redhat.com>
* MAINTAINERS: new
2000-07-01 Alan Modra <alan@linuxcare.com.au>
* Makefile.am (DEP): Fix 2000-06-22. grep after running dep.sed
(CLEANFILES): Add DEPA.
* Makefile.in: Regenerate.
2000-06-22 Alan Modra <alan@linuxcare.com.au>
* Makefile.am (DEP): grep for leading `/' in DEP1, and fail if we
find one.
* Makefile.in: Regenerate.
2000-06-20 Alan Modra <alan@linuxcare.com.au>
* source.c (annotate_source): Correct pointer comparison when
checking for backslashes.
2000-06-13 H.J. Lu <hjl@gnu.org>
* configure: Regenerate.
2000-06-08 David O'Brien <obrien@FreeBSD.org>
* configure.in (VERSION): Update to show this is the CVS mainline.
2000-06-07 Philippe De Muyter <phdm@macqel.be>
* source.c: Remove direct inclusion of sys/stat.h.
2000-05-31 Nick Clifton <nickc@cygnus.com>
* gprof.h (_): Revert previous delta. We want to use gettext,
not dgettext in the _ macro.
2000-05-29 Alan Modra <alan@linuxcare.com.au>
* gprof.h (_): Use BFD version.
2000-05-26 Nick Clifton <nickc@cygnus.com>
* gprof.c (main): When calling getopt_long indicate that the 'd'
switch takes an optional argument, whereas the 'D' switch takes no
argument at all.
2000-05-26 Alan Modra <alan@linuxcare.com.au>
* dep-in.sed: Copy from ../binutils.
* Makefile.am: Update dependencies with "make dep-am"
* Makefile.in: Regenerate.
* gprof.h: Remove most nls defines. They are pulled in by
bfd/sysdep.h. #include "ansidecl.h" not <ansidecl.h>
2000-05-26 Eli Zaretskii <eliz@is.elta.co.il>
* gprof.texi: Fix numerous typos. Mention some DOS/Windows related
issues.
* configure.in: Check for setmode function.
* configure: Regenerate.
* gmon_io.h (SET_BINARY) [HAVE_SETMODE]: Define.
* gmon_io.c (gmon_out_read) [SET_BINARY]: Switch stdin into binary
mode.
* source.c: Include filenames.h and sys/stat.h.
(source_file_lookup_path, source_file_lookup_name): Use
FILENAME_CMP to compare file names.
(annotate_source) [__MSDOS__]: If "filename-ann" would overwrite
"filename", replace the extension with ".ann".
[HAVE_DOS_BASED_FILE_SYSTEM]: Support file names with
backslashes and drive letters.
Use IS_ABSOLUTE_PATH.
* search_list.h (PATH_SEP_CHAR): Define.
* search_list.c (search_list_append): Use PATH_SEP_CHAR.
* hertz.c (HERTZ) [__MSDOS__]: Don't define unless they have
neither HAVE_SETITIMER nor HAVE_SYSCONF.
[HAVE_SETITIMER]: If they define both HAVE_SETITIMER and
HAVE_SYSCONF, try setitimer and fall back on sysconf.
Fri Apr 7 15:56:57 2000 Andrew Cagney <cagney@b1.cygnus.com>
* configure.in (WARN_CFLAGS): Set to -W -Wall by default. Add
--enable-build-warnings option.
* Makefile.am (AM_CFLAGS, WARN_CFLAGS): Add definitions.
* Makefile.in, configure, aclocal.m4: Re-generate.
2000-04-05 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
* gprof.c (copyright): Do not use N_ in array initializer.
2000-04-04 Alan Modra <alan@linuxcare.com.au>
* po/gprof.pot: Regenerate.
* gprof.c (usage): Restore translated part of bug string.
* Makefile.am (BASEDIR): Define.
(BFDDIR): Define.
(INCDIR): Define.
(MKDEP): Define.
(INCLUDES): Add "-I."
(DEP, DEP1, dep.sed, dep, dep-in, dep-am): New targets.
(CLEANFILES): Define.
Update dependencies.
* Makefile.in: Regenerate.
2000-04-03 Alan Modra <alan@linuxcare.com.au>
* gprof.h: #include "bin-bugs.h".
* gprof.c (usage): Use REPORT_BUGS_TO.
2000-03-31 Alan Modra <alan@linuxcare.com.au>
* symtab.c (symtab_finalize): Don't use post-increment on
structure copy, to work around a ppc gcc bug.
1999-09-29 Mark Kettenis <kettenis@gnu.org>
* hertz.h [MACH] (hertz): Remove macro. The
<machine/mach_param.h> include doesn't exist on al Mach based
systems, and the definition of hertz breaks compilation of hertz.c
anyway.
2000-02-22 Ian Lance Taylor <ian@zembu.com>
From Brad Lucier <lucier@math.purdue.edu>:
* i386.c (i386_find_call): Add cast to ensure that printf argument
matches format.
* tahoe.c (tahoe_find_call): Likewise.
* vax.c (vax_find_call): Likewise.
2000-01-27 Alan Modra <alan@spri.levels.unisa.edu.au>
* utils.c (print_name_only): Don't pass error strings to
printf as format arg.
1999-09-24 Nick Clifton <nickc@cygnus.com>
* gmon_io.c (gmon_out_read): Make sure that sensible values
are extracted from a raw header.
1999-08-06 Ian Lance Taylor <ian@zembu.com>
From Brad Lucier <lucier@math.purdue.edu>:
* corefile.c (core_create_line_syms): Add cast for printf.
1999-07-21 Ian Lance Taylor <ian@zembu.com>
From Mark Elbrecht:
* configure.bat: Remove; obsolete.
1999-07-15 Ian Lance Taylor <ian@zembu.com>
* configure.in: Bump version number to 2.9.5.
* configure: Rebuild.
1999-07-11 Ian Lance Taylor <ian@zembu.com>
* corefile.c (core_create_function_syms): Add ATTRIBUTED_UNUSED.
* sym-ids.c (non_existent_file): Fully initialize structure.
1999-07-01 Ian Lance Taylor <ian@zembu.com>
* Many files: Add casts in many print statements to cast bfd_vma
values to unsigned long when calling printf.
* Makefile.am ($(OBJECTS)): Add gmon.h.
* Makefile.in: Rebuild.
Mon Jun 14 10:35:28 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* gprof.texi: Fix typo.
1999-06-13 Ian Lance Taylor <ian@zembu.com>
From Bob Byrnes <byrnes@curl.com>:
* cg_dfn.c: Include "libiberty.h"
(DFN_INCR_DEPTH): Define instead of DFN_DEPTH.
(dfn_stack): Define as pointer rather than array.
(pre_visit): Reallocate dfn_stack as needed.
1999-04-26 Tom Tromey <tromey@cygnus.com>
* aclocal.m4, configure: Updated for new version of libtool.
1999-04-06 Ian Lance Taylor <ian@zembu.com>
* gprof.h (LC_MESSAGES): Never define.
* gprof.c (main): Don't pass LC_MESSAGES to setlocale if the
system does not define it.
1999-04-05 H.J. Lu <hjl@gnu.org>
* corefile.c (core_create_line_syms): Don't use fixed size array
for prev_name and prev_filename.
1999-04-04 Michael Hohmuth <hohmuth@innocent.com>
* gprof.h (FF_BSD44): Define.
* gmon.h (struct raw_phdr): Add version, profrate, and spare
fields unconditionally.
(struct old_raw_phdr): New struct.
* gprof.c (main): Handle -O 4.4bsd.
* gmon_io.c (gmon_out_read): Handle BSD 4.4 format, either
automatically or by user specification.
(gmon_out_write): Handle BSD 4.4 format.
* configure.in: Don't set BSD44_FORMAT.
* gprof.texi (Miscellaneous Options): Document -O 4.4bsd.
* configure, gconfig.in: Rebuild.
Tue Feb 16 17:01:33 1999 Ian Lance Taylor <ian@cygnus.com>
* configure.in: Change AC_PREREQ to 2.13. Change AM_PROG_INSTALL
to AC_PROG_INSTALL. Remove AM_CYGWIN32. Change AM_EXEEXT to
AC_EXEEXT. Add comment to AC_DEFINE.
* acconfig.h: Remove.
* aclocal.m4: Rebuild.
* configure: Rebuild.
* Makefile.in: Rebuild.
* gconfig.in: Rebuild.
Sun Dec 6 21:57:50 1998 Ian Lance Taylor <ian@cygnus.com>
* gprof.texi (Symspecs): Mention that you have to add any
underscore yourself when naming a symbol.
Mon Nov 2 15:05:33 1998 Geoffrey Noer <noer@cygnus.com>
* configure.in: detect cygwin* instead of cygwin32*
* configure: regenerate
Wed Aug 12 14:59:06 1998 Ian Lance Taylor <ian@cygnus.com>
Avoid some overflow cases:
* basic_blocks.h (bb_min_calls): Change to unsigned long.
* call_graph.h (cg_tally): Change count parameter to unsigned
long.
* cg_arcs.h (Arc): Change count field to unsigned long.
(arc_add): Change count parameter to unsigned long.
* source.h (Source_File): Change ncalls field to unsigned long.
* symtab.h (Sym): Change fields ncalls, bb_calls, and
cg.self_calls to unsigned long.
* Many files: Update accordingly.
* configure, Makefile.in, aclocal.m4: Rebuild with current tools.
Fri Jul 10 17:29:49 1998 Stan Cox <scox@equinox.cygnus.com>
* configure.in (BSD44_FORMAT): Define for cygwin32, win32, mingw32
* configure: Rebuild.
Fri Jun 12 13:40:05 1998 Tom Tromey <tromey@cygnus.com>
* po/Make-in (all-yes): If maintainer mode, depend on .pot file.
($(PACKAGE).pot): Unconditionally depend on POTFILES.
Sun May 10 22:35:33 1998 Jeffrey A Law (law@cygnus.com)
* po/Make-in (install-info): New target.
Tue May 5 18:28:40 1998 Tom Tromey <tromey@cygnus.com>
* gprof.h (_): Undefine BFD's version.
Tue Apr 28 19:17:33 1998 Tom Tromey <tromey@cygnus.com>
* gprof.c (main): Conditionally call setlocale.
* gprof.h: Include <locale.h> if HAVE_LOCALE_H.
(LC_MESSAGES): Now can be defined even when ENABLE_NLS.
Tue Apr 28 19:50:09 1998 Ian Lance Taylor <ian@cygnus.com>
* corefile.c: Rename from core.c.
* corefile.h: Rename from core.h.
* Many .c files: Include corefile.h rather than core.h.
* Makefile.am (sources): Change core.c to corefile.c.
(noinst_HEADERS): Change core.h to corefile.h.
($(OBJECTS)): Depend upon corefile.h rather than core.h.
(corefile.o): Rename target from core.o, depend upon corefile.c.
* Makefile.in, po/POTFILES.in: Rebuild.
Mon Apr 27 16:50:40 1998 Ian Lance Taylor <ian@cygnus.com>
* configure.in: Change version number to 2.9.4
* configure: Rebuild.
Wed Apr 22 16:01:17 1998 Tom Tromey <tromey@cygnus.com>
* po/Make-in (MKINSTALLDIRS): Don't look in $(top_srcdir).
Wed Apr 22 00:00:22 1998 Tom Tromey <tromey@scribbles.cygnus.com>
* gprof.h: Added includes and defines for gettext.
* configure.in (ALL_LINGUAS): New macro.
Call CY_GNU_GETTEXT. Create po/Makefile.in and po/Makefile.
* acconfig.h (ENABLE_NLS, HAVE_CATGETS, HAVE_GETTEXT, HAVE_STPCPY,
HAVE_LC_MESSAGES): Define.
* gprof.c (main): Call setlocale, bindtextdomain, textdomain.
* Makefile.am (SUBDIRS): New macro.
(INCLUDES): Look in intl dirs for headers. Define LOCALEDIR.
(gprof_DEPENDENCIES): Added INTLDEPS.
(gprof_LDADD): Added INTLLLIBS.
(POTFILES): New macro.
(po/POTFILES.in): New target.
* Many files: Wrap user-visible strings with gettext invocation.
Tue Apr 7 12:43:37 1998 Ian Lance Taylor <ian@cygnus.com>
From hjl@lucon.org <H.J. Lu>:
* Makefile.am (diststuff): New target.
* Makefile.in: Rebuild.
Mon Mar 30 12:47:48 1998 Ian Lance Taylor <ian@cygnus.com>
* configure.in: Set version to 2.9.1.
* configure: Rebuild.
* Branched binutils 2.9.
Sat Mar 28 23:09:08 1998 Ian Lance Taylor <ian@cygnus.com>
Fix some gcc -Wall warnings:
* cg_arcs.c (num_cycles): Change to unsigned int.
(numarcs): Likewise.
(arc_add): Change maxarcs to unsigned int.
(cg_assemble): Change index to unsigned int.
* cg_arcs.h (num_cycles, numarcs): Update declarations.
* cg_print.c (cg_print): Change index to unsigned int.
(cg_print_index): Change index, nnames, todo, i, and j to unsigned
int.
(cg_print_file_ordering): Change symbol_count and index2 to
unsigned int.
* core.c (symbol_map_count): Change to unsigned int.
(core_create_function_syms): Change j to unsigned int.
(core_create_line_syms): Add cast to avoid warning.
* hist.c (hist_assign_samples): Change j to unsigned int.
(hist_print): Change index to unsigned i nt. Add cast to avoid
warning.
* sym_ids.c (parse_spec): Add casts to avoid warning.
* symtab.c (symtab_finalize): Change j to unsigned int.
(sym_lookup): Update printf format strings.
* symtab.h (Sym_Table): Change len to unsigned int.
* tahoe.c (tahoe_reladdr): Add casts to avoid warnings.
Tue Mar 24 19:00:11 1998 Ian Lance Taylor <ian@cygnus.com>
Add --demangle and --no-demangle options:
* gprof.h (demangle): Declare.
* gprof.c (demangle): New global variable.
(OPTION_DEMANGLE, OPTION_NO_DEMANGLE): Define.
(long_options): Add "demangle" and "no-demangle".
(usage): Mention --demangle and --no-demangle.
(main): Handle OPTION_DEMANGLE and OPTION_NO_DEMANGLE.
* utils.c (print_name_only): Only demangle symbol name if demangle
is true.
* gprof.texi (Output Options): Document new options.
Fri Mar 20 19:21:56 1998 Ian Lance Taylor <ian@cygnus.com>
* Makefile.in: Rebuild with automake 1.2e.
* aclocal.m4, configure: Rebuild with libtool 1.2.
Thu Feb 12 14:36:05 1998 Ian Lance Taylor <ian@cygnus.com>
* gprof.c (usage): Update bug-gnu-utils address.
Sat Feb 7 15:43:12 1998 Ian Lance Taylor <ian@cygnus.com>
* configure, aclocal.m4: Rebuild with new libtool.
Fri Feb 6 12:02:28 1998 Ian Lance Taylor <ian@cygnus.com>
* alpha.c (alpha_Instruction): Use int, not signed.
Fri Feb 6 02:00:19 1998 Jeffrey A Law (law@cygnus.com)
* core.c (core_init): Adding missing "break".
Thu Feb 5 12:49:37 1998 Ian Lance Taylor <ian@cygnus.com>
* configure, Makefile.in, aclocal.m4: Rebuild with new libtool.
Tue Feb 3 14:25:25 1998 Brent Baccala <baccala@freesoft.org>
* bbconv.pl: New file.
* Makefile.am (EXTRA_DIST): Add bbconv.pl.
* Makefile.in: Rebuild.
* gprof.texi: Extensive additions to document all arguments and
output formats.
* symtab.c (symtab_finalize): Prefer function symbols over line
symbols.
(dbg_sym_lookup): Correct debugging messages.
* gprof.c (main): --sum implies --line.
* cg_print.c (cg_print): When doing line by line profiling, don't
use a non-function as a main listing item.
* call_graph.c (cg_tally): When using line by line profiling, use
the function symbol as the child.
* symtab.h (NBBS): Define.
(Sym): Add bb_addr and bb_calls fields.
* basic_blocks.c (bb_read_rec): Save multiple basic blocks per
symbol.
(bb_write_blocks): Adjust for multiple basic blocks per symbol.
(print_exec_counts): Don't check whether a symbol is the start of
a basic block. Print all basic blocks for a symbol.
(annotate_with_count): Rewrite to print all basic block counts and
to pay attention to width argument.
(print_annotated_source): Don't check whether symbol is the start
of a basic block.
Make it possible to build a cross gprof, although a few cases are
still not handled:
* configure.in: Don't set MY_TARGET.
* gprof.h: Don't include MACHINE_H. Don't define FOPEN_RB or
FOPEN_WB; just get them from sysdep.h.
* core.h (min_insn_size, offset_to_code): Declare.
* core.c (MIN_INSN_SIZE): Don't define.
(min_insn_size, offset_to_code): New variables.
(core_init): Initialize min_insn_size and offset_to_code.
(find_call): New function.
(core_create_line_syms): Don't use min_dist. Set is_static in
pass 2.
* hist.c (UNITS_TO_CODE): Define.
* gprof.c (default_excluded_list): Add "__mcount_internal".
* gmon.h: Change TARGET_alpha to __alpha__.
* hertz.h: Ifdef MACH, define hertz as HZ.
* alpha.c (alpha_Instruction): Rename from Instruction. Change
all references.
(alpha_find_call): Rename from find_call.
* alpha.h: Remove.
* dummy.c, dummy.h: Remove.
* i386.c (i386_iscall): Rename from iscall. Change all
references. Check for call instruction, not jump or lcall.
(i386_find_call): Rename from find_call. Correct for VMA.
Correct call destination computation. Don't dereference symbol if
it is NULL.
* i386.h: Remove.
* ns532.c, ns532.h: Remove.
* sparc.c (CALL): Define.
(sparc_find_call): Rename from find_call.
* sparc.h: Remove.
* tahoe.c: Include cg_arcs.h, core.h, hist.h, and symtab.h. Don't
include time_host.h.
(CALLF, PC): Define.
(enum tahoe_opermodes, tahoe_operandenum): Define. Rename all
references to opermodes or operandenum to these.
(tahoe_operandmode): Rename from operandmode. Call abort if
switch does not return.
(tahoe_operandname): Rename from operandname. Call abort if
switch does not return.
(tahoe_operandlength): Rename from operandlength. Call abort if
switch does not return.
(tahoe_reladdr): Rename from reladdr.
(tahoe_find_call): Rename from find_call. Use core_text_space
rather than textspace.
* tahoe.h: Remove.
* vax.c (CALLS, PC): Define.
(enum opermodes, operandenum, struct modebyte): Define.
(vax_operandmode): Rename from operandmode. Call abort if switch
does not return.
(vax_operandname): Rename from operandname. Call abort if switch
does not return.
(vax_operandlength): Rename from operandlength. Call abort if
switch does not return.
(vax_reladdr): Rename from reladdr.
(vax_find_call): Rename from find_call.
* vax.h: Remove.
* Makefile.am (AUTOMAKE_OPTIONS): Set to cygnus.
(MY_TARGET): Remove.
(INCLUDES): Remove -DTARGET_$(MY_TARGET) and -DMACHINE_H=
\"$(MY_TARGET).h\".
(gprof_SOURCES): Add i386.c, alpha.c, vax.c, tahoe.c, sparc.c.
(gprof_DEPENDENCIES): Remove $(MY_TARGET).o.
(gprof_LDADD): Likewise.
(noinst_HEADERS): Remove alpha.h, i386.h, ns532.h, sparc.h,
tahoe.h, vax.h, dummy.h.
(EXTRA_DIST): Remove alpha.c, i386.c, ns532.c, sparc.c, tahoe.c,
vax.c, dummy.c.
($(OBJECTS)): Don't depend upon $(MY_TARGET).h.
($(MY_TARGET).o): Remove target.
(i386.o, alpha.o, vax.o, tahoe.o, sparc.o): New targets.
* configure, Makefile.in, aclocal.m4: Rebuild.
Mon Dec 29 14:17:08 1997 Ian Lance Taylor <ian@cygnus.com>
* core.c (core_sym_class): Treat weak symbols as text symbols.
From Dean Gaudet <dgaudet@arctic.org>.
Wed Sep 24 11:35:43 1997 Ian Lance Taylor <ian@cygnus.com>
* aclocal.m4: Rebuild with new libtool.
* Makefile.in: Rebuild with current automake.
* configure: Rebuild.
Sat Aug 9 16:25:01 1997 Ian Lance Taylor <ian@cygnus.com>
* configure.in: Change version number to 2.8.2. Call
AM_PROG_LIBTOOL. Remove shared library handling; now handled by
libtool. Add AM_CONFIG_HEADER. Change AC_PROG_INSTALL to
AM_PROG_INSTALL. Add AM_EXEEXT.
* Makefile.am (LINK): Remove.
(gprof_LDFLAGS): Remove
(gprof_DEPENDENCIES): Change libbfd.a to libbfd.la.
(gprof_LDADD): Likewise.
($(OBJECTS)): Depend upon gconfig.h and ../bfd/config.h.
* gprof.h: Undefine PACKAGE and VERSION after including BFD
sysdep.h file, then include new gconfig.h file.
* gprof.c (VERSION): Don't define.
* acconfig.h: New file.
* stamp-h.in: New file.
* gconfig.in: New file, created by autoheader.
* Makefile.in, configure, aclocal.m4: Rebuild.
Sat Jun 28 23:20:42 1997 Ian Lance Taylor <ian@cygnus.com>
* aclocal.m4, configure, Makefile.in: Rebuild with automake 1.2.
Mon Jun 16 15:31:39 1997 Ian Lance Taylor <ian@cygnus.com>
* Makefile.am (INCLUDES): Add -DDEBUG.
* Makefile.in: Rebuild.
Tue Apr 15 14:19:30 1997 Ian Lance Taylor <ian@cygnus.com>
Change to use automake:
* Makefile.am: New file.
* configure.in: Run AM_INIT_AUTOMAKE, AM_MAINTAINER_MODE, and
AM_CYGWIN32.
* aclocal.m4: New file, created by aclocal.
* Makefile.in: Replace with file created by automake --cygnus.
* configure: Rebuild.
Thu Apr 3 13:21:25 1997 Ian Lance Taylor <ian@cygnus.com>
* gprof.c (VERSION): Define as "2.8.1".
* Branched binutils 2.8.
Thu Mar 27 17:15:23 1997 Ian Lance Taylor <ian@cygnus.com>
* gprof.c (main): Correct copyright message.
Mon Mar 24 11:12:26 1997 Ian Lance Taylor <ian@cygnus.com>
* Makefile.in (.c.o): Define TARGET_$(MY_TARGET) when compiling.
* gmon.h: Use bytes counts rather than sizeof in struct raw_phdr
and struct raw_arc.
Mon Mar 17 10:54:47 1997 David Mosberger-Tang <davidm@azstarnet.com>
* cg_arcs.c (arc_add): memset() newly alloced arc to ensure
all fields are initialized with 0.
Sat Mar 15 19:17:31 1997 H.J. Lu <hjl@lucon.org>
* symtab.h (find_call): Declare.
* cg_arcs.c (cg_assemble): Don't declare find_call.
* hist.c (scale_and_align_entries): Declare.
Thu Feb 27 12:46:53 1997 Ian Lance Taylor <ian@cygnus.com>
* configure.in: Define BSD44_FORMAT if the target looks like a
BSD4.4 derived system.
* configure: Rebuild.
* Makefile.in (.c.o): Add @DEFS@.
* gmon_io.c (gmon_out_read): In BSD44_FORMAT code, get profrate
from profrate field, not version field.
Thu Jan 16 17:42:54 1997 Ian Lance Taylor <ian@cygnus.com>
* dummy.c (find_call): Clear ignore_direct_calls.
Tue Dec 31 15:44:10 1996 Ian Lance Taylor <ian@cygnus.com>
* Makefile.in (.c.o): Add -D_GNU_SOURCE. Put $(CFLAGS) at the
end.
(gprof): Put $(CFLAGS) after the other options.
Tue Nov 26 17:08:38 1996 Ian Lance Taylor <ian@cygnus.com>
* configure: Rebuild with autoconf 2.12.
Wed Oct 2 15:23:16 1996 Ian Lance Taylor <ian@cygnus.com>
* sparc.c (find_call): Align p_lowpc to avoid bus error.
Tue Oct 1 15:58:10 1996 Ian Lance Taylor <ian@cygnus.com>
* gprof.c (usage): Print bug report address.
(main): Change version printing to match current GNU standards.
Fri Aug 30 12:16:11 1996 Ian Lance Taylor <ian@cygnus.com>
* gmon.h: Replace #elif with #else/#endif.
Thu Aug 29 17:04:10 1996 Michael Meissner <meissner@tiktok.cygnus.com>
* configure.in (i[345]86-*-*): Recognize i686 for pentium pro.
* configure: Regenerate.
Thu Aug 22 17:12:30 1996 Ian Lance Taylor <ian@cygnus.com>
* configure.in: Set and substitute HLDENV.
* configure: Rebuild.
* Makefile.in (HLDENV): New variable.
(gprof): Use $(HLDENV).
Wed Aug 7 14:43:51 1996 Philippe De Muyter <phdm@info.ucl.ac.be>
* core.c (read_function_mappings): Cast xmalloc return.
Thu Jul 4 12:01:42 1996 Ian Lance Taylor <ian@cygnus.com>
* gprof.c (VERSION): Define as "2.7.1".
* Released binutils 2.7.
* bb_exit_func.c: Rename from __bb_exit_func.c, so that it can be
stored on a System V file system.
Thu Jun 27 11:36:22 1996 Ian Lance Taylor <ian@cygnus.com>
* configure.in: Call AC_ISC_POSIX.
* configure: Rebuild.
* Makefile.in (gprof): Pass $(CFLAGS) during link.
* hertz.c: Don't include <sys/time.h>; let sysdep.h handle that.
If HAVE_SETITIMER is not defined, try using sysconf.
Mon Jun 24 18:27:28 1996 Jason Molenda (crash@godzilla.cygnus.co.jp)
* Makefile.in (exec_prefix, bindir, libdir, mandir, infodir, datadir,
INSTALL_PROGRAM, INSTALL_DATA): Use autoconf-set values.
* configure.in (AC_PREREQ): autoconf 2.5 or higher.
(AC_PROG_INSTALL): added.
* configure: Rebuilt.
Mon Jun 24 12:03:09 1996 Ian Lance Taylor <ian@cygnus.com>
* configure.in: On alpha*-*-osf*, link against libbfd.a if not
using shared libraries.
* configure: Rebuild with autoconf 2.10.
Tue Jun 18 17:35:58 1996 Ian Lance Taylor <ian@cygnus.com>
* core.c (core_create_line_syms): Use xstrdup rather than strdup.
* source.c (source_file_lookup_path): Likewise.
Mon Apr 8 14:44:33 1996 Ian Lance Taylor <ian@cygnus.com>
* configure.in: Permit --enable-shared to specify a list of
directories.
* configure: Rebuild.
Thu Mar 21 17:18:25 1996 Ian Lance Taylor <ian@cygnus.com>
* core.c (core_create_function_syms): Move filename and func_name
inside ifdef where they are used.
* core.c (core_sym_class): Parenthesize && within ||.
* symtab.c (symtab_finalize): Correct parenthesization.
* cg_print.h (cg_print_file_ordering): Declare.
(cg_print_function_ordering): Declare.
* __bb_exit_func.c (__bb_exit_func): Replace bcopy with memcpy.
* cg_arcs.c (arc_add): Likewise.
* cg_print.c (cg_print_function_ordering): Likewise.
Thu Mar 21 17:02:02 1996 David Mosberger-Tang <davidm@azstarnet.com>
* gprof.c (default_excluded_list): Add "__mcount".
* gprof.c (main): Change ifdef __osf__ to __alpha__.
* gmon_io.c (gmon_out_read): If BSD44_FORMAT is defined, get the
profiling rate from the header.
* gmon.h (struct raw_phdr): Only include pad if both __alpha__ and
__osf__ are defined. Add new fields if BSD44_FORMAT is defined.
* alpha.h (MIN_INSN_SIZE): Define.
* core.c (MIN_INSN_SIZE): If not defined, define as 1.
(core_sym_class): Ignore debugging symbols.
(core_create_line_syms): Use MIN_INSN_SIZE when gathering line
information.
Wed Mar 20 18:15:47 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* cg_print.c (cg_print_function_ordering): Fix __GNUC__ misspelled
as __GNU_C__.
(order_and_dump_functions_by_arcs): Likewise.
Tue Mar 12 12:19:50 1996 Ian Lance Taylor <ian@cygnus.com>
* configure: Rebuild with autoconf 2.8.
Sun Feb 18 15:06:18 1996 Ian Lance Taylor <ian@cygnus.com>
* configure.in: Check for 'do not mix' from native linker before
trying to use -rpath.
* configure: Rebuild.
Tue Feb 13 15:32:53 1996 Ian Lance Taylor <ian@cygnus.com>
* configure.in: Set HDLFLAGS for *-*-hpux with --enable-shared.
* configure: Rebuild.
Wed Feb 7 14:03:17 1996 Ian Lance Taylor <ian@cygnus.com>
* configure.in: Don't set CC. Look for --enable-shared. Set
BFDLIB and HLDFLAGS and substitute them.
* configure: Rebuild.
* Makefile.in (LIBS): Use @BFDLIB@.
(HLDFLAGS): New variable.
(gprof): Use $(HLDFLAGS).
Mon Feb 5 16:34:44 1996 Ian Lance Taylor <ian@cygnus.com>
Support for building bfd and opcodes as shared libraries, based on
patches from Alan Modra <alan@spri.levels.unisa.edu.au>:
* Makefile.in (LIBDEPS): New variable.
(LIBS): Use -L../bfd -lbfd.
(gprof): Depend upon $(LIBDEPS) rather than $(LIBS).
Sat Dec 30 10:11:03 1995 Jeffrey A Law (law@cygnus.com)
* gprof.c (long_options): Add "--function-ordering" and
"--file-ordering" options.
(usage): Add new options to usage message.
(main): Handle new options.
* gprof.h (STYLE_FUNCTION_ORDER): Define.
(STYLE_FILE_ORDER): Define.
(function_mapping_file): Declare.
* cg_arcs.c (arcs, numarcs): New globals.
(arc_add): Put new arcs into the arc array so the function/file
ordering code can examine them.
* cg_arcs.h (struct arc): New field "has_been_placed".
(arcs, numarcs): Declare new globals.
* core.c (symbol_map, symbol_map_count): New globals.
(read_function_mappings): New function to read in a function
to object map file.
(core_init): Call read_function_mappings if a function mapping
file exists.
(core_create_function_syms): Handle function to object file
mappings.
* symtab.h (struct sym): New fields "mapped", "has_been_placed",
"nuses", "prev".
* cg_print.c (cmp_arc_count): New function for sorting arcs.
(cmp_fun_nuses): Likewise for functions.
(cg_print_function_ordering): New function to print a suggested
function ordering.
(cg_print_file_ordering): Likewise for ordering .o files.
(order_and_dump_functions_by_arcs): Helper function for function
and object file ordering code.
Sun Dec 24 21:32:27 1995 Jeffrey A Law (law@cygnus.com)
* core.c (core_sym_class): Ignore symbols without BSF_FUNCTION
set if ignore_non_function is set.
* gprof.h (ignore_non_functions): Declare.
* gprof.c (ignore_non_functions): Define.
(long_options): Add "ignore-non-functions".
(usage): Add new options.
(main): Recognize "-D" and "--ignore-non-functions" option.
Tue Nov 21 13:24:39 1995 Ken Raeburn <raeburn@cygnus.com>
* Makefile.in (.m.c): Strip out directory name from function
name.
* hist.c (scale_and_align_entries): Don't use DEFUN_VOID. Do
UNITS_TO_CODE adjustment unconditionally; compiler can optimize
away zero-offset case. Refer to scaled_addr, not aligned_addr.
* vax.c: Don't include vax.h here.
Thu Nov 16 03:41:37 1995 Ken Raeburn <raeburn@cygnus.com>
Version 2.6 released.
Wed Nov 8 11:40:04 1995 Ian Lance Taylor <ian@cygnus.com>
* gprof.c (main): Cast getenv return value.
Mon Nov 6 15:05:00 1995 Ken Raeburn <raeburn@cygnus.com>
* Makefile.in (TAGS): New target.
Wed Nov 1 12:51:21 1995 Per Bothner <bothner@kalessin.cygnus.com>
* Makefile.in (DISTSTUFF): Rename to GEN_FILES, to avoid confusion.
(all): Depend on $(GEN_FILES), not diststuff (which also depends
on info).
Wed Nov 1 15:23:15 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 <manfred@lts.sel.alcatel.de>
* sym_ids.c: Include <ctype.h>.
Wed Oct 25 13:24:31 1995 Per Bothner <bothner@kalessin.cygnus.com>
* Makefile.in (diststuff): Also make info.
(mostlyclean): Don't remove gprof.info*.
(maintainer-clean realclean): Also remove *.info*.
Fri Oct 6 16:25:32 1995 Ken Raeburn <raeburn@cygnus.com>
Mon Sep 25 22:49:32 1995 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Makefile.in: Add dependecies for $(OBJS) on header files.
* cg_print.c (print_cycle, print_members, cg_print_index): Fix new
style output format to make it consistent.
* dummy.c (find_call): Fix typo in error message.
Wed Sep 20 13:21:02 1995 Ian Lance Taylor <ian@cygnus.com>
* Makefile.in (maintainer-clean): New target, synonym for
realclean.
Fri Sep 8 14:38:08 1995 Ian Lance Taylor <ian@cygnus.com>
* Makefile.in (install): Don't install in $(tooldir).
Fri Aug 25 15:30:05 1995 Ken Raeburn <raeburn@cygnus.com>
NS32K changes from Ian Dall:
* configure.in: Use ns32k, not ns532.
* ns532.c: Include symtab.h.
(find_call): Renamed from findcall. Print a message.
* ns532.h: Remove dummy.h comments.
Tue Aug 22 10:00:45 1995 Jeffrey A. Law <law@rtl.cygnus.com>
* Makefile.in (install): Remove "brokensed" hack, unnecessary now
that we're using autoconf.
Wed Jul 19 18:46:13 1995 Fred Fish <fnf@cygnus.com>
* core.c (get_src_info): Cast arg 7 of bfd_find_nearest_line
to proper type of "unsigned int *".
Fri Jun 16 15:29:36 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
* configure.in: Use changequote around use of [].
Mon Jun 12 12:14:52 1995 J.T. Conklin <jtc@rtl.cygnus.com>
* Makefile.in (distclean, realclean): Remove config.cache and
config.log.
Wed May 17 17:56:53 1995 J.T. Conklin <jtc@rtl.cygnus.com>
* Makefile.in (Makefile): Added config.status to dependency list.
(config.status): New target.
(SHELL): New definition.
Tue Apr 25 21:11:12 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
* Makefile.in (install): Depend on "all".
Thu Apr 20 17:29:07 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
* Makefile.in: Change all references to MY_MACHINE to MY_TARGET,
to match configure script.
Wed Apr 19 11:19:37 1995 J.T. Conklin <jtc@rtl.cygnus.com>
* gen-c-prog.awk: Changed reference to "make-c-prog.awk" in
comment emitted by this script to gen-c-prog.awk.
* Makefile.in, configure.in: Converted to use autoconf.
* configure: New file, generated with autoconf 2.3.
* config/{mt-alpha, mt-dummy, mt-i386, mt-ns532, mt-sparc,
mt-tahoe, mt-vax}: Removed.
Mon Mar 13 21:44:24 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
* __bb_exit_func.c: New file, from David Mosberger-Tang.
Thu Feb 9 16:56:07 1995 David Mosberger-Tang <davidm@piston.cs.arizona.edu>
* All *.c: More cleanup towards GNU format.
* gmon_out.h (struct gmon_hist_hdr, struct gmon_cg_arc_record):
replaced sizeof (bfd_vma) by size (char*) because Ken tells me
that bfd_vma is only guaranteed to be at least as big as a pointer.
(GMON_Record_tag): added explicit enumeration values to ensure
compatibility across compilers.
* gmon_io.c (get_vma, put_vma): replaced sizeof(bfd_vma) by
sizeof(char*).
Tue Feb 7 17:24:12 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
* All *.c and *.h files: Ran "indent -gnu". Cleaned up a couple
of constructs GNU indent couldn't handle. Block comments not yet
rewritten in GNU format.
* gprof.c (VERSION): Changed to 2.6, to get in sync for next
binutils release.
Sun Feb 5 16:19:46 1995 David Mosberger-Tang <davidm@piston.cs.arizona.edu>
* symtab.c (symtab_finalize): ensure globals symbols really
are favored over static ones---even if their name looks less
preferable; this is important for HP-UX; for example, there
is a static label Ltext_something that aliases the global
symbol _start
* hist.c (hist_print): auto-scaling is now in effect for FSF-style
output only; also, auto-scaling is now performed based on
per-call, rather than total execution time, which is what it was
meant to be.
* gprof.h (File_Format): new type.
* gprof.c (VERSION): upped to 2.7---seems to be completely out of
sync with Cygnus version numbers though...
(long_options): renamed --gmon-info to --file-info, --width added,
renamed --old-file-format to --file-format
(main): dito; also added support to read prof files, but as
mon_out_read() is not implemented, it's #ifdef'd out for now
(usage): update to reflect new options.
* gmon_io.c: replaced "old_file_format" by more general
"file_format" option
* gmon.h (struct raw_phdr): fixed declaration for OSF/1.
* core.c (core_sym_class): added back check for __gnu_compiled and
___gnu_compiled for the benefit of systems without
bfd_find_nearest_line() support
(get_src_info): now the libbfd is fixed, invoke bfd_find_nearest_line()
with section-relative addresses
(core_create_function_syms): get_src_info() calls are currently
enabled for OSF/1 only. It appears to work allright for SunOS
4.1.x as well, but on SPARCs it gets painfully slow with the
current implementation of aout_32_find_nearest_line();
unfortunately, this means that static functions will not have their
filename printed in the call-graph function index; line-level
profiling should still work, but requires some patience
* cg_print.c (cg_print_index): sanitised printing of index when
using FSF-style output; in particular, output width is now controlled
via option --width and the function tries hard to keep columns
aligned even in the presence of (occasional) long names
* NOTES: a first shot at updating the documentation.
Wed Feb 1 19:07:44 1995 David Mosberger-Tang <davidm@piston.cs.arizona.edu>
* core.c (core_create_function_syms): fixed computation of min_vma
and max_vma.
* *.c: removed rcsid.
Tue Jan 31 16:18:18 1995 Ken Raeburn <raeburn@cujo.cygnus.com>
* Lots of changes from David Mosberger-Tang:
Tue Oct 25 19:20:14 1994 David Mosberger-Tang <davidm@piston.cs.arizona.edu>
* gprof.c (main): put parentheses around & within &&.
* basic_blocks.c (bb_read_rec): print warning message (once) when
ignoring basic-block execution counts.
* source.c (source_file_lookup_name): corrected second argument to
strcmp().
* hist.c (print_header): merged Fri Oct 21 18:58:02 1994 change by
Ken Raeburn <raeburn@cujo.cygnus.com> from binutils-2.5.1.
* gmon_io.c (gmon_out_read): the output stule STYLE_GMON_INFO is now
supported both for old and new (versioned) gmon.out files. Old
files are identified as version 0.
* gmon.h (struct raw_arc): count field is now sizeof(long) bytes
long (instead of 4) because that is what OSF/1 v3.0 uses.
* core.c: minor fixes and debugging info changes.
Sun Sep 11 18:47:47 1994 David Mosberger-Tang (davidm@piston.cs.arizona.edu)
* core.c (core_init): if .text cannot be found, try $CODE$ (the
name of the text-section under HP-UX).
* hist.c (hist_assign_samples): fixed off-by-one bug: highpc
points one past the last sampling bin, so hist_scale should be
computed as "hist_scale /= hist_num_bins", not "hist_scale /=
hist_num_bins - 1".
* gmon_io.c, hist.c, hist.h: renamed hist_num_samples to
hist_num_bins.
* configure.in: added alpha-*-*) for per-target config.
* alpha.c, alpha.h: created.
* gprof.c (default_excluded_list): <locore>, <hicore> added.
* core.c (core_create_function_syms, core_create_line_syms):
explicitly keep two sentinels "<locore>" and "<hicore>" that catch
all addresses outside the text-space. Thus, sym_lookup(&symtab,
addr) continues to guarantee not to return 0 on any address. It
also avoids incorrectly crediting the first/last symbol in the
text-space.
* core.c (core_create_line_syms): always create function symbols
first, then merge in line symbols; this is so that if parts of the
program were compiled without -g, function-level symbols are
available still.
* utils.c (print_name_only): support for print_path added.
* symtab.c (cmp_addr): also use is_func flag in comparison.
(symtab_finalize): return immediately when table empty; now
more careful about getting rid of the right duplicate symbol.
* sparc.c (find_call): many fixes---this function was rather
botched in binutils-2.4 already; it should work again.
* source.c (source_file_lookup_path): PATH is now strdup'ed (it is
not good to rely on get_src_info() to return distinct string
pointers).
* search_list.c (search_list_append): added cast for xmalloc().
* hist.c: added explicit initialization to some of the global
variables; fixed SItab (scales were off by a factor of 10).
* hist.h: include of bfd.h added.
* gprof.c, gprof.h (print_path): added.
* gprof.h (MAX): fixed.
* gmon_out.h: renamed gmon_time_hist_hdr to gmon_hist_hdr.
* gmon_io.c: added some casts to (long) so we can always print as %lx
* core.c (core_get_text_space): fixed to make it work.
* cg_print.c (cg_print_index): added support for print_path option.
* cg_dfn.h (cg_dfn): wrap prototype in PARAMS().
* call_graph.c, gmon_io.c, hist.c: avoid taking address of array
as some compilers complain (e.g., DEC's OSF/1 compiler)
* basic_blocks.c, gmon_io.c, hist.c, source.c, sym_ids.c,
symtab.c: calls to memset() had 2nd and 3rd args reversed.
Sat Sep 10 21:53:13 1994 David Mosberger-Tang (davidm@piston.cs.arizona.edu)
* gprof.c: added "_mcount" to default_excluded_list.
(main): if output_style==0 and there is either a histogram or a
call-graph, always generate flat and call-graph, no matter what
line_granularity is set to.
* source.c (source_file_lookup_name): if searching for sf->name
fails, try again with filename obtained after stripping off any
partial path from sf->name.
* gprof.h (SRCDEBUG): added.
* search_list.c (search_list_append): directories were added in wrong
order.
* reimplemented selection mechanism from ground up; it is now possible
to accurately control what gets included/excluded in each of the
output styles; a "symbol-specification" (spec) is the basic means
to select a set of symbols; a spec has the syntax:
spec == (FILENAME:(FUNCNAME|LINE_NUM) | NAME).
arc == spec/spec.
any of the terminal symbols can be empty, in which case they
match anything (wildcards). NAME is interpreted as a FILENAME
if it contains a dot (e.g., foo.c), as LINE_NUM if it starts
with a digit, and as FUNCNAME otherwise.
For example, to get a call-graph display that ignores arcs
from foo() to bar(), you'd say "--no-graph=foo/bar"; to
show only arcs into bar() (no matter what the caller),
you'd say "--graph=/bar"; and to get a call-graph without
any arc info, you'd say "--graph=/"; similarly, to
get a flat profile without mcount, you'd say "--no-flat=mcount"
and to get a flat profile that shows includes all functions
you'd say "--flat=""" (i.e., an empty spec)
* hist.c (hist_print): top_time wasn't initialized to 0.0.
Fri Sep 9 01:10:21 1994 David Mosberger-Tang (davidm@piston.cs.arizona.edu)
* gmon_out.h: all headers now declared in terms of characters
to avoid getting into trouble with different compilers introducing
different amount of padding; the code already accessed the fields
through bfd functions, so that didn't have to change.
* hist.c (hist_read_rec, hist_write_rec): added support for
collection pc histograms measuring quantities other than time;
the histogram header now includes a field that specifies the
dimension of the quantity measured by the histogram bins
(normally, this is "seconds", but other meaningful dimensions
include such things as "I-cache misses", "instruction issue stalls"
etc.); there is also a field to specify a one-character
abbreviation for the dimension; in the case of time, this would
be 's'; in most other cases it probably would be '1' (not a physical
dimension).
Thu Sep 8 16:05:08 1994 David Mosberger-Tang (davidm@piston.cs.arizona.edu)
* gprof.c, gmon_io.[ch]: BSD_COMPATIBLE is gone and new_file_version
has become old_file_version; gmon_io.c now always supports old-style
gmon.out files; it first tries to read gmon.out as a new version
file, if that fails, it tries to read it in the old format;
although not very likely, it is possible for gprof to mistake an
old-style file as a new one (the first 4 bytes would have to
be "gmon"---including the trailing '\0'); in that case, it is
necessary to specify --old-file-version
* gprof.h: removed dependency on SYSV; the code now always uses
strrchr(), memset(), and memcpy() and does not include either
of string.h or strings.h; this should make gprof compile on
any (Unix) system without configuration (per suggestion of
raeburn@cygnus.com)
* gprof.c (usage): fixed location of --new-file-format option.
* cg_arcs.c (propagate_flags): fixed typo in declaration.
* flat_bl.m: removed formfeed at end of file; the form-feed
is now printed cg_print.c only when necessary.
* major rewrite of gprof---too many changes to mention all of
them. new features:
+ -l now requests profiling at the line level (as opposed
to function level); in this mode, gprof creates a "symbol"
(aka name-list entry) for each line of source code, instead
of one per function)
+ support for a new gmon.out file format; the new format
consists of a header with a magic and a version number,
followed by a sequence of profile data; profile data
can any of: (a) PC histogram, (b) call-graph arcs, or
(c) basic-block execution counts; the version number makes
it possible to extend gmon.out in a backwards compatible
fashion
+ support for tcov style annotated output: if the gmon.out file
contains basic-block execution counts, the user can request
the generation of annotated source files, much like Sun's
tcov used to do
+ long options
+ new scheme to suppress symbols that aren't function names
(e.g., avoids mistaking a goto label as a function)
+ reorganized source code to make it more managable; as a
side effect, gprof now compiles cleanly with "gcc -Wall"
Thu Sep 1 15:46:49 1994 David Mosberger-Tang (davidm@piston.cs.arizona.edu)
* gprof.c (funcsymbol): bfd_find_nearest_line() is now used as a
final cross-check to determine whether a static symbol should be
considered as a function-name.
Fri Aug 5 19:32:36 1994 David Mosberger-Tang (davidm@piston.cs.arizona.edu)
* gmon_io.c (gmon_out_read): recognize "-" as the filename for
stdin; this is useful if you wanna keep gmon.out files compressed;
this way you can "gzcat" the compressed file into gprof.
* gprof.c: flag_min_count now initialized with 1 instead of 0.
* basic_blocks.c (bb_annotate_source): added support for creating
.tcov files when option flag_annotate_make_files is TRUE.
(annotate_with_count): all counts less than the minimum count
specified by -m are now annotated with hash-marks.
* gprof.c (main): -A is now followed by a string of option chars.
* basic_blocks.c (annotate_with_count): replaced b->count with
cnt.
* source.c: flag_annotate_source replaced by source_lock_map.
* source.h: source_lock_map added.
* gprof.c (main): new command-line syntax: -S simply specifies
which source-files user is interested in; -A requests annotated
source files and -AA requests that all lines in a source file
are annotated.
Thu Aug 4 23:27:03 1994 David Mosberger-Tang (davidm@piston.cs.arizona.edu)
* basic_blocks.c (PATH_MAX): if undefined, define as 1024.
* sparc.c, i386.c, tahoe.c, vax.c: added include of "time_hist.h"
so s_lowpc etc. get declared.
* arcs.h (doarcs): created.
* arcs.c: reordered static functions such that they get defined
before use.
* gprof.c (main): added options:
-A: request annotation of all source lines (with -S)
-m: minimum execution count (with default basic-block display)
-N: force new file format (only if BSD_COMPATIBLE is defined)
-S: annotate source file
-t: set table length (with -S)
* Makefile.am (OBJS): added basic_blocks.o call_graph.o gmon_io.o
source.o time_hist.o
Fri Jul 1 15:23:50 1994 David Mosberger-Tang (davidm@piston.cs.arizona.edu)
* gprof.c (asgnsamples): computation of "pcl" and "pch" depended
on the fact being able to store a long in a double without loss of
precision; this does not hold on machines with 64 bit longs and 64
bit doubles.
Fri Oct 21 18:58:02 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
* printgprof.c (flatprofheader): Always set totime to 1.0 if not
greater than 0.0. Suggested by Harold Assink
<carlo@sg.tn.tudelft.nl>.
Fri Sep 23 15:06:45 1994 Ken Raeburn <raeburn@cujo.cygnus.com>
* printgprof.c (printprof): Use free, not cfree.
(printgprof, printindex): Ditto.
Thu Sep 1 10:40:45 1994 Jeff Law (law@snake.cs.utah.edu)
* gprof.h (kfromlist, ktolist, flist, Flist, elist, Elist): Make
decls extern to keep native HP compiler quiet.
Tue Aug 30 11:12:13 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
* gprof.c (funcsymbol): Ignore ___gnu_compiled as well as
__gnu_compiled, for the benefit of systems which add a leading
underscore.
Wed Aug 24 12:49:13 1994 Ian Lance Taylor (ian@sanguine.cygnus.com)
* configure.in: Change i386-*-* to i[345]86-*-*.
Sun Jul 10 00:35:31 1994 Ian Dall (dall@hfrd.dsto.gov.au)
* ns532.c, ns532.h: New Files. ns532 support.
* config/mt-ns532: New File. ns532 support.
* gprof.c: user register int i instead of defaulting the int.
Allows compilation with -Dregister= for debugging.
* configure.in: Add ns532 support.
Thu Jun 23 11:22:41 1994 Jeff Law (law@snake.cs.utah.edu)
* Makefile.in (gprof): Depend on $(LIBS).
Fri May 27 12:24:57 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
From binutils-2.4 release:
Wed May 11 22:32:00 1994 DJ Delorie (dj@ctron.com)
* configure.bat: [new] build makefile from makefile.in (dos)
* hertz.c: allow static HERTZ (msdos needs it)
* gprof.c: allow target to select "r" or "rb" for fopen
* gprof.c: ignore __gnu_compiled symbols
* i386.h: dfine FOPEN_RB to "rb" for dos.
Tue May 17 15:30:22 1994 E. Michael Smith (ems@cygnus.com)
* Makefile.in (.m.c:): Added .SUFFIXES : .m
so flat_bl.c would make from flat_bl.m file.
Thu May 5 19:23:24 1994 Ken Raeburn (raeburn@cujo.cygnus.com)
* Makefile.in (install-info): Check for gprof.info in build dir,
fall back to srcdir. Depend on it.
* gprof.h (TRUE, FALSE): Always use undef before defining them.
Mon Apr 4 23:47:30 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
* Makefile.in (MY_MACHINE): Renamed from MACHINE to avoid losing
makes (osf1) in which the value of MACHINE can not be changed.
* config/*.mt: Changed appropriately.
Wed Mar 30 16:12:40 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
* gprof.c (getsymtab): Change nosyms to long. Rename
get_symtab_upper_bound to bfd_get_symtab_upper_bound. Check for
errors from bfd_get_symtab_upper_bound and
bfd_canonicalize_symtab.
Tue Mar 22 10:50:52 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
* gprof.c (funcsymbol): Use bfd_get_symbol_info instead of
bfd_decode_symclass.
Sun Mar 20 15:40:21 1994 Jeffrey A. Law (law@snake.cs.utah.edu)
* Makefile.in: Avoid bug in hpux sed.
Wed Dec 15 20:16:40 1993 david d `zoo' zuhn (zoo@andros.cygnus.com)
* gprof.texi (Invoking): add text about -v flag
* gprof.1: add text about -v flag
Wed Dec 8 16:55:06 1993 david d `zoo' zuhn (zoo@andros.cygnus.com)
* gprof.c (VERSION): defined a version macro, print the value
when the -v option is used
Tue Jul 6 10:11:56 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
* Makefile.in: Install correctly.
Thu Jun 24 14:43:22 1993 David J. Mackenzie (djm@thepub.cygnus.com)
* gprof.c (main): Get whoami from argv, instead of hardcoding.
Use it in usage message. Split usage message to fit in 80 cols.
Sun Jun 20 20:58:02 1993 Ken Raeburn (raeburn@poseidon.cygnus.com)
* Makefile.in: Undo 15 June change.
Wed Jun 16 12:54:53 1993 Steve Chamberlain (sac@phydeaux.cygnus.com)
* gmon.h, gprof.h: structs of chars used to hold external
representations.
* gprof.c (getpfile, openpfile, readsamples): Swap data in using
new structures.
Tue Jun 15 23:09:17 1993 Ken Raeburn (raeburn@cambridge.cygnus.com)
* Makefile.in (.c.o): Look in ../include, not ../bfd, for bfd.h.
Mon Jun 14 16:22:59 1993 david d `zoo' zuhn (zoo at rtl.cygnus.com)
* Makefile.in: remove parentdir support
Mon Jun 7 12:56:17 1993 Per Bothner (bothner@rtl.cygnus.com)
* Makefile.in (INCLUDES): Add -I../bfd for sysdep.h and bfd.h.
* configure.in: No longer need to configure to get sysdep.h.
Tue May 18 21:44:11 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
* Makefile.in (install): should not depend on install-info
Mon Apr 26 12:37:46 1993 Ian Lance Taylor (ian@cygnus.com)
* gprof.h: Include ansidecl.h before sysdep.h. Undefine hz.
Tue Apr 13 16:14:03 1993 Per Bothner (bothner@cygnus.com)
* Makefile.in: Add -g to CFLAGS.
Ads LDFLAGS and use in place of CFLAGS where appropriate.
* configure.in: Make a sysdep.hlink in the same way other
bfd-based directories do.
* gprof.h (UNIT): Replace non-standard 'u_short' by 'unsigned
short'.
* gprof.h: #include sysdep.h instead of a bunch of stuff.
* gprof.c (main): Fix typo gproff->gprof.
Thu Mar 25 19:00:37 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
* gprof.texi: add INFO-DIR-ENTRY
Tue Mar 23 00:03:11 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
* Makefile.in: add installcheck target
Sat Feb 27 18:17:10 1993 Per Bothner (bothner@rtl.cygnus.com)
* gprof.c (funcsymbol): Invert test for aflag.
Thu Feb 25 16:01:50 1993 Per Bothner (bothner@rtl.cygnus.com)
* printgprof (xmalloc, xrealloc): Cast results of malloc
and realloc to PTR.
Wed Feb 3 13:55:33 1993 Jeffrey Osier (jeffrey@fowanton.cygnus.com)
* Makefile.in: created info, install-info, dvi
Wed Jan 6 00:58:09 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
* Makefile.in: fix install rule for $(PROG)
Fri Oct 9 11:25:41 1992 Mark Eichin (eichin@cygnus.com)
* gprof.1: updated SYNOPSIS to match actual behavior.
Mon Oct 5 17:50:16 1992 Per Bothner (bothner@cygnus.com)
* gen-c-prog.awk: New awk script, lightly changed from
previously deleted make-c-prog.awk. Converts a text file
to a c function that prints that text.
* flat_bl.m, fsf_callg_bl.m, bsd_callg_bl.m: New files.
Inputs to gen-c-prog.awk, containing text describing
gprof output.
* blurbs.c: Removed. Use *_bl.c instead.
* Makefile.in: Use gen-cprog.awk to generate *_bl.c files
from *_bl.m files. Also, improve *clean rules.
* printgprof.c (printgprof): Usw new function names from *_bl.c.
Sun Aug 30 19:54:53 1992 Per Bothner (bothner@rtl.cygnus.com)
* gprof.h, gprof.c, printfgprof.c: Add support for two
output styles: The default is similar to the old FSF gprof,
while -T sets the variable bsd_style_output, which causes
output matching Berkeley's gprof. The biggest differences
are that with the FSF style output, the flat profile comes
before the call graph; numbers come before explanations;
and there is less gratuitous white space.
* gprof.h, gprof.c, printfgprof.c: New discard_underscores
variable causes discarding of initial underscores when
printing symbol names. It is set unless there is a "main"
symbol (without an underscore).
* printfgprof.c: New function printnameonly(), called
by printname(). It handles stripping of initial '_',
as well as C++ name-demangling.
* gprof.callg, gprof.flat, make-c-prog.awk: Removed.
It is just as convenient to edit blurbs.c directly.
* Makefile.in: Removed rule for making blurbs.c.
* blurbs.c: This is now a true source file (as opposed
to being generated from gprof.callg and gprof.flat).
Change style to use one long string literal, instead of
one literal per output line. Add FSF-style blurb for call graph.
Wed Aug 19 14:36:39 1992 Ian Lance Taylor (ian@cygnus.com)
* Makefile.in: always create installation directories.
Wed Aug 12 15:14:14 1992 Mark Eichin (eichin@cygnus.com)
* Makefile.in: change ${MACHINE} to $(MACHINE).
Sun Jul 19 17:34:01 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
* Makefile.in: removed installation of the now useless
call.{flag,callg} files.
* gprof.1: now uses the standard man macros instead of the new BSD
mandoc macros.
Sun Jul 12 19:06:00 1992 John Gilmore (gnu at cygnus.com)
* configure.in: Remove host section, expand target section.
* config/mt-{tahoe,vax}: Add, to match existing support files.
* config/tmake-*: Remove leftover crud.
* blurbs.c: New file, created from gprof.flat and gprof.callg by
* make-c-prog.awk: which processes text files into C programs.
* printgprof.c (flatprofheader, gprofheader): Call new functions
to print blurbs.
(printblurb): Remove.
* Makefile.in: Infrastructure to build blurbs.
* pathnames.h: has been removed. Gprof now has no filename
dependencies in it.
* gprof.c: Lint.
Sat Jul 11 18:07:21 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
* Makefile.in: define man1dir and install the man page
Fri Jul 10 21:14:08 1992 david d `zoo' zuhn (zoo@cygnus.com)
* Makefile.in: added dummy info and install-info targets
Thu Jun 4 11:34:02 1992 Mark Eichin (eichin at cygnus.com)
* lookup.c: fixed fencepost in nllookup and added dbg_nllookup for
help in debugging the problem (with -DDEBUG)
* gprof.c: symbol values are now real values, don't add the vma
anymore. (done for solaris; should verify this on other platforms)
* ChangeLog: created.