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