summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2006-12-19 21:46:21 +0000
committerChris Lattner <sabre@nondot.org>2006-12-19 21:46:21 +0000
commit0be6fdf972389500ac322f39d4d1bced599b7409 (patch)
treea37893cd9910c2e67263a3d6c9f3e9b5a94d3f35 /docs
parent0e5f499638c8d277b9dc4a4385712177c53b5681 (diff)
downloadllvm-0be6fdf972389500ac322f39d4d1bced599b7409.tar.gz
llvm-0be6fdf972389500ac322f39d4d1bced599b7409.tar.bz2
llvm-0be6fdf972389500ac322f39d4d1bced599b7409.tar.xz
update to reflect changes in statistic class.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32691 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'docs')
-rw-r--r--docs/ProgrammersManual.html18
1 files changed, 10 insertions, 8 deletions
diff --git a/docs/ProgrammersManual.html b/docs/ProgrammersManual.html
index 0e1b1376f9..9c885814b1 100644
--- a/docs/ProgrammersManual.html
+++ b/docs/ProgrammersManual.html
@@ -35,7 +35,7 @@ option</a>
and the <tt>-debug-only</tt> option</a> </li>
</ul>
</li>
- <li><a href="#Statistic">The <tt>Statistic</tt> template &amp; <tt>-stats</tt>
+ <li><a href="#Statistic">The <tt>Statistic</tt> class &amp; <tt>-stats</tt>
option</a></li>
<!--
<li>The <tt>InstVisitor</tt> template
@@ -485,7 +485,7 @@ even if the source lives in multiple files.</p>
<!-- ======================================================================= -->
<div class="doc_subsection">
- <a name="Statistic">The <tt>Statistic</tt> template &amp; <tt>-stats</tt>
+ <a name="Statistic">The <tt>Statistic</tt> class &amp; <tt>-stats</tt>
option</a>
</div>
@@ -493,7 +493,7 @@ even if the source lives in multiple files.</p>
<p>The "<tt><a
href="/doxygen/Statistic_8h-source.html">llvm/ADT/Statistic.h</a></tt>" file
-provides a template named <tt>Statistic</tt> that is used as a unified way to
+provides a class named <tt>Statistic</tt> that is used as a unified way to
keep track of what the LLVM compiler is doing and how effective various
optimizations are. It is useful to see what optimizations are contributing to
making a particular program run faster.</p>
@@ -501,7 +501,7 @@ making a particular program run faster.</p>
<p>Often you may run your pass on some big program, and you're interested to see
how many times it makes a certain transformation. Although you can do this with
hand inspection, or some ad-hoc method, this is a real pain and not very useful
-for big programs. Using the <tt>Statistic</tt> template makes it very easy to
+for big programs. Using the <tt>Statistic</tt> class makes it very easy to
keep track of this information, and the calculated information is presented in a
uniform manner with the rest of the passes being executed.</p>
@@ -513,13 +513,15 @@ it are as follows:</p>
<div class="doc_code">
<pre>
-static Statistic&lt;&gt; NumXForms("mypassname", "The # of times I did stuff");
+#define <a href="#DEBUG_TYPE">DEBUG_TYPE</a> "mypassname" <i>// This goes before any #includes.</i>
+STATISTIC(NumXForms, "The # of times I did stuff");
</pre>
</div>
- <p>The <tt>Statistic</tt> template can emulate just about any data-type,
- but if you do not specify a template argument, it defaults to acting like
- an unsigned int counter (this is usually what you want).</p></li>
+ <p>The <tt>STATISTIC</tt> macro defines a static variable, whose name is
+ specified by the first argument. The pass name is taken from the DEBUG_TYPE
+ macro, and the description is taken from the second argument. The variable
+ defined ("NumXForms" in this case) acts like an unsigned int.</p></li>
<li><p>Whenever you make a transformation, bump the counter:</p>