[llvm-commits] CVS: llvm/docs/WritingAnLLVMPass.html

Devang Patel dpatel at apple.com
Mon Apr 16 17:17:32 PDT 2007



Changes in directory llvm/docs:

WritingAnLLVMPass.html updated: 1.55 -> 1.56
---
Log message:

Remove "ModulePasses requiring FunctionPasses" from the list of future
extensions.


---
Diffs of the changes:  (+2 -29)

 WritingAnLLVMPass.html |   31 ++-----------------------------
 1 files changed, 2 insertions(+), 29 deletions(-)


Index: llvm/docs/WritingAnLLVMPass.html
diff -u llvm/docs/WritingAnLLVMPass.html:1.55 llvm/docs/WritingAnLLVMPass.html:1.56
--- llvm/docs/WritingAnLLVMPass.html:1.55	Mon Apr 16 16:28:14 2007
+++ llvm/docs/WritingAnLLVMPass.html	Mon Apr 16 19:17:11 2007
@@ -103,8 +103,6 @@
   <li><a href="#future">Future extensions planned</a>
     <ul>
     <li><a href="#SMP">Multithreaded LLVM</a></li>
-    <li><a href="#PassFunctionPass"><tt>ModulePass</tt>es requiring 
-                                    <tt>FunctionPass</tt>es</a></li>
     </ul></li>
 </ol>
 
@@ -1137,7 +1135,7 @@
 <div class="doc_code"><pre>
    bool ModuleLevelPass::runOnModule(Module &M) {
      ...
-     DominatorTree &DT = getAnalysis<DominatorTree>(Function &F);
+     DominatorTree &DT = getAnalysis<DominatorTree>(Func);
      ...
    }
 </pre></div>
@@ -1780,31 +1778,6 @@
 haven't had time (or multiprocessor machines, thus a reason) to implement this.
 Despite that, we have kept the LLVM passes SMP ready, and you should too.</p>
 
-</div>
-
-<!-- _______________________________________________________________________ -->
-<div class="doc_subsubsection">
-<a name="PassFunctionPass"><tt>ModulePass</tt>es requiring <tt>FunctionPass</tt>es</a>
-</div>
-
-<div class="doc_text">
-
-<p>Currently it is illegal for a <a href="#ModulePass"><tt>ModulePass</tt></a>
-to require a <a href="#FunctionPass"><tt>FunctionPass</tt></a>.  This is because
-there is only one instance of the <a
-href="#FunctionPass"><tt>FunctionPass</tt></a> object ever created, thus nowhere
-to store information for all of the functions in the program at the same time.
-Although this has come up a couple of times before, this has always been worked
-around by factoring one big complicated pass into a global and an
-interprocedural part, both of which are distinct.  In the future, it would be
-nice to have this though.</p>
-
-<p>Note that it is no problem for a <a
-href="#FunctionPass"><tt>FunctionPass</tt></a> to require the results of a <a
-href="#ModulePass"><tt>ModulePass</tt></a>, only the other way around.</p>
-
-</div>
-
 <!-- *********************************************************************** -->
 <hr>
 <address>
@@ -1815,7 +1788,7 @@
 
   <a href="mailto:sabre at nondot.org">Chris Lattner</a><br>
   <a href="http://llvm.org">The LLVM Compiler Infrastructure</a><br>
-  Last modified: $Date: 2007/04/16 21:28:14 $
+  Last modified: $Date: 2007/04/17 00:17:11 $
 </address>
 
 </body>






More information about the llvm-commits mailing list