todo
来自「基于4个mips核的noc设计」· 代码 · 共 73 行
TXT
73 行
- gmon_io.c cannot deal with target architecture that have a pointer size that is different from the host architectures pointer size---fix this (gmon_out.h, and gmon_io.c)- add support for prof file format so that prof files can be displayed at the line-level (this is useful for the uprofile tool under DEC's OSF/1)- take a hard look at --file-ordering (broken) and --function-ordering+ documentation+ optimize bfd_find_nearest_line_num() (or replace by different interface)+ cleanup _bfd_ecoff_find_nearest_line_num() fixes & description+ ensure "cc -pg" produces good files under OSF/1 v3.0+ make sure gprof works together with OSF/1 v3.0's profiling libraries+ implement symtab_parse(); modify sym_lookup() to consider addr_high+ change gprof.c to collect lists, then invoke symtab_parse() for each list+ Questions: o is -c (--static-call-graph) useful at all? i can't see how; if it were deleted, gprof would be completely machine independent => yup, it is o are (long) option names appropriate? o -k (--exclude-arc) cannot be implemented with getopt(); is new syntax (-k from/to) acceptable? If not, how to fix it? o in the FSF output, the call-graph index now prints the filename of static functions in parentheses; e.g., static function foo() that is defined in file bar.c would be printed as: [4] foo (bar.c) is this acceptable? should it be done only optionally? o symbols with addresses that map back to a different name are suppressed (happens with labels, for example); is this acceptable? should it be done only optionally?+ generalize to allow arbitrary histograms (not just time histograms)+ basic-block information currently replaces all symbols created from the core because of an ugly ordering conflict---for now, the current solution works, but something cleaner is desirable ==> cleaned up, but it's slower now+ convert to very new file format (back to trivial format, that is :)+ replace "dummy.h" for Alpha (if there is any use to it)+ add support for execution time profiling at a basic-block level+ fix filename-off-by-one bug for Alpha (see ~/tmp/d.[ch])---no longer relevant+ "-pg -a" doesn't work as expected because mcleanup() will overwrite the file generated by __bb_exit_func() (or vice versa)+ first basic-block of fac() seems to get credited to last basic-block of previous function => bug in basic_blocks.c+ flat profile should provide automatic scaling for per-call times because otherwise they'll always be zero on a fast machine with tons of small functions+ make "-a" imply to retain line number info (without actually generating the debugging information (unless -g is specified)---no, this is a bad idea, because it is not clear what level of debugging info should be requested (e.g., -g vs. -g3); leaving it up to the user seems best+ add long options support (or at least use getopt instead of ad-hoc implementation)+ split into files according to abstract objects that are manipulated+ replace sccsid by rcsid & add "end of ..." to every .c file+ use DBG() everywhere+ fix spacing (" ," -> "," etc.)+ use DEFUNs everywhere+ make compile cleanly with -Wall+ "gcc -pg -O2" doesn't work on tecc.c unless -fno-omit-frame-pointer is specified; find out why+ make things portable (prototypes, const, etc.)+ if NEW_GMON_OUT is not defined, have a flag that will allow to read new gmon.out style files. The idea being that everyone will use the new format for basic-block style profiling but the old format for regular gpprofiling
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?