diff options
| author | Craig Jennings <c@cjennings.net> | 2025-08-14 22:58:58 -0500 |
|---|---|---|
| committer | Craig Jennings <c@cjennings.net> | 2025-08-14 22:58:58 -0500 |
| commit | 82ba818ff456bcd6d56a06226e3f27e98fbb55c3 (patch) | |
| tree | 158cfc17b2f644a10f063cb546752cfaae12c97f /devdocs/gcc~13/powerpc-altivec-built-in-functions-available-on-isa-2_002e06.html | |
| parent | 9278ddd4ea1a8b1a4c1edaa8894516e3f48d245b (diff) | |
| download | dotemacs-82ba818ff456bcd6d56a06226e3f27e98fbb55c3.tar.gz dotemacs-82ba818ff456bcd6d56a06226e3f27e98fbb55c3.zip | |
removing all downloaded devdocs files
Diffstat (limited to 'devdocs/gcc~13/powerpc-altivec-built-in-functions-available-on-isa-2_002e06.html')
| -rw-r--r-- | devdocs/gcc~13/powerpc-altivec-built-in-functions-available-on-isa-2_002e06.html | 110 |
1 files changed, 0 insertions, 110 deletions
diff --git a/devdocs/gcc~13/powerpc-altivec-built-in-functions-available-on-isa-2_002e06.html b/devdocs/gcc~13/powerpc-altivec-built-in-functions-available-on-isa-2_002e06.html deleted file mode 100644 index b641a667..00000000 --- a/devdocs/gcc~13/powerpc-altivec-built-in-functions-available-on-isa-2_002e06.html +++ /dev/null @@ -1,110 +0,0 @@ -<div class="subsubsection-level-extent" id="PowerPC-AltiVec-Built-in-Functions-Available-on-ISA-2_002e06"> <div class="nav-panel"> <p> Next: <a href="powerpc-altivec-built-in-functions-available-on-isa-2_002e07" accesskey="n" rel="next">PowerPC AltiVec Built-in Functions Available on ISA 2.07</a>, Previous: <a href="powerpc-altivec-built-in-functions-on-isa-2_002e05" accesskey="p" rel="prev">PowerPC AltiVec Built-in Functions on ISA 2.05</a>, Up: <a href="powerpc-altivec_002fvsx-built-in-functions" accesskey="u" rel="up">PowerPC AltiVec/VSX 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="PowerPC-AltiVec-Built-in-Functions-Available-on-ISA-2_002e06-1"><span>6.60.23.2 PowerPC AltiVec Built-in Functions Available on ISA 2.06<a class="copiable-link" href="#PowerPC-AltiVec-Built-in-Functions-Available-on-ISA-2_002e06-1"> ¶</a></span></h1> <p>The AltiVec built-in functions described in this section are available on the PowerPC family of processors starting with ISA 2.06 or later. These are normally enabled by adding <samp class="option">-mvsx</samp> to the command line. </p> <p>When <samp class="option">-mvsx</samp> is used, the following additional vector types are implemented. </p> <div class="example smallexample"> <pre class="example-preformatted" data-language="cpp">vector unsigned __int128 -vector signed __int128 -vector unsigned long long int -vector signed long long int -vector double</pre> -</div> <p>The long long types are only implemented for 64-bit code generation. </p> <p>Only functions excluded from the PVIPR are listed here. </p> <div class="example smallexample"> <pre class="example-preformatted" data-language="cpp">void vec_dst (const unsigned long *, int, const int); -void vec_dst (const long *, int, const int); - -void vec_dststt (const unsigned long *, int, const int); -void vec_dststt (const long *, int, const int); - -void vec_dstt (const unsigned long *, int, const int); -void vec_dstt (const long *, int, const int); - -vector unsigned char vec_lvsl (int, const unsigned long *); -vector unsigned char vec_lvsl (int, const long *); - -vector unsigned char vec_lvsr (int, const unsigned long *); -vector unsigned char vec_lvsr (int, const long *); - -vector unsigned char vec_lvsl (int, const double *); -vector unsigned char vec_lvsr (int, const double *); - -vector double vec_vsx_ld (int, const vector double *); -vector double vec_vsx_ld (int, const double *); -vector float vec_vsx_ld (int, const vector float *); -vector float vec_vsx_ld (int, const float *); -vector bool int vec_vsx_ld (int, const vector bool int *); -vector signed int vec_vsx_ld (int, const vector signed int *); -vector signed int vec_vsx_ld (int, const int *); -vector signed int vec_vsx_ld (int, const long *); -vector unsigned int vec_vsx_ld (int, const vector unsigned int *); -vector unsigned int vec_vsx_ld (int, const unsigned int *); -vector unsigned int vec_vsx_ld (int, const unsigned long *); -vector bool short vec_vsx_ld (int, const vector bool short *); -vector pixel vec_vsx_ld (int, const vector pixel *); -vector signed short vec_vsx_ld (int, const vector signed short *); -vector signed short vec_vsx_ld (int, const short *); -vector unsigned short vec_vsx_ld (int, const vector unsigned short *); -vector unsigned short vec_vsx_ld (int, const unsigned short *); -vector bool char vec_vsx_ld (int, const vector bool char *); -vector signed char vec_vsx_ld (int, const vector signed char *); -vector signed char vec_vsx_ld (int, const signed char *); -vector unsigned char vec_vsx_ld (int, const vector unsigned char *); -vector unsigned char vec_vsx_ld (int, const unsigned char *); - -void vec_vsx_st (vector double, int, vector double *); -void vec_vsx_st (vector double, int, double *); -void vec_vsx_st (vector float, int, vector float *); -void vec_vsx_st (vector float, int, float *); -void vec_vsx_st (vector signed int, int, vector signed int *); -void vec_vsx_st (vector signed int, int, int *); -void vec_vsx_st (vector unsigned int, int, vector unsigned int *); -void vec_vsx_st (vector unsigned int, int, unsigned int *); -void vec_vsx_st (vector bool int, int, vector bool int *); -void vec_vsx_st (vector bool int, int, unsigned int *); -void vec_vsx_st (vector bool int, int, int *); -void vec_vsx_st (vector signed short, int, vector signed short *); -void vec_vsx_st (vector signed short, int, short *); -void vec_vsx_st (vector unsigned short, int, vector unsigned short *); -void vec_vsx_st (vector unsigned short, int, unsigned short *); -void vec_vsx_st (vector bool short, int, vector bool short *); -void vec_vsx_st (vector bool short, int, unsigned short *); -void vec_vsx_st (vector pixel, int, vector pixel *); -void vec_vsx_st (vector pixel, int, unsigned short *); -void vec_vsx_st (vector pixel, int, short *); -void vec_vsx_st (vector bool short, int, short *); -void vec_vsx_st (vector signed char, int, vector signed char *); -void vec_vsx_st (vector signed char, int, signed char *); -void vec_vsx_st (vector unsigned char, int, vector unsigned char *); -void vec_vsx_st (vector unsigned char, int, unsigned char *); -void vec_vsx_st (vector bool char, int, vector bool char *); -void vec_vsx_st (vector bool char, int, unsigned char *); -void vec_vsx_st (vector bool char, int, signed char *); - -vector double vec_xxpermdi (vector double, vector double, const int); -vector float vec_xxpermdi (vector float, vector float, const int); -vector long long vec_xxpermdi (vector long long, vector long long, const int); -vector unsigned long long vec_xxpermdi (vector unsigned long long, - vector unsigned long long, const int); -vector int vec_xxpermdi (vector int, vector int, const int); -vector unsigned int vec_xxpermdi (vector unsigned int, - vector unsigned int, const int); -vector short vec_xxpermdi (vector short, vector short, const int); -vector unsigned short vec_xxpermdi (vector unsigned short, - vector unsigned short, const int); -vector signed char vec_xxpermdi (vector signed char, vector signed char, - const int); -vector unsigned char vec_xxpermdi (vector unsigned char, - vector unsigned char, const int); - -vector double vec_xxsldi (vector double, vector double, int); -vector float vec_xxsldi (vector float, vector float, int); -vector long long vec_xxsldi (vector long long, vector long long, int); -vector unsigned long long vec_xxsldi (vector unsigned long long, - vector unsigned long long, int); -vector int vec_xxsldi (vector int, vector int, int); -vector unsigned int vec_xxsldi (vector unsigned int, vector unsigned int, int); -vector short vec_xxsldi (vector short, vector short, int); -vector unsigned short vec_xxsldi (vector unsigned short, - vector unsigned short, int); -vector signed char vec_xxsldi (vector signed char, vector signed char, int); -vector unsigned char vec_xxsldi (vector unsigned char, - vector unsigned char, int);</pre> -</div> <p>Note that the ‘<samp class="samp">vec_ld</samp>’ and ‘<samp class="samp">vec_st</samp>’ built-in functions always generate the AltiVec ‘<samp class="samp">LVX</samp>’ and ‘<samp class="samp">STVX</samp>’ instructions even if the VSX instruction set is available. The ‘<samp class="samp">vec_vsx_ld</samp>’ and ‘<samp class="samp">vec_vsx_st</samp>’ built-in functions always generate the VSX ‘<samp class="samp">LXVD2X</samp>’, ‘<samp class="samp">LXVW4X</samp>’, ‘<samp class="samp">STXVD2X</samp>’, and ‘<samp class="samp">STXVW4X</samp>’ instructions. </p> </div> <div class="nav-panel"> <p> Next: <a href="powerpc-altivec-built-in-functions-available-on-isa-2_002e07">PowerPC AltiVec Built-in Functions Available on ISA 2.07</a>, Previous: <a href="powerpc-altivec-built-in-functions-on-isa-2_002e05">PowerPC AltiVec Built-in Functions on ISA 2.05</a>, Up: <a href="powerpc-altivec_002fvsx-built-in-functions">PowerPC AltiVec/VSX 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/PowerPC-AltiVec-Built-in-Functions-Available-on-ISA-2_002e06.html" class="_attribution-link">https://gcc.gnu.org/onlinedocs/gcc-13.1.0/gcc/PowerPC-AltiVec-Built-in-Functions-Available-on-ISA-2_002e06.html</a> - </p> -</div> |
