193 lines
		
	
	
	
		
			11 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
		
		
			
		
	
	
			193 lines
		
	
	
	
		
			11 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
| 
								 | 
							
								<html lang="en">
							 | 
						||
| 
								 | 
							
								<head>
							 | 
						||
| 
								 | 
							
								<title>Output Options - GNU gprof</title>
							 | 
						||
| 
								 | 
							
								<meta http-equiv="Content-Type" content="text/html">
							 | 
						||
| 
								 | 
							
								<meta name="description" content="GNU gprof">
							 | 
						||
| 
								 | 
							
								<meta name="generator" content="makeinfo 4.7">
							 | 
						||
| 
								 | 
							
								<link title="Top" rel="start" href="index.html#Top">
							 | 
						||
| 
								 | 
							
								<link rel="up" href="Invoking.html#Invoking" title="Invoking">
							 | 
						||
| 
								 | 
							
								<link rel="next" href="Analysis-Options.html#Analysis-Options" title="Analysis Options">
							 | 
						||
| 
								 | 
							
								<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
							 | 
						||
| 
								 | 
							
								<!--
							 | 
						||
| 
								 | 
							
								This file documents the gprof profiler of the GNU system.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								Copyright (C) 1988, 92, 97, 98, 99, 2000, 2001, 2003, 2007 Free Software Foundation, Inc.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								Permission is granted to copy, distribute and/or modify this document
							 | 
						||
| 
								 | 
							
								under the terms of the GNU Free Documentation License, Version 1.1
							 | 
						||
| 
								 | 
							
								or any later version published by the Free Software Foundation;
							 | 
						||
| 
								 | 
							
								with no Invariant Sections, with no Front-Cover Texts, and with no
							 | 
						||
| 
								 | 
							
								Back-Cover Texts.  A copy of the license is included in the
							 | 
						||
| 
								 | 
							
								section entitled ``GNU Free Documentation License''.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								man end-->
							 | 
						||
| 
								 | 
							
								<meta http-equiv="Content-Style-Type" content="text/css">
							 | 
						||
| 
								 | 
							
								<style type="text/css"><!--
							 | 
						||
| 
								 | 
							
								  pre.display { font-family:inherit }
							 | 
						||
| 
								 | 
							
								  pre.format  { font-family:inherit }
							 | 
						||
| 
								 | 
							
								  pre.smalldisplay { font-family:inherit; font-size:smaller }
							 | 
						||
| 
								 | 
							
								  pre.smallformat  { font-family:inherit; font-size:smaller }
							 | 
						||
| 
								 | 
							
								  pre.smallexample { font-size:smaller }
							 | 
						||
| 
								 | 
							
								  pre.smalllisp    { font-size:smaller }
							 | 
						||
| 
								 | 
							
								  span.sc { font-variant:small-caps }
							 | 
						||
| 
								 | 
							
								  span.roman { font-family: serif; font-weight: normal; } 
							 | 
						||
| 
								 | 
							
								--></style>
							 | 
						||
| 
								 | 
							
								</head>
							 | 
						||
| 
								 | 
							
								<body>
							 | 
						||
| 
								 | 
							
								<div class="node">
							 | 
						||
| 
								 | 
							
								<p>
							 | 
						||
| 
								 | 
							
								<a name="Output-Options"></a>Next: <a rel="next" accesskey="n" href="Analysis-Options.html#Analysis-Options">Analysis Options</a>,
							 | 
						||
| 
								 | 
							
								Up: <a rel="up" accesskey="u" href="Invoking.html#Invoking">Invoking</a>
							 | 
						||
| 
								 | 
							
								<hr><br>
							 | 
						||
| 
								 | 
							
								</div>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								<h3 class="section">4.1 Output Options</h3>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								<!-- man begin OPTIONS -->
							 | 
						||
| 
								 | 
							
								<p>These options specify which of several output formats
							 | 
						||
| 
								 | 
							
								<code>gprof</code> should produce.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								   <p>Many of these options take an optional <dfn>symspec</dfn> to specify
							 | 
						||
| 
								 | 
							
								functions to be included or excluded.  These options can be
							 | 
						||
| 
								 | 
							
								specified multiple times, with different symspecs, to include
							 | 
						||
| 
								 | 
							
								or exclude sets of symbols.  See <a href="Symspecs.html#Symspecs">Symspecs</a>.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								   <p>Specifying any of these options overrides the default (<span class="samp">-p -q</span>),
							 | 
						||
| 
								 | 
							
								which prints a flat profile and call graph analysis
							 | 
						||
| 
								 | 
							
								for all functions.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								     <dl>
							 | 
						||
| 
								 | 
							
								<dt><code>-A[</code><var>symspec</var><code>]</code><dt><code>--annotated-source[=</code><var>symspec</var><code>]</code><dd>The <span class="samp">-A</span> option causes <code>gprof</code> to print annotated source code. 
							 | 
						||
| 
								 | 
							
								If <var>symspec</var> is specified, print output only for matching symbols. 
							 | 
						||
| 
								 | 
							
								See <a href="Annotated-Source.html#Annotated-Source">The Annotated Source Listing</a>.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								     <br><dt><code>-b</code><dt><code>--brief</code><dd>If the <span class="samp">-b</span> option is given, <code>gprof</code> doesn't print the
							 | 
						||
| 
								 | 
							
								verbose blurbs that try to explain the meaning of all of the fields in
							 | 
						||
| 
								 | 
							
								the tables.  This is useful if you intend to print out the output, or
							 | 
						||
| 
								 | 
							
								are tired of seeing the blurbs.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								     <br><dt><code>-C[</code><var>symspec</var><code>]</code><dt><code>--exec-counts[=</code><var>symspec</var><code>]</code><dd>The <span class="samp">-C</span> option causes <code>gprof</code> to
							 | 
						||
| 
								 | 
							
								print a tally of functions and the number of times each was called. 
							 | 
						||
| 
								 | 
							
								If <var>symspec</var> is specified, print tally only for matching symbols.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								     <p>If the profile data file contains basic-block count records, specifying
							 | 
						||
| 
								 | 
							
								the <span class="samp">-l</span> option, along with <span class="samp">-C</span>, will cause basic-block
							 | 
						||
| 
								 | 
							
								execution counts to be tallied and displayed.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								     <br><dt><code>-i</code><dt><code>--file-info</code><dd>The <span class="samp">-i</span> option causes <code>gprof</code> to display summary information
							 | 
						||
| 
								 | 
							
								about the profile data file(s) and then exit.  The number of histogram,
							 | 
						||
| 
								 | 
							
								call graph, and basic-block count records is displayed.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								     <br><dt><code>-I </code><var>dirs</var><dt><code>--directory-path=</code><var>dirs</var><dd>The <span class="samp">-I</span> option specifies a list of search directories in
							 | 
						||
| 
								 | 
							
								which to find source files.  Environment variable <var>GPROF_PATH</var>
							 | 
						||
| 
								 | 
							
								can also be used to convey this information. 
							 | 
						||
| 
								 | 
							
								Used mostly for annotated source output.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								     <br><dt><code>-J[</code><var>symspec</var><code>]</code><dt><code>--no-annotated-source[=</code><var>symspec</var><code>]</code><dd>The <span class="samp">-J</span> option causes <code>gprof</code> not to
							 | 
						||
| 
								 | 
							
								print annotated source code. 
							 | 
						||
| 
								 | 
							
								If <var>symspec</var> is specified, <code>gprof</code> prints annotated source,
							 | 
						||
| 
								 | 
							
								but excludes matching symbols.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								     <br><dt><code>-L</code><dt><code>--print-path</code><dd>Normally, source filenames are printed with the path
							 | 
						||
| 
								 | 
							
								component suppressed.  The <span class="samp">-L</span> option causes <code>gprof</code>
							 | 
						||
| 
								 | 
							
								to print the full pathname of
							 | 
						||
| 
								 | 
							
								source filenames, which is determined
							 | 
						||
| 
								 | 
							
								from symbolic debugging information in the image file
							 | 
						||
| 
								 | 
							
								and is relative to the directory in which the compiler
							 | 
						||
| 
								 | 
							
								was invoked.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								     <br><dt><code>-p[</code><var>symspec</var><code>]</code><dt><code>--flat-profile[=</code><var>symspec</var><code>]</code><dd>The <span class="samp">-p</span> option causes <code>gprof</code> to print a flat profile. 
							 | 
						||
| 
								 | 
							
								If <var>symspec</var> is specified, print flat profile only for matching symbols. 
							 | 
						||
| 
								 | 
							
								See <a href="Flat-Profile.html#Flat-Profile">The Flat Profile</a>.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								     <br><dt><code>-P[</code><var>symspec</var><code>]</code><dt><code>--no-flat-profile[=</code><var>symspec</var><code>]</code><dd>The <span class="samp">-P</span> option causes <code>gprof</code> to suppress printing a flat profile. 
							 | 
						||
| 
								 | 
							
								If <var>symspec</var> is specified, <code>gprof</code> prints a flat profile,
							 | 
						||
| 
								 | 
							
								but excludes matching symbols.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								     <br><dt><code>-q[</code><var>symspec</var><code>]</code><dt><code>--graph[=</code><var>symspec</var><code>]</code><dd>The <span class="samp">-q</span> option causes <code>gprof</code> to print the call graph analysis. 
							 | 
						||
| 
								 | 
							
								If <var>symspec</var> is specified, print call graph only for matching symbols
							 | 
						||
| 
								 | 
							
								and their children. 
							 | 
						||
| 
								 | 
							
								See <a href="Call-Graph.html#Call-Graph">The Call Graph</a>.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								     <br><dt><code>-Q[</code><var>symspec</var><code>]</code><dt><code>--no-graph[=</code><var>symspec</var><code>]</code><dd>The <span class="samp">-Q</span> option causes <code>gprof</code> to suppress printing the
							 | 
						||
| 
								 | 
							
								call graph. 
							 | 
						||
| 
								 | 
							
								If <var>symspec</var> is specified, <code>gprof</code> prints a call graph,
							 | 
						||
| 
								 | 
							
								but excludes matching symbols.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								     <br><dt><code>-t</code><dt><code>--table-length=</code><var>num</var><dd>The <span class="samp">-t</span> option causes the <var>num</var> most active source lines in
							 | 
						||
| 
								 | 
							
								each source file to be listed when source annotation is enabled.  The
							 | 
						||
| 
								 | 
							
								default is 10.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								     <br><dt><code>-y</code><dt><code>--separate-files</code><dd>This option affects annotated source output only. 
							 | 
						||
| 
								 | 
							
								Normally, <code>gprof</code> prints annotated source files
							 | 
						||
| 
								 | 
							
								to standard-output.  If this option is specified,
							 | 
						||
| 
								 | 
							
								annotated source for a file named <span class="file">path/</span><var>filename</var>
							 | 
						||
| 
								 | 
							
								is generated in the file <var>filename</var><span class="file">-ann</span>.  If the underlying
							 | 
						||
| 
								 | 
							
								file system would truncate <var>filename</var><span class="file">-ann</span> so that it
							 | 
						||
| 
								 | 
							
								overwrites the original <var>filename</var>, <code>gprof</code> generates
							 | 
						||
| 
								 | 
							
								annotated source in the file <var>filename</var><span class="file">.ann</span> instead (if the
							 | 
						||
| 
								 | 
							
								original file name has an extension, that extension is <em>replaced</em>
							 | 
						||
| 
								 | 
							
								with <span class="file">.ann</span>).
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								     <br><dt><code>-Z[</code><var>symspec</var><code>]</code><dt><code>--no-exec-counts[=</code><var>symspec</var><code>]</code><dd>The <span class="samp">-Z</span> option causes <code>gprof</code> not to
							 | 
						||
| 
								 | 
							
								print a tally of functions and the number of times each was called. 
							 | 
						||
| 
								 | 
							
								If <var>symspec</var> is specified, print tally, but exclude matching symbols.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								     <br><dt><code>-r</code><dt><code>--function-ordering</code><dd>The <span class="samp">--function-ordering</span> option causes <code>gprof</code> to print a
							 | 
						||
| 
								 | 
							
								suggested function ordering for the program based on profiling data. 
							 | 
						||
| 
								 | 
							
								This option suggests an ordering which may improve paging, tlb and
							 | 
						||
| 
								 | 
							
								cache behavior for the program on systems which support arbitrary
							 | 
						||
| 
								 | 
							
								ordering of functions in an executable.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								     <p>The exact details of how to force the linker to place functions
							 | 
						||
| 
								 | 
							
								in a particular order is system dependent and out of the scope of this
							 | 
						||
| 
								 | 
							
								manual.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								     <br><dt><code>-R </code><var>map_file</var><dt><code>--file-ordering </code><var>map_file</var><dd>The <span class="samp">--file-ordering</span> option causes <code>gprof</code> to print a
							 | 
						||
| 
								 | 
							
								suggested .o link line ordering for the program based on profiling data. 
							 | 
						||
| 
								 | 
							
								This option suggests an ordering which may improve paging, tlb and
							 | 
						||
| 
								 | 
							
								cache behavior for the program on systems which do not support arbitrary
							 | 
						||
| 
								 | 
							
								ordering of functions in an executable.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								     <p>Use of the <span class="samp">-a</span> argument is highly recommended with this option.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								     <p>The <var>map_file</var> argument is a pathname to a file which provides
							 | 
						||
| 
								 | 
							
								function name to object file mappings.  The format of the file is similar to
							 | 
						||
| 
								 | 
							
								the output of the program <code>nm</code>.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								     <pre class="smallexample">          c-parse.o:00000000 T yyparse
							 | 
						||
| 
								 | 
							
								          c-parse.o:00000004 C yyerrflag
							 | 
						||
| 
								 | 
							
								          c-lang.o:00000000 T maybe_objc_method_name
							 | 
						||
| 
								 | 
							
								          c-lang.o:00000000 T print_lang_statistics
							 | 
						||
| 
								 | 
							
								          c-lang.o:00000000 T recognize_objc_keyword
							 | 
						||
| 
								 | 
							
								          c-decl.o:00000000 T print_lang_identifier
							 | 
						||
| 
								 | 
							
								          c-decl.o:00000000 T print_lang_type
							 | 
						||
| 
								 | 
							
								          ...
							 | 
						||
| 
								 | 
							
								     </pre>
							 | 
						||
| 
								 | 
							
								     <p>To create a <var>map_file</var> with <span class="sc">gnu</span> <code>nm</code>, type a command like
							 | 
						||
| 
								 | 
							
								<kbd>nm --extern-only --defined-only -v --print-file-name program-name</kbd>.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								     <br><dt><code>-T</code><dt><code>--traditional</code><dd>The <span class="samp">-T</span> option causes <code>gprof</code> to print its output in
							 | 
						||
| 
								 | 
							
								“traditional” BSD style.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								     <br><dt><code>-w </code><var>width</var><dt><code>--width=</code><var>width</var><dd>Sets width of output lines to <var>width</var>. 
							 | 
						||
| 
								 | 
							
								Currently only used when printing the function index at the bottom
							 | 
						||
| 
								 | 
							
								of the call graph.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								     <br><dt><code>-x</code><dt><code>--all-lines</code><dd>This option affects annotated source output only. 
							 | 
						||
| 
								 | 
							
								By default, only the lines at the beginning of a basic-block
							 | 
						||
| 
								 | 
							
								are annotated.  If this option is specified, every line in
							 | 
						||
| 
								 | 
							
								a basic-block is annotated by repeating the annotation for the
							 | 
						||
| 
								 | 
							
								first line.  This behavior is similar to <code>tcov</code>'s <span class="samp">-a</span>.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								     <br><dt><code>--demangle[=</code><var>style</var><code>]</code><dt><code>--no-demangle</code><dd>These options control whether C++ symbol names should be demangled when
							 | 
						||
| 
								 | 
							
								printing output.  The default is to demangle symbols.  The
							 | 
						||
| 
								 | 
							
								<code>--no-demangle</code> option may be used to turn off demangling. Different
							 | 
						||
| 
								 | 
							
								compilers have different mangling styles.  The optional demangling style
							 | 
						||
| 
								 | 
							
								argument can be used to choose an appropriate demangling style for your
							 | 
						||
| 
								 | 
							
								compiler. 
							 | 
						||
| 
								 | 
							
								</dl>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								   </body></html>
							 | 
						||
| 
								 | 
							
								
							 |