diff options
author | Jeff Law <law@redhat.com> | 1995-12-25 04:32:29 +0000 |
---|---|---|
committer | Jeff Law <law@redhat.com> | 1995-12-25 04:32:29 +0000 |
commit | 32843f948c896c825b38465b5495044f9f6cb298 (patch) | |
tree | 9eed0cebd32f609fb20ec5fc2b5ef95ec7ffe377 /gprof/gprof.c | |
parent | 7920c1d195114002311c4a8b1209603a8c57d315 (diff) | |
download | gdb-32843f948c896c825b38465b5495044f9f6cb298.zip gdb-32843f948c896c825b38465b5495044f9f6cb298.tar.gz gdb-32843f948c896c825b38465b5495044f9f6cb298.tar.bz2 |
* core.c (core_sym_class): Ignore symbols without BSF_FUNCTION
set if ignore_non_function is set.
* gprof.h (ignore_non_functions): Declare.
* gprof.c (ignore_non_functions): Define.
(long_options): Add "ignore-non-functions".
(usage): Add new options.
(main): Recognize "-D" and "--ignore-non-functions" option.
So we can get more accurate information on Solaris, HPUX and other
systems that can uniquely identify function symbols.
Diffstat (limited to 'gprof/gprof.c')
-rw-r--r-- | gprof/gprof.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/gprof/gprof.c b/gprof/gprof.c index 5da3180..0f9dd85 100644 --- a/gprof/gprof.c +++ b/gprof/gprof.c @@ -50,6 +50,7 @@ bool ignore_zeros = TRUE; bool line_granularity = FALSE; bool print_descriptions = TRUE; bool print_path = FALSE; +bool ignore_non_functions = FALSE; File_Format file_format = FF_AUTO; bool first_output = TRUE; @@ -76,6 +77,7 @@ static struct option long_options[] = { {"line", no_argument, 0, 'l'}, {"no-static", no_argument, 0, 'a'}, + {"ignore-non-functions", no_argument, 0, 'D'}, /* output styles: */ @@ -129,7 +131,7 @@ static void DEFUN (usage, (stream, status), FILE * stream AND int status) { fprintf (stream, "\ -Usage: %s [-[abchilLsTvwxyz]] [-[ACeEfFJnNOpPqQZ][name]] [-I dirs]\n\ +Usage: %s [-[abcDhilLsTvwxyz]] [-[ACeEfFJnNOpPqQZ][name]] [-I dirs]\n\ [-d[num]] [-k from/to] [-m min-count] [-t table-length]\n\ [--[no-]annotated-source[=name]] [--[no-]exec-counts[=name]]\n\ [--[no-]flat-profile[=name]] [--[no-]graph[=name]]\n\ @@ -138,7 +140,7 @@ Usage: %s [-[abchilLsTvwxyz]] [-[ACeEfFJnNOpPqQZ][name]] [-I dirs]\n\ [--file-format=name] [--file-info] [--help] [--line] [--min-count=n]\n\ [--no-static] [--print-path] [--separate-files]\n\ [--static-call-graph] [--sum] [--table-length=len] [--traditional]\n\ - [--version] [--width=n]\n\ + [--version] [--width=n] [--ignore-non-functions]\n\ [image-file] [profile-file...]\n", whoami); done (status); @@ -156,7 +158,7 @@ DEFUN (main, (argc, argv), int argc AND char **argv) xmalloc_set_program_name (whoami); while ((ch = getopt_long (argc, argv, - "aA::bBcCd::e:E:f:F:hiI:J::k:lLm:n::N::O:p::P::q::Q::st:Tvw:xyzZ::", + "aA::bBcCdD::e:E:f:F:hiI:J::k:lLm:n::N::O:p::P::q::Q::st:Tvw:xyzZ::", long_options, 0)) != EOF) { @@ -206,6 +208,9 @@ DEFUN (main, (argc, argv), int argc AND char **argv) printf ("%s: debugging not supported; -d ignored\n", whoami); #endif /* DEBUG */ break; + case 'D': + ignore_non_functions = TRUE; + break; case 'E': sym_id_add (optarg, EXCL_TIME); case 'e': |