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