Tue Feb 3 14:25:25 1998 Brent Baccala <baccala@freesoft.org>
[deliverable/binutils-gdb.git] / gprof / ChangeLog
index fbbaa9adf5d9ef0faee11057c512b89ab1f38fd5..c3aee1f6185b7923dab30462a57064fa08c4b666 100644 (file)
@@ -1,3 +1,471 @@
+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
@@ -100,7 +568,7 @@ Sun Feb  5 16:19:46 1995  David Mosberger-Tang  <davidm@piston.cs.arizona.edu>
        filename printed in the call-graph function index; line-level
        profiling should still work, but requires some patience
 
-       * cg_print.c (cg_print_index): sanitized printing of index when
+       * 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
This page took 0.027939 seconds and 4 git commands to generate.