llvm.sqrt somehow escaped documentation.
authorChris Lattner <sabre@nondot.org>
Thu, 21 Jul 2005 01:29:16 +0000 (01:29 +0000)
committerChris Lattner <sabre@nondot.org>
Thu, 21 Jul 2005 01:29:16 +0000 (01:29 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22490 91177308-0d34-0410-b5e6-96231b3b80d8

docs/LangRef.html

index 73e7e2db1fa549ff25765e9f871d14f4527fb079..6206d774a07944f4e9a46d9b57f99f92520833e0 100644 (file)
           <li><a href="#i_memmove">'<tt>llvm.memmove</tt>' Intrinsic</a></li>
           <li><a href="#i_memset">'<tt>llvm.memset</tt>' Intrinsic</a></li>
           <li><a href="#i_isunordered">'<tt>llvm.isunordered</tt>' Intrinsic</a></li>
+          <li><a href="#i_sqrt">'<tt>llvm.sqrt</tt>' Intrinsic</a></li>
+
         </ol>
       </li>
       <li><a href="#int_count">Bit counting Intrinsics</a>
@@ -3133,6 +3135,41 @@ false.
 </div>
 
 
+<!-- _______________________________________________________________________ -->
+<div class="doc_subsubsection">
+  <a name="i_sqrt">'<tt>llvm.sqrt</tt>' Intrinsic</a>
+</div>
+
+<div class="doc_text">
+
+<h5>Syntax:</h5>
+<pre>
+  declare &lt;float or double&gt; %llvm.sqrt(&lt;float or double&gt; Val)
+</pre>
+
+<h5>Overview:</h5>
+
+<p>
+The '<tt>llvm.sqrt</tt>' intrinsic returns the sqrt of the specified operand,
+returning the same value as the libm '<tt>sqrt</tt>' function would.  Unlike
+<tt>sqrt</tt> in libm, however, <tt>llvm.sqrt</tt> has undefined behavior for
+negative numbers (which allows for better optimization).
+</p>
+
+<h5>Arguments:</h5>
+
+<p>
+The argument and return value are floating point numbers of the same type.
+</p>
+
+<h5>Semantics:</h5>
+
+<p>
+This function returns the sqrt of the specified operand if it is a positive
+floating point number.
+</p>
+</div>
+
 <!-- ======================================================================= -->
 <div class="doc_subsection">
   <a name="int_count">Bit Counting Intrinsics</a>