Symspecs
========
Many of the output options allow functions to be included or excluded
using "symspecs" (symbol specifications), which observe the following
syntax:
filename_containing_a_dot
| funcname_not_containing_a_dot
| linenumber
| ( [ any_filename ] `:' ( any_funcname | linenumber ) )
Here are some sample symspecs:
`main.c'
Selects everything in file `main.c'--the dot in the string tells
`gprof' to interpret the string as a filename, rather than as a
function name. To select a file whose name does not contain a
dot, a trailing colon should be specified. For example, `odd:' is
interpreted as the file named `odd'.
`main'
Selects all functions named `main'.
Note that there may be multiple instances of the same function name
because some of the definitions may be local (i.e., static).
Unless a function name is unique in a program, you must use the
colon notation explained below to specify a function from a
specific source file.
Sometimes, function names contain dots. In such cases, it is
necessary to add a leading colon to the name. For example,
`:.mul' selects function `.mul'.
In some object file formats, symbols have a leading underscore.
`gprof' will normally not print these underscores. When you name a
symbol in a symspec, you should type it exactly as `gprof' prints
it in its output. For example, if the compiler produces a symbol
`_main' from your `main' function, `gprof' still prints it as
`main' in its output, so you should use `main' in symspecs.
`main.c:main'
Selects function `main' in file `main.c'.
`main.c:134'
Selects line 134 in file `main.c'.