diff options
Diffstat (limited to 'docs/WritingAnLLVMPass.html')
-rw-r--r-- | docs/WritingAnLLVMPass.html | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/docs/WritingAnLLVMPass.html b/docs/WritingAnLLVMPass.html index f65b6791d31d..925d9811a4ed 100644 --- a/docs/WritingAnLLVMPass.html +++ b/docs/WritingAnLLVMPass.html @@ -264,7 +264,7 @@ time.</p> <div class="doc_code"><pre> static char ID; - Hello() : FunctionPass((intptr_t)&ID) {} + Hello() : FunctionPass((intptr_t)&ID) {} </pre></div><p> <p> This declares pass identifier used by LLVM to identify pass. This allows LLVM to @@ -312,7 +312,7 @@ argument "<tt>hello</tt>", and a name "<tt>Hello World Pass</tt>".</p> <b>struct Hello</b> : <b>public</b> <a href="#FunctionPass">FunctionPass</a> { static char ID; - Hello() : FunctionPass((intptr_t)&ID) {} + Hello() : FunctionPass((intptr_t)&ID) {} <b>virtual bool</b> <a href="#runOnFunction">runOnFunction</a>(Function &F) { llvm::cerr << "<i>Hello: </i>" << F.getName() << "\n"; @@ -485,7 +485,7 @@ refering to function bodies in no predictable order, or adding and removing functions. Because nothing is known about the behavior of <tt>ModulePass</tt> subclasses, no optimization can be done for their execution. A module pass can use function level passes (e.g. dominators) using getAnalysis interface -<tt> getAnalysis<DominatorTree>(Function)</tt>. </p> +<tt> getAnalysis<DominatorTree>(Function)</tt>. </p> <p>To write a correct <tt>ModulePass</tt> subclass, derive from <tt>ModulePass</tt> and overload the <tt>runOnModule</tt> method with the @@ -746,7 +746,7 @@ program, or false if they didn't. </p> <b>virtual bool</b> doInitialization(Loop *, LPPassManager &LPM); </pre></div> -The <tt>doInitialization</tt> method is designed to do simple initialization +<p>The <tt>doInitialization</tt> method is designed to do simple initialization type of stuff that does not depend on the functions being processed. The <tt>doInitialization</tt> method call is not scheduled to overlap with any other pass executions (thus it should be very fast). LPPassManager @@ -1159,7 +1159,7 @@ For example:</p> } </pre></div> -In above example, runOnFunction for DominatorTree is called by pass manager +<p>In above example, runOnFunction for DominatorTree is called by pass manager before returning a reference to the desired pass.</p> <p> @@ -1797,6 +1797,8 @@ places (for global resources). Although this is a simple extension, we simply 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> + <!-- *********************************************************************** --> <hr> <address> |