Stub out another couple sections that it looks like 426's MP1 will really
authorChris Lattner <sabre@nondot.org>
Mon, 9 Sep 2002 05:49:39 +0000 (05:49 +0000)
committerChris Lattner <sabre@nondot.org>
Mon, 9 Sep 2002 05:49:39 +0000 (05:49 +0000)
need.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3631 91177308-0d34-0410-b5e6-96231b3b80d8

docs/ProgrammersManual.html

index 548a6828c116fef112b9c4db5d4268ac1c3dac16..9d4f9615d403f40420d9697e20094531c9d50b1c 100644 (file)
                                        in a <tt>Function</tt></a>
       <li><a href="#iterate_basicblock">Iterating over the <tt>Instruction</tt>s
                                        in a <tt>BasicBlock</tt></a>
+      <li><a href="#iterate_institer">Iterating over the <tt>Instruction</tt>s
+                                       in a <tt>Function</tt></a>
       <li><a href="#iterate_convert">Turning an iterator into a class
                                         pointer</a>
       <li><a href="#iterate_complex">Finding call sites: a more complex
                                         example</a>
+      <li><a href="#iterate_chains">Iterating over def-use &amp; use-def
+                                    chains</a>
     </ul>
     <li><a href="#simplechanges">Making simple changes</a>
     <ul>
@@ -268,6 +272,19 @@ the pointer value you might expect.  This is a deprecated interface that will
 be removed in the future, so it's best not to depend on it.  To print out the
 pointer value for now, you must cast to <tt>void*</tt>.<p>
 
+<!-- _______________________________________________________________________ -->
+</ul><h4><a name="iterate_institer"><hr size=0>Iterating over the
+<tt>Instruction</tt>s in a <tt>Function</tt></h4><ul>
+
+<!-- Using llvm/Support/InstIterator.h to directly get at the instructions in a
+function.
+
+Warning: *I returns an Instruction*, not an Instruction&
+
+ -->
+
+
+
 <!-- _______________________________________________________________________ -->
 </ul><h4><a name="iterate_convert"><hr size=0>Turning an iterator into a class
 pointer </h4><ul>
@@ -328,11 +345,9 @@ better to explicitly grab the next instruction directly from inst.
        iterators automatically convert to 'Class *' except in dyn_cast<> case
  -->
 
-<!--
-_______________________________________________________________________
---> </ul><h4><a name="iterate_complex"><hr size=0>Finding call sites:
-a slightly more complex example
-</h4><ul>
+<!--_______________________________________________________________________-->
+</ul><h4><a name="iterate_complex"><hr size=0>Finding call sites: a slightly
+more complex example </h4><ul>
 
 Say that you're writing a FunctionPass and would like to count all the
 locations in the entire module (that is, across every <tt>Function</tt>)
@@ -394,6 +409,17 @@ virtual runOnFunction(Function&amp F) {
 We could then print out the value of callCounter (if we wanted to)
 inside the doFinalization method of our FunctionPass.
 
+
+<!--_______________________________________________________________________-->
+</ul><h4><a name="iterate_chains"><hr size=0>Iterating over def-use &amp;
+use-def chains</h4><ul>
+
+
+<!--
+  def-use chains ("finding all users of"): Value::use_begin/use_end
+  use-def chains ("finding all values used"): User::op_begin/op_end [op=operand]
+-->
+
 <!-- ======================================================================= -->
 </ul><table width="100%" bgcolor="#441188" border=0 cellpadding=4 cellspacing=0>
 <tr><td>&nbsp;</td><td width="100%">&nbsp; 
@@ -1235,10 +1261,6 @@ pointer to the parent Function.
 <a href="mailto:sabre@nondot.org">Chris Lattner</a></address>
 <!-- Created: Tue Aug  6 15:00:33 CDT 2002 -->
 <!-- hhmts start -->
-<<<<<<< ProgrammersManual.html
-Last modified: Fri Sep  6 18:24:38 EDT 2002
-=======
-Last modified: Fri Sep  6 18:03:31 EDT 2002
->>>>>>> 1.10
+Last modified: Mon Sep  9 00:48:53 CDT 2002
 <!-- hhmts end -->
 </font></body></html>