mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-08-17 21:29:20 +00:00
initial descriptions of count intrinsics
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21677 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
691ef2ba06
commit
ec370fd3dc
@ -145,6 +145,13 @@
|
||||
<li><a href="#i_isunordered">'<tt>llvm.isunordered</tt>' Intrinsic</a></li>
|
||||
</ol>
|
||||
</li>
|
||||
<li><a href="#int_count">Bit counting Intrinsics</a>
|
||||
<ol>
|
||||
<li><a href="#int_ctpop">'<tt>llvm.ctpop</tt>' Intrinsic </a></li>
|
||||
<li><a href="#int_cttz">'<tt>llvm.cttz</tt>' Intrinsic </a></li>
|
||||
<li><a href="#int_ctlz">'<tt>llvm.ctlz</tt>' Intrinsic </a></li>
|
||||
</ol>
|
||||
</li>
|
||||
<li><a href="#int_debugger">Debugger intrinsics</a></li>
|
||||
</ol>
|
||||
</li>
|
||||
@ -3029,6 +3036,116 @@ false.
|
||||
</div>
|
||||
|
||||
|
||||
<!-- ======================================================================= -->
|
||||
<div class="doc_subsection">
|
||||
<a name="int_count">Bit Counting Intrinsics</a>
|
||||
</div>
|
||||
|
||||
<div class="doc_text">
|
||||
<p>
|
||||
LLVM provides intrinsics for a few important bit counting operations.
|
||||
These allow efficient code generation for some algorithms.
|
||||
</p>
|
||||
|
||||
</div>
|
||||
|
||||
<!-- _______________________________________________________________________ -->
|
||||
<div class="doc_subsubsection">
|
||||
<a name="int_ctpop">'<tt>llvm.ctpop</tt>' Intrinsic</a>
|
||||
</div>
|
||||
|
||||
<div class="doc_text">
|
||||
|
||||
<h5>Syntax:</h5>
|
||||
<pre>
|
||||
declare int %llvm.ctpop(int <src>)
|
||||
|
||||
</pre>
|
||||
|
||||
<h5>Overview:</h5>
|
||||
|
||||
<p>
|
||||
The '<tt>llvm.ctpop</tt>' intrinsic counts the number of ones in a variable.
|
||||
</p>
|
||||
|
||||
<h5>Arguments:</h5>
|
||||
|
||||
<p>
|
||||
The only argument is the value to be counted.
|
||||
</p>
|
||||
|
||||
<h5>Semantics:</h5>
|
||||
|
||||
<p>
|
||||
The '<tt>llvm.ctpop</tt>' intrinsic counts the 1's in a variable.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<!-- _______________________________________________________________________ -->
|
||||
<div class="doc_subsubsection">
|
||||
<a name="int_cttz">'<tt>llvm.cttz</tt>' Intrinsic</a>
|
||||
</div>
|
||||
|
||||
<div class="doc_text">
|
||||
|
||||
<h5>Syntax:</h5>
|
||||
<pre>
|
||||
declare int %llvm.cttz(int <src>)
|
||||
|
||||
</pre>
|
||||
|
||||
<h5>Overview:</h5>
|
||||
|
||||
<p>
|
||||
The '<tt>llvm.cttz</tt>' intrinsic counts the number of trailing zeros.
|
||||
</p>
|
||||
|
||||
<h5>Arguments:</h5>
|
||||
|
||||
<p>
|
||||
The only argument is the value to be counted.
|
||||
</p>
|
||||
|
||||
<h5>Semantics:</h5>
|
||||
|
||||
<p>
|
||||
The '<tt>llvm.cttz</tt>' intrinsic counts the trailing zeros in a variable. If the src == 0
|
||||
then the result is the size in bits of the type of src.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<!-- _______________________________________________________________________ -->
|
||||
<div class="doc_subsubsection">
|
||||
<a name="int_ctlz">'<tt>llvm.ctlz</tt>' Intrinsic</a>
|
||||
</div>
|
||||
|
||||
<div class="doc_text">
|
||||
|
||||
<h5>Syntax:</h5>
|
||||
<pre>
|
||||
declare int %llvm.ctlz(int <src>)
|
||||
|
||||
</pre>
|
||||
|
||||
<h5>Overview:</h5>
|
||||
|
||||
<p>
|
||||
The '<tt>llvm.ctlz</tt>' intrinsic counts the number of leading zeros in a variable.
|
||||
</p>
|
||||
|
||||
<h5>Arguments:</h5>
|
||||
|
||||
<p>
|
||||
The only argument is the value to be counted.
|
||||
</p>
|
||||
|
||||
<h5>Semantics:</h5>
|
||||
|
||||
<p>
|
||||
The '<tt>llvm.ctlz</tt>' intrinsic counts the leading zeros in a variable. If the src == 0
|
||||
then the result is the size in bits of the type of src.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
|
||||
<!-- ======================================================================= -->
|
||||
|
Loading…
Reference in New Issue
Block a user