TODO revision 1.1.1.3.12.1 1 1.1 skrll
2 1.1 skrll - add support for prof file format so that prof files can be displayed
3 1.1 skrll at the line-level (this is useful for the uprofile tool under DEC's
4 1.1 skrll OSF/1)
5 1.1 skrll - take a hard look at --file-ordering (broken) and --function-ordering
6 1.1 skrll
7 1.1 skrll + documentation
8 1.1 skrll + optimize bfd_find_nearest_line_num() (or replace by different interface)
9 1.1 skrll + cleanup _bfd_ecoff_find_nearest_line_num() fixes & description
10 1.1 skrll + ensure "cc -pg" produces good files under OSF/1 v3.0
11 1.1 skrll + make sure gprof works together with OSF/1 v3.0's profiling libraries
12 1.1 skrll + implement symtab_parse(); modify sym_lookup() to consider addr_high
13 1.1 skrll + change gprof.c to collect lists, then invoke symtab_parse() for
14 1.1 skrll each list
15 1.1 skrll + Questions:
16 1.1 skrll o is -c (--static-call-graph) useful at all? i can't see
17 1.1 skrll how; if it were deleted, gprof would be completely machine
18 1.1 skrll independent => yup, it is
19 1.1 skrll o are (long) option names appropriate?
20 1.1 skrll o -k (--exclude-arc) cannot be implemented with getopt();
21 1.1 skrll is new syntax (-k from/to) acceptable? If not, how to
22 1.1 skrll fix it?
23 1.1 skrll o in the FSF output, the call-graph index now prints
24 1.1 skrll the filename of static functions in parentheses; e.g.,
25 1.1 skrll static function foo() that is defined in file bar.c
26 1.1 skrll would be printed as:
27 1.1 skrll
28 1.1 skrll [4] foo (bar.c)
29 1.1 skrll
30 1.1 skrll is this acceptable? should it be done only optionally?
31 1.1 skrll o symbols with addresses that map back to a different
32 1.1 skrll name are suppressed (happens with labels, for example);
33 1.1 skrll is this acceptable? should it be done only optionally?
34 1.1 skrll + generalize to allow arbitrary histograms (not just time histograms)
35 1.1 skrll + basic-block information currently replaces all symbols created from
36 1.1 skrll the core because of an ugly ordering conflict---for now, the current
37 1.1 skrll solution works, but something cleaner is desirable ==> cleaned up,
38 1.1 skrll but it's slower now
39 1.1 skrll + convert to very new file format (back to trivial format, that is :)
40 1.1 skrll + replace "dummy.h" for Alpha (if there is any use to it)
41 1.1 skrll + add support for execution time profiling at a basic-block level
42 1.1 skrll + fix filename-off-by-one bug for Alpha (see ~/tmp/d.[ch])---no longer
43 1.1 skrll relevant
44 1.1 skrll + "-pg -a" doesn't work as expected because mcleanup() will overwrite
45 1.1 skrll the file generated by __bb_exit_func() (or vice versa)
46 1.1 skrll + first basic-block of fac() seems to get credited to last basic-block
47 1.1 skrll of previous function => bug in basic_blocks.c
48 1.1 skrll + flat profile should provide automatic scaling for per-call times because
49 1.1 skrll otherwise they'll always be zero on a fast machine with tons of small
50 1.1 skrll functions
51 1.1 skrll + make "-a" imply to retain line number info (without actually generating
52 1.1 skrll the debugging information (unless -g is specified)---no, this is a
53 1.1 skrll bad idea, because it is not clear what level of debugging info should
54 1.1 skrll be requested (e.g., -g vs. -g3); leaving it up to the user seems best
55 1.1 skrll + add long options support (or at least use getopt instead of ad-hoc
56 1.1 skrll implementation)
57 1.1 skrll + split into files according to abstract objects that are manipulated
58 1.1 skrll + replace sccsid by rcsid & add "end of ..." to every .c file
59 1.1 skrll + use DBG() everywhere
60 1.1 skrll + fix spacing (" ," -> "," etc.)
61 1.1 skrll + use DEFUNs everywhere
62 1.1 skrll + make compile cleanly with -Wall
63 1.1 skrll + "gcc -pg -O2" doesn't work on tecc.c unless -fno-omit-frame-pointer is
64 1.1 skrll specified; find out why
65 1.1 skrll + make things portable (prototypes, const, etc.)
66 1.1 skrll + if NEW_GMON_OUT is not defined, have a flag that will allow to
67 1.1 skrll read new gmon.out style files. The idea being that everyone
68 1.1 skrll will use the new format for basic-block style profiling but
69 1.1 skrll the old format for regular gpprofiling
70 1.1.1.2 christos
72 1.1.1.2 christos Copyright (C) 2012-2018 Free Software Foundation, Inc.
73 1.1.1.2 christos
74 1.1.1.2 christos Copying and distribution of this file, with or without modification,
75 1.1.1.2 christos are permitted in any medium without royalty provided the copyright
76 notice and this notice are preserved.
77