<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <link rel="stylesheet" href="style.css" type="text/css"> <meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> <link rel="Start" href="index.html"> <link rel="previous" href="Llvm.html"> <link rel="next" href="Llvm_bitreader.html"> <link rel="Up" href="index.html"> <link title="Index of types" rel=Appendix href="index_types.html"> <link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> <link title="Index of values" rel=Appendix href="index_values.html"> <link title="Index of modules" rel=Appendix href="index_modules.html"> <link title="Llvm" rel="Chapter" href="Llvm.html"> <link title="Llvm_analysis" rel="Chapter" href="Llvm_analysis.html"> <link title="Llvm_bitreader" rel="Chapter" href="Llvm_bitreader.html"> <link title="Llvm_bitwriter" rel="Chapter" href="Llvm_bitwriter.html"> <link title="Llvm_executionengine" rel="Chapter" href="Llvm_executionengine.html"> <link title="Llvm_scalar_opts" rel="Chapter" href="Llvm_scalar_opts.html"> <link title="Llvm_target" rel="Chapter" href="Llvm_target.html"><title>Llvm_analysis</title> </head> <body> <div class="navbar"><a href="Llvm.html">Previous</a> <a href="index.html">Up</a> <a href="Llvm_bitreader.html">Next</a> </div> <center><h1>Module <a href="type_Llvm_analysis.html">Llvm_analysis</a></h1></center> <br> <pre><span class="keyword">module</span> Llvm_analysis: <code class="code"><span class="keyword">sig</span></code> <a href="Llvm_analysis.html">..</a> <code class="code"><span class="keyword">end</span></code></pre>Intermediate representation analysis. <p> This interface provides an ocaml API for LLVM IR analyses, the classes in the Analysis library.<br> <hr width="100%"> <pre><span class="keyword">val</span> <a name="VALverify_module"></a>verify_module : <code class="type"><a href="Llvm.html#TYPEllmodule">Llvm.llmodule</a> -> string option</code></pre><div class="info"> <code class="code">verify_module m</code> returns <code class="code"><span class="constructor">None</span></code> if the module <code class="code">m</code> is valid, and <code class="code"><span class="constructor">Some</span> reason</code> if it is invalid. <code class="code">reason</code> is a string containing a human-readable validation report. See <code class="code">llvm::verifyModule</code>.<br> </div> <pre><span class="keyword">val</span> <a name="VALverify_function"></a>verify_function : <code class="type"><a href="Llvm.html#TYPEllvalue">Llvm.llvalue</a> -> bool</code></pre><div class="info"> <code class="code">verify_function f</code> returns <code class="code"><span class="constructor">None</span></code> if the function <code class="code">f</code> is valid, and <code class="code"><span class="constructor">Some</span> reason</code> if it is invalid. <code class="code">reason</code> is a string containing a human-readable validation report. See <code class="code">llvm::verifyFunction</code>.<br> </div> <pre><span class="keyword">val</span> <a name="VALassert_valid_module"></a>assert_valid_module : <code class="type"><a href="Llvm.html#TYPEllmodule">Llvm.llmodule</a> -> unit</code></pre><div class="info"> <code class="code">verify_module m</code> returns if the module <code class="code">m</code> is valid, but prints a validation report to <code class="code">stderr</code> and aborts the program if it is invalid. See <code class="code">llvm::verifyModule</code>.<br> </div> <pre><span class="keyword">val</span> <a name="VALassert_valid_function"></a>assert_valid_function : <code class="type"><a href="Llvm.html#TYPEllvalue">Llvm.llvalue</a> -> unit</code></pre><div class="info"> <code class="code">verify_function f</code> returns if the function <code class="code">f</code> is valid, but prints a validation report to <code class="code">stderr</code> and aborts the program if it is invalid. See <code class="code">llvm::verifyFunction</code>.<br> </div> <pre><span class="keyword">val</span> <a name="VALview_function_cfg"></a>view_function_cfg : <code class="type"><a href="Llvm.html#TYPEllvalue">Llvm.llvalue</a> -> unit</code></pre><div class="info"> <code class="code">view_function_cfg f</code> opens up a ghostscript window displaying the CFG of the current function with the code for each basic block inside. See <code class="code">llvm::<span class="constructor">Function</span>::viewCFG</code>.<br> </div> <pre><span class="keyword">val</span> <a name="VALview_function_cfg_only"></a>view_function_cfg_only : <code class="type"><a href="Llvm.html#TYPEllvalue">Llvm.llvalue</a> -> unit</code></pre><div class="info"> <code class="code">view_function_cfg_only f</code> works just like <code class="code">view_function_cfg</code>, but does not include the contents of basic blocks into the nodes. See <code class="code">llvm::<span class="constructor">Function</span>::viewCFGOnly</code>.<br> </div> </body></html>