summaryrefslogtreecommitdiff
path: root/docs/CommandGuide/llvm-prof.rst
diff options
context:
space:
mode:
authorDaniel Dunbar <daniel@zuster.org>2012-05-08 16:50:35 +0000
committerDaniel Dunbar <daniel@zuster.org>2012-05-08 16:50:35 +0000
commit3b709d5f5532bacb6c351def8c9bc7efef36fa33 (patch)
treeb102b42b9ae1e20ad6553249b348619b34f11669 /docs/CommandGuide/llvm-prof.rst
parentf647c1b7776f34125441f6edeb449be63b470dd7 (diff)
downloadllvm-3b709d5f5532bacb6c351def8c9bc7efef36fa33.tar.gz
llvm-3b709d5f5532bacb6c351def8c9bc7efef36fa33.tar.bz2
llvm-3b709d5f5532bacb6c351def8c9bc7efef36fa33.tar.xz
[docs] Add ReST version of all the man pages.
- The POD versions are slated for execution, but are still around until llvm.org machinery is in place. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@156384 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'docs/CommandGuide/llvm-prof.rst')
-rw-r--r--docs/CommandGuide/llvm-prof.rst63
1 files changed, 63 insertions, 0 deletions
diff --git a/docs/CommandGuide/llvm-prof.rst b/docs/CommandGuide/llvm-prof.rst
new file mode 100644
index 0000000000..e8d0b19ca9
--- /dev/null
+++ b/docs/CommandGuide/llvm-prof.rst
@@ -0,0 +1,63 @@
+llvm-prof - print execution profile of LLVM program
+===================================================
+
+
+SYNOPSIS
+--------
+
+
+**llvm-prof** [*options*] [*bitcode file*] [*llvmprof.out*]
+
+
+DESCRIPTION
+-----------
+
+
+The **llvm-prof** tool reads in an *llvmprof.out* file (which can
+optionally use a specific file with the third program argument), a bitcode file
+for the program, and produces a human readable report, suitable for determining
+where the program hotspots are.
+
+This program is often used in conjunction with the *utils/profile.pl*
+script. This script automatically instruments a program, runs it with the JIT,
+then runs **llvm-prof** to format a report. To get more information about
+*utils/profile.pl*, execute it with the **-help** option.
+
+
+OPTIONS
+-------
+
+
+
+**--annotated-llvm** or **-A**
+
+ In addition to the normal report printed, print out the code for the
+ program, annotated with execution frequency information. This can be
+ particularly useful when trying to visualize how frequently basic blocks
+ are executed. This is most useful with basic block profiling
+ information or better.
+
+
+
+**--print-all-code**
+
+ Using this option enables the **--annotated-llvm** option, but it
+ prints the entire module, instead of just the most commonly executed
+ functions.
+
+
+
+**--time-passes**
+
+ Record the amount of time needed for each pass and print it to standard
+ error.
+
+
+
+
+EXIT STATUS
+-----------
+
+
+**llvm-prof** returns 1 if it cannot load the bitcode file or the profile
+information. Otherwise, it exits with zero.