Home | History | Annotate | Line # | Download | only in gprof
TODO revision 1.1.1.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