<!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="next" href="Llvm_executionengine.ExecutionEngine.html"> <link rel="Up" href="Llvm_executionengine.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_executionengine.GenericValue</title> </head> <body> <div class="navbar"> <a href="Llvm_executionengine.html">Up</a> <a href="Llvm_executionengine.ExecutionEngine.html">Next</a> </div> <center><h1>Module <a href="type_Llvm_executionengine.GenericValue.html">Llvm_executionengine.GenericValue</a></h1></center> <br> <pre><span class="keyword">module</span> GenericValue: <code class="code"><span class="keyword">sig</span></code> <a href="Llvm_executionengine.GenericValue.html">..</a> <code class="code"><span class="keyword">end</span></code></pre><hr width="100%"> <pre><span class="keyword">type</span> <a name="TYPEt"></a><code class="type"></code>t </pre> <div class="info"> <code class="code"><span class="constructor">GenericValue</span>.t</code> is a boxed union type used to portably pass arguments to and receive values from the execution engine. It supports only a limited selection of types; for more complex argument types, it is necessary to generate a stub function by hand or to pass parameters by reference. See the struct <code class="code">llvm::<span class="constructor">GenericValue</span></code>.<br> </div> <pre><span class="keyword">val</span> <a name="VALof_float"></a>of_float : <code class="type"><a href="Llvm.html#TYPElltype">Llvm.lltype</a> -> float -> <a href="Llvm_executionengine.GenericValue.html#TYPEt">t</a></code></pre><div class="info"> <code class="code">of_float fpty n</code> boxes the float <code class="code">n</code> in a float-valued generic value according to the floating point type <code class="code">fpty</code>. See the fields <code class="code">llvm::<span class="constructor">GenericValue</span>::<span class="constructor">DoubleVal</span></code> and <code class="code">llvm::<span class="constructor">GenericValue</span>::<span class="constructor">FloatVal</span></code>.<br> </div> <pre><span class="keyword">val</span> <a name="VALof_pointer"></a>of_pointer : <code class="type">'a -> <a href="Llvm_executionengine.GenericValue.html#TYPEt">t</a></code></pre><div class="info"> <code class="code">of_pointer v</code> boxes the pointer value <code class="code">v</code> in a generic value. See the field <code class="code">llvm::<span class="constructor">GenericValue</span>::<span class="constructor">PointerVal</span></code>.<br> </div> <pre><span class="keyword">val</span> <a name="VALof_int32"></a>of_int32 : <code class="type"><a href="Llvm.html#TYPElltype">Llvm.lltype</a> -> int32 -> <a href="Llvm_executionengine.GenericValue.html#TYPEt">t</a></code></pre><div class="info"> <code class="code">of_int32 n w</code> boxes the int32 <code class="code">i</code> in a generic value with the bitwidth <code class="code">w</code>. See the field <code class="code">llvm::<span class="constructor">GenericValue</span>::<span class="constructor">IntVal</span></code>.<br> </div> <pre><span class="keyword">val</span> <a name="VALof_int"></a>of_int : <code class="type"><a href="Llvm.html#TYPElltype">Llvm.lltype</a> -> int -> <a href="Llvm_executionengine.GenericValue.html#TYPEt">t</a></code></pre><div class="info"> <code class="code">of_int n w</code> boxes the int <code class="code">i</code> in a generic value with the bitwidth <code class="code">w</code>. See the field <code class="code">llvm::<span class="constructor">GenericValue</span>::<span class="constructor">IntVal</span></code>.<br> </div> <pre><span class="keyword">val</span> <a name="VALof_nativeint"></a>of_nativeint : <code class="type"><a href="Llvm.html#TYPElltype">Llvm.lltype</a> -> nativeint -> <a href="Llvm_executionengine.GenericValue.html#TYPEt">t</a></code></pre><div class="info"> <code class="code">of_natint n w</code> boxes the native int <code class="code">i</code> in a generic value with the bitwidth <code class="code">w</code>. See the field <code class="code">llvm::<span class="constructor">GenericValue</span>::<span class="constructor">IntVal</span></code>.<br> </div> <pre><span class="keyword">val</span> <a name="VALof_int64"></a>of_int64 : <code class="type"><a href="Llvm.html#TYPElltype">Llvm.lltype</a> -> int64 -> <a href="Llvm_executionengine.GenericValue.html#TYPEt">t</a></code></pre><div class="info"> <code class="code">of_int64 n w</code> boxes the int64 <code class="code">i</code> in a generic value with the bitwidth <code class="code">w</code>. See the field <code class="code">llvm::<span class="constructor">GenericValue</span>::<span class="constructor">IntVal</span></code>.<br> </div> <pre><span class="keyword">val</span> <a name="VALas_float"></a>as_float : <code class="type"><a href="Llvm.html#TYPElltype">Llvm.lltype</a> -> <a href="Llvm_executionengine.GenericValue.html#TYPEt">t</a> -> float</code></pre><div class="info"> <code class="code">as_float fpty gv</code> unboxes the floating point-valued generic value <code class="code">gv</code> of floating point type <code class="code">fpty</code>. See the fields <code class="code">llvm::<span class="constructor">GenericValue</span>::<span class="constructor">DoubleVal</span></code> and <code class="code">llvm::<span class="constructor">GenericValue</span>::<span class="constructor">FloatVal</span></code>.<br> </div> <pre><span class="keyword">val</span> <a name="VALas_pointer"></a>as_pointer : <code class="type"><a href="Llvm_executionengine.GenericValue.html#TYPEt">t</a> -> 'a</code></pre><div class="info"> <code class="code">as_pointer gv</code> unboxes the pointer-valued generic value <code class="code">gv</code>. See the field <code class="code">llvm::<span class="constructor">GenericValue</span>::<span class="constructor">PointerVal</span></code>.<br> </div> <pre><span class="keyword">val</span> <a name="VALas_int32"></a>as_int32 : <code class="type"><a href="Llvm_executionengine.GenericValue.html#TYPEt">t</a> -> int32</code></pre><div class="info"> <code class="code">as_int32 gv</code> unboxes the integer-valued generic value <code class="code">gv</code> as an <code class="code">int32</code>. Is invalid if <code class="code">gv</code> has a bitwidth greater than 32 bits. See the field <code class="code">llvm::<span class="constructor">GenericValue</span>::<span class="constructor">IntVal</span></code>.<br> </div> <pre><span class="keyword">val</span> <a name="VALas_int"></a>as_int : <code class="type"><a href="Llvm_executionengine.GenericValue.html#TYPEt">t</a> -> int</code></pre><div class="info"> <code class="code">as_int gv</code> unboxes the integer-valued generic value <code class="code">gv</code> as an <code class="code">int</code>. Is invalid if <code class="code">gv</code> has a bitwidth greater than the host bit width (but the most significant bit may be lost). See the field <code class="code">llvm::<span class="constructor">GenericValue</span>::<span class="constructor">IntVal</span></code>.<br> </div> <pre><span class="keyword">val</span> <a name="VALas_nativeint"></a>as_nativeint : <code class="type"><a href="Llvm_executionengine.GenericValue.html#TYPEt">t</a> -> nativeint</code></pre><div class="info"> <code class="code">as_natint gv</code> unboxes the integer-valued generic value <code class="code">gv</code> as a <code class="code">nativeint</code>. Is invalid if <code class="code">gv</code> has a bitwidth greater than <code class="code">nativeint</code>. See the field <code class="code">llvm::<span class="constructor">GenericValue</span>::<span class="constructor">IntVal</span></code>.<br> </div> <pre><span class="keyword">val</span> <a name="VALas_int64"></a>as_int64 : <code class="type"><a href="Llvm_executionengine.GenericValue.html#TYPEt">t</a> -> int64</code></pre><div class="info"> <code class="code">as_int64 gv</code> returns the integer-valued generic value <code class="code">gv</code> as an <code class="code">int64</code>. Is invalid if <code class="code">gv</code> has a bitwidth greater than <code class="code">int64</code>. See the field <code class="code">llvm::<span class="constructor">GenericValue</span>::<span class="constructor">IntVal</span></code>.<br> </div> </body></html>