* gprof.c (long_options): Add "--function-ordering" and
[platform/upstream/binutils.git] / gprof / ChangeLog
1 Sat Dec 30 10:11:03 1995  Jeffrey A Law  (law@cygnus.com)
2
3         * gprof.c (long_options): Add "--function-ordering" and
4         "--file-ordering" options.
5         (usage): Add new options to usage message.
6         (main): Handle new options.
7         * gprof.h (STYLE_FUNCTION_ORDER): Define.
8         (STYLE_FILE_ORDER): Define.
9         (function_mapping_file): Declare.
10         * cg_arcs.c (arcs, numarcs): New globals.
11         (arc_add): Put new arcs into the arc array so the function/file
12         ordering code can examine them.
13         * cg_arcs.h (struct arc): New field "has_been_placed".
14         (arcs, numarcs): Declare new globals.
15         * core.c (symbol_map, symbol_map_count): New globals.
16         (read_function_mappings): New function to read in a function
17         to object map file.
18         (core_init): Call read_function_mappings if a function mapping
19         file exists.
20         (core_create_function_syms): Handle function to object file
21         mappings.
22         * symtab.h (struct sym): New fields "mapped", "has_been_placed",
23         "nuses", "prev".
24         * cg_print.c (cmp_arc_count): New function for sorting arcs.
25         (cmp_fun_nuses): Likewise for functions.
26         (cg_print_function_ordering): New function to print a suggested
27         function ordering.
28         (cg_print_file_ordering): Likewise for ordering .o files.
29         (order_and_dump_functions_by_arcs): Helper function for function
30         and object file ordering code.
31
32 Sun Dec 24 21:32:27 1995  Jeffrey A Law  (law@cygnus.com)
33
34         * core.c (core_sym_class): Ignore symbols without BSF_FUNCTION
35         set if ignore_non_function is set.
36         * gprof.h (ignore_non_functions): Declare.
37         * gprof.c (ignore_non_functions): Define.
38         (long_options): Add "ignore-non-functions".
39         (usage): Add new options.
40         (main): Recognize "-D" and "--ignore-non-functions" option.
41
42 Tue Nov 21 13:24:39 1995  Ken Raeburn  <raeburn@cygnus.com>
43
44         * Makefile.in (.m.c): Strip out directory name from function
45         name.
46
47         * hist.c (scale_and_align_entries): Don't use DEFUN_VOID.  Do
48         UNITS_TO_CODE adjustment unconditionally; compiler can optimize
49         away zero-offset case.  Refer to scaled_addr, not aligned_addr.
50
51         * vax.c: Don't include vax.h here.
52
53 Thu Nov 16 03:41:37 1995  Ken Raeburn  <raeburn@cygnus.com>
54
55         Version 2.6 released.
56
57 Wed Nov  8 11:40:04 1995  Ian Lance Taylor  <ian@cygnus.com>
58
59         * gprof.c (main): Cast getenv return value.
60
61 Mon Nov  6 15:05:00 1995  Ken Raeburn  <raeburn@cygnus.com>
62
63         * Makefile.in (TAGS): New target.
64
65 Wed Nov  1 12:51:21 1995  Per Bothner  <bothner@kalessin.cygnus.com>
66
67         * Makefile.in (DISTSTUFF):  Rename to GEN_FILES, to avoid confusion.
68         (all):  Depend on $(GEN_FILES), not diststuff (which also depends
69         on info).
70
71 Wed Nov  1 15:23:15 1995  Manfred Hollstein KS/EF4A 60/1F/110 #40283  <manfred@lts.sel.alcatel.de>
72
73         * sym_ids.c: Include <ctype.h>.
74
75 Wed Oct 25 13:24:31 1995  Per Bothner  <bothner@kalessin.cygnus.com>
76
77         * Makefile.in (diststuff):  Also make info.
78         (mostlyclean):  Don't remove gprof.info*.
79         (maintainer-clean realclean):  Also remove *.info*.
80
81 Fri Oct  6 16:25:32 1995  Ken Raeburn  <raeburn@cygnus.com>
82
83         Mon Sep 25 22:49:32 1995  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
84
85         * Makefile.in: Add dependecies for $(OBJS) on header files.
86
87         * cg_print.c (print_cycle, print_members, cg_print_index): Fix new
88         style output format to make it consistent.
89         * dummy.c (find_call): Fix typo in error message.
90
91 Wed Sep 20 13:21:02 1995  Ian Lance Taylor  <ian@cygnus.com>
92
93         * Makefile.in (maintainer-clean): New target, synonym for
94         realclean.
95
96 Fri Sep  8 14:38:08 1995  Ian Lance Taylor  <ian@cygnus.com>
97
98         * Makefile.in (install): Don't install in $(tooldir).
99
100 Fri Aug 25 15:30:05 1995  Ken Raeburn  <raeburn@cygnus.com>
101
102         NS32K changes from Ian Dall:
103         * configure.in: Use ns32k, not ns532.
104         * ns532.c: Include symtab.h.
105         (find_call): Renamed from findcall.  Print a message.
106         * ns532.h: Remove dummy.h comments.
107
108 Tue Aug 22 10:00:45 1995  Jeffrey A. Law  <law@rtl.cygnus.com>
109
110         * Makefile.in (install): Remove "brokensed" hack, unnecessary now
111         that we're using autoconf.
112
113 Wed Jul 19 18:46:13 1995  Fred Fish  <fnf@cygnus.com>
114
115         * core.c (get_src_info): Cast arg 7 of bfd_find_nearest_line
116         to proper type of "unsigned int *".
117
118 Fri Jun 16 15:29:36 1995  Ken Raeburn  <raeburn@cujo.cygnus.com>
119
120         * configure.in: Use changequote around use of [].
121
122 Mon Jun 12 12:14:52 1995  J.T. Conklin  <jtc@rtl.cygnus.com>
123
124         * Makefile.in (distclean, realclean): Remove config.cache and
125           config.log.
126
127 Wed May 17 17:56:53 1995  J.T. Conklin  <jtc@rtl.cygnus.com>
128
129         * Makefile.in (Makefile): Added config.status to dependency list.
130           (config.status): New target.
131           (SHELL): New definition.
132
133 Tue Apr 25 21:11:12 1995  Ken Raeburn  <raeburn@cujo.cygnus.com>
134
135         * Makefile.in (install): Depend on "all".
136
137 Thu Apr 20 17:29:07 1995  Ken Raeburn  <raeburn@cujo.cygnus.com>
138
139         * Makefile.in: Change all references to MY_MACHINE to MY_TARGET,
140         to match configure script.
141
142 Wed Apr 19 11:19:37 1995  J.T. Conklin  <jtc@rtl.cygnus.com>
143
144         * gen-c-prog.awk: Changed reference to "make-c-prog.awk" in
145           comment emitted by this script to gen-c-prog.awk.
146
147         * Makefile.in, configure.in: Converted to use autoconf.
148         * configure: New file, generated with autoconf 2.3.
149         * config/{mt-alpha, mt-dummy, mt-i386, mt-ns532, mt-sparc,
150           mt-tahoe, mt-vax}: Removed.
151
152 Mon Mar 13 21:44:24 1995  Ken Raeburn  <raeburn@cujo.cygnus.com>
153
154         * __bb_exit_func.c: New file, from David Mosberger-Tang.
155
156         Thu Feb  9 16:56:07 1995  David Mosberger-Tang  <davidm@piston.cs.arizona.edu>
157
158         * All *.c: More cleanup towards GNU format.
159
160         * gmon_out.h (struct gmon_hist_hdr, struct gmon_cg_arc_record): 
161         replaced sizeof (bfd_vma) by size (char*) because Ken tells me
162         that bfd_vma is only guaranteed to be at least as big as a pointer.
163
164         (GMON_Record_tag): added explicit enumeration values to ensure
165         compatibility across compilers.
166
167         * gmon_io.c (get_vma, put_vma): replaced sizeof(bfd_vma) by
168         sizeof(char*).
169
170 Tue Feb  7 17:24:12 1995  Ken Raeburn  <raeburn@cujo.cygnus.com>
171
172         * All *.c and *.h files: Ran "indent -gnu".  Cleaned up a couple
173         of constructs GNU indent couldn't handle.  Block comments not yet
174         rewritten in GNU format.
175
176         * gprof.c (VERSION): Changed to 2.6, to get in sync for next
177         binutils release.
178
179 Sun Feb  5 16:19:46 1995  David Mosberger-Tang  <davidm@piston.cs.arizona.edu>
180
181         * symtab.c (symtab_finalize): ensure globals symbols really
182         are favored over static ones---even if their name looks less
183         preferable; this is important for HP-UX; for example, there
184         is a static label Ltext_something that aliases the global
185         symbol _start
186
187         * hist.c (hist_print): auto-scaling is now in effect for FSF-style
188         output only; also, auto-scaling is now performed based on
189         per-call, rather than total execution time, which is what it was
190         meant to be.
191
192         * gprof.h (File_Format): new type.
193
194         * gprof.c (VERSION): upped to 2.7---seems to be completely out of
195         sync with Cygnus version numbers though...
196
197         (long_options): renamed --gmon-info to --file-info, --width added,
198         renamed --old-file-format to --file-format
199         (main): dito; also added support to read prof files, but as
200         mon_out_read() is not implemented, it's #ifdef'd out for now
201
202         (usage): update to reflect new options.
203
204         * gmon_io.c: replaced "old_file_format" by more general
205         "file_format" option
206
207         * gmon.h (struct raw_phdr): fixed declaration for OSF/1.
208
209         * core.c (core_sym_class): added back check for __gnu_compiled and
210         ___gnu_compiled for the benefit of systems without
211         bfd_find_nearest_line() support
212
213         (get_src_info): now the libbfd is fixed, invoke bfd_find_nearest_line()
214         with section-relative addresses
215
216         (core_create_function_syms): get_src_info() calls are currently
217         enabled for OSF/1 only.  It appears to work allright for SunOS
218         4.1.x as well, but on SPARCs it gets painfully slow with the
219         current implementation of aout_32_find_nearest_line();
220         unfortunately, this means that static functions will not have their
221         filename printed in the call-graph function index; line-level
222         profiling should still work, but requires some patience
223
224         * cg_print.c (cg_print_index): sanitized printing of index when
225         using FSF-style output; in particular, output width is now controlled
226         via option --width and the function tries hard to keep columns
227         aligned even in the presence of (occasional) long names
228
229         * NOTES: a first shot at updating the documentation.
230
231 Wed Feb  1 19:07:44 1995  David Mosberger-Tang  <davidm@piston.cs.arizona.edu>
232
233         * core.c (core_create_function_syms): fixed computation of min_vma
234         and max_vma.
235
236         * *.c: removed rcsid.
237
238 Tue Jan 31 16:18:18 1995  Ken Raeburn  <raeburn@cujo.cygnus.com>
239
240         * Lots of changes from David Mosberger-Tang:
241
242         Tue Oct 25 19:20:14 1994  David Mosberger-Tang  <davidm@piston.cs.arizona.edu>
243
244         * gprof.c (main): put parentheses around & within &&.
245
246         * basic_blocks.c (bb_read_rec): print warning message (once) when
247         ignoring basic-block execution counts.
248
249         * source.c (source_file_lookup_name): corrected second argument to
250         strcmp().
251
252         * hist.c (print_header): merged Fri Oct 21 18:58:02 1994 change by
253         Ken Raeburn <raeburn@cujo.cygnus.com> from binutils-2.5.1.
254
255         * gmon_io.c (gmon_out_read): the output stule STYLE_GMON_INFO is now
256         supported both for old and new (versioned) gmon.out files.  Old
257         files are identified as version 0.
258
259         * gmon.h (struct raw_arc): count field is now sizeof(long) bytes
260         long (instead of 4) because that is what OSF/1 v3.0 uses.
261
262         * core.c: minor fixes and debugging info changes.
263
264         Sun Sep 11 18:47:47 1994  David Mosberger-Tang  (davidm@piston.cs.arizona.edu)
265
266         * core.c (core_init): if .text cannot be found, try $CODE$ (the
267         name of the text-section under HP-UX).
268
269         * hist.c (hist_assign_samples): fixed off-by-one bug: highpc
270         points one past the last sampling bin, so hist_scale should be
271         computed as "hist_scale /= hist_num_bins", not "hist_scale /=
272         hist_num_bins - 1".
273
274         * gmon_io.c, hist.c, hist.h: renamed hist_num_samples to
275         hist_num_bins.
276
277         * configure.in: added alpha-*-*) for per-target config.
278
279         * alpha.c, alpha.h: created.
280
281         * gprof.c (default_excluded_list): <locore>, <hicore> added.
282
283         * core.c (core_create_function_syms, core_create_line_syms):
284         explicitly keep two sentinels "<locore>" and "<hicore>" that catch
285         all addresses outside the text-space.  Thus, sym_lookup(&symtab,
286         addr) continues to guarantee not to return 0 on any address.  It
287         also avoids incorrectly crediting the first/last symbol in the
288         text-space.
289
290         * core.c (core_create_line_syms): always create function symbols
291         first, then merge in line symbols; this is so that if parts of the
292         program were compiled without -g, function-level symbols are
293         available still.
294
295         * utils.c (print_name_only): support for print_path added.
296
297         * symtab.c (cmp_addr): also use is_func flag in comparison.
298         (symtab_finalize): return immediately when table empty; now
299         more careful about getting rid of the right duplicate symbol.
300
301         * sparc.c (find_call): many fixes---this function was rather
302         botched in binutils-2.4 already; it should work again.
303
304         * source.c (source_file_lookup_path): PATH is now strdup'ed (it is
305         not good to rely on get_src_info() to return distinct string
306         pointers).
307
308         * search_list.c (search_list_append): added cast for xmalloc().
309
310         * hist.c: added explicit initialization to some of the global
311         variables; fixed SItab (scales were off by a factor of 10).
312
313         * hist.h: include of bfd.h added.
314
315         * gprof.c, gprof.h (print_path): added.
316
317         * gprof.h (MAX): fixed.
318
319         * gmon_out.h: renamed gmon_time_hist_hdr to gmon_hist_hdr.
320
321         * gmon_io.c: added some casts to (long) so we can always print as %lx
322
323         * core.c (core_get_text_space): fixed to make it work.
324
325         * cg_print.c (cg_print_index): added support for print_path option.
326
327         * cg_dfn.h (cg_dfn): wrap prototype in PARAMS().
328
329         * call_graph.c, gmon_io.c, hist.c: avoid taking address of array
330         as some compilers complain (e.g., DEC's OSF/1 compiler)
331
332         * basic_blocks.c, gmon_io.c, hist.c, source.c, sym_ids.c,
333         symtab.c: calls to memset() had 2nd and 3rd args reversed.
334
335         Sat Sep 10 21:53:13 1994  David Mosberger-Tang  (davidm@piston.cs.arizona.edu)
336
337         * gprof.c: added "_mcount" to default_excluded_list.
338         (main): if output_style==0 and there is either a histogram or a
339         call-graph, always generate flat and call-graph, no matter what
340         line_granularity is set to.
341
342         * source.c (source_file_lookup_name): if searching for sf->name
343         fails, try again with filename obtained after stripping off any
344         partial path from sf->name.
345
346         * gprof.h (SRCDEBUG): added.
347
348         * search_list.c (search_list_append): directories were added in wrong
349         order.
350
351         * reimplemented selection mechanism from ground up; it is now possible
352         to accurately control what gets included/excluded in each of the
353         output styles;  a "symbol-specification" (spec) is the basic means
354         to select a set of symbols; a spec has the syntax:
355
356           spec == (FILENAME:(FUNCNAME|LINE_NUM) | NAME).
357           arc == spec/spec.
358
359         any of the terminal symbols can be empty, in which case they
360         match anything (wildcards).  NAME is interpreted as a FILENAME
361         if it contains a dot (e.g., foo.c), as LINE_NUM if it starts
362         with a digit, and as FUNCNAME otherwise.
363
364         For example, to get a call-graph display that ignores arcs
365         from foo() to bar(), you'd say "--no-graph=foo/bar"; to
366         show only arcs into bar() (no matter what the caller),
367         you'd say "--graph=/bar"; and to get a call-graph without
368         any arc info, you'd say "--graph=/";  similarly, to
369         get a flat profile without mcount, you'd say "--no-flat=mcount"
370         and to get a flat profile that shows includes all functions
371         you'd say "--flat=""" (i.e., an empty spec)
372
373         * hist.c (hist_print): top_time wasn't initialized to 0.0.
374
375         Fri Sep  9 01:10:21 1994  David Mosberger-Tang  (davidm@piston.cs.arizona.edu)
376
377         * gmon_out.h: all headers now declared in terms of characters
378           to avoid getting into trouble with different compilers introducing
379           different amount of padding; the code already accessed the fields
380           through bfd functions, so that didn't have to change.
381
382         * hist.c (hist_read_rec, hist_write_rec): added support for
383           collection pc histograms measuring quantities other than time;
384           the histogram header now includes a field that specifies the
385           dimension of the quantity measured by the histogram bins
386           (normally, this is "seconds", but other meaningful dimensions
387            include such things as "I-cache misses", "instruction issue stalls"
388            etc.); there is also a field to specify a one-character
389           abbreviation for the dimension; in the case of time, this would
390           be 's'; in most other cases it probably would be '1' (not a physical
391           dimension).
392
393         Thu Sep  8 16:05:08 1994  David Mosberger-Tang  (davidm@piston.cs.arizona.edu)
394
395         * gprof.c, gmon_io.[ch]: BSD_COMPATIBLE is gone and new_file_version
396           has become old_file_version; gmon_io.c now always supports old-style
397           gmon.out files; it first tries to read gmon.out as a new version
398           file, if that fails, it tries to read it in the old format;
399           although not very likely, it is possible for gprof to mistake an
400           old-style file as a new one (the first 4 bytes would have to
401           be "gmon"---including the trailing '\0'); in that case, it is
402           necessary to specify --old-file-version
403
404         * gprof.h: removed dependency on SYSV; the code now always uses
405           strrchr(), memset(), and memcpy() and does not include either
406           of string.h or strings.h; this should make gprof compile on
407           any (Unix) system without configuration (per suggestion of
408           raeburn@cygnus.com)
409
410         * gprof.c (usage): fixed location of --new-file-format option.
411
412         * cg_arcs.c (propagate_flags): fixed typo in declaration.
413
414         * flat_bl.m: removed formfeed at end of file; the form-feed
415           is now printed cg_print.c only when necessary.
416
417         * major rewrite of gprof---too many changes to mention all of
418           them.  new features:
419
420         + -l now requests profiling at the line level (as opposed
421           to function level); in this mode, gprof creates a "symbol"
422           (aka name-list entry) for each line of source code, instead
423            of one per function)
424
425         + support for a new gmon.out file format; the new format 
426           consists of a header with a magic and a version number,
427           followed by a sequence of profile data; profile data
428           can any of: (a) PC histogram, (b) call-graph arcs, or
429           (c) basic-block execution counts; the version number makes
430           it possible to extend gmon.out in a backwards compatible
431           fashion
432
433         + support for tcov style annotated output: if the gmon.out file
434           contains basic-block execution counts, the user can request
435           the generation of annotated source files, much like Sun's
436           tcov used to do
437
438         + long options
439
440         + new scheme to suppress symbols that aren't function names
441           (e.g., avoids mistaking a goto label as a function)
442
443         + reorganized source code to make it more managable; as a
444           side effect, gprof now compiles cleanly with "gcc -Wall"
445
446         Thu Sep  1 15:46:49 1994  David Mosberger-Tang  (davidm@piston.cs.arizona.edu)
447
448         * gprof.c (funcsymbol): bfd_find_nearest_line() is now used as a
449         final cross-check to determine whether a static symbol should be
450         considered as a function-name.
451
452         Fri Aug  5 19:32:36 1994  David Mosberger-Tang  (davidm@piston.cs.arizona.edu)
453
454         * gmon_io.c (gmon_out_read): recognize "-" as the filename for
455         stdin; this is useful if you wanna keep gmon.out files compressed;
456         this way you can "gzcat" the compressed file into gprof.
457
458         * gprof.c: flag_min_count now initialized with 1 instead of 0.
459
460         * basic_blocks.c (bb_annotate_source): added support for creating
461         .tcov files when option flag_annotate_make_files is TRUE.
462         (annotate_with_count): all counts less than the minimum count
463         specified by -m are now annotated with hash-marks.
464
465         * gprof.c (main): -A is now followed by a string of option chars.
466
467         * basic_blocks.c (annotate_with_count): replaced b->count with
468         cnt.
469
470         * source.c: flag_annotate_source replaced by source_lock_map.
471
472         * source.h: source_lock_map added.
473
474         * gprof.c (main): new command-line syntax: -S simply specifies
475         which source-files user is interested in; -A requests annotated
476         source files and -AA requests that all lines in a source file
477         are annotated.
478
479         Thu Aug  4 23:27:03 1994  David Mosberger-Tang  (davidm@piston.cs.arizona.edu)
480
481         * basic_blocks.c (PATH_MAX): if undefined, define as 1024.
482
483         * sparc.c, i386.c, tahoe.c, vax.c: added include of "time_hist.h"
484         so s_lowpc etc. get declared.
485
486         * arcs.h (doarcs): created.
487
488         * arcs.c: reordered static functions such that they get defined
489         before use.
490
491         * gprof.c (main): added options:
492            -A: request annotation of all source lines (with -S)
493            -m: minimum execution count (with default basic-block display)
494            -N: force new file format (only if BSD_COMPATIBLE is defined)
495            -S: annotate source file
496            -t: set table length (with -S)
497
498         * Makefile (OBJS): added basic_blocks.o call_graph.o gmon_io.o
499         source.o time_hist.o
500
501         Fri Jul  1 15:23:50 1994  David Mosberger-Tang  (davidm@piston.cs.arizona.edu)
502
503         * gprof.c (asgnsamples): computation of "pcl" and "pch" depended
504         on the fact being able to store a long in a double without loss of
505         precision; this does not hold on machines with 64 bit longs and 64
506         bit doubles.
507
508 Fri Oct 21 18:58:02 1994  Ken Raeburn  <raeburn@cujo.cygnus.com>
509
510         * printgprof.c (flatprofheader): Always set totime to 1.0 if not
511         greater than 0.0.  Suggested by Harold Assink
512         <carlo@sg.tn.tudelft.nl>.
513
514 Fri Sep 23 15:06:45 1994  Ken Raeburn  <raeburn@cujo.cygnus.com>
515
516         * printgprof.c (printprof): Use free, not cfree.
517         (printgprof, printindex): Ditto.
518
519 Thu Sep  1 10:40:45 1994  Jeff Law  (law@snake.cs.utah.edu)
520
521         * gprof.h (kfromlist, ktolist, flist, Flist, elist, Elist): Make
522         decls extern to keep native HP compiler quiet.
523
524 Tue Aug 30 11:12:13 1994  Ian Lance Taylor  (ian@sanguine.cygnus.com)
525
526         * gprof.c (funcsymbol): Ignore ___gnu_compiled as well as
527         __gnu_compiled, for the benefit of systems which add a leading
528         underscore.
529
530 Wed Aug 24 12:49:13 1994  Ian Lance Taylor  (ian@sanguine.cygnus.com)
531
532         * configure.in: Change i386-*-* to i[345]86-*-*.
533
534 Sun Jul 10 00:35:31 1994  Ian Dall  (dall@hfrd.dsto.gov.au)
535
536         * ns532.c, ns532.h: New Files. ns532 support.
537
538         * config/mt-ns532: New File. ns532 support.
539
540         * gprof.c: user register int i instead of defaulting the int.
541         Allows compilation with -Dregister= for debugging.
542
543         * configure.in: Add ns532 support.
544
545 Thu Jun 23 11:22:41 1994  Jeff Law  (law@snake.cs.utah.edu)
546
547         * Makefile.in (gprof): Depend on $(LIBS).
548
549 Fri May 27 12:24:57 1994  Ken Raeburn  (raeburn@cujo.cygnus.com)
550
551         From binutils-2.4 release:
552
553         Wed May 11 22:32:00 1994  DJ Delorie (dj@ctron.com)
554
555         * configure.bat: [new] build makefile from makefile.in (dos)
556         * hertz.c: allow static HERTZ (msdos needs it)
557         * gprof.c: allow target to select "r" or "rb" for fopen
558         * gprof.c: ignore __gnu_compiled symbols
559         * i386.h: dfine FOPEN_RB to "rb" for dos.
560
561 Tue May 17 15:30:22 1994  E. Michael Smith (ems@cygnus.com)
562
563         * Makefile.in (.m.c:):  Added .SUFFIXES : .m 
564         so flat_bl.c would make from flat_bl.m file.
565
566 Thu May  5 19:23:24 1994  Ken Raeburn  (raeburn@cujo.cygnus.com)
567
568         * Makefile.in (install-info): Check for gprof.info in build dir,
569         fall back to srcdir.  Depend on it.
570
571         * gprof.h (TRUE, FALSE): Always use undef before defining them.
572
573 Mon Apr  4 23:47:30 1994  Jeffrey A. Law  (law@snake.cs.utah.edu)
574
575         * Makefile.in (MY_MACHINE): Renamed from MACHINE to avoid losing
576         makes (osf1) in which the value of MACHINE can not be changed.
577         * config/*.mt: Changed appropriately.
578
579 Wed Mar 30 16:12:40 1994  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
580
581         * gprof.c (getsymtab): Change nosyms to long.  Rename
582         get_symtab_upper_bound to bfd_get_symtab_upper_bound.  Check for
583         errors from bfd_get_symtab_upper_bound and
584         bfd_canonicalize_symtab.
585
586 Tue Mar 22 10:50:52 1994  Jeffrey A. Law  (law@snake.cs.utah.edu)
587
588         * gprof.c (funcsymbol): Use bfd_get_symbol_info instead of
589         bfd_decode_symclass.
590
591 Sun Mar 20 15:40:21 1994  Jeffrey A. Law  (law@snake.cs.utah.edu)
592
593         * Makefile.in: Avoid bug in hpux sed.
594
595 Wed Dec 15 20:16:40 1993  david d `zoo' zuhn  (zoo@andros.cygnus.com)
596
597         * gprof.texi (Invoking): add text about -v flag
598
599         * gprof.1: add text about -v flag
600
601 Wed Dec  8 16:55:06 1993  david d `zoo' zuhn  (zoo@andros.cygnus.com)
602
603         * gprof.c (VERSION): defined a version macro, print the value 
604         when the -v option is used
605
606 Tue Jul  6 10:11:56 1993  Steve Chamberlain  (sac@phydeaux.cygnus.com)
607
608         * Makefile.in: Install correctly.
609
610 Thu Jun 24 14:43:22 1993  David J. Mackenzie  (djm@thepub.cygnus.com)
611
612         * gprof.c (main): Get whoami from argv, instead of hardcoding.
613         Use it in usage message.  Split usage message to fit in 80 cols.
614
615 Sun Jun 20 20:58:02 1993  Ken Raeburn  (raeburn@poseidon.cygnus.com)
616
617         * Makefile.in: Undo 15 June change.
618
619 Wed Jun 16 12:54:53 1993  Steve Chamberlain  (sac@phydeaux.cygnus.com)
620
621         * gmon.h, gprof.h: structs of chars used to hold external
622         representations.
623         * gprof.c (getpfile, openpfile, readsamples): Swap data in using
624         new structures.
625
626 Tue Jun 15 23:09:17 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com)
627
628         * Makefile.in (.c.o): Look in ../include, not ../bfd, for bfd.h.
629
630 Mon Jun 14 16:22:59 1993  david d `zoo' zuhn  (zoo at rtl.cygnus.com)
631
632         * Makefile.in: remove parentdir support
633
634 Mon Jun  7 12:56:17 1993  Per Bothner  (bothner@rtl.cygnus.com)
635
636         * Makefile.in (INCLUDES):  Add -I../bfd for sysdep.h and bfd.h.
637         * configure.in:  No longer need to configure to get sysdep.h.
638
639 Tue May 18 21:44:11 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
640
641         * Makefile.in (install): should not depend on install-info
642
643 Mon Apr 26 12:37:46 1993  Ian Lance Taylor  (ian@cygnus.com)
644
645         * gprof.h: Include ansidecl.h before sysdep.h.  Undefine hz.
646
647 Tue Apr 13 16:14:03 1993  Per Bothner  (bothner@cygnus.com)
648
649         * M Makefile.in:  Add -g to CFLAGS.
650         Ads LDFLAGS and use in place of CFLAGS where appropriate.
651         * configure.in:  Make a sysdep.hlink in the same way other
652         bfd-based directories do.
653         * gprof.h (UNIT):  Replace non-standard 'u_short' by 'unsigned
654         short'.
655         * gprof.h:  #include sysdep.h instead of a bunch of stuff.
656         * gprof.c (main):  Fix typo gproff->gprof.
657
658 Thu Mar 25 19:00:37 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
659
660         * gprof.texi: add INFO-DIR-ENTRY
661
662 Tue Mar 23 00:03:11 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
663
664         * Makefile.in: add installcheck target
665
666 Sat Feb 27 18:17:10 1993  Per Bothner  (bothner@rtl.cygnus.com)
667
668         * gprof.c (funcsymbol):  Invert test for aflag.
669
670 Thu Feb 25 16:01:50 1993  Per Bothner  (bothner@rtl.cygnus.com)
671
672         * printgprof (xmalloc, xrealloc):  Cast results of malloc
673         and realloc to PTR.
674
675 Wed Feb  3 13:55:33 1993  Jeffrey Osier  (jeffrey@fowanton.cygnus.com)
676
677         * Makefile.in: created info, install-info, dvi
678
679 Wed Jan  6 00:58:09 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
680
681         * Makefile.in: fix install rule for $(PROG)
682
683 Fri Oct  9 11:25:41 1992  Mark Eichin  (eichin@cygnus.com)
684
685         * gprof.1: updated SYNOPSIS to match actual behavior.
686
687 Mon Oct  5 17:50:16 1992  Per Bothner  (bothner@cygnus.com)
688
689         * gen-c-prog.awk:  New awk script, lightly changed from
690         previously deleted make-c-prog.awk.  Converts a text file
691         to a c function that prints that text.
692         * flat_bl.m, fsf_callg_bl.m, bsd_callg_bl.m:  New files.
693         Inputs to gen-c-prog.awk, containing text describing
694         gprof output.
695         * blurbs.c:  Removed.  Use *_bl.c instead.
696         * Makefile.in: Use gen-cprog.awk to generate *_bl.c files
697         from *_bl.m files.  Also, improve *clean rules.
698         * printgprof.c (printgprof):  Usw new function names from *_bl.c.
699         
700
701 Sun Aug 30 19:54:53 1992  Per Bothner  (bothner@rtl.cygnus.com)
702
703         * gprof.h, gprof.c, printfgprof.c:  Add support for two
704         output styles:  The default is similar to the old FSF gprof,
705         while -T sets the variable bsd_style_output, which causes
706         output matching Berkeley's gprof.  The biggest differences
707         are that with the FSF style output, the flat profile comes
708         before the call graph; numbers come before explanations;
709         and there is less gratuitous white space.
710         * gprof.h, gprof.c, printfgprof.c:  New discard_underscores
711         variable causes discarding of initial underscores when
712         printing symbol names.  It is set unless there is a "main"
713         symbol (without an underscore).
714         * printfgprof.c:  New function printnameonly(), called
715         by printname().  It handles stripping of initial '_',
716         as well as C++ name-demangling.
717         * gprof.callg, gprof.flat, make-c-prog.awk:  Removed.
718         It is just as convenient to edit blurbs.c directly.
719         * Makefile.in:  Removed rule for making blurbs.c.
720         * blurbs.c:  This is now a true source file (as opposed
721         to being generated from gprof.callg and gprof.flat).
722         Change style to use one long string literal, instead of
723         one literal per output line.  Add FSF-style blurb for call graph.
724
725 Wed Aug 19 14:36:39 1992  Ian Lance Taylor  (ian@cygnus.com)
726
727         * Makefile.in: always create installation directories.
728
729 Wed Aug 12 15:14:14 1992  Mark Eichin  (eichin@cygnus.com)
730
731         * Makefile.in: change ${MACHINE} to $(MACHINE).
732
733 Sun Jul 19 17:34:01 1992  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
734
735         * Makefile.in:  removed installation of the now useless
736         call.{flag,callg} files.  
737
738         * gprof.1: now uses the standard man macros instead of the new BSD
739         mandoc macros. 
740
741 Sun Jul 12 19:06:00 1992  John Gilmore  (gnu at cygnus.com)
742
743         * configure.in:  Remove host section, expand target section.
744         * config/mt-{tahoe,vax}:  Add, to match existing support files.
745         * config/tmake-*:  Remove leftover crud.
746
747         * blurbs.c:  New file, created from gprof.flat and gprof.callg by
748         * make-c-prog.awk:  which processes text files into C programs.
749         * printgprof.c (flatprofheader, gprofheader):  Call new functions
750         to print blurbs.
751         (printblurb):  Remove.
752         * Makefile.in:  Infrastructure to build blurbs.
753         * pathnames.h:  has been removed.  Gprof now has no filename
754         dependencies in it.
755         * gprof.c:  Lint.
756
757 Sat Jul 11 18:07:21 1992  david d `zoo' zuhn  (zoo at cirdan.cygnus.com)
758
759         * Makefile.in: define man1dir and install the man page
760
761 Fri Jul 10 21:14:08 1992  david d `zoo' zuhn (zoo@cygnus.com)
762
763         * Makefile.in: added dummy info and install-info targets
764
765 Thu Jun  4 11:34:02 1992  Mark Eichin  (eichin at cygnus.com)
766
767         * lookup.c: fixed fencepost in nllookup and added dbg_nllookup for
768         help in debugging the problem (with -DDEBUG)
769         * gprof.c: symbol values are now real values, don't add the vma
770         anymore. (done for solaris; should verify this on other platforms)
771         * ChangeLog: created.