* acinclude.m4: Include libtool and gettext macros from the
[external/binutils.git] / gprof / ChangeLog
1 2000-08-31  Alexandre Oliva  <aoliva@redhat.com>
2
3         * acinclude.m4: Include libtool and gettext macros from the
4         top level.
5         * aclocal.m4, configure: Rebuilt.
6
7 2000-07-26  Nick Clifton  <nickc@cygnus.com>
8
9         * bb_exit_func.c: Assign copyright to FSF.  Note that David 
10         Mosberger-Tang <David.Mosberger@acm.org> continuted this code.
11
12 2000-07-24  Nick Clifton  <nickc@cygnus.com>
13
14         * basic_blocks.c: Add copyright notice.
15         * basic_blocks.h: Add copyright notice.
16         * call_graph.c: Add copyright notice.
17         * call_graph.h: Add copyright notice.
18         * cg_print.c: Add copyright notice.
19         * cg_print.h: Add copyright notice.
20         * corefile.c: Add copyright notice.
21         * corefile.h: Add copyright notice.
22         * gmon_io.c: Add copyright notice.
23         * gmon_io.h: Add copyright notice.
24         * gmon_out.h: Add copyright notice.
25         * hist.c: Add copyright notice.
26         * hist.h: Add copyright notice.
27         * search_list.c: Add copyright notice.
28         * search_list.h: Add copyright notice.
29         * source.c: Add copyright notice.
30         * source.h: Add copyright notice.
31         * sym_ids.c: Add copyright notice.
32         * sym_ids.h: Add copyright notice.
33         * symtab.c: Add copyright notice.
34         * symtab.h: Add copyright notice.
35
36 2000-07-05  Kenneth Block  <krblock@computer.org>
37
38         * gprof/gprof.c: Add optional style to demangle switch
39         * gprof/gprof.texi: Document optional style to demangle switch.
40
41 2000-06-05  DJ Delorie  <dj@redhat.com>
42
43         * MAINTAINERS: new
44
45 2000-07-01  Alan Modra  <alan@linuxcare.com.au>
46
47         * Makefile.am (DEP): Fix 2000-06-22.  grep after running dep.sed
48         (CLEANFILES): Add DEPA.
49         * Makefile.in: Regenerate.
50
51 2000-06-22  Alan Modra  <alan@linuxcare.com.au>
52
53         * Makefile.am (DEP): grep for leading `/' in DEP1, and fail if we
54         find one.
55         * Makefile.in: Regenerate.
56
57 2000-06-20  Alan Modra  <alan@linuxcare.com.au>
58
59         * source.c (annotate_source): Correct pointer comparison when
60         checking for backslashes.
61
62 2000-06-13  H.J. Lu  <hjl@gnu.org>
63
64         * configure: Regenerate.
65
66 2000-06-08  David O'Brien  <obrien@FreeBSD.org>
67
68         * configure.in (VERSION): Update to show this is the CVS mainline.
69
70 2000-06-07  Philippe De Muyter  <phdm@macqel.be>
71
72         * source.c: Remove direct inclusion of sys/stat.h.
73
74 2000-05-31  Nick Clifton  <nickc@cygnus.com>
75
76         * gprof.h (_): Revert previous delta.  We want to use gettext,
77         not dgettext in the _ macro.
78
79 2000-05-29  Alan Modra  <alan@linuxcare.com.au>
80
81         * gprof.h (_): Use BFD version.
82
83 2000-05-26  Nick Clifton  <nickc@cygnus.com>
84
85         * gprof.c (main): When calling getopt_long indicate that the 'd'
86         switch takes an optional argument, whereas the 'D' switch takes no
87         argument at all.
88
89 2000-05-26  Alan Modra  <alan@linuxcare.com.au>
90
91         * dep-in.sed: Copy from ../binutils.
92         * Makefile.am: Update dependencies with "make dep-am"
93         * Makefile.in: Regenerate.
94
95         * gprof.h: Remove most nls defines.  They are pulled in by
96         bfd/sysdep.h.  #include "ansidecl.h" not <ansidecl.h>
97
98 2000-05-26  Eli Zaretskii  <eliz@is.elta.co.il>
99
100         * gprof.texi: Fix numerous typos. Mention some DOS/Windows related
101         issues.
102
103         * configure.in: Check for setmode function.
104         * configure: Regenerate.
105
106         * gmon_io.h (SET_BINARY) [HAVE_SETMODE]: Define.
107
108         * gmon_io.c (gmon_out_read) [SET_BINARY]: Switch stdin into binary
109         mode.
110
111         * source.c: Include filenames.h and sys/stat.h.
112         (source_file_lookup_path, source_file_lookup_name): Use
113         FILENAME_CMP to compare file names.
114         (annotate_source) [__MSDOS__]: If "filename-ann" would overwrite
115         "filename", replace the extension with ".ann".
116         [HAVE_DOS_BASED_FILE_SYSTEM]: Support file names with
117         backslashes and drive letters.
118         Use IS_ABSOLUTE_PATH.
119
120         * search_list.h (PATH_SEP_CHAR): Define.
121
122         * search_list.c (search_list_append): Use PATH_SEP_CHAR.
123
124         * hertz.c (HERTZ) [__MSDOS__]: Don't define unless they have
125         neither HAVE_SETITIMER nor HAVE_SYSCONF.
126         [HAVE_SETITIMER]: If they define both HAVE_SETITIMER and
127         HAVE_SYSCONF, try setitimer and fall back on sysconf.
128
129 Fri Apr  7 15:56:57 2000  Andrew Cagney  <cagney@b1.cygnus.com>
130  
131         * configure.in (WARN_CFLAGS): Set to -W -Wall by default.  Add
132         --enable-build-warnings option.
133         * Makefile.am (AM_CFLAGS, WARN_CFLAGS): Add definitions.
134         * Makefile.in, configure, aclocal.m4: Re-generate.
135
136 2000-04-05  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
137
138         * gprof.c (copyright): Do not use N_ in array initializer.
139
140 2000-04-04  Alan Modra  <alan@linuxcare.com.au>
141
142         * po/gprof.pot: Regenerate.
143
144         * gprof.c (usage): Restore translated part of bug string.
145
146         * Makefile.am (BASEDIR): Define.
147         (BFDDIR): Define.
148         (INCDIR): Define.
149         (MKDEP): Define.
150         (INCLUDES): Add "-I."
151         (DEP, DEP1, dep.sed, dep, dep-in, dep-am): New targets.
152         (CLEANFILES): Define.
153         Update dependencies.
154         * Makefile.in: Regenerate.
155
156 2000-04-03  Alan Modra  <alan@linuxcare.com.au>
157
158         * gprof.h: #include "bin-bugs.h".
159         * gprof.c (usage): Use REPORT_BUGS_TO.
160
161 2000-03-31  Alan Modra  <alan@linuxcare.com.au>
162
163         * symtab.c (symtab_finalize): Don't use post-increment on
164         structure copy, to work around a ppc gcc bug.
165
166 1999-09-29  Mark Kettenis  <kettenis@gnu.org>
167
168         * hertz.h [MACH] (hertz): Remove macro.  The
169         <machine/mach_param.h> include doesn't exist on al Mach based
170         systems, and the definition of hertz breaks compilation of hertz.c
171         anyway.
172
173 2000-02-22  Ian Lance Taylor  <ian@zembu.com>
174
175         From Brad Lucier <lucier@math.purdue.edu>:
176         * i386.c (i386_find_call): Add cast to ensure that printf argument
177         matches format.
178         * tahoe.c (tahoe_find_call): Likewise.
179         * vax.c (vax_find_call): Likewise.
180
181 2000-01-27  Alan Modra  <alan@spri.levels.unisa.edu.au>
182
183         * utils.c (print_name_only): Don't pass error strings to
184         printf as format arg.
185
186 1999-09-24  Nick Clifton  <nickc@cygnus.com>
187
188         * gmon_io.c (gmon_out_read): Make sure that sensible values
189         are extracted from a raw header.
190
191 1999-08-06  Ian Lance Taylor  <ian@zembu.com>
192
193         From Brad Lucier <lucier@math.purdue.edu>:
194         * corefile.c (core_create_line_syms): Add cast for printf.
195
196 1999-07-21  Ian Lance Taylor  <ian@zembu.com>
197
198         From Mark Elbrecht:
199         * configure.bat: Remove; obsolete.
200
201 1999-07-15  Ian Lance Taylor  <ian@zembu.com>
202
203         * configure.in: Bump version number to 2.9.5.
204         * configure: Rebuild.
205
206 1999-07-11  Ian Lance Taylor  <ian@zembu.com>
207
208         * corefile.c (core_create_function_syms): Add ATTRIBUTED_UNUSED.
209         * sym-ids.c (non_existent_file): Fully initialize structure.
210
211 1999-07-01  Ian Lance Taylor  <ian@zembu.com>
212
213         * Many files: Add casts in many print statements to cast bfd_vma
214         values to unsigned long when calling printf.
215         * Makefile.am ($(OBJECTS)): Add gmon.h.
216         * Makefile.in: Rebuild.
217
218 Mon Jun 14 10:35:28 1999  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
219
220         * gprof.texi: Fix typo.
221
222 1999-06-13  Ian Lance Taylor  <ian@zembu.com>
223
224         From Bob Byrnes <byrnes@curl.com>:
225         * cg_dfn.c: Include "libiberty.h"
226         (DFN_INCR_DEPTH): Define instead of DFN_DEPTH.
227         (dfn_stack): Define as pointer rather than array.
228         (pre_visit): Reallocate dfn_stack as needed.
229
230 1999-04-26  Tom Tromey  <tromey@cygnus.com>
231
232         * aclocal.m4, configure: Updated for new version of libtool.
233
234 1999-04-06  Ian Lance Taylor  <ian@zembu.com>
235
236         * gprof.h (LC_MESSAGES): Never define.
237         * gprof.c (main): Don't pass LC_MESSAGES to setlocale if the
238         system does not define it.
239
240 1999-04-05  H.J. Lu  <hjl@gnu.org>
241
242         * corefile.c (core_create_line_syms): Don't use fixed size array
243         for prev_name and prev_filename.
244
245 1999-04-04  Michael Hohmuth  <hohmuth@innocent.com>
246
247         * gprof.h (FF_BSD44): Define.
248         * gmon.h (struct raw_phdr): Add version, profrate, and spare
249         fields unconditionally.
250         (struct old_raw_phdr): New struct.
251         * gprof.c (main): Handle -O 4.4bsd.
252         * gmon_io.c (gmon_out_read): Handle BSD 4.4 format, either
253         automatically or by user specification.
254         (gmon_out_write): Handle BSD 4.4 format.
255         * configure.in: Don't set BSD44_FORMAT.
256         * gprof.texi (Miscellaneous Options): Document -O 4.4bsd.
257         * configure, gconfig.in: Rebuild.
258
259 Tue Feb 16 17:01:33 1999  Ian Lance Taylor  <ian@cygnus.com>
260
261         * configure.in: Change AC_PREREQ to 2.13.  Change AM_PROG_INSTALL
262         to AC_PROG_INSTALL.  Remove AM_CYGWIN32.  Change AM_EXEEXT to
263         AC_EXEEXT.  Add comment to AC_DEFINE.
264         * acconfig.h: Remove.
265         * aclocal.m4: Rebuild.
266         * configure: Rebuild.
267         * Makefile.in: Rebuild.
268         * gconfig.in: Rebuild.
269
270 Sun Dec  6 21:57:50 1998  Ian Lance Taylor  <ian@cygnus.com>
271
272         * gprof.texi (Symspecs): Mention that you have to add any
273         underscore yourself when naming a symbol.
274
275 Mon Nov  2 15:05:33 1998  Geoffrey Noer  <noer@cygnus.com>
276
277         * configure.in: detect cygwin* instead of cygwin32*
278         * configure: regenerate
279
280 Wed Aug 12 14:59:06 1998  Ian Lance Taylor  <ian@cygnus.com>
281
282         Avoid some overflow cases:
283         * basic_blocks.h (bb_min_calls): Change to unsigned long.
284         * call_graph.h (cg_tally): Change count parameter to unsigned
285         long.
286         * cg_arcs.h (Arc): Change count field to unsigned long.
287         (arc_add): Change count parameter to unsigned long.
288         * source.h (Source_File): Change ncalls field to unsigned long.
289         * symtab.h (Sym): Change fields ncalls, bb_calls, and
290         cg.self_calls to unsigned long.
291         * Many files: Update accordingly.
292
293         * configure, Makefile.in, aclocal.m4: Rebuild with current tools.
294
295 Fri Jul 10 17:29:49 1998  Stan Cox  <scox@equinox.cygnus.com>
296
297         * configure.in (BSD44_FORMAT): Define for cygwin32, win32, mingw32
298         * configure: Rebuild.
299
300 Fri Jun 12 13:40:05 1998  Tom Tromey  <tromey@cygnus.com>
301
302         * po/Make-in (all-yes): If maintainer mode, depend on .pot file.
303         ($(PACKAGE).pot): Unconditionally depend on POTFILES.
304
305 Sun May 10 22:35:33 1998  Jeffrey A Law  (law@cygnus.com)
306
307         * po/Make-in (install-info): New target.
308
309 Tue May  5 18:28:40 1998  Tom Tromey  <tromey@cygnus.com>
310
311         * gprof.h (_): Undefine BFD's version.
312
313 Tue Apr 28 19:17:33 1998  Tom Tromey  <tromey@cygnus.com>
314
315         * gprof.c (main): Conditionally call setlocale.
316         * gprof.h: Include <locale.h> if HAVE_LOCALE_H.
317         (LC_MESSAGES): Now can be defined even when ENABLE_NLS.
318
319 Tue Apr 28 19:50:09 1998  Ian Lance Taylor  <ian@cygnus.com>
320
321         * corefile.c: Rename from core.c.
322         * corefile.h: Rename from core.h.
323         * Many .c files: Include corefile.h rather than core.h.
324         * Makefile.am (sources): Change core.c to corefile.c.
325         (noinst_HEADERS): Change core.h to corefile.h.
326         ($(OBJECTS)): Depend upon corefile.h rather than core.h.
327         (corefile.o): Rename target from core.o, depend upon corefile.c.
328         * Makefile.in, po/POTFILES.in: Rebuild.
329
330 Mon Apr 27 16:50:40 1998  Ian Lance Taylor  <ian@cygnus.com>
331
332         * configure.in: Change version number to 2.9.4
333         * configure: Rebuild.
334
335 Wed Apr 22 16:01:17 1998  Tom Tromey  <tromey@cygnus.com>
336
337         * po/Make-in (MKINSTALLDIRS): Don't look in $(top_srcdir).
338
339 Wed Apr 22 00:00:22 1998  Tom Tromey  <tromey@scribbles.cygnus.com>
340
341         * gprof.h: Added includes and defines for gettext.
342         * configure.in (ALL_LINGUAS): New macro.
343         Call CY_GNU_GETTEXT.  Create po/Makefile.in and po/Makefile.
344         * acconfig.h (ENABLE_NLS, HAVE_CATGETS, HAVE_GETTEXT, HAVE_STPCPY,
345         HAVE_LC_MESSAGES): Define.
346         * gprof.c (main): Call setlocale, bindtextdomain, textdomain.
347         * Makefile.am (SUBDIRS): New macro.
348         (INCLUDES): Look in intl dirs for headers.  Define LOCALEDIR.
349         (gprof_DEPENDENCIES): Added INTLDEPS.
350         (gprof_LDADD): Added INTLLLIBS.
351         (POTFILES): New macro.
352         (po/POTFILES.in): New target.
353         * Many files: Wrap user-visible strings with gettext invocation.
354
355 Tue Apr  7 12:43:37 1998  Ian Lance Taylor  <ian@cygnus.com>
356
357         From hjl@lucon.org <H.J. Lu>:
358         * Makefile.am (diststuff): New target.
359         * Makefile.in: Rebuild.
360
361 Mon Mar 30 12:47:48 1998  Ian Lance Taylor  <ian@cygnus.com>
362
363         * configure.in: Set version to 2.9.1.
364         * configure: Rebuild.
365
366         * Branched binutils 2.9.
367
368 Sat Mar 28 23:09:08 1998  Ian Lance Taylor  <ian@cygnus.com>
369
370         Fix some gcc -Wall warnings:
371         * cg_arcs.c (num_cycles): Change to unsigned int.
372         (numarcs): Likewise.
373         (arc_add): Change maxarcs to unsigned int.
374         (cg_assemble): Change index to unsigned int.
375         * cg_arcs.h (num_cycles, numarcs): Update declarations.
376         * cg_print.c (cg_print): Change index to unsigned int.
377         (cg_print_index): Change index, nnames, todo, i, and j to unsigned
378         int.
379         (cg_print_file_ordering): Change symbol_count and index2 to
380         unsigned int.
381         * core.c (symbol_map_count): Change to unsigned int.
382         (core_create_function_syms): Change j to unsigned int.
383         (core_create_line_syms): Add cast to avoid warning.
384         * hist.c (hist_assign_samples): Change j to unsigned int.
385         (hist_print): Change index to unsigned i nt.  Add cast to avoid
386         warning.
387         * sym_ids.c (parse_spec): Add casts to avoid warning.
388         * symtab.c (symtab_finalize): Change j to unsigned int.
389         (sym_lookup): Update printf format strings.
390         * symtab.h (Sym_Table): Change len to unsigned int.
391         * tahoe.c (tahoe_reladdr): Add casts to avoid warnings.
392
393 Tue Mar 24 19:00:11 1998  Ian Lance Taylor  <ian@cygnus.com>
394
395         Add --demangle and --no-demangle options:
396         * gprof.h (demangle): Declare.
397         * gprof.c (demangle): New global variable.
398         (OPTION_DEMANGLE, OPTION_NO_DEMANGLE): Define.
399         (long_options): Add "demangle" and "no-demangle".
400         (usage): Mention --demangle and --no-demangle.
401         (main): Handle OPTION_DEMANGLE and OPTION_NO_DEMANGLE.
402         * utils.c (print_name_only): Only demangle symbol name if demangle
403         is true.
404         * gprof.texi (Output Options): Document new options.
405
406 Fri Mar 20 19:21:56 1998  Ian Lance Taylor  <ian@cygnus.com>
407
408         * Makefile.in: Rebuild with automake 1.2e.
409         * aclocal.m4, configure: Rebuild with libtool 1.2.
410
411 Thu Feb 12 14:36:05 1998  Ian Lance Taylor  <ian@cygnus.com>
412
413         * gprof.c (usage): Update bug-gnu-utils address.
414
415 Sat Feb  7 15:43:12 1998  Ian Lance Taylor  <ian@cygnus.com>
416
417         * configure, aclocal.m4: Rebuild with new libtool.
418
419 Fri Feb  6 12:02:28 1998  Ian Lance Taylor  <ian@cygnus.com>
420
421         * alpha.c (alpha_Instruction): Use int, not signed.
422
423 Fri Feb  6 02:00:19 1998  Jeffrey A Law  (law@cygnus.com)
424
425         * core.c (core_init): Adding missing "break".
426
427 Thu Feb  5 12:49:37 1998  Ian Lance Taylor  <ian@cygnus.com>
428
429         * configure, Makefile.in, aclocal.m4: Rebuild with new libtool.
430
431 Tue Feb  3 14:25:25 1998  Brent Baccala  <baccala@freesoft.org>
432
433         * bbconv.pl: New file.
434         * Makefile.am (EXTRA_DIST): Add bbconv.pl.
435         * Makefile.in: Rebuild.
436
437         * gprof.texi: Extensive additions to document all arguments and
438         output formats.
439
440         * symtab.c (symtab_finalize): Prefer function symbols over line
441         symbols.
442         (dbg_sym_lookup): Correct debugging messages.
443
444         * gprof.c (main): --sum implies --line.
445
446         * cg_print.c (cg_print): When doing line by line profiling, don't
447         use a non-function as a main listing item.
448
449         * call_graph.c (cg_tally): When using line by line profiling, use
450         the function symbol as the child.
451
452         * symtab.h (NBBS): Define.
453         (Sym): Add bb_addr and bb_calls fields.
454         * basic_blocks.c (bb_read_rec): Save multiple basic blocks per
455         symbol.
456         (bb_write_blocks): Adjust for multiple basic blocks per symbol.
457         (print_exec_counts): Don't check whether a symbol is the start of
458         a basic block.  Print all basic blocks for a symbol.
459         (annotate_with_count): Rewrite to print all basic block counts and
460         to pay attention to width argument.
461         (print_annotated_source): Don't check whether symbol is the start
462         of a basic block.
463
464         Make it possible to build a cross gprof, although a few cases are
465         still not handled:
466         * configure.in: Don't set MY_TARGET.
467         * gprof.h: Don't include MACHINE_H.  Don't define FOPEN_RB or
468         FOPEN_WB; just get them from sysdep.h.
469         * core.h (min_insn_size, offset_to_code): Declare.
470         * core.c (MIN_INSN_SIZE): Don't define.
471         (min_insn_size, offset_to_code): New variables.
472         (core_init): Initialize min_insn_size and offset_to_code.
473         (find_call): New function.
474         (core_create_line_syms): Don't use min_dist.  Set is_static in
475         pass 2.
476         * hist.c (UNITS_TO_CODE): Define.
477         * gprof.c (default_excluded_list): Add "__mcount_internal".
478         * gmon.h: Change TARGET_alpha to __alpha__.
479         * hertz.h: Ifdef MACH, define hertz as HZ.
480         * alpha.c (alpha_Instruction): Rename from Instruction.  Change
481         all references.
482         (alpha_find_call): Rename from find_call.
483         * alpha.h: Remove.
484         * dummy.c, dummy.h: Remove.
485         * i386.c (i386_iscall): Rename from iscall.  Change all
486         references.  Check for call instruction, not jump or lcall.
487         (i386_find_call): Rename from find_call.  Correct for VMA.
488         Correct call destination computation.  Don't dereference symbol if
489         it is NULL.
490         * i386.h: Remove.
491         * ns532.c, ns532.h: Remove.
492         * sparc.c (CALL): Define.
493         (sparc_find_call): Rename from find_call.
494         * sparc.h: Remove.
495         * tahoe.c: Include cg_arcs.h, core.h, hist.h, and symtab.h.  Don't
496         include time_host.h.
497         (CALLF, PC): Define.
498         (enum tahoe_opermodes, tahoe_operandenum): Define.  Rename all
499         references to opermodes or operandenum to these.
500         (tahoe_operandmode): Rename from operandmode.  Call abort if
501         switch does not return.
502         (tahoe_operandname): Rename from operandname.  Call abort if
503         switch does not return.
504         (tahoe_operandlength): Rename from operandlength.  Call abort if
505         switch does not return.
506         (tahoe_reladdr): Rename from reladdr.
507         (tahoe_find_call): Rename from find_call.  Use core_text_space
508         rather than textspace.
509         * tahoe.h: Remove.
510         * vax.c (CALLS, PC): Define.
511         (enum opermodes, operandenum, struct modebyte): Define.
512         (vax_operandmode): Rename from operandmode.  Call abort if switch
513         does not return.
514         (vax_operandname): Rename from operandname.  Call abort if switch
515         does not return.
516         (vax_operandlength): Rename from operandlength.  Call abort if
517         switch does not return.
518         (vax_reladdr): Rename from reladdr.
519         (vax_find_call): Rename from find_call.
520         * vax.h: Remove.
521         * Makefile.am (AUTOMAKE_OPTIONS): Set to cygnus.
522         (MY_TARGET): Remove.
523         (INCLUDES): Remove -DTARGET_$(MY_TARGET) and -DMACHINE_H=
524         \"$(MY_TARGET).h\".
525         (gprof_SOURCES): Add i386.c, alpha.c, vax.c, tahoe.c, sparc.c.
526         (gprof_DEPENDENCIES): Remove $(MY_TARGET).o.
527         (gprof_LDADD): Likewise.
528         (noinst_HEADERS): Remove alpha.h, i386.h, ns532.h, sparc.h,
529         tahoe.h, vax.h, dummy.h.
530         (EXTRA_DIST): Remove alpha.c, i386.c, ns532.c, sparc.c, tahoe.c,
531         vax.c, dummy.c.
532         ($(OBJECTS)): Don't depend upon $(MY_TARGET).h.
533         ($(MY_TARGET).o): Remove target.
534         (i386.o, alpha.o, vax.o, tahoe.o, sparc.o): New targets.
535         * configure, Makefile.in, aclocal.m4: Rebuild.
536
537 Mon Dec 29 14:17:08 1997  Ian Lance Taylor  <ian@cygnus.com>
538
539         * core.c (core_sym_class): Treat weak symbols as text symbols.
540         From Dean Gaudet <dgaudet@arctic.org>.
541
542 Wed Sep 24 11:35:43 1997  Ian Lance Taylor  <ian@cygnus.com>
543
544         * aclocal.m4: Rebuild with new libtool.
545         * Makefile.in: Rebuild with current automake.
546         * configure: Rebuild.
547
548 Sat Aug  9 16:25:01 1997  Ian Lance Taylor  <ian@cygnus.com>
549
550         * configure.in: Change version number to 2.8.2.  Call
551         AM_PROG_LIBTOOL.  Remove shared library handling; now handled by
552         libtool.  Add AM_CONFIG_HEADER.  Change AC_PROG_INSTALL to
553         AM_PROG_INSTALL.  Add AM_EXEEXT.
554         * Makefile.am (LINK): Remove.
555         (gprof_LDFLAGS): Remove
556         (gprof_DEPENDENCIES): Change libbfd.a to libbfd.la.
557         (gprof_LDADD): Likewise.
558         ($(OBJECTS)): Depend upon gconfig.h and ../bfd/config.h.
559         * gprof.h: Undefine PACKAGE and VERSION after including BFD
560         sysdep.h file, then include new gconfig.h file.
561         * gprof.c (VERSION): Don't define.
562         * acconfig.h: New file.
563         * stamp-h.in: New file.
564         * gconfig.in: New file, created by autoheader.
565         * Makefile.in, configure, aclocal.m4: Rebuild.
566
567 Sat Jun 28 23:20:42 1997  Ian Lance Taylor  <ian@cygnus.com>
568
569         * aclocal.m4, configure, Makefile.in: Rebuild with automake 1.2.
570
571 Mon Jun 16 15:31:39 1997  Ian Lance Taylor  <ian@cygnus.com>
572
573         * Makefile.am (INCLUDES): Add -DDEBUG.
574         * Makefile.in: Rebuild.
575
576 Tue Apr 15 14:19:30 1997  Ian Lance Taylor  <ian@cygnus.com>
577
578         Change to use automake:
579         * Makefile.am: New file.
580         * configure.in: Run AM_INIT_AUTOMAKE, AM_MAINTAINER_MODE, and
581         AM_CYGWIN32.
582         * aclocal.m4: New file, created by aclocal.
583         * Makefile.in: Replace with file created by automake --cygnus.
584         * configure: Rebuild.
585
586 Thu Apr  3 13:21:25 1997  Ian Lance Taylor  <ian@cygnus.com>
587
588         * gprof.c (VERSION): Define as "2.8.1".
589
590         * Branched binutils 2.8.
591
592 Thu Mar 27 17:15:23 1997  Ian Lance Taylor  <ian@cygnus.com>
593
594         * gprof.c (main): Correct copyright message.
595
596 Mon Mar 24 11:12:26 1997  Ian Lance Taylor  <ian@cygnus.com>
597
598         * Makefile.in (.c.o): Define TARGET_$(MY_TARGET) when compiling.
599         * gmon.h: Use bytes counts rather than sizeof in struct raw_phdr
600         and struct raw_arc.
601
602 Mon Mar 17 10:54:47 1997  David Mosberger-Tang  <davidm@azstarnet.com>
603
604         * cg_arcs.c (arc_add): memset() newly alloced arc to ensure
605         all fields are initialized with 0.
606
607 Sat Mar 15 19:17:31 1997  H.J. Lu  <hjl@lucon.org>
608
609         * symtab.h (find_call): Declare.
610         * cg_arcs.c (cg_assemble): Don't declare find_call.
611         * hist.c (scale_and_align_entries): Declare.
612
613 Thu Feb 27 12:46:53 1997  Ian Lance Taylor  <ian@cygnus.com>
614
615         * configure.in: Define BSD44_FORMAT if the target looks like a
616         BSD4.4 derived system.
617         * configure: Rebuild.
618         * Makefile.in (.c.o): Add @DEFS@.
619         * gmon_io.c (gmon_out_read): In BSD44_FORMAT code, get profrate
620         from profrate field, not version field.
621
622 Thu Jan 16 17:42:54 1997  Ian Lance Taylor  <ian@cygnus.com>
623
624         * dummy.c (find_call): Clear ignore_direct_calls.
625
626 Tue Dec 31 15:44:10 1996  Ian Lance Taylor  <ian@cygnus.com>
627
628         * Makefile.in (.c.o): Add -D_GNU_SOURCE.  Put $(CFLAGS) at the
629         end.
630         (gprof): Put $(CFLAGS) after the other options.
631
632 Tue Nov 26 17:08:38 1996  Ian Lance Taylor  <ian@cygnus.com>
633
634         * configure: Rebuild with autoconf 2.12.
635
636 Wed Oct  2 15:23:16 1996  Ian Lance Taylor  <ian@cygnus.com>
637
638         * sparc.c (find_call): Align p_lowpc to avoid bus error.
639
640 Tue Oct  1 15:58:10 1996  Ian Lance Taylor  <ian@cygnus.com>
641
642         * gprof.c (usage): Print bug report address.
643         (main): Change version printing to match current GNU standards.
644
645 Fri Aug 30 12:16:11 1996  Ian Lance Taylor  <ian@cygnus.com>
646
647         * gmon.h: Replace #elif with #else/#endif.
648
649 Thu Aug 29 17:04:10 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
650
651         * configure.in (i[345]86-*-*): Recognize i686 for pentium pro.
652         * configure: Regenerate.
653
654 Thu Aug 22 17:12:30 1996  Ian Lance Taylor  <ian@cygnus.com>
655
656         * configure.in: Set and substitute HLDENV.
657         * configure: Rebuild.
658         * Makefile.in (HLDENV): New variable.
659         (gprof): Use $(HLDENV).
660
661 Wed Aug  7 14:43:51 1996  Philippe De Muyter  <phdm@info.ucl.ac.be>
662
663         * core.c (read_function_mappings): Cast xmalloc return.
664
665 Thu Jul  4 12:01:42 1996  Ian Lance Taylor  <ian@cygnus.com>
666
667         * gprof.c (VERSION): Define as "2.7.1".
668
669         * Released binutils 2.7.
670
671         * bb_exit_func.c: Rename from __bb_exit_func.c, so that it can be
672         stored on a System V file system.
673
674 Thu Jun 27 11:36:22 1996  Ian Lance Taylor  <ian@cygnus.com>
675
676         * configure.in: Call AC_ISC_POSIX.
677         * configure: Rebuild.
678         * Makefile.in (gprof): Pass $(CFLAGS) during link.
679         * hertz.c: Don't include <sys/time.h>; let sysdep.h handle that.
680         If HAVE_SETITIMER is not defined, try using sysconf.
681
682 Mon Jun 24 18:27:28 1996  Jason Molenda  (crash@godzilla.cygnus.co.jp)
683
684         * Makefile.in (exec_prefix, bindir, libdir, mandir, infodir, datadir,
685         INSTALL_PROGRAM, INSTALL_DATA): Use autoconf-set values.
686         * configure.in (AC_PREREQ): autoconf 2.5 or higher.
687         (AC_PROG_INSTALL): added.
688         * configure: Rebuilt.
689
690 Mon Jun 24 12:03:09 1996  Ian Lance Taylor  <ian@cygnus.com>
691
692         * configure.in: On alpha*-*-osf*, link against libbfd.a if not
693         using shared libraries.
694         * configure: Rebuild with autoconf 2.10.
695
696 Tue Jun 18 17:35:58 1996  Ian Lance Taylor  <ian@cygnus.com>
697
698         * core.c (core_create_line_syms): Use xstrdup rather than strdup.
699         * source.c (source_file_lookup_path): Likewise.
700
701 Mon Apr  8 14:44:33 1996  Ian Lance Taylor  <ian@cygnus.com>
702
703         * configure.in: Permit --enable-shared to specify a list of
704         directories.
705         * configure: Rebuild.
706
707 Thu Mar 21 17:18:25 1996  Ian Lance Taylor  <ian@cygnus.com>
708
709         * core.c (core_create_function_syms): Move filename and func_name
710         inside ifdef where they are used.
711
712         * core.c (core_sym_class): Parenthesize && within ||.
713         * symtab.c (symtab_finalize): Correct parenthesization.
714
715         * cg_print.h (cg_print_file_ordering): Declare.
716         (cg_print_function_ordering): Declare.
717
718         * __bb_exit_func.c (__bb_exit_func): Replace bcopy with memcpy.
719         * cg_arcs.c (arc_add): Likewise.
720         * cg_print.c (cg_print_function_ordering): Likewise.
721
722 Thu Mar 21 17:02:02 1996  David Mosberger-Tang  <davidm@azstarnet.com>
723
724         * gprof.c (default_excluded_list): Add "__mcount".
725
726         * gprof.c (main): Change ifdef __osf__ to __alpha__.
727
728         * gmon_io.c (gmon_out_read): If BSD44_FORMAT is defined, get the
729         profiling rate from the header.
730
731         * gmon.h (struct raw_phdr): Only include pad if both __alpha__ and
732         __osf__ are defined.  Add new fields if BSD44_FORMAT is defined.
733
734         * alpha.h (MIN_INSN_SIZE): Define.
735         * core.c (MIN_INSN_SIZE): If not defined, define as 1.
736         (core_sym_class): Ignore debugging symbols.
737         (core_create_line_syms): Use MIN_INSN_SIZE when gathering line
738         information.
739
740 Wed Mar 20 18:15:47 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
741
742         * cg_print.c (cg_print_function_ordering): Fix __GNUC__ misspelled
743         as __GNU_C__.
744         (order_and_dump_functions_by_arcs): Likewise.
745
746 Tue Mar 12 12:19:50 1996  Ian Lance Taylor  <ian@cygnus.com>
747
748         * configure: Rebuild with autoconf 2.8.
749
750 Sun Feb 18 15:06:18 1996  Ian Lance Taylor  <ian@cygnus.com>
751
752         * configure.in: Check for 'do not mix' from native linker before
753         trying to use -rpath.
754         * configure: Rebuild.
755
756 Tue Feb 13 15:32:53 1996  Ian Lance Taylor  <ian@cygnus.com>
757
758         * configure.in: Set HDLFLAGS for *-*-hpux with --enable-shared.
759         * configure: Rebuild.
760
761 Wed Feb  7 14:03:17 1996  Ian Lance Taylor  <ian@cygnus.com>
762
763         * configure.in: Don't set CC.  Look for --enable-shared.  Set
764         BFDLIB and HLDFLAGS and substitute them.
765         * configure: Rebuild.
766         * Makefile.in (LIBS): Use @BFDLIB@.
767         (HLDFLAGS): New variable.
768         (gprof): Use $(HLDFLAGS).
769
770 Mon Feb  5 16:34:44 1996  Ian Lance Taylor  <ian@cygnus.com>
771
772         Support for building bfd and opcodes as shared libraries, based on
773         patches from Alan Modra <alan@spri.levels.unisa.edu.au>:
774         * Makefile.in (LIBDEPS): New variable.
775         (LIBS): Use -L../bfd -lbfd.
776         (gprof): Depend upon $(LIBDEPS) rather than $(LIBS).
777
778 Sat Dec 30 10:11:03 1995  Jeffrey A Law  (law@cygnus.com)
779
780         * gprof.c (long_options): Add "--function-ordering" and
781         "--file-ordering" options.
782         (usage): Add new options to usage message.
783         (main): Handle new options.
784         * gprof.h (STYLE_FUNCTION_ORDER): Define.
785         (STYLE_FILE_ORDER): Define.
786         (function_mapping_file): Declare.
787         * cg_arcs.c (arcs, numarcs): New globals.
788         (arc_add): Put new arcs into the arc array so the function/file
789         ordering code can examine them.
790         * cg_arcs.h (struct arc): New field "has_been_placed".
791         (arcs, numarcs): Declare new globals.
792         * core.c (symbol_map, symbol_map_count): New globals.
793         (read_function_mappings): New function to read in a function
794         to object map file.
795         (core_init): Call read_function_mappings if a function mapping
796         file exists.
797         (core_create_function_syms): Handle function to object file
798         mappings.
799         * symtab.h (struct sym): New fields "mapped", "has_been_placed",
800         "nuses", "prev".
801         * cg_print.c (cmp_arc_count): New function for sorting arcs.
802         (cmp_fun_nuses): Likewise for functions.
803         (cg_print_function_ordering): New function to print a suggested
804         function ordering.
805         (cg_print_file_ordering): Likewise for ordering .o files.
806         (order_and_dump_functions_by_arcs): Helper function for function
807         and object file ordering code.
808
809 Sun Dec 24 21:32:27 1995  Jeffrey A Law  (law@cygnus.com)
810
811         * core.c (core_sym_class): Ignore symbols without BSF_FUNCTION
812         set if ignore_non_function is set.
813         * gprof.h (ignore_non_functions): Declare.
814         * gprof.c (ignore_non_functions): Define.
815         (long_options): Add "ignore-non-functions".
816         (usage): Add new options.
817         (main): Recognize "-D" and "--ignore-non-functions" option.
818
819 Tue Nov 21 13:24:39 1995  Ken Raeburn  <raeburn@cygnus.com>
820
821         * Makefile.in (.m.c): Strip out directory name from function
822         name.
823
824         * hist.c (scale_and_align_entries): Don't use DEFUN_VOID.  Do
825         UNITS_TO_CODE adjustment unconditionally; compiler can optimize
826         away zero-offset case.  Refer to scaled_addr, not aligned_addr.
827
828         * vax.c: Don't include vax.h here.
829
830 Thu Nov 16 03:41:37 1995  Ken Raeburn  <raeburn@cygnus.com>
831
832         Version 2.6 released.
833
834 Wed Nov  8 11:40:04 1995  Ian Lance Taylor  <ian@cygnus.com>
835
836         * gprof.c (main): Cast getenv return value.
837
838 Mon Nov  6 15:05:00 1995  Ken Raeburn  <raeburn@cygnus.com>
839
840         * Makefile.in (TAGS): New target.
841
842 Wed Nov  1 12:51:21 1995  Per Bothner  <bothner@kalessin.cygnus.com>
843
844         * Makefile.in (DISTSTUFF):  Rename to GEN_FILES, to avoid confusion.
845         (all):  Depend on $(GEN_FILES), not diststuff (which also depends
846         on info).
847
848 Wed Nov  1 15:23:15 1995  Manfred Hollstein KS/EF4A 60/1F/110 #40283  <manfred@lts.sel.alcatel.de>
849
850         * sym_ids.c: Include <ctype.h>.
851
852 Wed Oct 25 13:24:31 1995  Per Bothner  <bothner@kalessin.cygnus.com>
853
854         * Makefile.in (diststuff):  Also make info.
855         (mostlyclean):  Don't remove gprof.info*.
856         (maintainer-clean realclean):  Also remove *.info*.
857
858 Fri Oct  6 16:25:32 1995  Ken Raeburn  <raeburn@cygnus.com>
859
860         Mon Sep 25 22:49:32 1995  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
861
862         * Makefile.in: Add dependecies for $(OBJS) on header files.
863
864         * cg_print.c (print_cycle, print_members, cg_print_index): Fix new
865         style output format to make it consistent.
866         * dummy.c (find_call): Fix typo in error message.
867
868 Wed Sep 20 13:21:02 1995  Ian Lance Taylor  <ian@cygnus.com>
869
870         * Makefile.in (maintainer-clean): New target, synonym for
871         realclean.
872
873 Fri Sep  8 14:38:08 1995  Ian Lance Taylor  <ian@cygnus.com>
874
875         * Makefile.in (install): Don't install in $(tooldir).
876
877 Fri Aug 25 15:30:05 1995  Ken Raeburn  <raeburn@cygnus.com>
878
879         NS32K changes from Ian Dall:
880         * configure.in: Use ns32k, not ns532.
881         * ns532.c: Include symtab.h.
882         (find_call): Renamed from findcall.  Print a message.
883         * ns532.h: Remove dummy.h comments.
884
885 Tue Aug 22 10:00:45 1995  Jeffrey A. Law  <law@rtl.cygnus.com>
886
887         * Makefile.in (install): Remove "brokensed" hack, unnecessary now
888         that we're using autoconf.
889
890 Wed Jul 19 18:46:13 1995  Fred Fish  <fnf@cygnus.com>
891
892         * core.c (get_src_info): Cast arg 7 of bfd_find_nearest_line
893         to proper type of "unsigned int *".
894
895 Fri Jun 16 15:29:36 1995  Ken Raeburn  <raeburn@cujo.cygnus.com>
896
897         * configure.in: Use changequote around use of [].
898
899 Mon Jun 12 12:14:52 1995  J.T. Conklin  <jtc@rtl.cygnus.com>
900
901         * Makefile.in (distclean, realclean): Remove config.cache and
902           config.log.
903
904 Wed May 17 17:56:53 1995  J.T. Conklin  <jtc@rtl.cygnus.com>
905
906         * Makefile.in (Makefile): Added config.status to dependency list.
907           (config.status): New target.
908           (SHELL): New definition.
909
910 Tue Apr 25 21:11:12 1995  Ken Raeburn  <raeburn@cujo.cygnus.com>
911
912         * Makefile.in (install): Depend on "all".
913
914 Thu Apr 20 17:29:07 1995  Ken Raeburn  <raeburn@cujo.cygnus.com>
915
916         * Makefile.in: Change all references to MY_MACHINE to MY_TARGET,
917         to match configure script.
918
919 Wed Apr 19 11:19:37 1995  J.T. Conklin  <jtc@rtl.cygnus.com>
920
921         * gen-c-prog.awk: Changed reference to "make-c-prog.awk" in
922           comment emitted by this script to gen-c-prog.awk.
923
924         * Makefile.in, configure.in: Converted to use autoconf.
925         * configure: New file, generated with autoconf 2.3.
926         * config/{mt-alpha, mt-dummy, mt-i386, mt-ns532, mt-sparc,
927           mt-tahoe, mt-vax}: Removed.
928
929 Mon Mar 13 21:44:24 1995  Ken Raeburn  <raeburn@cujo.cygnus.com>
930
931         * __bb_exit_func.c: New file, from David Mosberger-Tang.
932
933         Thu Feb  9 16:56:07 1995  David Mosberger-Tang  <davidm@piston.cs.arizona.edu>
934
935         * All *.c: More cleanup towards GNU format.
936
937         * gmon_out.h (struct gmon_hist_hdr, struct gmon_cg_arc_record): 
938         replaced sizeof (bfd_vma) by size (char*) because Ken tells me
939         that bfd_vma is only guaranteed to be at least as big as a pointer.
940
941         (GMON_Record_tag): added explicit enumeration values to ensure
942         compatibility across compilers.
943
944         * gmon_io.c (get_vma, put_vma): replaced sizeof(bfd_vma) by
945         sizeof(char*).
946
947 Tue Feb  7 17:24:12 1995  Ken Raeburn  <raeburn@cujo.cygnus.com>
948
949         * All *.c and *.h files: Ran "indent -gnu".  Cleaned up a couple
950         of constructs GNU indent couldn't handle.  Block comments not yet
951         rewritten in GNU format.
952
953         * gprof.c (VERSION): Changed to 2.6, to get in sync for next
954         binutils release.
955
956 Sun Feb  5 16:19:46 1995  David Mosberger-Tang  <davidm@piston.cs.arizona.edu>
957
958         * symtab.c (symtab_finalize): ensure globals symbols really
959         are favored over static ones---even if their name looks less
960         preferable; this is important for HP-UX; for example, there
961         is a static label Ltext_something that aliases the global
962         symbol _start
963
964         * hist.c (hist_print): auto-scaling is now in effect for FSF-style
965         output only; also, auto-scaling is now performed based on
966         per-call, rather than total execution time, which is what it was
967         meant to be.
968
969         * gprof.h (File_Format): new type.
970
971         * gprof.c (VERSION): upped to 2.7---seems to be completely out of
972         sync with Cygnus version numbers though...
973
974         (long_options): renamed --gmon-info to --file-info, --width added,
975         renamed --old-file-format to --file-format
976         (main): dito; also added support to read prof files, but as
977         mon_out_read() is not implemented, it's #ifdef'd out for now
978
979         (usage): update to reflect new options.
980
981         * gmon_io.c: replaced "old_file_format" by more general
982         "file_format" option
983
984         * gmon.h (struct raw_phdr): fixed declaration for OSF/1.
985
986         * core.c (core_sym_class): added back check for __gnu_compiled and
987         ___gnu_compiled for the benefit of systems without
988         bfd_find_nearest_line() support
989
990         (get_src_info): now the libbfd is fixed, invoke bfd_find_nearest_line()
991         with section-relative addresses
992
993         (core_create_function_syms): get_src_info() calls are currently
994         enabled for OSF/1 only.  It appears to work allright for SunOS
995         4.1.x as well, but on SPARCs it gets painfully slow with the
996         current implementation of aout_32_find_nearest_line();
997         unfortunately, this means that static functions will not have their
998         filename printed in the call-graph function index; line-level
999         profiling should still work, but requires some patience
1000
1001         * cg_print.c (cg_print_index): sanitised printing of index when
1002         using FSF-style output; in particular, output width is now controlled
1003         via option --width and the function tries hard to keep columns
1004         aligned even in the presence of (occasional) long names
1005
1006         * NOTES: a first shot at updating the documentation.
1007
1008 Wed Feb  1 19:07:44 1995  David Mosberger-Tang  <davidm@piston.cs.arizona.edu>
1009
1010         * core.c (core_create_function_syms): fixed computation of min_vma
1011         and max_vma.
1012
1013         * *.c: removed rcsid.
1014
1015 Tue Jan 31 16:18:18 1995  Ken Raeburn  <raeburn@cujo.cygnus.com>
1016
1017         * Lots of changes from David Mosberger-Tang:
1018
1019         Tue Oct 25 19:20:14 1994  David Mosberger-Tang  <davidm@piston.cs.arizona.edu>
1020
1021         * gprof.c (main): put parentheses around & within &&.
1022
1023         * basic_blocks.c (bb_read_rec): print warning message (once) when
1024         ignoring basic-block execution counts.
1025
1026         * source.c (source_file_lookup_name): corrected second argument to
1027         strcmp().
1028
1029         * hist.c (print_header): merged Fri Oct 21 18:58:02 1994 change by
1030         Ken Raeburn <raeburn@cujo.cygnus.com> from binutils-2.5.1.
1031
1032         * gmon_io.c (gmon_out_read): the output stule STYLE_GMON_INFO is now
1033         supported both for old and new (versioned) gmon.out files.  Old
1034         files are identified as version 0.
1035
1036         * gmon.h (struct raw_arc): count field is now sizeof(long) bytes
1037         long (instead of 4) because that is what OSF/1 v3.0 uses.
1038
1039         * core.c: minor fixes and debugging info changes.
1040
1041         Sun Sep 11 18:47:47 1994  David Mosberger-Tang  (davidm@piston.cs.arizona.edu)
1042
1043         * core.c (core_init): if .text cannot be found, try $CODE$ (the
1044         name of the text-section under HP-UX).
1045
1046         * hist.c (hist_assign_samples): fixed off-by-one bug: highpc
1047         points one past the last sampling bin, so hist_scale should be
1048         computed as "hist_scale /= hist_num_bins", not "hist_scale /=
1049         hist_num_bins - 1".
1050
1051         * gmon_io.c, hist.c, hist.h: renamed hist_num_samples to
1052         hist_num_bins.
1053
1054         * configure.in: added alpha-*-*) for per-target config.
1055
1056         * alpha.c, alpha.h: created.
1057
1058         * gprof.c (default_excluded_list): <locore>, <hicore> added.
1059
1060         * core.c (core_create_function_syms, core_create_line_syms):
1061         explicitly keep two sentinels "<locore>" and "<hicore>" that catch
1062         all addresses outside the text-space.  Thus, sym_lookup(&symtab,
1063         addr) continues to guarantee not to return 0 on any address.  It
1064         also avoids incorrectly crediting the first/last symbol in the
1065         text-space.
1066
1067         * core.c (core_create_line_syms): always create function symbols
1068         first, then merge in line symbols; this is so that if parts of the
1069         program were compiled without -g, function-level symbols are
1070         available still.
1071
1072         * utils.c (print_name_only): support for print_path added.
1073
1074         * symtab.c (cmp_addr): also use is_func flag in comparison.
1075         (symtab_finalize): return immediately when table empty; now
1076         more careful about getting rid of the right duplicate symbol.
1077
1078         * sparc.c (find_call): many fixes---this function was rather
1079         botched in binutils-2.4 already; it should work again.
1080
1081         * source.c (source_file_lookup_path): PATH is now strdup'ed (it is
1082         not good to rely on get_src_info() to return distinct string
1083         pointers).
1084
1085         * search_list.c (search_list_append): added cast for xmalloc().
1086
1087         * hist.c: added explicit initialization to some of the global
1088         variables; fixed SItab (scales were off by a factor of 10).
1089
1090         * hist.h: include of bfd.h added.
1091
1092         * gprof.c, gprof.h (print_path): added.
1093
1094         * gprof.h (MAX): fixed.
1095
1096         * gmon_out.h: renamed gmon_time_hist_hdr to gmon_hist_hdr.
1097
1098         * gmon_io.c: added some casts to (long) so we can always print as %lx
1099
1100         * core.c (core_get_text_space): fixed to make it work.
1101
1102         * cg_print.c (cg_print_index): added support for print_path option.
1103
1104         * cg_dfn.h (cg_dfn): wrap prototype in PARAMS().
1105
1106         * call_graph.c, gmon_io.c, hist.c: avoid taking address of array
1107         as some compilers complain (e.g., DEC's OSF/1 compiler)
1108
1109         * basic_blocks.c, gmon_io.c, hist.c, source.c, sym_ids.c,
1110         symtab.c: calls to memset() had 2nd and 3rd args reversed.
1111
1112         Sat Sep 10 21:53:13 1994  David Mosberger-Tang  (davidm@piston.cs.arizona.edu)
1113
1114         * gprof.c: added "_mcount" to default_excluded_list.
1115         (main): if output_style==0 and there is either a histogram or a
1116         call-graph, always generate flat and call-graph, no matter what
1117         line_granularity is set to.
1118
1119         * source.c (source_file_lookup_name): if searching for sf->name
1120         fails, try again with filename obtained after stripping off any
1121         partial path from sf->name.
1122
1123         * gprof.h (SRCDEBUG): added.
1124
1125         * search_list.c (search_list_append): directories were added in wrong
1126         order.
1127
1128         * reimplemented selection mechanism from ground up; it is now possible
1129         to accurately control what gets included/excluded in each of the
1130         output styles;  a "symbol-specification" (spec) is the basic means
1131         to select a set of symbols; a spec has the syntax:
1132
1133           spec == (FILENAME:(FUNCNAME|LINE_NUM) | NAME).
1134           arc == spec/spec.
1135
1136         any of the terminal symbols can be empty, in which case they
1137         match anything (wildcards).  NAME is interpreted as a FILENAME
1138         if it contains a dot (e.g., foo.c), as LINE_NUM if it starts
1139         with a digit, and as FUNCNAME otherwise.
1140
1141         For example, to get a call-graph display that ignores arcs
1142         from foo() to bar(), you'd say "--no-graph=foo/bar"; to
1143         show only arcs into bar() (no matter what the caller),
1144         you'd say "--graph=/bar"; and to get a call-graph without
1145         any arc info, you'd say "--graph=/";  similarly, to
1146         get a flat profile without mcount, you'd say "--no-flat=mcount"
1147         and to get a flat profile that shows includes all functions
1148         you'd say "--flat=""" (i.e., an empty spec)
1149
1150         * hist.c (hist_print): top_time wasn't initialized to 0.0.
1151
1152         Fri Sep  9 01:10:21 1994  David Mosberger-Tang  (davidm@piston.cs.arizona.edu)
1153
1154         * gmon_out.h: all headers now declared in terms of characters
1155           to avoid getting into trouble with different compilers introducing
1156           different amount of padding; the code already accessed the fields
1157           through bfd functions, so that didn't have to change.
1158
1159         * hist.c (hist_read_rec, hist_write_rec): added support for
1160           collection pc histograms measuring quantities other than time;
1161           the histogram header now includes a field that specifies the
1162           dimension of the quantity measured by the histogram bins
1163           (normally, this is "seconds", but other meaningful dimensions
1164            include such things as "I-cache misses", "instruction issue stalls"
1165            etc.); there is also a field to specify a one-character
1166           abbreviation for the dimension; in the case of time, this would
1167           be 's'; in most other cases it probably would be '1' (not a physical
1168           dimension).
1169
1170         Thu Sep  8 16:05:08 1994  David Mosberger-Tang  (davidm@piston.cs.arizona.edu)
1171
1172         * gprof.c, gmon_io.[ch]: BSD_COMPATIBLE is gone and new_file_version
1173           has become old_file_version; gmon_io.c now always supports old-style
1174           gmon.out files; it first tries to read gmon.out as a new version
1175           file, if that fails, it tries to read it in the old format;
1176           although not very likely, it is possible for gprof to mistake an
1177           old-style file as a new one (the first 4 bytes would have to
1178           be "gmon"---including the trailing '\0'); in that case, it is
1179           necessary to specify --old-file-version
1180
1181         * gprof.h: removed dependency on SYSV; the code now always uses
1182           strrchr(), memset(), and memcpy() and does not include either
1183           of string.h or strings.h; this should make gprof compile on
1184           any (Unix) system without configuration (per suggestion of
1185           raeburn@cygnus.com)
1186
1187         * gprof.c (usage): fixed location of --new-file-format option.
1188
1189         * cg_arcs.c (propagate_flags): fixed typo in declaration.
1190
1191         * flat_bl.m: removed formfeed at end of file; the form-feed
1192           is now printed cg_print.c only when necessary.
1193
1194         * major rewrite of gprof---too many changes to mention all of
1195           them.  new features:
1196
1197         + -l now requests profiling at the line level (as opposed
1198           to function level); in this mode, gprof creates a "symbol"
1199           (aka name-list entry) for each line of source code, instead
1200            of one per function)
1201
1202         + support for a new gmon.out file format; the new format 
1203           consists of a header with a magic and a version number,
1204           followed by a sequence of profile data; profile data
1205           can any of: (a) PC histogram, (b) call-graph arcs, or
1206           (c) basic-block execution counts; the version number makes
1207           it possible to extend gmon.out in a backwards compatible
1208           fashion
1209
1210         + support for tcov style annotated output: if the gmon.out file
1211           contains basic-block execution counts, the user can request
1212           the generation of annotated source files, much like Sun's
1213           tcov used to do
1214
1215         + long options
1216
1217         + new scheme to suppress symbols that aren't function names
1218           (e.g., avoids mistaking a goto label as a function)
1219
1220         + reorganized source code to make it more managable; as a
1221           side effect, gprof now compiles cleanly with "gcc -Wall"
1222
1223         Thu Sep  1 15:46:49 1994  David Mosberger-Tang  (davidm@piston.cs.arizona.edu)
1224
1225         * gprof.c (funcsymbol): bfd_find_nearest_line() is now used as a
1226         final cross-check to determine whether a static symbol should be
1227         considered as a function-name.
1228
1229         Fri Aug  5 19:32:36 1994  David Mosberger-Tang  (davidm@piston.cs.arizona.edu)
1230
1231         * gmon_io.c (gmon_out_read): recognize "-" as the filename for
1232         stdin; this is useful if you wanna keep gmon.out files compressed;
1233         this way you can "gzcat" the compressed file into gprof.
1234
1235         * gprof.c: flag_min_count now initialized with 1 instead of 0.
1236
1237         * basic_blocks.c (bb_annotate_source): added support for creating
1238         .tcov files when option flag_annotate_make_files is TRUE.
1239         (annotate_with_count): all counts less than the minimum count
1240         specified by -m are now annotated with hash-marks.
1241
1242         * gprof.c (main): -A is now followed by a string of option chars.
1243
1244         * basic_blocks.c (annotate_with_count): replaced b->count with
1245         cnt.
1246
1247         * source.c: flag_annotate_source replaced by source_lock_map.
1248
1249         * source.h: source_lock_map added.
1250
1251         * gprof.c (main): new command-line syntax: -S simply specifies
1252         which source-files user is interested in; -A requests annotated
1253         source files and -AA requests that all lines in a source file
1254         are annotated.
1255
1256         Thu Aug  4 23:27:03 1994  David Mosberger-Tang  (davidm@piston.cs.arizona.edu)
1257
1258         * basic_blocks.c (PATH_MAX): if undefined, define as 1024.
1259
1260         * sparc.c, i386.c, tahoe.c, vax.c: added include of "time_hist.h"
1261         so s_lowpc etc. get declared.
1262
1263         * arcs.h (doarcs): created.
1264
1265         * arcs.c: reordered static functions such that they get defined
1266         before use.
1267
1268         * gprof.c (main): added options:
1269            -A: request annotation of all source lines (with -S)
1270            -m: minimum execution count (with default basic-block display)
1271            -N: force new file format (only if BSD_COMPATIBLE is defined)
1272            -S: annotate source file
1273            -t: set table length (with -S)
1274
1275         * Makefile (OBJS): added basic_blocks.o call_graph.o gmon_io.o
1276         source.o time_hist.o
1277
1278         Fri Jul  1 15:23:50 1994  David Mosberger-Tang  (davidm@piston.cs.arizona.edu)
1279
1280         * gprof.c (asgnsamples): computation of "pcl" and "pch" depended
1281         on the fact being able to store a long in a double without loss of
1282         precision; this does not hold on machines with 64 bit longs and 64
1283         bit doubles.
1284
1285 Fri Oct 21 18:58:02 1994  Ken Raeburn  <raeburn@cujo.cygnus.com>
1286
1287         * printgprof.c (flatprofheader): Always set totime to 1.0 if not
1288         greater than 0.0.  Suggested by Harold Assink
1289         <carlo@sg.tn.tudelft.nl>.
1290
1291 Fri Sep 23 15:06:45 1994  Ken Raeburn  <raeburn@cujo.cygnus.com>
1292
1293         * printgprof.c (printprof): Use free, not cfree.
1294         (printgprof, printindex): Ditto.
1295
1296 Thu Sep  1 10:40:45 1994  Jeff Law  (law@snake.cs.utah.edu)
1297
1298         * gprof.h (kfromlist, ktolist, flist, Flist, elist, Elist): Make
1299         decls extern to keep native HP compiler quiet.
1300
1301 Tue Aug 30 11:12:13 1994  Ian Lance Taylor  (ian@sanguine.cygnus.com)
1302
1303         * gprof.c (funcsymbol): Ignore ___gnu_compiled as well as
1304         __gnu_compiled, for the benefit of systems which add a leading
1305         underscore.
1306
1307 Wed Aug 24 12:49:13 1994  Ian Lance Taylor  (ian@sanguine.cygnus.com)
1308
1309         * configure.in: Change i386-*-* to i[345]86-*-*.
1310
1311 Sun Jul 10 00:35:31 1994  Ian Dall  (dall@hfrd.dsto.gov.au)
1312
1313         * ns532.c, ns532.h: New Files. ns532 support.
1314
1315         * config/mt-ns532: New File. ns532 support.
1316
1317         * gprof.c: user register int i instead of defaulting the int.
1318         Allows compilation with -Dregister= for debugging.
1319
1320         * configure.in: Add ns532 support.
1321
1322 Thu Jun 23 11:22:41 1994  Jeff Law  (law@snake.cs.utah.edu)
1323
1324         * Makefile.in (gprof): Depend on $(LIBS).
1325
1326 Fri May 27 12:24:57 1994  Ken Raeburn  (raeburn@cujo.cygnus.com)
1327
1328         From binutils-2.4 release:
1329
1330         Wed May 11 22:32:00 1994  DJ Delorie (dj@ctron.com)
1331
1332         * configure.bat: [new] build makefile from makefile.in (dos)
1333         * hertz.c: allow static HERTZ (msdos needs it)
1334         * gprof.c: allow target to select "r" or "rb" for fopen
1335         * gprof.c: ignore __gnu_compiled symbols
1336         * i386.h: dfine FOPEN_RB to "rb" for dos.
1337
1338 Tue May 17 15:30:22 1994  E. Michael Smith (ems@cygnus.com)
1339
1340         * Makefile.in (.m.c:):  Added .SUFFIXES : .m 
1341         so flat_bl.c would make from flat_bl.m file.
1342
1343 Thu May  5 19:23:24 1994  Ken Raeburn  (raeburn@cujo.cygnus.com)
1344
1345         * Makefile.in (install-info): Check for gprof.info in build dir,
1346         fall back to srcdir.  Depend on it.
1347
1348         * gprof.h (TRUE, FALSE): Always use undef before defining them.
1349
1350 Mon Apr  4 23:47:30 1994  Jeffrey A. Law  (law@snake.cs.utah.edu)
1351
1352         * Makefile.in (MY_MACHINE): Renamed from MACHINE to avoid losing
1353         makes (osf1) in which the value of MACHINE can not be changed.
1354         * config/*.mt: Changed appropriately.
1355
1356 Wed Mar 30 16:12:40 1994  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
1357
1358         * gprof.c (getsymtab): Change nosyms to long.  Rename
1359         get_symtab_upper_bound to bfd_get_symtab_upper_bound.  Check for
1360         errors from bfd_get_symtab_upper_bound and
1361         bfd_canonicalize_symtab.
1362
1363 Tue Mar 22 10:50:52 1994  Jeffrey A. Law  (law@snake.cs.utah.edu)
1364
1365         * gprof.c (funcsymbol): Use bfd_get_symbol_info instead of
1366         bfd_decode_symclass.
1367
1368 Sun Mar 20 15:40:21 1994  Jeffrey A. Law  (law@snake.cs.utah.edu)
1369
1370         * Makefile.in: Avoid bug in hpux sed.
1371
1372 Wed Dec 15 20:16:40 1993  david d `zoo' zuhn  (zoo@andros.cygnus.com)
1373
1374         * gprof.texi (Invoking): add text about -v flag
1375
1376         * gprof.1: add text about -v flag
1377
1378 Wed Dec  8 16:55:06 1993  david d `zoo' zuhn  (zoo@andros.cygnus.com)
1379
1380         * gprof.c (VERSION): defined a version macro, print the value 
1381         when the -v option is used
1382
1383 Tue Jul  6 10:11:56 1993  Steve Chamberlain  (sac@phydeaux.cygnus.com)
1384
1385         * Makefile.in: Install correctly.
1386
1387 Thu Jun 24 14:43:22 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
1388
1389         * gprof.c (main): Get whoami from argv, instead of hardcoding.
1390         Use it in usage message.  Split usage message to fit in 80 cols.
1391
1392 Sun Jun 20 20:58:02 1993  Ken Raeburn  (raeburn@poseidon.cygnus.com)
1393
1394         * Makefile.in: Undo 15 June change.
1395
1396 Wed Jun 16 12:54:53 1993  Steve Chamberlain  (sac@phydeaux.cygnus.com)
1397
1398         * gmon.h, gprof.h: structs of chars used to hold external
1399         representations.
1400         * gprof.c (getpfile, openpfile, readsamples): Swap data in using
1401         new structures.
1402
1403 Tue Jun 15 23:09:17 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
1404
1405         * Makefile.in (.c.o): Look in ../include, not ../bfd, for bfd.h.
1406
1407 Mon Jun 14 16:22:59 1993  david d `zoo' zuhn  (zoo at rtl.cygnus.com)
1408
1409         * Makefile.in: remove parentdir support
1410
1411 Mon Jun  7 12:56:17 1993  Per Bothner  (bothner@rtl.cygnus.com)
1412
1413         * Makefile.in (INCLUDES):  Add -I../bfd for sysdep.h and bfd.h.
1414         * configure.in:  No longer need to configure to get sysdep.h.
1415
1416 Tue May 18 21:44:11 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
1417
1418         * Makefile.in (install): should not depend on install-info
1419
1420 Mon Apr 26 12:37:46 1993  Ian Lance Taylor  (ian@cygnus.com)
1421
1422         * gprof.h: Include ansidecl.h before sysdep.h.  Undefine hz.
1423
1424 Tue Apr 13 16:14:03 1993  Per Bothner  (bothner@cygnus.com)
1425
1426         * M Makefile.in:  Add -g to CFLAGS.
1427         Ads LDFLAGS and use in place of CFLAGS where appropriate.
1428         * configure.in:  Make a sysdep.hlink in the same way other
1429         bfd-based directories do.
1430         * gprof.h (UNIT):  Replace non-standard 'u_short' by 'unsigned
1431         short'.
1432         * gprof.h:  #include sysdep.h instead of a bunch of stuff.
1433         * gprof.c (main):  Fix typo gproff->gprof.
1434
1435 Thu Mar 25 19:00:37 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
1436
1437         * gprof.texi: add INFO-DIR-ENTRY
1438
1439 Tue Mar 23 00:03:11 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
1440
1441         * Makefile.in: add installcheck target
1442
1443 Sat Feb 27 18:17:10 1993  Per Bothner  (bothner@rtl.cygnus.com)
1444
1445         * gprof.c (funcsymbol):  Invert test for aflag.
1446
1447 Thu Feb 25 16:01:50 1993  Per Bothner  (bothner@rtl.cygnus.com)
1448
1449         * printgprof (xmalloc, xrealloc):  Cast results of malloc
1450         and realloc to PTR.
1451
1452 Wed Feb  3 13:55:33 1993  Jeffrey Osier  (jeffrey@fowanton.cygnus.com)
1453
1454         * Makefile.in: created info, install-info, dvi
1455
1456 Wed Jan  6 00:58:09 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
1457
1458         * Makefile.in: fix install rule for $(PROG)
1459
1460 Fri Oct  9 11:25:41 1992  Mark Eichin  (eichin@cygnus.com)
1461
1462         * gprof.1: updated SYNOPSIS to match actual behavior.
1463
1464 Mon Oct  5 17:50:16 1992  Per Bothner  (bothner@cygnus.com)
1465
1466         * gen-c-prog.awk:  New awk script, lightly changed from
1467         previously deleted make-c-prog.awk.  Converts a text file
1468         to a c function that prints that text.
1469         * flat_bl.m, fsf_callg_bl.m, bsd_callg_bl.m:  New files.
1470         Inputs to gen-c-prog.awk, containing text describing
1471         gprof output.
1472         * blurbs.c:  Removed.  Use *_bl.c instead.
1473         * Makefile.in: Use gen-cprog.awk to generate *_bl.c files
1474         from *_bl.m files.  Also, improve *clean rules.
1475         * printgprof.c (printgprof):  Usw new function names from *_bl.c.
1476         
1477
1478 Sun Aug 30 19:54:53 1992  Per Bothner  (bothner@rtl.cygnus.com)
1479
1480         * gprof.h, gprof.c, printfgprof.c:  Add support for two
1481         output styles:  The default is similar to the old FSF gprof,
1482         while -T sets the variable bsd_style_output, which causes
1483         output matching Berkeley's gprof.  The biggest differences
1484         are that with the FSF style output, the flat profile comes
1485         before the call graph; numbers come before explanations;
1486         and there is less gratuitous white space.
1487         * gprof.h, gprof.c, printfgprof.c:  New discard_underscores
1488         variable causes discarding of initial underscores when
1489         printing symbol names.  It is set unless there is a "main"
1490         symbol (without an underscore).
1491         * printfgprof.c:  New function printnameonly(), called
1492         by printname().  It handles stripping of initial '_',
1493         as well as C++ name-demangling.
1494         * gprof.callg, gprof.flat, make-c-prog.awk:  Removed.
1495         It is just as convenient to edit blurbs.c directly.
1496         * Makefile.in:  Removed rule for making blurbs.c.
1497         * blurbs.c:  This is now a true source file (as opposed
1498         to being generated from gprof.callg and gprof.flat).
1499         Change style to use one long string literal, instead of
1500         one literal per output line.  Add FSF-style blurb for call graph.
1501
1502 Wed Aug 19 14:36:39 1992  Ian Lance Taylor  (ian@cygnus.com)
1503
1504         * Makefile.in: always create installation directories.
1505
1506 Wed Aug 12 15:14:14 1992  Mark Eichin  (eichin@cygnus.com)
1507
1508         * Makefile.in: change ${MACHINE} to $(MACHINE).
1509
1510 Sun Jul 19 17:34:01 1992  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
1511
1512         * Makefile.in:  removed installation of the now useless
1513         call.{flag,callg} files.  
1514
1515         * gprof.1: now uses the standard man macros instead of the new BSD
1516         mandoc macros. 
1517
1518 Sun Jul 12 19:06:00 1992  John Gilmore  (gnu at cygnus.com)
1519
1520         * configure.in:  Remove host section, expand target section.
1521         * config/mt-{tahoe,vax}:  Add, to match existing support files.
1522         * config/tmake-*:  Remove leftover crud.
1523
1524         * blurbs.c:  New file, created from gprof.flat and gprof.callg by
1525         * make-c-prog.awk:  which processes text files into C programs.
1526         * printgprof.c (flatprofheader, gprofheader):  Call new functions
1527         to print blurbs.
1528         (printblurb):  Remove.
1529         * Makefile.in:  Infrastructure to build blurbs.
1530         * pathnames.h:  has been removed.  Gprof now has no filename
1531         dependencies in it.
1532         * gprof.c:  Lint.
1533
1534 Sat Jul 11 18:07:21 1992  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
1535
1536         * Makefile.in: define man1dir and install the man page
1537
1538 Fri Jul 10 21:14:08 1992  david d `zoo' zuhn (zoo@cygnus.com)
1539
1540         * Makefile.in: added dummy info and install-info targets
1541
1542 Thu Jun  4 11:34:02 1992  Mark Eichin  (eichin at cygnus.com)
1543
1544         * lookup.c: fixed fencepost in nllookup and added dbg_nllookup for
1545         help in debugging the problem (with -DDEBUG)
1546         * gprof.c: symbol values are now real values, don't add the vma
1547         anymore. (done for solaris; should verify this on other platforms)
1548         * ChangeLog: created.