Skip to content

Commit

Permalink
deploy: 6302b23
Browse files Browse the repository at this point in the history
  • Loading branch information
bobbinth committed Feb 26, 2024
1 parent f5b96d2 commit 3b6d287
Show file tree
Hide file tree
Showing 4 changed files with 10 additions and 2 deletions.
4 changes: 4 additions & 0 deletions print.html
Original file line number Diff line number Diff line change
Expand Up @@ -1349,6 +1349,10 @@ <h2 id="bitwise-operations-1"><a class="header" href="#bitwise-operations-1">Bit
<tr><td>shr</td><td>Performs right shift of one unsigned 64-bit integer using the pow2 operation.<br /> The input value to be shifted is assumed to be represented using 32-bit limbs.<br /> The shift value should be in the range [0, 64), otherwise it will result in an error.<br /> The stack transition looks as follows:<br /> [b, a_hi, a_lo, ...] -&gt; [c_hi, c_lo, ...], where c = a &gt;&gt; b.<br /> This takes 44 cycles.</td></tr>
<tr><td>rotl</td><td>Performs left rotation of one unsigned 64-bit integer using the pow2 operation.<br /> The input value to be shifted is assumed to be represented using 32-bit limbs.<br /> The shift value should be in the range [0, 64), otherwise it will result in an error.<br /> The stack transition looks as follows:<br /> [b, a_hi, a_lo, ...] -&gt; [c_hi, c_lo, ...], where c = a &lt;&lt; b mod 2^64.<br /> This takes 35 cycles.</td></tr>
<tr><td>rotr</td><td>Performs right rotation of one unsigned 64-bit integer using the pow2 operation.<br /> The input value to be shifted is assumed to be represented using 32-bit limbs.<br /> The shift value should be in the range [0, 64), otherwise it will result in an error.<br /> The stack transition looks as follows:<br /> [b, a_hi, a_lo, ...] -&gt; [c_hi, c_lo, ...], where c = a &lt;&lt; b mod 2^64.<br /> This takes 40 cycles.</td></tr>
<tr><td>clz</td><td>Counts the number of leading zeros of one unsigned 64-bit integer.<br /> The input value is assumed to be represented using 32 bit limbs, but this is not checked.<br /> The stack transition looks as follows: <code>[n_hi, n_lo, ...] -&gt; [clz, ...]</code>, where <code>clz</code> is a number of leading zeros of value <code>n</code>.<br /> This takes 43 cycles.</td></tr>
<tr><td>ctz</td><td>Counts the number of trailing zeros of one unsigned 64-bit integer.<br /> The input value is assumed to be represented using 32 bit limbs, but this is not checked.<br /> The stack transition looks as follows: <code>[n_hi, n_lo, ...] -&gt; [ctz, ...]</code>, where <code>ctz</code> is a number of trailing zeros of value <code>n</code>.<br /> This takes 41 cycles.</td></tr>
<tr><td>clo</td><td>Counts the number of leading ones of one unsigned 64-bit integer.<br /> The input value is assumed to be represented using 32 bit limbs, but this is not checked.<br /> The stack transition looks as follows: <code>[n_hi, n_lo, ...] -&gt; [clo, ...]</code>, where <code>clo</code> is a number of leading ones of value <code>n</code>.<br /> This takes 42 cycles.</td></tr>
<tr><td>cto</td><td>Counts the number of trailing ones of one unsigned 64-bit integer.<br /> The input value is assumed to be represented using 32 bit limbs, but this is not checked.<br /> The stack transition looks as follows: <code>[n_hi, n_lo, ...] -&gt; [cto, ...]</code>, where <code>cto</code> is a number of trailing ones of value <code>n</code>.<br /> This takes 40 cycles.</td></tr>
</tbody></table>
</div><div style="break-before: page; page-break-before: always;"></div><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/dist/katex.min.css" integrity="sha384-AfEj0r4/OFrOo5t7NnNe46zW/tFgW6x/bCJG8FqQCEo3+Aro6EYUG4+cU+KJWu/X" crossorigin="anonymous">
<h1 id="memory-procedures"><a class="header" href="#memory-procedures">Memory procedures</a></h1>
Expand Down
2 changes: 1 addition & 1 deletion searchindex.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion searchindex.json

Large diffs are not rendered by default.

4 changes: 4 additions & 0 deletions user_docs/stdlib/math/u64.html
Original file line number Diff line number Diff line change
Expand Up @@ -223,6 +223,10 @@ <h2 id="bitwise-operations"><a class="header" href="#bitwise-operations">Bitwise
<tr><td>shr</td><td>Performs right shift of one unsigned 64-bit integer using the pow2 operation.<br /> The input value to be shifted is assumed to be represented using 32-bit limbs.<br /> The shift value should be in the range [0, 64), otherwise it will result in an error.<br /> The stack transition looks as follows:<br /> [b, a_hi, a_lo, ...] -&gt; [c_hi, c_lo, ...], where c = a &gt;&gt; b.<br /> This takes 44 cycles.</td></tr>
<tr><td>rotl</td><td>Performs left rotation of one unsigned 64-bit integer using the pow2 operation.<br /> The input value to be shifted is assumed to be represented using 32-bit limbs.<br /> The shift value should be in the range [0, 64), otherwise it will result in an error.<br /> The stack transition looks as follows:<br /> [b, a_hi, a_lo, ...] -&gt; [c_hi, c_lo, ...], where c = a &lt;&lt; b mod 2^64.<br /> This takes 35 cycles.</td></tr>
<tr><td>rotr</td><td>Performs right rotation of one unsigned 64-bit integer using the pow2 operation.<br /> The input value to be shifted is assumed to be represented using 32-bit limbs.<br /> The shift value should be in the range [0, 64), otherwise it will result in an error.<br /> The stack transition looks as follows:<br /> [b, a_hi, a_lo, ...] -&gt; [c_hi, c_lo, ...], where c = a &lt;&lt; b mod 2^64.<br /> This takes 40 cycles.</td></tr>
<tr><td>clz</td><td>Counts the number of leading zeros of one unsigned 64-bit integer.<br /> The input value is assumed to be represented using 32 bit limbs, but this is not checked.<br /> The stack transition looks as follows: <code>[n_hi, n_lo, ...] -&gt; [clz, ...]</code>, where <code>clz</code> is a number of leading zeros of value <code>n</code>.<br /> This takes 43 cycles.</td></tr>
<tr><td>ctz</td><td>Counts the number of trailing zeros of one unsigned 64-bit integer.<br /> The input value is assumed to be represented using 32 bit limbs, but this is not checked.<br /> The stack transition looks as follows: <code>[n_hi, n_lo, ...] -&gt; [ctz, ...]</code>, where <code>ctz</code> is a number of trailing zeros of value <code>n</code>.<br /> This takes 41 cycles.</td></tr>
<tr><td>clo</td><td>Counts the number of leading ones of one unsigned 64-bit integer.<br /> The input value is assumed to be represented using 32 bit limbs, but this is not checked.<br /> The stack transition looks as follows: <code>[n_hi, n_lo, ...] -&gt; [clo, ...]</code>, where <code>clo</code> is a number of leading ones of value <code>n</code>.<br /> This takes 42 cycles.</td></tr>
<tr><td>cto</td><td>Counts the number of trailing ones of one unsigned 64-bit integer.<br /> The input value is assumed to be represented using 32 bit limbs, but this is not checked.<br /> The stack transition looks as follows: <code>[n_hi, n_lo, ...] -&gt; [cto, ...]</code>, where <code>cto</code> is a number of trailing ones of value <code>n</code>.<br /> This takes 40 cycles.</td></tr>
</tbody></table>
</div>
</main>
Expand Down

0 comments on commit 3b6d287

Please sign in to comment.