diff options
Diffstat (limited to 'devdocs/gcc~13/basic-powerpc-built-in-functions-available-on-isa-3_002e1.html')
| -rw-r--r-- | devdocs/gcc~13/basic-powerpc-built-in-functions-available-on-isa-3_002e1.html | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/devdocs/gcc~13/basic-powerpc-built-in-functions-available-on-isa-3_002e1.html b/devdocs/gcc~13/basic-powerpc-built-in-functions-available-on-isa-3_002e1.html new file mode 100644 index 00000000..44aa2282 --- /dev/null +++ b/devdocs/gcc~13/basic-powerpc-built-in-functions-available-on-isa-3_002e1.html @@ -0,0 +1,57 @@ +<div class="subsubsection-level-extent" id="Basic-PowerPC-Built-in-Functions-Available-on-ISA-3_002e1"> <div class="nav-panel"> <p> Previous: <a href="basic-powerpc-built-in-functions-available-on-isa-3_002e0" accesskey="p" rel="prev">Basic PowerPC Built-in Functions Available on ISA 3.0</a>, Up: <a href="basic-powerpc-built-in-functions" accesskey="u" rel="up">Basic PowerPC Built-in Functions</a> [<a href="index#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="indices" title="Index" rel="index">Index</a>]</p> </div> <h1 class="subsubsection" id="Basic-PowerPC-Built-in-Functions-Available-on-ISA-3_002e1-1"><span>6.60.22.6 Basic PowerPC Built-in Functions Available on ISA 3.1<a class="copiable-link" href="#Basic-PowerPC-Built-in-Functions-Available-on-ISA-3_002e1-1"> ¶</a></span></h1> <p>The basic built-in functions described in this section are available on the PowerPC family of processors starting with ISA 3.1. Unless specific options are explicitly disabled on the command line, specifying option <samp class="option">-mcpu=power10</samp> has the effect of enabling all the same options as for <samp class="option">-mcpu=power9</samp>. </p> <p>The following built-in functions are available on Linux 64-bit systems that use a future architecture instruction set (<samp class="option">-mcpu=power10</samp>): </p> <dl class="first-deftypefn"> <dt class="deftypefn" id="index-_005f_005fbuiltin_005fcfuged"> +<span class="category-def">Built-in Function: </span><span><code class="def-type">unsigned long long</code> <strong class="def-name">__builtin_cfuged</strong> <code class="def-code-arguments">(unsigned long long, unsigned long long)</code><a class="copiable-link" href="#index-_005f_005fbuiltin_005fcfuged"> ¶</a></span> +</dt> <dd><p>Perform a 64-bit centrifuge operation, as if implemented by the <code class="code">cfuged</code> instruction. </p></dd> +</dl> <dl class="first-deftypefn"> <dt class="deftypefn" id="index-_005f_005fbuiltin_005fcntlzdm"> +<span class="category-def">Built-in Function: </span><span><code class="def-type">unsigned long long</code> <strong class="def-name">__builtin_cntlzdm</strong> <code class="def-code-arguments">(unsigned long long, unsigned long long)</code><a class="copiable-link" href="#index-_005f_005fbuiltin_005fcntlzdm"> ¶</a></span> +</dt> <dd><p>Perform a 64-bit count leading zeros operation under mask, as if implemented by the <code class="code">cntlzdm</code> instruction. </p></dd> +</dl> <dl class="first-deftypefn"> <dt class="deftypefn" id="index-_005f_005fbuiltin_005fcnttzdm"> +<span class="category-def">Built-in Function: </span><span><code class="def-type">unsigned long long</code> <strong class="def-name">__builtin_cnttzdm</strong> <code class="def-code-arguments">(unsigned long long, unsigned long long)</code><a class="copiable-link" href="#index-_005f_005fbuiltin_005fcnttzdm"> ¶</a></span> +</dt> <dd><p>Perform a 64-bit count trailing zeros operation under mask, as if implemented by the <code class="code">cnttzdm</code> instruction. </p></dd> +</dl> <dl class="first-deftypefn"> <dt class="deftypefn" id="index-_005f_005fbuiltin_005fpdepd"> +<span class="category-def">Built-in Function: </span><span><code class="def-type">unsigned long long</code> <strong class="def-name">__builtin_pdepd</strong> <code class="def-code-arguments">(unsigned long long, unsigned long long)</code><a class="copiable-link" href="#index-_005f_005fbuiltin_005fpdepd"> ¶</a></span> +</dt> <dd><p>Perform a 64-bit parallel bits deposit operation, as if implemented by the <code class="code">pdepd</code> instruction. </p></dd> +</dl> <dl class="first-deftypefn"> <dt class="deftypefn" id="index-_005f_005fbuiltin_005fpextd"> +<span class="category-def">Built-in Function: </span><span><code class="def-type">unsigned long long</code> <strong class="def-name">__builtin_pextd</strong> <code class="def-code-arguments">(unsigned long long, unsigned long long)</code><a class="copiable-link" href="#index-_005f_005fbuiltin_005fpextd"> ¶</a></span> +</dt> <dd><p>Perform a 64-bit parallel bits extract operation, as if implemented by the <code class="code">pextd</code> instruction. </p></dd> +</dl> <dl class="first-deftypefn"> <dt class="deftypefn" id="index-vsx_005fxl_005fsext"> +<span class="category-def">Built-in Function: </span><span><code class="def-type">vector signed __int128</code> <strong class="def-name">vsx_xl_sext</strong> <code class="def-code-arguments">(signed long long, signed char *)</code><a class="copiable-link" href="#index-vsx_005fxl_005fsext"> ¶</a></span> +</dt> <dt class="deftypefnx def-cmd-deftypefn" id="index-vsx_005fxl_005fsext-1"> +<span class="category-def">Built-in Function: </span><span><code class="def-type">vector signed __int128</code> <strong class="def-name">vsx_xl_sext</strong> <code class="def-code-arguments">(signed long long, signed short *)</code><a class="copiable-link" href="#index-vsx_005fxl_005fsext-1"> ¶</a></span> +</dt> <dt class="deftypefnx def-cmd-deftypefn" id="index-vsx_005fxl_005fsext-2"> +<span class="category-def">Built-in Function: </span><span><code class="def-type">vector signed __int128</code> <strong class="def-name">vsx_xl_sext</strong> <code class="def-code-arguments">(signed long long, signed int *)</code><a class="copiable-link" href="#index-vsx_005fxl_005fsext-2"> ¶</a></span> +</dt> <dt class="deftypefnx def-cmd-deftypefn" id="index-vsx_005fxl_005fsext-3"> +<span class="category-def">Built-in Function: </span><span><code class="def-type">vector signed __int128</code> <strong class="def-name">vsx_xl_sext</strong> <code class="def-code-arguments">(signed long long, signed long long *)</code><a class="copiable-link" href="#index-vsx_005fxl_005fsext-3"> ¶</a></span> +</dt> <dt class="deftypefnx def-cmd-deftypefn" id="index-vsx_005fxl_005fzext"> +<span class="category-def">Built-in Function: </span><span><code class="def-type">vector unsigned __int128</code> <strong class="def-name">vsx_xl_zext</strong> <code class="def-code-arguments">(signed long long, unsigned char *)</code><a class="copiable-link" href="#index-vsx_005fxl_005fzext"> ¶</a></span> +</dt> <dt class="deftypefnx def-cmd-deftypefn" id="index-vsx_005fxl_005fzext-1"> +<span class="category-def">Built-in Function: </span><span><code class="def-type">vector unsigned __int128</code> <strong class="def-name">vsx_xl_zext</strong> <code class="def-code-arguments">(signed long long, unsigned short *)</code><a class="copiable-link" href="#index-vsx_005fxl_005fzext-1"> ¶</a></span> +</dt> <dt class="deftypefnx def-cmd-deftypefn" id="index-vsx_005fxl_005fzext-2"> +<span class="category-def">Built-in Function: </span><span><code class="def-type">vector unsigned __int128</code> <strong class="def-name">vsx_xl_zext</strong> <code class="def-code-arguments">(signed long long, unsigned int *)</code><a class="copiable-link" href="#index-vsx_005fxl_005fzext-2"> ¶</a></span> +</dt> <dt class="deftypefnx def-cmd-deftypefn" id="index-vsx_005fxl_005fzext-3"> +<span class="category-def">Built-in Function: </span><span><code class="def-type">vector unsigned __int128</code> <strong class="def-name">vsx_xl_zext</strong> <code class="def-code-arguments">(signed long long, unsigned long long *)</code><a class="copiable-link" href="#index-vsx_005fxl_005fzext-3"> ¶</a></span> +</dt> <dd> <p>Load (and sign extend) to an __int128 vector, as if implemented by the ISA 3.1 <code class="code">lxvrbx</code>, <code class="code">lxvrhx</code>, <code class="code">lxvrwx</code>, and <code class="code">lxvrdx</code> instructions. </p> +</dd> +</dl> <dl class="first-deftypefn"> <dt class="deftypefn" id="index-vec_005fxst_005ftrunc"> +<span class="category-def">Built-in Function: </span><span><code class="def-type">void</code> <strong class="def-name">vec_xst_trunc</strong> <code class="def-code-arguments">(vector signed __int128, signed long long, signed char *)</code><a class="copiable-link" href="#index-vec_005fxst_005ftrunc"> ¶</a></span> +</dt> <dt class="deftypefnx def-cmd-deftypefn" id="index-vec_005fxst_005ftrunc-1"> +<span class="category-def">Built-in Function: </span><span><code class="def-type">void</code> <strong class="def-name">vec_xst_trunc</strong> <code class="def-code-arguments">(vector signed __int128, signed long long, signed short *)</code><a class="copiable-link" href="#index-vec_005fxst_005ftrunc-1"> ¶</a></span> +</dt> <dt class="deftypefnx def-cmd-deftypefn" id="index-vec_005fxst_005ftrunc-2"> +<span class="category-def">Built-in Function: </span><span><code class="def-type">void</code> <strong class="def-name">vec_xst_trunc</strong> <code class="def-code-arguments">(vector signed __int128, signed long long, signed int *)</code><a class="copiable-link" href="#index-vec_005fxst_005ftrunc-2"> ¶</a></span> +</dt> <dt class="deftypefnx def-cmd-deftypefn" id="index-vec_005fxst_005ftrunc-3"> +<span class="category-def">Built-in Function: </span><span><code class="def-type">void</code> <strong class="def-name">vec_xst_trunc</strong> <code class="def-code-arguments">(vector signed __int128, signed long long, signed long long *)</code><a class="copiable-link" href="#index-vec_005fxst_005ftrunc-3"> ¶</a></span> +</dt> <dt class="deftypefnx def-cmd-deftypefn" id="index-vec_005fxst_005ftrunc-4"> +<span class="category-def">Built-in Function: </span><span><code class="def-type">void</code> <strong class="def-name">vec_xst_trunc</strong> <code class="def-code-arguments">(vector unsigned __int128, signed long long, unsigned char *)</code><a class="copiable-link" href="#index-vec_005fxst_005ftrunc-4"> ¶</a></span> +</dt> <dt class="deftypefnx def-cmd-deftypefn" id="index-vec_005fxst_005ftrunc-5"> +<span class="category-def">Built-in Function: </span><span><code class="def-type">void</code> <strong class="def-name">vec_xst_trunc</strong> <code class="def-code-arguments">(vector unsigned __int128, signed long long, unsigned short *)</code><a class="copiable-link" href="#index-vec_005fxst_005ftrunc-5"> ¶</a></span> +</dt> <dt class="deftypefnx def-cmd-deftypefn" id="index-vec_005fxst_005ftrunc-6"> +<span class="category-def">Built-in Function: </span><span><code class="def-type">void</code> <strong class="def-name">vec_xst_trunc</strong> <code class="def-code-arguments">(vector unsigned __int128, signed long long, unsigned int *)</code><a class="copiable-link" href="#index-vec_005fxst_005ftrunc-6"> ¶</a></span> +</dt> <dt class="deftypefnx def-cmd-deftypefn" id="index-vec_005fxst_005ftrunc-7"> +<span class="category-def">Built-in Function: </span><span><code class="def-type">void</code> <strong class="def-name">vec_xst_trunc</strong> <code class="def-code-arguments">(vector unsigned __int128, signed long long, unsigned long long *)</code><a class="copiable-link" href="#index-vec_005fxst_005ftrunc-7"> ¶</a></span> +</dt> <dd> <p>Truncate and store the rightmost element of a vector, as if implemented by the ISA 3.1 <code class="code">stxvrbx</code>, <code class="code">stxvrhx</code>, <code class="code">stxvrwx</code>, and <code class="code">stxvrdx</code> instructions. </p> +</dd> +</dl> </div> <div class="nav-panel"> <p> Previous: <a href="basic-powerpc-built-in-functions-available-on-isa-3_002e0">Basic PowerPC Built-in Functions Available on ISA 3.0</a>, Up: <a href="basic-powerpc-built-in-functions">Basic PowerPC Built-in Functions</a> [<a href="index#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="indices" title="Index" rel="index">Index</a>]</p> </div><div class="_attribution"> + <p class="_attribution-p"> + © Free Software Foundation<br>Licensed under the GNU Free Documentation License, Version 1.3.<br> + <a href="https://gcc.gnu.org/onlinedocs/gcc-13.1.0/gcc/Basic-PowerPC-Built-in-Functions-Available-on-ISA-3_002e1.html" class="_attribution-link">https://gcc.gnu.org/onlinedocs/gcc-13.1.0/gcc/Basic-PowerPC-Built-in-Functions-Available-on-ISA-3_002e1.html</a> + </p> +</div> |
