<!--
  Copyright (c) 2016 OpenPOWER Foundation
  
  Licensed under the GNU Free Documentation License, Version 1.3;
  with no Invariants Sections, with no Front-Cover Texts,
  and with no Back-Cover Texts (the "License");
  you may not use this file except in compliance with the License.
  You may obtain a copy of the License at

    http://www.gnu.org/licenses/fdl-1.3.txt

-->
<appendix xmlns="http://docbook.org/ns/docbook"
xmlns:xl="http://www.w3.org/1999/xlink" version="5.0" 
xml:lang="en"
xml:id="dbdoclet.50655245_pgfId-1138128">
  <title>Predefined Functions for Vector Programming</title>
  <para>So that programmers can access the vector facilities provided by the
  Power ISA, ABI-compliant environments should provide the vector functions
  and predicates described in 
  <xref linkend="dbdoclet.50655245_56497" /> and 
  <xref linkend="dbdoclet.50655245_64716" />.</para>
  <para>Although functions are specified in this document in C/C++ language
  syntax, other environments should follow the proposed vector built-in
  naming and function set, based on the vector types provided by the
  respective language.</para>
  <para>If signed or unsigned is omitted, the signedness of the vector type
  is the default signedness of the base type. The default varies depending on
  the operating system, so a portable program should always specify the
  signedness.</para>
  <para>Vector built-in functions that take a pointer as an argument can also
  take pointers with const or volatile modifiers as argument. Arguments that
  are documented as const int require literal integral values within the
  vector built-in invocation. Specifying a literal value outside the
  supported range leads to implementation-defined behavior. It is recommended
  that compilers generate a warning or error for out-of-range
  literals.</para>
  <para>Vectors may be constructed from scalar values with a vector
  constructor. For example: (vector type){e1, e2, ..., e<emphasis>n</emphasis>}. 
  The values specified for each vector element can
  be either a compile-time constant or a runtime expression.</para>
  <para>Floating-point vector built-in operators are controlled by the
  rounding mode set for floating-point operations unless otherwise
  specified.</para>
  <section xml:id="dbdoclet.50655245_56497">
    <title>Vector Built-In Functions</title>
    <para>
    <xref linkend="dbdoclet.50655245_35801" /> summarizes the built-in vector
    functions for the Power SIMD vector programming API. In addition to these
    core functions, 
    <xref linkend="dbdoclet.50655245_36964" /> and 
    <xref linkend="dbdoclet.50655245_50332" /> describe functions that
    correspond to deprecated interfaces of previous versions of the Power SIMD
    API and the Altivec APIs.</para>
    <para>Functions are listed alphabetically; supported prototypes are
    provided for each function. Prototypes are grouped by integer and
    floating-point types. Within each group, types are sorted alphabetically,
    first by type name and then by modifier. Prototypes are first sorted by the
    built-in result type, which is the output argument. Then, prototypes are
    sorted by the input arguments; ARG1, ARG2, and ARG3; in order. 
    <xref linkend="dbdoclet.50655245_88976" /> shows the format of the
    prototypes and provides an example.</para>
    <table frame="all" pgwide="1" xml:id="dbdoclet.50655245_88976">
      <title>Format of Prototypes</title>
      <tgroup cols="9">
        <colspec colname="c1" colwidth="11*" align="center" />
        <colspec colname="c2" colwidth="11*" align="center" />
        <colspec colname="c3" colwidth="11*" align="center" />
        <colspec colname="c4" colwidth="11*" align="center" />
        <colspec colname="c5" colwidth="11*" align="center" />
        <colspec colname="c6" colwidth="11*" align="center" />
        <colspec colname="c7" colwidth="11*" align="center" />
        <colspec colname="c8" colwidth="11*" align="center" />
        <colspec colname="c9" colwidth="11*" align="center" />
        <thead>
          <row>
            <entry morerows="1" nameend="c2" namest="c1" align="center" >
              <para>
                <emphasis role="bold">Output Argument</emphasis>
              </para>
            </entry>
            <entry morerows="1" align="center">
              <para>
                <emphasis role="bold">Function</emphasis>
              </para>
            </entry>
            <entry nameend="c9" namest="c4" align="center" >
              <para>
                <emphasis role="bold">Input Arguments</emphasis>
              </para>
            </entry>
          </row>
          <row>
            <entry nameend="c5" namest="c4" align="center" >
              <para>
                <emphasis role="bold">ARG1</emphasis>
              </para>
            </entry>
            <entry nameend="c7" namest="c6" align="center">
              <para>
                <emphasis role="bold">ARG2</emphasis>
              </para>
            </entry>
            <entry nameend="c9" namest="c8" align="center" >
              <para>
                <emphasis role="bold">ARG3</emphasis>
              </para>
            </entry>
          </row>
          <row>
            <entry>
              <para>
                <emphasis role="bold">Modifier</emphasis>
              </para>
            </entry>
            <entry>
              <para>
                <emphasis role="bold">Type</emphasis>
              </para>
            </entry>
            <entry>
              <para>
                <emphasis role="bold"> </emphasis>
              </para>
            </entry>
            <entry>
              <para>
                <emphasis role="bold">Modifier</emphasis>
              </para>
            </entry>
            <entry>
              <para>
                <emphasis role="bold">Type</emphasis>
              </para>
            </entry>
            <entry>
              <para>
                <emphasis role="bold">Modifier</emphasis>
              </para>
            </entry>
            <entry>
              <para>
                <emphasis role="bold">Type</emphasis>
              </para>
            </entry>
            <entry>
              <para>
                <emphasis role="bold">Modifier</emphasis>
              </para>
            </entry>
            <entry>
              <para>
                <emphasis role="bold">Type</emphasis>
              </para>
            </entry>
          </row>
          <row>
            <entry>
              <para>
                <emphasis role="bold">Sort 3</emphasis>
              </para>
            </entry>
            <entry>
              <para>
                <emphasis role="bold">Sort 2</emphasis>
              </para>
            </entry>
            <entry>
              <para>
                <emphasis role="bold">Sort 1</emphasis>
              </para>
            </entry>
            <entry>
              <para>
                <emphasis role="bold">Sort 5</emphasis>
              </para>
            </entry>
            <entry>
              <para>
                <emphasis role="bold">Sort 4</emphasis>
              </para>
            </entry>
            <entry>
              <para>
                <emphasis role="bold">Sort 7</emphasis>
              </para>
            </entry>
            <entry>
              <para>
                <emphasis role="bold">Sort 6</emphasis>
              </para>
            </entry>
            <entry>
              <para>
                <emphasis role="bold">Sort 9</emphasis>
              </para>
            </entry>
            <entry>
              <para>
                <emphasis role="bold">Sort 8</emphasis>
              </para>
            </entry>
          </row>
        </thead>
        <tbody>
          <row>
            <entry>
              <para>vector unsigned</para>
            </entry>
            <entry>
              <para>char</para>
            </entry>
            <entry>
              <para>vec_insert</para>
            </entry>
            <entry>
              <para>unsigned</para>
            </entry>
            <entry>
              <para>char</para>
            </entry>
            <entry>
              <para>vector bool</para>
            </entry>
            <entry>
              <para>char</para>
            </entry>
            <entry>
              <para>signed</para>
            </entry>
            <entry>
              <para>int</para>
            </entry>
          </row>
        </tbody>
      </tgroup>
    </table>
    <para> </para>
    <para> </para>
    <table frame="all" pgwide="1" xml:id="dbdoclet.50655245_35801">
      <title>Vector Built-In Functions</title>
      <tgroup cols="2">
        <colspec colname="c1" colwidth="30*" align="center"/>
        <colspec colname="c2" colwidth="70*" />
        <thead>
          <row>
            <entry>
              <para>
                <emphasis role="bold">Group</emphasis>
              </para>
            </entry>
            <entry align="center">
              <para>
                <emphasis role="bold">Description of Vector Built-In Functions
                (with Prototypes)</emphasis>
              </para>
            </entry>
          </row>
        </thead>
        <tbody>
          <row>
            <entry>
              <para>VEC_ABS (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector that contains the absolute values of the
              contents of the given vector.</para>
              <para>Result value:</para>
              <para>The value of each element of the result is the absolute
              value of the corresponding element of ARG1. For integer vectors,
              the arithmetic is modular.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_abs (vector signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_abs (vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_abs (vector signed long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_abs (vector signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_abs (vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_abs (vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ABSD (ARG1, ARG2)</para>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Computes the absolute difference.</para>
              <para>Result value:</para>
              <para>Each element of the result contains the absolute difference
              of the corresponding input elements using modulo
              arithmetic.</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector unsigned char vec_absd (vector unsigned char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_absd (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector unsigned short vec_absd (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ABSS (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the saturated absolute values
              of the contents of the given vector.</para>
              <para>Result value:</para>
              <para>The value of each element of the result is the saturated
              absolute value of the corresponding element of ARG1.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_abss (vector signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_abss (vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_abss (vector signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ADD (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the sums of each set of
              corresponding elements of the given vectors.</para>
              <para>Result value:</para>
              <para>The value of each element of the result is the sum of the
              corresponding elements of ARG1 and ARG2. For signed and unsigned
              integers, modular arithmetic is used.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_add (vector signed char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_add (vector unsigned char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_add (vector signed int, vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_add (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed __int128 vec_add (vector signed __int128,
              vector signed __int128);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned __int128 vec_add (vector unsigned __int128,
              vector unsigned __int128);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_add (vector signed long long,
              vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_add (vector unsigned long
              long, vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_add (vector signed short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_add (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_add (vector double, vector
              double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_add (vector float, vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ADDC (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the carry produced by adding
              each set of corresponding elements of the given vectors.</para>
              <para>Result value:</para>
              <para>The value of each element of the result is the carry
              produced by adding the corresponding elements of ARG1 and ARG2 (1
              if there is a carry, 0 otherwise).</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_addc (vector signed int, vector
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_addc (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed __int128 vec_addc (vector signed __int128,
              vector signed __int128);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned __int128 vec_addc (vector unsigned
              __int128, vector unsigned __int128);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ADDE (ARG1, ARG2, ARG3)</para>
              <para> </para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the result of adding each set
              of the corresponding elements of ARG1 and ARG2 with a carry (that
              has a value of either 0 or 1) specified as the ARG3
              vector.</para>
              <para>Result value:</para>
              <para>The value of each element of the result is produced by
              adding the corresponding elements of ARG1 and ARG2 and a carry
              specified in ARG3 (1 if there is a carry, 0 otherwise).</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_adde (vector signed int, vector
              signed int, vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_adde (vector unsigned int, vector
              unsigned int, vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed __int128 vec_adde (vector signed __int128,
              vector signed __int128, vector signed __int128);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned __int128 vec_adde (vector unsigned
              __int128, vector unsigned __int128, vector unsigned
              __int128);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ADDEC (ARG1, ARG2, ARG3)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the carry produced by adding
              each set of the corresponding elements of ARG1 and ARG2 with a
              carry (that has a value of either 0 or 1) specified as the ARG3
              vector.</para>
              <para>Result value:</para>
              <para>The value of each element of the result is the carry
              produced by adding the corresponding elements of ARG1 and ARG2
              and a carry specified in ARG3 (1 if there is a carry, 0
              otherwise).</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_addec (vector signed int, vector
              signed int, vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_addec (vector unsigned int, vector
              unsigned int, vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed __int128 vec_addec (vector signed __int128,
              vector signed __int128, vector signed __int128);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned __int128 vec_addec (vector unsigned
              __int128, vector unsigned __int128, vector unsigned
              __int128);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ADDS (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the saturated sums of each set
              of corresponding elements of the given vectors.</para>
              <para>Result value:</para>
              <para>The value of each element of the result is the saturated
              sum of the corresponding elements of ARG1 and ARG2.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_adds (vector signed char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_adds (vector unsigned char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_adds (vector signed int, vector
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_adds (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_adds (vector signed short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_adds (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_AND (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Performs a bitwise AND of the given vectors.</para>
              <para>Result value:</para>
              <para>The result is the bitwise AND of ARG1 and ARG2.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool char vec_and (vector bool char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_and (vector signed char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_and (vector unsigned char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_and (vector bool int, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_and (vector signed int, vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_and (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnote xml:id="dbdoclet.50655245_taba2fn">
                <para>This optional function is being phased in, and it might not be 
                available on all implementations.  
                Phased-in interfaces are optional
                for the current generation of compliant systems.</para>
              </footnote></para>
            </entry>
            <entry>
              <para>vector bool long long vec_and (vector bool long long,
              vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector signed long long vec_and (vector signed long long,
              vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_and (vector unsigned long
              long, vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool short vec_and (vector bool short, vector bool
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_and (vector signed short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_and (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_and (vector double, vector
              double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_and (vector float, vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ANDC (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Performs a bitwise AND of the first argument and the
              bitwise complement of the second argument.</para>
              <para>Result value:</para>
              <para>The result is the bitwise AND of ARG1 with the bitwise
              complement of ARG2.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool char vec_andc (vector bool char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_andc (vector signed char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_andc (vector unsigned char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_andc (vector bool int, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_andc (vector signed int, vector
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_andc (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector bool long long vec_andc (vector bool long long,
              vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector signed long long vec_andc (vector signed long long,
              vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_andc (vector unsigned long
              long, vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool short vec_andc (vector bool short, vector bool
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_andc (vector signed short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_andc (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_andc (vector double, vector
              double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_andc (vector float, vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_AVG (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the average of each set of
              corresponding elements of the given vectors.</para>
              <para>Result value:</para>
              <para>The value of each element of the result is the average of
              the values of the corresponding elements of ARG1 and ARG2.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_avg (vector signed char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_avg (vector unsigned char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_avg (vector signed int, vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_avg (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_avg (vector signed short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_avg (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_BPERM (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Gathers up to 16 1-bit values from a quadword or from each
              doubleword element in the specified order, zeroing other
              bits.</para>
              <para>Result value:</para>
              <para>When the type of ARG1 is vector
	      unsigned char or vector unsigned __int128:</para>
              <itemizedlist>
                <listitem>
                  <para>For each i (0 ≤ i &lt; 16), let bit index j denote the
                  byte value of the i-th element of ARG2.</para>
                </listitem>
                <listitem>
                  <para>If bit index j is greater than or equal to 128, bit i
                  of doubleword 0 is set to 0.</para>
                </listitem>
                <listitem>
                  <para>If bit index j is smaller than 128, bit i of the result
                  is set to the value of the j-th bit of input ARG1.</para>
                </listitem>
                <listitem>
                  <para>All other bits are zeroed.</para>
                </listitem>
              </itemizedlist>
              <para>When the type of ARG1 is vector
              unsigned long long:</para>
              <itemizedlist>
                <listitem>
                  <para>For each doubleword element i (0 ≤ i &lt; 2) of ARG1,
                  regardless of the input operand type specified for
                  ARG1:</para>
		  <itemizedlist>
                    <listitem>
                      <para>For each j (0 ≤ j &lt; 8), let bit index k denote the
                      byte value of the j-th element of ARG2.</para>
                    </listitem>
                    <listitem>
                      <para>If bit index k is greater than or equal to 64, bit j
                      of element i is set to 0.</para>
                    </listitem>
                    <listitem>
                      <para>If bit index k is less than 64, bit j of element i is
                      set to the value of the k-th bit of element i of input
                      ARG1.</para>
                    </listitem>
                    <listitem>
                      <para>All other bits are zeroed.</para>
                    </listitem>
		  </itemizedlist>
		</listitem>
              </itemizedlist>
	      <note>
		<para>In the above description, all bit and byte numberings
		within each element denote big-endian (i.e., left-to-right)
		order.</para>
	      </note>
            </entry>
          </row>
          <row>
            <entry>
              <para></para>
            </entry>
            <entry>
              <para>vector unsigned char vec_bperm (vector unsigned char,
              vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_bperm (vector unsigned
              __int128, vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_bperm (vector unsigned long
              long, vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_CEIL (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the smallest representable
              floating-point integral values greater than or equal to the
              values of the corresponding elements of the given vector.</para>
              <para>Result value:</para>
              <para>Each element of the result contains the smallest
              representable floating-point integral value greater than or equal
              to the value of the corresponding element of ARG1.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_ceil (vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_ceil (vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_CMPB (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Performs a bounds comparison of each set of corresponding
              elements of the given vectors.</para>
              <para>Result value:</para>
              <para>Each element of the result has the value 0 if the value of
              the corresponding element of ARG1 is less than or equal to the
              value of the corresponding element of ARG2 and greater than or
              equal to the negative of the value of the corresponding element
              of ARG2. Otherwise:</para>
              <itemizedlist>
                <listitem>
                  <para>If an element of ARG2 is greater than or equal to 0,
                  then the value of the corresponding element of the result is
                  0 if the absolute value of the corresponding element of ARG1
                  is equal to the value of the corresponding element of ARG2.
                  The value is negative if it is greater than the value of the
                  corresponding element of ARG2. It is positive if it is less
                  than the value of the corresponding element of ARG2.</para>
                </listitem>
                <listitem>
                  <para>If an element of ARG2 is less than 0, then the value of
                  the element of the result is positive if the value of the
                  corresponding element of ARG1 is less than or equal to the
                  value of the element of ARG2. Otherwise. it is
                  negative.</para>
                </listitem>
              </itemizedlist>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_cmpb (vector float, vector
              float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_CMPEQ (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the results of comparing each
              set of corresponding elements of the given vectors for
              equality.</para>
              <para>Result value:</para>
              <para>For each element of the result, the value of each bit is 1
              if the corresponding elements of ARG1 and ARG2 are equal.
              Otherwise, the value of each bit is 0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool char vec_cmpeq (vector bool char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool char vec_cmpeq (vector signed char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool char vec_cmpeq (vector unsigned char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_cmpeq (vector bool int, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_cmpeq (vector signed int, vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_cmpeq (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool long long vec_cmpeq (vector bool long long,
              vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool long long vec_cmpeq (vector signed long long,
              vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool long long vec_cmpeq (vector unsigned long long,
              vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool short vec_cmpeq (vector bool short, vector bool
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool short vec_cmpeq (vector signed short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool short vec_cmpeq (vector unsigned short, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_cmpeq (vector float, vector
              float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool long long vec_cmpeq (vector double, vector
              double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_CMPGE (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the results of a
              greater-than-or-equal-to comparison between each set of
              corresponding elements of the given vectors.</para>
              <para>Result value:</para>
              <para>For each element of the result, the value of each bit is 1
              if the value of the corresponding element of ARG1 is greater than
              or equal to the value of the corresponding element of ARG2.
              Otherwise, the value of each bit is 0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool char vec_cmpge (vector signed char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool char vec_cmpge (vector unsigned char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_cmpge (vector signed int, vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_cmpge (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool long long vec_cmpge (vector signed long long,
              vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool long long vec_cmpge (vector unsigned long long,
              vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool short vec_cmpge (vector signed short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool short vec_cmpge (vector unsigned short, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_cmpge (vector float, vector
              float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool long long vec_cmpge (vector double, vector
              double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_CMPGT (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the results of a greater-than
              comparison between each set of corresponding elements of the
              given vectors.</para>
              <para>Result value:</para>
              <para>For each element of the result, the value of each bit is 1
              if the value of the corresponding element of ARG1 is greater than
              the value of the corresponding element of ARG2. Otherwise, the
              value of each bit is 0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool char vec_cmpgt (vector signed char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool char vec_cmpgt (vector unsigned char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_cmpgt (vector signed int, vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_cmpgt (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool long long vec_cmpgt (vector signed long long,
              vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool long long vec_cmpgt (vector unsigned long long,
              vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool short vec_cmpgt (vector signed short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool short vec_cmpgt (vector unsigned short, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_cmpgt (vector float, vector
              float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool long long vec_cmpgt (vector double, vector
              double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_CMPLE (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the results of a
              less-than-or-equal-to comparison between each set of
              corresponding elements of the given vectors.</para>
              <para>Result value:</para>
              <para>For each element of the result, the value of each bit is 1
              if the value of the corresponding element of ARG1 is less than or
              equal to the value of the corresponding element of ARG2.
              Otherwise, the value of each bit is 0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool char vec_cmple (vector signed char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool char vec_cmple (vector unsigned char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_cmple (vector signed int, vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_cmple (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool long long vec_cmple (vector signed long long,
              vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool long long vec_cmple (vector unsigned long long,
              vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool short vec_cmple (vector signed short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool short vec_cmple (vector unsigned short, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_cmple (vector float, vector
              float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool long long vec_cmple (vector double, vector
              double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_CMPLT (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the results of a less-than
              comparison between each set of corresponding elements of the
              given vectors.</para>
              <para>Result value:</para>
              <para>For each element of the result, the value of each bit is 1
              if the value of the corresponding element of ARG1 is less than
              the value of the corresponding element of ARG2. Otherwise, the
              value of each bit is 0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool char vec_cmplt (vector signed char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool char vec_cmplt (vector unsigned char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_cmplt (vector signed int, vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_cmplt (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool long long vec_cmplt (vector signed long long,
              vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool long long vec_cmplt (vector unsigned long long,
              vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool short vec_cmplt (vector signed short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool short vec_cmplt (vector unsigned short, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_cmplt (vector float, vector
              float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool long long vec_cmplt (vector double, vector
              double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_CMPNE (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the results of comparing each
              set of corresponding elements of the given vectors for
              inequality.</para>
              <para>Result value:</para>
              <para>For each element of the result, the value of each bit is 1
              if the corresponding elements of ARG1 and ARG2 are not equal.
              Otherwise, the value of each bit is 0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool char vec_cmpne (vector bool char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool char vec_cmpne (vector signed char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool char vec_cmpne (vector unsigned char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_cmpne (vector bool int, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_cmpne (vector signed int, vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_cmpne (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool long long vec_cmpne (vector bool long long,
              vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool long long vec_cmpne (vector signed long long,
              vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool long long vec_cmpne (vector unsigned long long,
              vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool short vec_cmpne (vector bool short, vector bool
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool short vec_cmpne (vector signed short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool short vec_cmpne (vector unsigned short, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool long long vec_cmpne (vector double, vector
              double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_cmpne (vector float, vector
              float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_CMPNEZ (ARG1, ARG2)</para>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the results of comparing each
              set of corresponding elements of the given vectors for inequality
              or for an element with a 0 value.</para>
              <para>Result value:</para>
              <para>For each element of the result, the value of each bit is 1
              if the corresponding elements of ARG1 and</para>
              <para>ARG2 are not equal, or if the ARG1 element or the ARG2
              element is 0. Otherwise, the value of each bit is 0.</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector bool char vec_cmpnez (vector signed char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector bool char vec_cmpnez (vector unsigned char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector bool int vec_cmpnez (vector signed int, vector
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector bool int vec_cmpnez (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector bool short vec_cmpnez (vector signed short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector bool short vec_cmpnez (vector unsigned short, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_CNTLZ (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the number of most-significant
              bits equal to 0 of each corresponding element of the given
              vector.</para>
              <para>Result value:</para>
              <para>The value of each element of the result is set to the
              number of leading zeros of the corresponding element of
              ARG1.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector signed char vec_cntlz (vector signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
             </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_cntlz (vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
		</para>
            </entry>
            <entry>
              <para>vector signed int vec_cntlz (vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
		</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_cntlz (vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector signed long long vec_cntlz (vector signed long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_cntlz (vector unsigned long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector signed short vec_cntlz (vector signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_cntlz (vector unsigned
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_CNTLZ_LSBB (ARG1)</para>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns the number of leading byte elements (starting at
              the lowest-numbered element) of a vector that have a
              least-significant bit of 0.</para>
              <para>Result value:</para>
              <para>The number of leading byte elements (starting at the
              lowest-numbered element) of a vector that have a
              least-significant bit of 0.</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>signed int vec_cntlz_lsbb (vector signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>signed int vec_cntlz_lsbb (vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_CNTTZ (ARG1)</para>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the number of least-significant
              bits equal to 0 of each corresponding element of the given
              vector.</para>
              <para>Result value:</para>
              <para>The value of each element of the result is set to the
              number of trailing zeros of the corresponding element of
              ARG1.</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector signed char vec_cnttz (vector signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector unsigned char vec_cnttz (vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector signed int vec_cnttz (vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_cnttz (vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector signed long long vec_cnttz (vector signed long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_cnttz (vector unsigned long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector signed short vec_cnttz (vector signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector unsigned short vec_cnttz (vector unsigned
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_CNTTZ_LSBB (ARG1)</para>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns the number of trailing byte elements (starting at
              the highest-numbered element) of a vector that have a
              least-significant bit of 0.</para>
              <para>Result value:</para>
              <para>The number of trailing byte elements (starting at the
              highest-numbered element) of a vector that have a
              least-significant bit of 0.</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>signed int vec_cnttz_lsbb (vector signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>signed int vec_cnttz_lsbb (vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_CPSGN(ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector by copying the sign of the elements in
              vector ARG1 to the sign of the corresponding elements in vector
              ARG2.</para>
              <para>Result value:</para>
              <para>For each element of the result, copies the sign of the
              corresponding element in vector ARG1 to the sign of the
              corresponding element in vector ARG2.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector float vec_cpsgn (vector float, vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector double vec_cpsgn (vector double, vector
              double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_CTF (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Converts an integer vector into a floating-point
              vector.</para>
              <para>Result value:</para>
              <para>The value of each element of the result is the closest
              floating-point 
              approximation
              of the value of the corresponding
              element of ARG1 divided by 2 to the power of ARG2, which should
              be in the range 0&#8211;31.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_ctf (vector signed int, const int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_ctf (vector unsigned int, const
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_CTS (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Converts a real vector into a vector signed int.</para>
              <para>Result value:</para>
              <para>The value of each element of the result is the saturated
              signed-integer value, 
              truncated towards zero, obtained by
              multiplying the corresponding element of ARG1 by 2 to the power
              of ARG2, which should be in the range 0&#8211;31.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_cts (vector float, const int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_CTU (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Converts a real vector into a vector unsigned int.</para>
              <para>Result value:</para>
              <para>The value of each element of the result is the saturated
              unsigned-integer value, 
              truncated towards zero, obtained by
              multiplying the corresponding element of ARG1 by 2 to the power
              of ARG2, which should be in the range 0&#8211;31.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_ctu (vector float, const
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_DIV (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Divides the elements in ARG1 by the corresponding elements
              in ARG2 and then assigns the result to corresponding elements in
              the result vector. This function emulates the operation on
              integer vectors.</para>
              <para>Result value:</para>
              <para>The value of each element of the result is obtained by
              dividing the corresponding element of ARG1 by the corresponding
              element of ARG2.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_div (vector signed long long,
	      vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_div (vector unsigned long long,
	      vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_div (vector double, vector
              double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_div (vector float, vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_DOUBLE (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Converts a vector of long integers into a vector of
              double-precision numbers.</para>
              <para>Result value:</para>
              <para>Target elements are computed by converting the respective
              input elements.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_double (vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_double (vector unsigned long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_DOUBLEE (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Converts an input vector to a vector of double-precision
              numbers.</para>
              <para>Result value:</para>
              <para>Target elements 0 and 1 are set to the converted values of
              source elements 0 and 2.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_doublee (vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_doublee (vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_doublee (vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_DOUBLEH (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Converts 
              an input vector
              to a vector of double-precision
              floating-point numbers.</para>
              <para>Result value:</para>
              <para>Target elements 0 and 1 are set to the converted values of
              source elements 0 and 1.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_doubleh (vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_doubleh (vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_doubleh (vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_DOUBLEL (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Converts 
              an input vector
              to a vector of double-precision
              floating-point numbers.</para>
              <para>Result value:</para>
              <para>Target elements 0 and 1 are set to the converted values of
              source elements 2 and 3.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_doublel (vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_doublel (vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_doublel (vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_DOUBLEO (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Converts an input vector to a vector of double-precision
              numbers.</para>
              <para>Result value:</para>
              <para>Target elements 0 and 1 are set to the converted values of
              source elements 1 and 3.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_doubleo (vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_doubleo (vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_doubleo (vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_EQV (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Performs a bitwise XNOR of the given vectors.</para>
              <para>Result value:</para>
              <para>The result is the bitwise XNOR of ARG1 and ARG2.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool char vec_eqv (vector bool char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_eqv (vector signed char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_eqv (vector unsigned char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_eqv (vector bool int, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_eqv (vector signed int, vector 
              signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_eqv (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool long long vec_eqv (vector bool long long,
              vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_eqv (vector signed long long,
              vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_eqv (vector unsigned long
              long, vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool short vec_eqv (vector bool short, vector bool
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_eqv (vector signed short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_eqv (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_eqv (vector double, vector
              double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_eqv (vector float, vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_EXPTE (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing estimates of 2 raised to the
              power of the corresponding elements of the given vector.</para>
              <para>Result value:</para>
              <para>Each element of the result contains the estimated value of
              2 raised to the power of the corresponding element of
              ARG1.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_expte (vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_EXTRACT (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns the value of the ARG1 element indicated by the ARG2
              parameter.</para>
              <para>Result value:</para>
              <para>This function uses modular arithmetic on ARG2 to determine
              the element number. For example, if ARG2 is out of range, the
              compiler uses ARG2 modulo the number of elements in the vector to
              determine the element position.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>signed char vec_extract (vector signed char, signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>unsigned char vec_extract (vector bool char, signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>unsigned char vec_extract (vector unsigned char, signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>signed int vec_extract (vector signed int, signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>unsigned int vec_extract (vector bool int, signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>unsigned int vec_extract (vector unsigned int, signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>signed long long vec_extract (vector signed long long,
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>unsigned long long vec_extract (vector bool long long,
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>unsigned long long vec_extract (vector unsigned long long,
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>signed short vec_extract (vector signed short, signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>unsigned short vec_extract (vector bool short, signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>unsigned short vec_extract (vector unsigned short, signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>double vec_extract (vector double, signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>float vec_extract (vector float, signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>_Float16 vec_extract (vector _Float16, signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_EXTRACT_EXP (ARG1)</para>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Extracts an exponent from a floating-point number.</para>
              <para>Result value:</para>
              <para>Each element of the returned integer vector is extracted
              from the exponent field of the corresponding floating-point
              vector element.</para>
              <para>The extracted exponents of ARG1 are returned as 
              right-justified unsigned integers containing biased exponents, in
              accordance with the exponent representation specified by IEEE
              754, without further processing.</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_extract_exp (vector
              double);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_extract_exp (vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_EXTRACT_FP32_ FROM_SHORTH (ARG1)</para>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Extracts four single-precision floating-point numbers from
              the high elements of a vector of eight 16-bit elements,
              interpreting each element as a 16-bit floating-point number in
              IEEE format.</para>
              <para>Result value:</para>
              <para>The first four elements are interpreted as 16-bit
              floating-point numbers in IEEE format, and extended to
              single-precision format, returning a vector with four
              single-precision IEEE numbers.</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector float vec_extract_fp32_from_shorth (vector unsigned
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_EXTRACT_FP32_ FROM_SHORTL (ARG1)</para>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>Purpose</para>
              <para>Extracts four single-precision floating-point numbers from
              the low elements of a vector of eight 16-bit elements,
              interpreting each element as a 16-bit floating-point number in
              IEEE format.</para>
              <para>Result value:</para>
              <para>The last four elements are interpreted as 16-bit
              floating-point numbers in IEEE format, and extended to
              single-precision format, returning a vector with four
              single-precision IEEE numbers.</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector float vec_extract_fp32_from_shortl (vector unsigned
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_EXTRACT_SIG (ARG1)</para>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Extracts a significand (mantissa) from a floating-point
              number.</para>
              <para>Result value:</para>
              <para>Each element of the returned integer vector is extracted
              from the significand (mantissa) field of the corresponding
              floating-point vector element.</para>
              <para>The significand is from the corresponding floating-point
              number in accordance with the IEEE format. The returned result
              includes the implicit leading digit. The value of that digit is
              not encoded in the IEEE format, but is implied by the
              exponent.</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_extract_sig (vector
              double);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_extract_sig (vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_EXTRACT4B (ARG1, ARG2)</para>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Extracts a word from a vector at a byte position.</para>
              <para>Result value:</para>
              <para>The first doubleword element of the result contains the
              zero-extended extracted word from ARG1. The second doubleword is
              set to 0. ARG2 specifies the least-significant byte number
	      (0&#8211;12) of the word to be extracted.</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_extract4b (vector unsigned
              char, const int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_FIRST_MATCH_INDEX (ARG1, ARG2)</para>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Performs a comparison of equality on each of the
              corresponding elements of ARG1 and ARG2, and returns the first
              position of equality.</para>
              <para>Result value:</para>
              <para>Returns the element index of the position of the first
              character match. If no match, returns the number of characters as
              an element count in the vector argument.</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>unsigned int vec_first_match_index (vector signed char,
              vector signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>unsigned int vec_first_match_index (vector unsigned char,
              vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>unsigned int vec_first_match_index (vector signed int,
              vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>unsigned int vec_first_match_index (vector unsigned int,
              vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>unsigned int vec_first_match_index (vector signed short,
              vector signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>unsigned int vec_first_match_index (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_FIRST_MATCH_OR_EOS_ INDEX (ARG1, ARG2)</para>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Performs a comparison of equality on each of the
              corresponding elements of ARG1 and ARG2. Returns the first
              position of equality, or the zero string terminator.</para>
              <para>Result value:</para>
              <para>Returns the element index of the position of either the
              first character match or an end-of-string (EOS) terminator. If no
              match or terminator, returns the number of characters as an
              element count in the vector argument.</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>unsigned int vec_first_match_or_eos_index (vector signed
              char, vector signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>unsigned int vec_first_match_or_eos_index (vector unsigned
              char, vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>unsigned int vec_first_match_or_eos_index (vector signed
              int, vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>unsigned int vec_first_match_or_eos_index (vector unsigned
              int, vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>unsigned int vec_first_match_or_eos_index (vector signed
              short, vector signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>unsigned int vec_first_match_or_eos_index (vector unsigned
              short, vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_FIRST_MISMATCH_INDEX (ARG1, ARG2)</para>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Performs a comparison of inequality on each of the
              corresponding elements of ARG1 and ARG2, and returns the first
              position of inequality.</para>
              <para>Result value:</para>
              <para>Returns the element index of the position of the first
              character mismatch. If no mismatch, returns the number of
              characters as an element count in the vector argument.</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>unsigned int vec_first_mismatch_index (vector signed char,
              vector signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>unsigned int vec_first_mismatch_index (vector unsigned
              char, vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>unsigned int vec_first_mismatch_index (vector signed int,
              vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>unsigned int vec_first_mismatch_index (vector unsigned int,
              vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>unsigned int vec_first_mismatch_index (vector signed short,
              vector signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>unsigned int vec_first_mismatch_index (vector unsigned
              short, vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_FIRST_MISMATCH_OR_ EOS_INDEX (ARG1, ARG2)</para>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Performs a comparison of inequality on each of the
              corresponding elements of ARG1 and ARG2. Returns the first
              position of inequality, or the zero string terminator.</para>
              <para>Result value:</para>
              <para>Returns the element index of the position of either the
              first character mismatch or an end-of-string (EOS) terminator. If
              no mismatch or terminator, returns the number of characters as an
              element count in the vector argument.</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>unsigned int vec_first_mismatch_or_eos_index (vector signed
              char, vector signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>unsigned int vec_first_mismatch_or_eos_index (vector
              unsigned char, vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>unsigned int vec_first_mismatch_or_eos_index (vector signed
              int, vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>unsigned int vec_first_mismatch_or_eos_index (vector
              unsigned int, vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>unsigned int vec_first_mismatch_or_eos_index (vector signed
              short, vector signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>unsigned int vec_first_mismatch_or_eos_index (vector
              unsigned short, vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_FLOAT (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Converts a vector of integers to a vector of
              single-precision floating-point numbers.</para>
              <para>Result value:</para>
              <para>Target elements are obtained by converting the respective
              source elements to single-precision floating-point
	      numbers.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float 
              vec_float (vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float
              vec_float (vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_FLOAT2 (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Converts 
              an input vector
              to a vector of single-precision numbers.</para>
              <para>Result value:</para>
              <para>Target elements are obtained by converting the source
              elements to single-precision numbers as follows:</para>
              <itemizedlist>
                <listitem>
                  <para>Target elements 0 and 1 from source 0</para>
                </listitem>
                <listitem>
                  <para>Target elements 2 and 3 from source 1</para>
                </listitem>
              </itemizedlist>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_float2 (vector signed long long, vector
              signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_float2 (vector unsigned long long, vector
              unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_float2 (vector double, vector
              double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_FLOATE (ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Converts an input vector to a vector of single-precision
              numbers.</para>
              <para>Result value:</para>
              <para>The even-numbered target elements are obtained by
              converting the source elements to single-precision
              numbers, using the current floating-point rounding mode.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_floate (vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_floate (vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_floate (vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_FLOATH (ARG2)</para>
	      <para>POWER ISA 3.0</para>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Converts a vector to a vector of single-precision
              floating-point numbers.</para>
              <para>Result value:</para>
              <para>Target elements 0 through 3 are set to the converted values
              of source elements 0 through 3, respectively.</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector float vec_floath (vector _Float16);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_FLOATL (ARG2)</para>
	      <para>POWER ISA 3.0</para>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Converts a vector to a vector of single-precision
              floating-point numbers.</para>
              <para>Result value:</para>
              <para>Target elements 0 through 3 are set to the converted values
              of source elements 4 through 7, respectively.</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector float vec_floatl (vector _Float16);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_FLOATO (ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Converts an input vector to a vector of single-precision
              numbers.</para>
              <para>Result value:</para>
              <para>The odd-numbered target elements are obtained by converting
              the source elements to single-precision numbers, using the
	      current floating-point rounding mode.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_floato (vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_floato (vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_floato (vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_FLOOR (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the largest representable
              floating-point integral values less than or equal to the values
              of the corresponding elements of the given vector.</para>
              <para>Result value:</para>
              <para>Each element of the result contains the largest
              representable floating-point integral value less than or equal to
              the value of the corresponding element of ARG1.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_floor (vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_floor (vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_GB (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Performs a gather-bits operation on the input.</para>
              <para>Result value:</para>
              <para>Within each doubleword, let x(i) (0 ≤ i &lt; 8) denote the
              byte elements of the corresponding input doubleword element, with
              x(7) the most-significant byte. For each pair of i and j (0 ≤ i
              &lt; 8, 0 ≤ j &lt; 8), the j-th bit of the i-th byte element of
              the result is set to the value of the i-th bit of the j-th byte
              element of the input.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_gb (vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_INSERT (ARG1, ARG2, ARG3)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a copy of vector ARG2 with element ARG3 replaced by
              the value of ARG1.</para>
              <para>Result value:</para>
              <para>A copy of vector ARG2 with element ARG3 replaced by the
              value of ARG1. This function uses modular arithmetic on ARG3 to
              determine the element number. For example, if ARG3 is out of
              range, the compiler uses ARG3 modulo the number of elements in
              the vector to determine the element position.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_insert (signed char, vector signed
              char, signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_insert (unsigned char, vector
              unsigned char, signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_insert (signed int, vector signed
              int, signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_insert (unsigned int, vector
              unsigned int, signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_insert (signed long long,
              vector signed long long, signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_insert (unsigned long long,
              vector unsigned long long, signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_insert (signed short, vector signed
              short,
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_insert (unsigned short, vector
              unsigned short, signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_insert (double, vector double, signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_insert (float, vector float, signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector _Float16 vec_insert (_Float16, vector _Float16,
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_INSERT_EXP (ARG1, ARG2)</para>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Inserts an exponent into a floating-point number.</para>
              <para>Result value:</para>
              <para>Each element of the returned floating-point vector is
              generated by combining the exponent specified by the
              corresponding element of ARG2 with the sign and significand of
              the corresponding element of ARG1.</para>
              <para>The inserted exponent of ARG2 is treated as a
              right-justified unsigned integer containing a biased exponent, in
              accordance with the exponent representation specified by IEEE
              754. It is combined with the sign and significand of ARG1 without
              further processing.</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector double vec_insert_exp (vector double, vector
              unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector double vec_insert_exp (vector unsigned long long,
              vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector float vec_insert_exp (vector float, vector unsigned
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector float vec_insert_exp (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_INSERT4B (ARG1, ARG2, ARG3)</para>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Inserts a word into a vector at a byte position.</para>
              <para>Result value:</para>
              <para>Let W be the first doubleword element of ARG1, truncated
	      to 32 bits.  The result vector is formed by inserting W into
	      ARG2 at the byte position (0&#8211;12) specified by ARG3.</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector unsigned char vec_insert4b (vector signed int,
              vector unsigned char, const int);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector unsigned char vec_insert4b (vector unsigned int,
              vector unsigned char, const int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_LOGE (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing estimates of the base-2
              logarithms of the corresponding elements of the given
              vector.</para>
              <para>Result value:</para>
              <para>Each element of the result contains the estimated value of
              the base-2 logarithm of the corresponding element of ARG1.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_loge (vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_MADD (ARG1, ARG2, ARG3)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the results of performing a
              fused multiply-add operation for each corresponding set of
              elements of the given vectors.</para>
              <para>Result value:</para>
              <para>The value of each element of the result is the product of
              the values of the corresponding elements of ARG1 and ARG2, added
              to the value of the corresponding element of ARG3.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_madd (vector signed short, vector
              signed short, vector signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_madd (vector signed short, vector
              unsigned short, vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_madd (vector unsigned short, vector
              signed short, vector signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_madd (vector unsigned short,
              vector unsigned short, vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_madd (vector double, vector double,
              vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_madd (vector float, vector float, vector
              float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_MADDS (ARG1, ARG2, ARG3)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the results of performing a
              saturated multiply-high-and-add operation for each corresponding
              set of elements of the given vectors.</para>
              <para>Result value:</para>
              <para>For each element of the result, the value is produced in
              the following way: The values of the corresponding elements of
              ARG1 and ARG2 are multiplied. The value of the 17
              most-significant bits of this product is then added, using
              16-bit-saturated addition, to the value of the corresponding
              element of ARG3.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_madds (vector signed short, vector
              signed short, vector signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_MAX (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose</para>
              <para>Returns a vector containing the maximum value from each set
              of corresponding elements of the given vectors.</para>
              <para>Result value</para>
              <para>The value of each element of the result is the maximum of
              the values of the corresponding elements of ARG1 and ARG2.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_max (vector signed char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_max (vector unsigned char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_max (vector signed int, vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_max (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_max (vector signed long long,
              vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_max (vector unsigned long
              long, vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_max (vector signed short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_max (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_max (vector double, vector
              double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_max (vector float, vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_MERGEE (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Merges the even-numbered values from the two
              vectors.</para>
              <para>Result value:</para>
              <para>The even-numbered elements of ARG1 are stored into the
              even-numbered elements of the result. The even-numbered elements
              of ARG2 are stored in the odd-numbered elements of the
              result.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector bool int vec_mergee (vector bool int, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector signed int vec_mergee (vector signed int, vector
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_mergee (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector bool long long vec_mergee (vector bool long long,
              vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector signed long long vec_mergee (vector signed long
              long, vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_mergee (vector unsigned long
              long, vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector float vec_mergee (vector float, vector
              float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector double vec_mergee (vector double, vector
              double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_MERGEH (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Merges the most-significant halves of two vectors.</para>
              <para>Result value:</para>
              <para>Assume that the elements of each vector are numbered
              beginning with 0. The even-numbered elements of the result are
              taken, in order, from the elements in the most-significant 8
              bytes of ARG1. The odd-numbered elements of the result are taken,
              in order, from the elements in the most-significant 8 bytes of
              ARG2.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool char vec_mergeh (vector bool char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_mergeh (vector signed char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_mergeh (vector unsigned char,
              vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_mergeh (vector bool int, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_mergeh (vector signed int, vector
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_mergeh (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool long long vec_mergeh (vector bool long long,
              vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_mergeh (vector signed long
              long, vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_mergeh (vector unsigned long
              long, vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector pixel vec_mergeh (vector pixel, vector
              pixel);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool short vec_mergeh (vector bool short, vector
              bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_mergeh (vector signed short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_mergeh (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_mergeh (vector double, vector
              double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_mergeh (vector float, vector
              float);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector _Float16 vec_mergeh (vector _Float16, vector
              _Float16);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_MERGEL (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Merges the least-significant halves of two vectors.</para>
              <para>Result value:</para>
              <para>Assume that the elements of each vector are numbered
              beginning with 0. The even-numbered elements of the result are
              taken, in order, from the elements in the least-significant 8
              bytes of ARG1. The odd-numbered elements of the result are taken,
              in order, from the elements in the least-significant 8 bytes of
              ARG2.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool char vec_mergel (vector bool char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_mergel (vector signed char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_mergel (vector unsigned char,
              vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_mergel (vector bool int, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_mergel (vector signed int, vector
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_mergel (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector bool long long vec_mergel (vector bool long long,
              vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_mergel (vector signed long
              long, vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_mergel (vector unsigned long
              long, vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector pixel vec_mergel (vector pixel, vector
              pixel);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool short vec_mergel (vector bool short, vector
              bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_mergel (vector signed short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_mergel (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_mergel (vector double, vector
              double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_mergel (vector float, vector
              float);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector _Float16 vec_mergel (vector _Float16, vector
              _Float16);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_MERGEO (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Merges the odd-numbered halves of two vectors.</para>
              <para>Result value:</para>
              <para>The odd-numbered elements of ARG1 are stored in the
              even-numbered elements of the result.</para>
              <para>The odd-numbered elements of ARG2 are stored in the
              odd-numbered elements of the result.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector bool int vec_mergeo (vector bool int, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector signed int vec_mergeo (vector signed int, vector
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_mergeo (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector bool long long vec_mergeo (vector bool long long,
              vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector signed long long vec_mergeo (vector signed long
              long, vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_mergeo (vector unsigned long
              long, vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector double vec_mergeo (vector double, vector
              double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector float vec_mergeo (vector float, vector
              float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_MIN (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the minimum value from each set
              of corresponding elements of the given vectors.</para>
              <para>Result value:</para>
              <para>The value of each element of the result is the minimum of
              the values of the corresponding elements of ARG1 and ARG2.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_min (vector signed char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_min (vector unsigned char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_min (vector signed int, vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_min (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_min (vector signed long long,
              vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_min (vector unsigned long
              long, vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_min (vector signed short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_min (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_min (vector double, vector
              double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_min (vector float, vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_MRADDS (ARG1, ARG2, ARG3)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the results of performing a
              saturated multiply-high-round-and-add operation for each
              corresponding set of elements of the given vectors.</para>
              <para>Result value:</para>
              <para>For each element of the result, the value is produced in
              the following way: The values of the corresponding elements of
              ARG1 and ARG2 are multiplied and rounded such that the 15
              least-significant bits are 0. The value of the 17
              most-significant bits of this rounded product is then added,
              using 16-bit-saturated addition, to the value of the
              corresponding element of ARG3.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_mradds (vector signed short, vector
              signed short, vector signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_MSUB (ARG1, ARG2, ARG3)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the results of performing a
              multiply-subtract operation using the given vectors.</para>
              <para>Result value:</para>
              <para>This function multiplies each element in ARG1 by the
              corresponding element in ARG2 and then subtracts the
              corresponding element in ARG3 from the result.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_msub (vector double, vector double,
              vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_msub (vector float, vector float, vector
              float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_MSUM (ARG1, ARG2, ARG3)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the results of performing a
              multiply-sum operation using the given vectors.</para>
              <para>Result value:</para>
              <para>Assume that the elements of each vector are numbered
              beginning with 0. If ARG1 is a vector signed char or a vector
              unsigned char vector, then let m be 4. Otherwise, let m be 2. For
              each element n of the result vector, the value is obtained in the
              following way: For p = mn to mn + m &#8211; 1, multiply element p of ARG1
              by element p of ARG2. Add the sum of these products to element n
              of ARG3. All additions are performed using 32-bit modular
              arithmetic.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_msum (vector signed char, vector
              unsigned char, vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_msum (vector signed short, vector
              signed short, vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_msum (vector unsigned char, vector
              unsigned char, vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_msum (vector unsigned short, vector
              unsigned short, vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_MSUMS (ARG1, ARG2, ARG3)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the results of performing a
              saturated multiply-sum operation using the given vectors.</para>
              <para>Result value:</para>
              <para>Assume that the elements of each vector are numbered
              beginning with 0. For each element n of the result vector, the
              value is obtained in the following way: For p = 2n to 2n+1,
              multiply element p of ARG1 by element p of ARG2. Add the sum of
              these products to element n of ARG3. All additions are performed
              using 32-bit saturated arithmetic.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_msums (vector signed short, vector
              signed short, vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_msums (vector unsigned short,
              vector unsigned short, vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_MUL (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the results of performing a
              multiply operation using the given vectors.</para>
              <para>This function emulates the operation on integer
              vectors.</para>
              <para>Result value:</para>
              <para>This function multiplies corresponding elements in the
              given vectors and then assigns the result to corresponding
              elements in the result vector.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_mul (vector signed char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_mul (vector unsigned char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_mul (vector signed int, vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_mul (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector signed long long vec_mul (vector signed long long,
              vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_mul (vector unsigned long
              long, vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_mul (vector signed short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_mul (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_mul (vector double, vector
              double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_mul (vector float, vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_MULE (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the results of multiplying
              every second set of the corresponding elements of the given
              vectors, beginning with the first element.</para>
              <para>Result value:</para>
              <para>Assume that the elements of each vector are numbered
              beginning with 0. For each element n of the result vector, the
              value is the product of the value of element 2n of ARG1 and the
              value of element 2n of ARG2.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_mule (vector signed short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_mule (vector unsigned short, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_mule (vector signed int, vector
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_mule (vector unsigned int,
              vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_mule (vector signed char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_mule (vector unsigned char,
              vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_MULO (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the results of multiplying
              every second set of corresponding elements of the given vectors,
              beginning with the second element.</para>
              <para>Result value:</para>
              <para>Assume that the elements of each vector are numbered
              beginning with 0. For each element n of the result vector, the
              value is the product of the value of element 2n+1 of ARG1 and the
              value of element 2n+1 of ARG2.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_mulo (vector signed short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_mulo (vector unsigned short, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_mulo (vector signed int, vector
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_mulo (vector unsigned int,
              vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_mulo (vector signed char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_mulo (vector unsigned char,
              vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_NABS (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the negated absolute values of
              the contents of the given vector.</para>
              <para>Result value:</para>
              <para>The value of each element of the result is the negated
              absolute value of the corresponding element of ARG1. For integer
              vectors, the arithmetic is modular.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_nabs (vector signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_nabs (vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_nabs (vector signed long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_nabs (vector signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_nabs (vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_nabs (vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_NAND (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Performs a bitwise NAND of the given vectors.</para>
              <para>Result value:</para>
              <para>The result is the bitwise NAND of ARG1 and ARG2.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool char vec_nand (vector bool char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_nand (vector signed char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_nand (vector unsigned char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_nand (vector bool int, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_nand (vector signed int, vector
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_nand (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool long long vec_nand (vector bool long long,
              vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_nand (vector signed long long,
              vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_nand (vector unsigned long
              long, vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool short vec_nand (vector bool short, vector bool
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_nand (vector signed short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_nand (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_nand (vector double, vector
              double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_nand (vector float, vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_NEARBYINT (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the floating-point integral
              values nearest to the values of the corresponding elements of the
              given vector.</para>
              <para>Result value:</para>
              <para>Each element of the result contains the nearest
              representable floating-point integral value to the value of the
              corresponding element of ARG1. When an input element value is
              exactly between two integer values, the result value with the
              largest absolute value is selected.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_nearbyint (vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_nearbyint (vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_NEG (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the negated values of the
              contents of the given vector.</para>
              <para>Result value:</para>
              <para>The value of each element of the result is the negated
              value of the corresponding element of ARG1. For integer vectors,
              the arithmetic is modular.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_neg (vector signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_neg (vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_neg (vector signed long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_neg (vector signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_neg (vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_neg (vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_NMADD (ARG1, ARG2, ARG3)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the results of performing a
              negative multiply-add operation on the given vectors.</para>
              <para>Result value:</para>
              <para>The value of each element of the result is the product of
              the corresponding elements of ARG1 and ARG2, added to the
              corresponding elements of ARG3, then multiplied by
              &#8211;1.0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_nmadd (vector double, vector double,
              vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_nmadd (vector float, vector float, vector
              float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_NMSUB (ARG1, ARG2, ARG3)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the results of performing a
              negative multiply-subtract operation on the given vectors.</para>
              <para>Result value:</para>
              <para>The value of each element of the result is the product of
              the corresponding elements of ARG1 and ARG2, subtracted from the
              corresponding element of ARG3, and then multiplied by
              &#8211;1.0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_nmsub (vector double, vector double,
              vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_nmsub (vector float, vector float, vector
              float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_NOR (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Performs a bitwise NOR of the given vectors.</para>
              <para>Result value:</para>
              <para>The result is the bitwise NOR of ARG1 and ARG2.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool char vec_nor (vector bool char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_nor (vector signed char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_nor (vector unsigned char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_nor (vector bool int, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_nor (vector signed int, vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_nor (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool long long vec_nor (vector bool long long,
              vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector signed long long vec_nor (vector signed long long,
              vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_nor (vector unsigned long
              long, vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool short vec_nor (vector bool short, vector bool
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_nor (vector signed short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_nor (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_nor (vector double, vector
              double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_nor (vector float, vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_OR (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Performs a bitwise OR of the given vectors.</para>
              <para>Result value:</para>
              <para>The result is the bitwise OR of ARG1 and ARG2.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool char vec_or (vector bool char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_or (vector signed char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_or (vector unsigned char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_or (vector bool int, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_or (vector signed int, vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_or (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool long long vec_or (vector bool long long, vector
              bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector signed long long vec_or (vector signed long long,
              vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_or (vector unsigned long
              long, vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool short vec_or (vector bool short, vector bool
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_or (vector signed short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_or (vector unsigned short, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_or (vector double, vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_or (vector float, vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ORC (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Performs a bitwise OR of the first vector with the negated
              second vector.</para>
              <para>Result value:</para>
              <para>The result is the bitwise OR of ARG1 and the bitwise
              negation of ARG2.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool char vec_orc (vector bool char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_orc (vector signed char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_orc (vector unsigned char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_orc (vector bool int, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_orc (vector signed int, vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_orc (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool long long vec_orc (vector bool long long,
              vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_orc (vector signed long long,
              vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_orc (vector unsigned long
              long, vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool short vec_orc (vector bool short, vector bool
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_orc (vector signed short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_orc (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_orc (vector double, vector
              double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_orc (vector float, vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_PACK (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Packs information from each element of two vectors into the
              result vector.</para>
              <para>Result value:</para>
              <para>For integer types, the
              value of each element of the result
              vector is taken from the low-order half of the corresponding
              element of the result of concatenating ARG1 and ARG2.</para>
              <para>For floating-point types, the value of each element of the
              result vector is the corresponding element of the result of
              concatenating ARG1 and ARG2, rounded to the result type.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool char vec_pack (vector bool short, vector bool
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_pack (vector signed short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_pack (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_pack (vector bool long long, vector
              bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_pack (vector signed long long, vector
              signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_pack (vector unsigned long long,
              vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool short vec_pack (vector bool int, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_pack (vector signed int, vector
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_pack (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_pack (vector double, vector
              double);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector _Float16 vec_pack (vector float, vector
              float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_PACK_TO_SHORT_FP32 (ARG1, ARG2)</para>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Packs eight single-precision 32-bit floating-point numbers
              into a vector of eight 16-bit floating-point numbers.</para>
              <para>Result value:</para>
              <para>The value is a vector consisting of eight 16-bit elements,
              each representing a 16-bit floating-point number that was created
              by converting the corresponding single-precision value to
              half-precision.</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector unsigned short vec_pack_to_short_fp32 (vector float,
              vector float);</para>
              <para> </para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_PACKPX (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Packs information from each element of two vectors into the
              result vector.</para>
              <para>Result value:</para>
              <para>The value of each element of the result vector is taken
              from the corresponding element of the result of concatenating
              ARG1 and ARG2 as follows:</para>
              <itemizedlist>
                <listitem>
                  <para>The least-significant bit of the high-order byte is
                  stored into the first bit of the result element.</para>
                </listitem>
                <listitem>
                  <para>The least-significant 5 bits of each of the remaining
                  bytes are stored into the remaining portion of the result
                  element.</para>
                </listitem>
              </itemizedlist>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector pixel vec_packpx (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_PACKS (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Packs information from each element of two vectors into the
              result vector, using saturated values.</para>
              <para>Result value:</para>
              <para>The value of each element of the result vector is the
              saturated value of the corresponding element of the result of
              concatenating ARG1 and ARG2.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_packs (vector signed short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_packs (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_packs (vector signed long long,
              vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_packs (vector unsigned long long,
              vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_packs (vector signed int, vector
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_packs (vector unsigned int,
              vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_PACKSU (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Packs information from each element of two vectors into the
              result vector, using unsigned saturated values.</para>
              <para>Result value:</para>
              <para>The value of each element of the result vector is the
              saturated value of the corresponding element of the result of
              concatenating ARG1 and ARG2.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_packsu (vector signed short,
              vector signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_packsu (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_packsu (vector signed long long,
              vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_packsu (vector unsigned long long,
              vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_packsu (vector signed int, vector
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_packsu (vector unsigned int,
              vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_PARITY_LSBB (ARG1)</para>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Compute parity on the least-significant bit of each
              byte.</para>
              <para>Result value:</para>
              <para>Returns a vector with each element containing the parity of
              the low-order bit of each of the bytes in that element.</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_parity_lsbb (vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_parity_lsbb (vector unsigned
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector unsigned __int128 vec_parity_lsbb (vector
              signed __int128);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector unsigned __int128 vec_parity_lsbb (vector
              unsigned __int128);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_parity_lsbb (vector signed
              long long);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_parity_lsbb (vector unsigned
              long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_PERM (ARG1, ARG2, ARG3)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector that contains some elements of two
              vectors, in the order specified by a third vector.</para>
              <para>Result value:</para>
              <para>Each byte of the result is selected by using the
              least-significant 5 bits of the corresponding byte of ARG3 as an
              index into the concatenated bytes of ARG1 and ARG2.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool char vec_perm (vector bool char, vector bool
              char, vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_perm (vector signed char, vector
              signed char, vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_perm (vector unsigned char, vector
              unsigned char, vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_perm (vector bool int, vector bool int,
              vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_perm (vector signed int, vector
              signed int, vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_perm (vector unsigned int, vector
              unsigned int, vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector bool long long vec_perm (vector bool long long,
              vector bool long long, vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_perm (vector signed long long,
              vector signed long long, vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_perm (vector unsigned long
              long, vector unsigned long long, vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector pixel vec_perm (vector pixel, vector pixel, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool short vec_perm (vector bool short, vector bool
              short, vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_perm (vector signed short, vector
              signed short, vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_perm (vector unsigned short,
              vector unsigned short, vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_perm (vector double, vector double,
              vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_perm (vector float, vector float, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector _Float16 vec_perm (vector _Float16, vector _Float16,
              vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_PERMXOR (ARG1, ARG2, ARG3)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Applies a permute and exclusive-OR operation on two vectors
              of byte elements.</para>
              <para>Result value:</para>
              <para>For each i (0 ≤ i &lt; 16), let index1 be bits 0&#8211;3 and
              index2 be bits 4&#8211;7 of byte element i of mask ARG3.</para>
              <para>Byte element i of the result is set to the exclusive-OR of
              byte elements index1 of ARG1 and index2 of ARG2.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector bool char vec_permxor (vector bool char, vector bool
              char, vector bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_permxor (vector signed char,
              vector signed char, vector signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_permxor (vector unsigned char,
              vector unsigned char, vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_POPCNT (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the number of bits set in each
              element of the input vector.</para>
              <para>Result value:</para>
              <para>The value of each element of the result is the number of
              bits set in the corresponding input element.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_popcnt (vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_popcnt (vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_popcnt (vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_popcnt (vector unsigned
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_popcnt (vector signed long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_popcnt (vector unsigned long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_popcnt (vector signed
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_popcnt (vector unsigned
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_RE (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing estimates of the reciprocals of
              the corresponding elements of the given vector.</para>
              <para>Result value:</para>
              <para>Each element of the result contains the estimated value of
              the reciprocal of the corresponding element of ARG1.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_re (vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_re (vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_RECIPDIV (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing approximations of the division
              of the corresponding elements of ARG1 by the corresponding
              elements of ARG2. This implementation provides an
              implementation-dependent precision, which is commonly within 2
              ulps for most of the numeric range expressible by the input
              operands. This built-in function does not correspond to a single
              IEEE operation and does not provide the overflow, underflow, and
              NaN propagation characteristics specified for IEEE division.
              (Precision may be a function of both the specified target
              processor model during compilation and the actual processor on
              which a program is executed.)</para>
              <para>Result value:</para>
              <para>Each element of the result vector contains a refined
              approximation of the division of the corresponding element of
              ARG1 by the corresponding element of ARG2.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_recipdiv (vector double, vector
              double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_recipdiv (vector float, vector
              float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_REVB (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Reverse the bytes of each vector element of a
              vector.</para>
              <para>Result value:</para>
              <para>Returns a vector where each vector element contains the
              corresponding byte-reversed vector element of the input
              vector.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool char vec_revb (vector bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_revb (vector signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_revb (vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_revb (vector bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_revb (vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_revb (vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed __int128 vec_revb (vector signed
              __int128);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned __int128 vec_revb (vector unsigned
              __int128);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool long long vec_revb (vector bool long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_revb (vector signed long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_revb (vector unsigned long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool short vec_revb (vector bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_revb (vector signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_revb (vector unsigned
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_revb (vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_revb (vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector _Float16 vec_revb (vector _Float16);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_REVE (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Reverse the elements of a vector.</para>
              <para>Result value:</para>
              <para>Returns a vector with the elements of the input vector in
              reversed order.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool char vec_reve (vector bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_reve (vector signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_reve (vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_reve (vector bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_reve (vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_reve (vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool long long vec_reve (vector bool long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_reve (vector signed long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_reve (vector unsigned long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool short vec_reve (vector bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_reve (vector signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_reve (vector unsigned
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_reve (vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_reve (vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector _Float16 vec_reve (vector _Float16);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_RINT (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the floating-point integral
              values nearest to the values of the corresponding elements of the
              given vector.</para>
              <para>Result value:</para>
              <para>Each element of the result contains the nearest
              representable floating-point integral value to the value of the
              corresponding element of ARG1. When an input element value is
              exactly between two integer values, the result value is selected
              based on the rounding mode specified by the Floating-Point
              Rounding Control field (RN) of the FPSCR register.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_rint (vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_rint (vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_RL(ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Rotates each element of a vector left by a given number of
              bits.</para>
              <para>Result value:</para>
              <para>Each element of the result is obtained by rotating the
              corresponding element of ARG1 left by the number of bits
              specified by the corresponding element of ARG2.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_rl (vector signed char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_rl (vector unsigned char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_rl (vector signed int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_rl (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_rl (vector signed long long,
              vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_rl (vector unsigned long
              long, vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_rl (vector signed short, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_rl (vector unsigned short, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_RLMI (ARG1, ARG2, ARG3)</para>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Rotates each element of a vector left and inserts each
              element under a mask.</para>
              <para>Result value:</para>
              <para>The result is obtained by rotating each element of vector
              ARG1 left and inserting it under mask into ARG2. ARG3 bits 11:15
              contain the mask beginning, bits 19:23 contain the mask end, and
              bits 27:31 contain the shift count.</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_rlmi (vector unsigned int, vector
              unsigned int, vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_rlmi (vector unsigned long
              long, vector unsigned long long, vector unsigned long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_RLNM (ARG1, ARG2, ARG3)</para>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Rotates each element of a vector left; then intersects
              (AND) it with a mask.</para>
              <para>Result value:</para>
              <para>Each element of vector ARG1 is rotated left; then
              intersected (AND) with a mask specified by ARG2 and ARG3.</para>
              <para>ARG2 contains the shift count for each element in the
	      low-order byte, with other bytes zero.  ARG3 contains the mask
	      begin and mask end for each element, with the mask end in the
	      low-order byte, the mask begin in the next higher byte, and
	      other bytes zero.</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_rlnm (vector unsigned int, vector
              unsigned int, vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_rlnm (vector unsigned long
              long, vector unsigned long long, vector unsigned long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ROUND (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the rounded values of the
              corresponding elements of the given vector.</para>
              <para>Result value:</para>
              <para>Each element of the result contains the value of the
              corresponding element of ARG1, rounded to the nearest
              representable floating-point integer, using IEEE round-to-nearest
              rounding.</para>
              <note>
                  <para>This function might not follow the strict
                  operation definition of the resolution of a tie during a
                  round if the -qstrict=nooperationprecision compiler option is
                  specified to the XLC compiler.</para>
              </note>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector double vec_round (vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_round (vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_RSQRT (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing a refined approximation of the
              reciprocal square roots of the corresponding elements of the
              given vector. This function provides an implementation-dependent
              greater precision than VEC_RSQRTE.</para>
              <para>Result value:</para>
              <para>Each element of the result contains a refined approximation
              of the reciprocal square root of the corresponding element of
              ARG1.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_rsqrt (vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_rsqrt (vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_RSQRTE (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing estimates of the reciprocal
              square roots of the corresponding elements of the given
              vector.</para>
              <para>Result value:</para>
              <para>Each element of the result contains the estimated value of
              the reciprocal square root of the corresponding element of
              ARG1.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_rsqrte (vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_rsqrte (vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_SEL (ARG1, ARG2, ARG3)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the value of either ARG1 or
              ARG2 depending on the value of ARG3.</para>
              <para>Result value:</para>
              <para>Each bit of the result vector has the value of the
              corresponding bit of ARG1 if the corresponding bit of ARG3 is 0.
              Otherwise, each bit of the result vector has the value of the
              corresponding bit of ARG2.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool char vec_sel (vector bool char, vector bool
              char, vector bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool char vec_sel (vector bool char, vector bool
              char, vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_sel (vector signed char, vector
              signed char, vector bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_sel (vector signed char, vector
              signed char, vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_sel (vector unsigned char, vector
              unsigned char, vector bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_sel (vector unsigned char, vector
              unsigned char, vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_sel (vector bool int, vector bool int,
              vector bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_sel (vector bool int, vector bool int,
              vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_sel (vector signed int, vector signed
              int, vector bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_sel (vector signed int, vector signed
              int, vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_sel (vector unsigned int, vector
              unsigned int, vector bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_sel (vector unsigned int, vector
              unsigned int, vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool long long vec_sel (vector bool long long,
              vector bool long long, vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool long long vec_sel (vector bool long long,
              vector bool long long, vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_sel (vector signed long long,
              vector signed long long, vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector signed long long vec_sel (vector signed long long,
              vector signed long long, vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_sel (vector unsigned long
              long, vector unsigned long long, vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_sel (vector unsigned long
              long, vector unsigned long long, vector unsigned long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool short vec_sel (vector bool short, vector bool
              short, vector bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool short vec_sel (vector bool short, vector bool
              short, vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_sel (vector signed short, vector
              signed short, vector bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_sel (vector signed short, vector
              signed short, vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_sel (vector unsigned short,
              vector unsigned short, vector bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_sel (vector unsigned short,
              vector unsigned short, vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_sel (vector double, vector double, vector
              bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_sel (vector double, vector double, vector
              unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_sel (vector float, vector float, vector
              bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_sel (vector float, vector float, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector _Float16 vec_sel (vector _Float16, vector _Float16,
              vector bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector _Float16 vec_sel (vector _Float16, vector _Float16,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_SIGNED (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Converts a vector of floating-point numbers to a vector of
              signed integers.</para>
              <para>Result value:</para>
              <para>Target elements are obtained by 
              truncating
              the respective
              source elements to signed integers.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_signed (vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_signed (vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_SIGNED2 (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Converts a vector of floating-point numbers to vector of
              signed integers.</para>
              <para>Result value:</para>
              <para>Target elements are obtained by 
              truncating
              the source
              elements to the signed integers as follows:</para>
              <itemizedlist>
                <listitem>
                  <para>Target elements 0 and 1 from source 0</para>
                </listitem>
                <listitem>
                  <para>Target elements 2 and 3 from source 1</para>
                </listitem>
              </itemizedlist>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_signed2 (vector double, vector
              double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_SIGNEDE (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Converts an input vector to a vector of signed
              integers.</para>
              <para>Result value:</para>
              <para>The even target elements are obtained by 
              truncating
              the
              source elements to signed integers as follows:</para>
              <para>Target elements 0 and 2 contain the converted values of the
              input vector.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_signede (vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_SIGNEDO (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Converts an input vector to a vector of signed
              integers.</para>
              <para>Result value:</para>
              <para>The odd target elements are obtained by 
              truncating
              the
              source elements to signed integers as follows:</para>
              <para>Target elements 1 and 3 contain the converted values of the
              input vector.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_signedo (vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_SL (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Performs a left shift for each element of a vector.</para>
              <para>Result value:</para>
              <para>Each element of the result vector is the result of left
              shifting the corresponding element of ARG1 by the number of bits
              specified by the value of the corresponding element of ARG2,
              modulo the number of bits in the element. The bits that are
              shifted out are replaced by zeros.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_sl (vector signed char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_sl (vector unsigned char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_sl (vector signed int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_sl (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_sl (vector signed long long,
              vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_sl (vector unsigned long
              long, vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_sl (vector signed short, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_sl (vector unsigned short, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_SLD (ARG1, ARG2, ARG3)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Left shifts a double vector (that is, two concatenated
              vectors) by a given number of bytes. For vec_sld being performed
              on the vector bool and floating-point types, the result is
              undefined, when the specified shift count is not a multiple of
              the element size.</para>
              <para>Result value:</para>
              <para>The result is the most-significant 16 bytes obtained by
              concatenating ARG1 and ARG2 and shifting left by the number of
              bytes specified by ARG3, which should be in the range 0&#8211;15.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool char vec_sld (vector bool char, vector bool
              char, const int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_sld (vector signed char, vector
              signed char, const int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_sld (vector unsigned char, vector
              unsigned char, const int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_sld (vector bool int, vector bool int,
              const int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_sld (vector signed int, vector signed
              int, const int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_sld (vector unsigned int, vector
              unsigned int, const int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector bool long long vec_sld (vector bool long long,
              vector bool long long, const int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector signed long long vec_sld (vector signed long long,
              vector signed long long, const int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_sld (vector unsigned long
              long, vector unsigned long long, const int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector pixel vec_sld (vector pixel, vector pixel, const
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool short vec_sld (vector bool short, vector bool
              short, const int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_sld (vector signed short, vector
              signed short, const int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_sld (vector unsigned short,
              vector unsigned short, const int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector double vec_sld (vector double, vector double, const
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_sld (vector float, vector float, const
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_SLDW (ARG1, ARG2, ARG3)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector obtained by shifting left the concatenated
              input vectors by the number of specified words.</para>
              <para>Result value:</para>
              <para>The value of each element is set to the value of an input
              element of the concatenated vectors ARG1 and ARG2, with the word
              offset to its right<superscript>1</superscript> 
              specified by ARG3, which should be in the
              range 0&#8211;3.</para>
	      <para><superscript>1</superscript>A shift left picks values
	      from the right.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_sldw (vector signed char, vector
              signed char, const int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_sldw (vector unsigned char, vector
              unsigned char, const int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_sldw (vector signed int, vector
              signed int, const int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_sldw (vector unsigned int, vector
              unsigned int, const int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_sldw (vector signed long long,
              vector signed long long, const int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_sldw (vector unsigned long
              long, vector unsigned long long, const int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_sldw (vector signed short, vector
              signed short, const int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_sldw (vector unsigned short,
              vector unsigned short, const int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_SLL (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Left shifts a vector by a given number of bits.</para>
              <para>Result value:</para>
              <para>The result is the contents of ARG1, shifted left by the
              number of bits specified by the three least-significant bits of
              ARG2. The bits that are shifted out are replaced by zeros. The
              shift count must have been replicated into all bytes of the shift
              count specification.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_sll (vector signed char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_sll (vector unsigned char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_sll (vector signed int, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_sll (vector unsigned int, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector signed long long vec_sll (vector signed long long,
              vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_sll (vector unsigned long
              long, vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector pixel vec_sll (vector pixel, vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_sll (vector signed short, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_sll (vector unsigned short,
              vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_SLO (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Left shifts a vector by a given number of bytes
              (octets).</para>
              <para>Result value:</para>
              <para>The result is the contents of ARG1, shifted left by the
              number of bytes specified by the most-significant nibble of the
              least-significant 
              byte<superscript>1</superscript> 
              of ARG2. The bits that are shifted out are replaced by zeros.</para>
	      <para><superscript>1</superscript>That is, by little-endian bits
	      7&#8211;4 or big-endian bits 121&#8211;124.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_slo (vector signed char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_slo (vector signed char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_slo (vector unsigned char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_slo (vector unsigned char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_slo (vector signed int, vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_slo (vector signed int, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_slo (vector unsigned int, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_slo (vector unsigned int, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_slo (vector signed long long,
              vector signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_slo (vector signed long long,
              vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_slo (vector unsigned long
              long, vector signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_slo (vector unsigned long
              long, vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector pixel vec_slo (vector pixel, vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector pixel vec_slo (vector pixel, vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_slo (vector signed short, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_slo (vector signed short, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_slo (vector unsigned short,
              vector signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_slo (vector unsigned short,
              vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_slo (vector float, vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_slo (vector float, vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_SLV (ARG1, ARG2)</para>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Left-shifts a vector by a varying number of bits by
              element.</para>
              <para>Result value:</para>
              <para>For each integer 0<emphasis>≤</emphasis>i<emphasis>≤</emphasis>14, let 
              X<subscript>i</subscript> be the halfword formed by concatenating
              elements i and i+1 of ARG1. Let 
              X<subscript>15</subscript> be the halfword formed by concatenating
              element 15 of ARG1 with a zero byte. 
              Let S<subscript>i</subscript> be the value in the three least-significant
              bits of element i of ARG2. Then, element i of the result vector
              contains the value formed from bits 
              S<subscript>i</subscript> through 
              S<subscript>i</subscript> + 7 of 
              X<subscript>i</subscript>.</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector unsigned char vec_slv (vector unsigned char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_SPLAT (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector that has all of its elements set to a
              given value.</para>
              <para>Result value:</para>
              <para>The value of each element of the result is the value of the
              element of ARG1 specified by ARG2, which should be an element
              number less than the number of elements supported for the
              respective ARG1 type.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool char vec_splat (vector bool char, const
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_splat (vector signed char, const
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_splat (vector unsigned char, const
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_splat (vector bool int, const
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_splat (vector signed int, const
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_splat (vector unsigned int, const
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector bool long long vec_splat (vector bool long long,
              const int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_splat (vector signed long long,
              const int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_splat (vector unsigned long
              long, const int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector pixel vec_splat (vector pixel, const int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool short vec_splat (vector bool short, const
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_splat (vector signed short, const
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_splat (vector unsigned short,
              const int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector double vec_splat (vector double, const int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_splat (vector float, const int);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector _Float16 vec_splat (vector _Float16, const
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_SPLAT_S8 (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector with all elements equal to the given
              value.</para>
              <para>Result value:</para>
              <para>The bit pattern of ARG1 is interpreted as a signed value.
              Each element of the result is given this value.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_splat_s8 (const int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_SPLAT_S16 (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector with all elements equal to the given
              value.</para>
              <para>Result value:</para>
              <para>Each element of the result has the value of ARG1.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_splat_s16 (const int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_SPLAT_S32 (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector with all elements equal to the given
              value.</para>
              <para>Result value:</para>
              <para>Each element of the result has the value of ARG1.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_splat_s32 (const int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_SPLAT_U8 (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector with all elements equal to the given
              value.</para>
              <para>Result value:</para>
              <para>The bit pattern of ARG1 is interpreted as an unsigned
              value. Each element of the result is given this value.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_splat_u8 (const int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_SPLAT_U16 (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector with all elements equal to the given
              value.</para>
              <para>Result value:</para>
              <para>The bit pattern of ARG1 is interpreted as an unsigned
              value. Each element of the result is given this value.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_splat_u16 (const int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_SPLAT_U32 (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector with all elements equal to the given
              value.</para>
              <para>Result value:</para>
              <para>The bit pattern of ARG1 is interpreted as an unsigned
              value. Each element of the result is given this value.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_splat_u32 (const int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_SPLATS (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector with the value of each element set to
              ARG1.</para>
              <para>Result value:</para>
              <para>Each element of the result is set to the value of the
              scalar input parameter.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_splats (signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_splats (unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_splats (signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_splats (unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed __int128 vec_splats (signed __int128);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned __int128 vec_splats (unsigned
              __int128);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_splats (signed long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_splats (unsigned long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_splats (signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_splats (unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_splats (double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_splats (float);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector _Float16 vec_splats (_Float16);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_SQRT (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the square root of each element
              in the given vector.</para>
              <para>Result value:</para>
              <para>Each element of the result vector is the square root of the
              corresponding element of ARG1.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_sqrt (vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_sqrt (vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_SR (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Performs a logical right shift for each element of a
              vector.</para>
              <para>Result value:</para>
              <para>Each element of the result vector is the result of
              logically right shifting the corresponding element of ARG1 by the
              number of bits specified by the value of the corresponding
              element of ARG2, modulo the number of bits in the element. The
              bits that are shifted out are replaced by zeros.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_sr (vector signed char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_sr (vector unsigned char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_sr (vector signed int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_sr (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_sr (vector signed long long,
              vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_sr (vector unsigned long
              long, vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_sr (vector signed short, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_sr (vector unsigned short, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_SRA (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Performs an algebraic right shift for each element of a
              vector.</para>
              <para>Result value:</para>
              <para>Each element of the result vector is the result of
              algebraically right shifting the corresponding element of ARG1 by
              the number of bits specified by the value of the corresponding
              element of ARG2, modulo the number of bits in the element. The
              bits that are shifted out are replaced by copies of the
              most-significant bit of the element of ARG1.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_sra (vector signed char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_sra (vector unsigned char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_sra (vector signed int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_sra (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_sra (vector signed long long,
              vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_sra (vector unsigned long
              long, vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_sra (vector signed short, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_sra (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_SRL (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Right shifts a vector by a given number of bits.</para>
              <para>Result value:</para>
              <para>The result is the contents of ARG1, shifted right by the
              number of bits specified by the 3 least-significant bits of ARG2.
              The bits that are shifted out are replaced by zeros.
              The shift
              count must have been replicated into all bytes of the shift count
              specification.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_srl (vector signed char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_srl (vector unsigned char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_srl (vector signed int, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_srl (vector unsigned int, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector signed long long vec_srl (vector signed long long,
              vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_srl (vector unsigned long
              long, vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector pixel vec_srl (vector pixel, vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_srl (vector signed short, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_srl (vector unsigned short,
              vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_SRO (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Right shifts a vector by a given number of bytes
              (octets).</para>
              <para>Result value:</para>
              <para>The result is the contents of ARG1, shifted right by the
              number of bytes specified by bits 121&#8211;124 of ARG2. The bits
              that are shifted out are replaced by zeros.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_sro (vector signed char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_sro (vector signed char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_sro (vector unsigned char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_sro (vector unsigned char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_sro (vector signed int, vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_sro (vector signed int, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_sro (vector unsigned int, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_sro (vector unsigned int, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector signed long long vec_sro (vector signed long long,
              vector signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector signed long long vec_sro (vector signed long long,
              vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_sro (vector unsigned long
              long, vector signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_sro (vector unsigned long
              long, vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector pixel vec_sro (vector pixel, vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector pixel vec_sro (vector pixel, vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_sro (vector signed short, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_sro (vector signed short, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_sro (vector unsigned short,
              vector signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_sro (vector unsigned short,
              vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_sro (vector float, vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_sro (vector float, vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_SRV (ARG1, ARG2)</para>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Right-shifts a vector by a varying number of bits by
              element.</para>
              <para>Result value:</para>
              <para>For each integer 1 
              <emphasis>≤</emphasis> i 
              <emphasis>≤</emphasis> 15, let
	      X<subscript>i</subscript>
	      be the halfword formed by concatenating
              elements i and i + 1 of ARG1. Let
	      X<subscript>0</subscript>
	      be the halfword formed by concatenating a
              zero byte with element 0 of ARG1. Let
	      S<subscript>i</subscript>
	      be the value in the three least-significant
              bits of element i of ARG2. Then element i of the result vector
              contains the value formed from bits 8 &#8211;
	      S<subscript>i</subscript> through 15 &#8211;
	      S<subscript>i</subscript>.</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector unsigned char vec_srv (vector unsigned char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_SUB (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the result of subtracting each
              element of ARG2 from the corresponding element of ARG1. This
              function emulates the operation on long long vectors.</para>
              <para>Result value:</para>
              <para>The value of each element of the result is the result of
              subtracting the value of the corresponding element of ARG2 from
              the value of the corresponding element of ARG1. The arithmetic is
              modular for integer vectors.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_sub (vector signed char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_sub (vector unsigned char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_sub (vector signed int, vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_sub (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed __int128 vec_sub (vector signed __int128,
              vector signed __int128);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned __int128 vec_sub (vector unsigned __int128,
              vector unsigned __int128);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_sub (vector signed long long,
              vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_sub (vector unsigned long
              long, vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_sub (vector signed short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_sub (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_sub (vector double, vector
              double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_sub (vector float, vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_SUBC (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the carry produced by
              subtracting each set of corresponding elements of the given
              vectors.</para>
              <para>Result value:</para>
              <para>The value of each element of the result is the value of the
              carry produced by subtracting the value of the corresponding
              element of ARG2 from the value of the corresponding element of
              ARG1. The value is 0 if a borrow occurred, or 1 if no borrow
              occurred.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_subc (vector signed int, vector
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_subc (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed __int128 vec_subc (vector signed __int128,
              vector signed __int128);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned __int128 vec_subc (vector unsigned
              __int128, vector unsigned __int128);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_SUBE (ARG1, ARG2, ARG3)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
	      <para>Returns a vector containing the result of first
	      elementwise subtracting vector ARG2 from vector ARG1, and then
	      elementwise adding vector ARG3 to the difference.  ARG3 is a
	      carry vector, with each element having a value of 0 or 1.</para>
              <para>Result value:</para>
              <para>The value of each element of the result is produced by
              subtracting the corresponding element of ARG2 from the
	      corresponding element of ARG1, and then adding the carry
              specified in the corresponding element of ARG3 (1 if there is a
	      carry, 0 otherwise).</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_sube (vector signed int, vector
              signed int, vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_sube (vector unsigned int, vector
              unsigned int, vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed __int128 vec_sube (vector signed __int128,
              vector signed __int128, vector signed __int128);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned __int128 vec_sube (vector unsigned
              __int128, vector unsigned __int128, vector unsigned
              __int128);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_SUBEC (ARG1, ARG2, ARG3)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
	      <para>Returns a vector containing the carries produced by first
	      elementwise subtracting vector ARG2 from vector ARG1, and then
	      elementwise adding vector ARG3 to the difference.  ARG3 is a
	      carry vector, with each element having a value of 0 or 1.</para>
              <para>Result value:</para>
              <para>The value of each element of the result is the carry
	      produced by subtracting the corresponding element of ARG2 from
	      the corresponding element of ARG1, and then adding the carry
              specified in the corresponding element of ARG3 (1 if there is a
	      carry, 0 otherwise).</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_subec (vector signed int, vector
              signed int, vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_subec (vector unsigned int, vector
              unsigned int, vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed __int128 vec_subec (vector signed __int128,
              vector signed __int128, vector signed __int128);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned __int128 vec_subec (vector unsigned
              __int128, vector unsigned __int128, vector unsigned
              __int128);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_SUBS (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the saturated differences of
              each set of corresponding elements of the given vectors.</para>
              <para>Result value:</para>
              <para>The value of each element of the result is the saturated
              result of subtracting the value of the corresponding element of
              ARG2 from the value of the corresponding element of ARG1.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_subs (vector signed char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_subs (vector unsigned char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_subs (vector signed int, vector
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_subs (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_subs (vector signed short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_subs (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_SUM2S (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the results of performing a
              sum-across-doublewords vector operation on the given
              vectors.</para>
              <para>Result value:</para>
              <para>The first and third element of the result are 0. The second
              element of the result contains the saturated sum of the first and
              second elements of ARG1 and the second element of ARG2. The
              fourth element of the result contains the saturated sum of the
              third and fourth elements of ARG1 and the fourth element of
              ARG2.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_sum2s (vector signed int, vector
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_SUM4S (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the results of performing a
              sum-across-words vector operation on the given vectors.</para>
              <para>Result value:</para>
              <para>Assume that the elements of each vector are numbered
              beginning with 0. If ARG1 is a vector signed char vector or a
              vector unsigned char vector, then let m be 4. Otherwise, let m be
              2. For each element n of the result vector, the value is obtained
              by adding elements mn through mn + m &#8211; 1 of ARG1 and element n of
              ARG2 using saturated addition.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_sum4s (vector signed char, vector
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_sum4s (vector signed short, vector
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_sum4s (vector unsigned char, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_SUMS (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the results of performing a sum
              across vector operation on the given vectors.</para>
              <para>Result value:</para>
              <para>The first three elements of the result are 0. The fourth
              element is the saturated sum of all the elements of ARG1 and the
              fourth element of ARG2.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_sums (vector signed int, vector
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_TEST_DATA_CLASS (ARG1, ARG2)</para>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Determines the data class for each floating-point
              element.</para>
              <para>Result value:</para>
              <para>Each element is set to all ones if the corresponding
              element of ARG1 matches one of the possible data types selected
              by ARG2. If not, each element is set to all zeros. ARG2 can
              select one of the data types defined in 
              <xref linkend="dbdoclet.50655245_81283" />.</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector bool int vec_test_data_class (vector float, const
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector bool long long vec_test_data_class (vector double,
              const int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_TRUNC (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the truncated values of the
              corresponding elements of the given vector.</para>
              <para>Result value:</para>
              <para>Each element of the result contains the value of the
              corresponding element of ARG1, truncated to an integral
              value.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_trunc (vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_trunc (vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_UNPACKH (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Unpacks the most-significant (“high”) half of a vector into
              a vector with larger elements.</para>
              <para>Result value:</para>
              <para>If ARG1 is an integer vector, the value of each element of
              the result is the value of the corresponding element of the
              most-significant half of ARG1.</para>
              <para>If ARG1 is a floating-point vector, the value of each
              element of the result is the value of the corresponding element
              of the most-significant half of ARG1, widened to the result
              precision.</para>
              <para>If ARG1 is a pixel vector, the value of each element of the
              result is taken from the corresponding element of the
              most-significant half of ARG1 as follows:</para>
              <itemizedlist>
                <listitem>
                  <para>All bits in the first byte of the element of the result
                  are set to the value of the first bit of the element of
                  ARG1.</para>
                </listitem>
                <listitem>
                  <para>The least-significant 5 bits of the second byte of the
                  element of the result are set to the value of the next 5 bits
                  in the element of ARG1.</para>
                </listitem>
                <listitem>
                  <para>The least-significant 5 bits of the third byte of the
                  element of the result are set to the value of the next 5 bits
                  in the element of ARG1.</para>
                </listitem>
                <listitem>
                  <para>The least-significant 5 bits of the fourth byte of the
                  element of the result are set to the value of the next 5 bits
                  in the element of ARG1.</para>
                </listitem>
              </itemizedlist>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_unpackh (vector bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_unpackh (vector signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_unpackh (vector pixel);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool long long vec_unpackh (vector bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_unpackh (vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool short vec_unpackh (vector bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_unpackh (vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector double vec_unpackh (vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector float vec_unpackh (vector _Float16);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_UNPACKL (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Unpacks the least-significant (“low”) half of a vector into
              a vector with larger elements.</para>
              <para>Result value:</para>
              <para>If ARG1 is an integer vector, the value of each element of
              the result is the value of the corresponding element of the
              least-significant half of ARG1.</para>
              <para>If ARG1 is a floating-point vector, the value of each
              element of the result is the value of the corresponding element
              of the least-significant half of ARG, widened to the result
              precision.</para>
              <para>If ARG1 is a pixel vector, the value of each element of the
              result is taken from the corresponding element of the
              least-significant half of ARG1 as follows:</para>
              <itemizedlist>
                <listitem>
                  <para>All bits in the first byte of the element of the result
                  are set to the value of the first bit of the element of
                  ARG1.</para>
                </listitem>
                <listitem>
                  <para>The least-significant 5 bits of the second byte of the
                  element of the result are set to the value of the next 5 bits
                  in the element of ARG1.</para>
                </listitem>
                <listitem>
                  <para>The least-significant 5 bits of the third byte of the
                  element of the result are set to the value of the next 5 bits
                  in the element of ARG1.</para>
                </listitem>
                <listitem>
                  <para>The least-significant 5 bits of the fourth byte of the
                  element of the result are set to the value of the next 5 bits
                  in the element of ARG1.</para>
                </listitem>
              </itemizedlist>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_unpackl (vector bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_unpackl (vector signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_unpackl (vector pixel);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool long long vec_unpackl (vector bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_unpackl (vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool short vec_unpackl (vector bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_unpackl (vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector double vec_unpackl (vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector float vec_unpackl (vector _Float16);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_UNSIGNED (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Converts a vector of double-precision numbers to a vector
              of unsigned integers.</para>
              <para>Result value:</para>
              <para>Target elements are obtained by 
              truncating
              the respective
              source elements to unsigned integers.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_unsigned (vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_unsigned (vector
              double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_UNSIGNED2 (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Converts a vector of double-precision numbers to a vector
              of unsigned integers.</para>
              <para>Result value:</para>
              <para>Target elements are obtained by 
              truncating
              the source
              elements to the unsigned integers as follows:</para>
              <itemizedlist>
                <listitem>
                  <para>Target elements 0 and 1 from source 0</para>
                </listitem>
                <listitem>
                  <para>Target elements 2 and 3 from source 1</para>
                </listitem>
              </itemizedlist>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_unsigned2 (vector double, vector
              double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_UNSIGNEDE (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Converts an input vector to a vector of unsigned
              integers.</para>
              <para>Result value:</para>
              <para>The even target elements are obtained by 
              truncating
              the
              source elements to unsigned integers as follows:</para>
              <para>Target elements 0 and 2 contain the converted values of the
              input vector.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_unsignede (vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_UNSIGNEDO (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Converts an input vector to a vector of unsigned
              integers.</para>
              <para>Result value:</para>
              <para>The odd target elements are obtained by 
              truncating
              the
              source elements to unsigned integers as follows:</para>
              <para>Target elements 1 and 3 contain the converted values of the
              input vector.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_unsignedo (vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_XL (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Loads a 16-byte vector from the memory address specified by
              the displacement and the pointer.</para>
              <para>Result value:</para>
              <para>This function adds the displacement and the pointer R-value
              to obtain the address for the load operation.</para>
              <important>
                <para>For languages that support built-in
                methods for pointer dereferencing, such as the C/C++ pointer
                dereference * and array access [ ] operators, use of the
                native operators is encouraged and use of the vec_xl
                intrinsic is discouraged.</para>
              </important>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_xl (signed long long, signed char
              *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_xl (signed long long, unsigned char
              *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_xl (signed long long, signed int *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_xl (signed long long, unsigned int
              *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed __int128 vec_xl (signed long long, signed __int128
              *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned __int128 vec_xl (signed long long, unsigned
              __int128 *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed signed long long vec_xl (signed long long, signed long long
              *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_xl (signed long long, unsigned long
              long *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_xl (signed long long, signed short
              *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_xl (signed long long, unsigned short
              *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_xl (signed long long, double *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_xl (signed long long, float *);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector _Float16 vec_xl (signed long long, _Float16 *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_XL_BE (ARG1. ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>In little-endian environments, loads the elements of the
              16-byte vector ARG1 starting with the highest-numbered element at
              the memory address specified by the displacement ARG1 and the
              pointer ARG2. In big-endian environments, this operator performs
              the same operation as VEC_XL.</para>
              <para>Result value:</para>
              <para>In little-endian mode, loads the elements of the vector in
              sequential order, with the highest-numbered element loaded from
              the lowest data address and the lowest-numbered element of the
              vector at the highest address. All elements are loaded in
              little-endian data format.</para>
              <para>This function adds the displacement and the pointer R-value
              to obtain the address for the load operation. It does not
              truncate the affected address to a multiple of 16 bytes.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_xl_be (signed long long, signed char
              *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_xl_be (signed long long, unsigned char
              *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_xl_be (signed long long, signed int
              *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_xl_be (signed long long, unsigned int
              *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed __int128 vec_xl_be (signed long long, signed
              __int128 *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned __int128 vec_xl_be (signed long long, unsigned
              __int128 *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_xl_be (signed long long, signed long
              long *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_xl_be (signed long long, unsigned
              long long *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_xl_be (signed long long, signed short
              *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_xl_be (signed long long, unsigned short
              *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_xl_be (signed long long, double *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_xl_be (signed long long, float *);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector _Float16 vec_xl_be (signed long long, _Float16 *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_XL_LEN (ARG1, ARG2)</para>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Loads a vector of a specified byte length.</para>
              <para>Result value:</para>
              <para>Loads the number of bytes specified by ARG2 from the
              address specified in ARG1. Initializes elements in order from the
              byte stream (as defined by the endianness of the operating
              environment). Any bytes of elements that cannot be initialized
              from the number of loaded bytes have a zero value.</para>
              <para>At least 0 and at most 16 bytes will be loaded. The length
              is specified by the least-significant byte of ARG2, as min (mod
              (ARG2, 256), 16). The behavior is undefined if the length
              argument is outside of the range 0&#8211;255, or if it is not a
              multiple of the vector element size.</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector signed char vec_xl_len (signed char *,
              size_t);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector unsigned char vec_xl_len (unsigned char *,
              size_t);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector signed int vec_xl_len (signed int *, size_t);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_xl_len (unsigned int *,
              size_t);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector signed __int128 vec_xl_len (signed __int128 *,
              size_t);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector unsigned __int128 vec_xl_len (unsigned __int128 *,
              size_t);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector signed long long vec_xl_len (signed long long *,
              size_t);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_xl_len (unsigned long long *,
              size_t);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector signed short vec_xl_len (signed short *,
              size_t);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector unsigned short vec_xl_len (unsigned short *,
              size_t);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector double vec_xl_len (double *, size_t);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector float vec_xl_len (float *, size_t);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector _Float16 vec_xl_len (_Float16 *, size_t);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_XL_LEN_R (ARG1, ARG2)</para>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>Purpose</para>
              <para>Loads a vector of a specified byte length,
              right-justified.</para>
              <para>Result value:</para>
              <para>Loads the number of bytes specified by ARG2 from the
              address specified in ARG1, right justified with the first byte to
              the left and the last to the right. Initializes elements in order
              from the byte stream (as defined by the endianness of the
              operating environment). Any bytes of elements that cannot be
              initialized from the number of loaded bytes have a zero
              value.</para>
              <para>At least 0 and at most 16 bytes will be loaded. The length
              is specified by the least-significant byte of ARG2, as min (mod
              (ARG2, 256), 16). The behavior is undefined if the length
              argument is outside of the range 0&#8211;255, or if it is not a
              multiple of the vector element size.</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>vector unsigned char vec_xl_len_r (unsigned char *,
              size_t);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_XOR (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Performs a bitwise XOR of the given vectors.</para>
              <para>Result value:</para>
              <para>The result is the bitwise XOR of ARG1 and ARG2.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool char vec_xor (vector bool char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_xor (vector signed char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_xor (vector unsigned char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_xor (vector bool int, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_xor (vector signed int, vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_xor (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool long long vec_xor (vector bool long long,
              vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector signed long long vec_xor (vector signed long long,
              vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_xor (vector unsigned long
              long, vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool short vec_xor (vector bool short, vector bool
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_xor (vector signed short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_xor (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_xor (vector double, vector
              double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_xor (vector float, vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_XST (ARG1, ARG2, ARG3)</para>
            </entry>
            <entry>
              <para>Purpose</para>
              <para>Stores the elements of the 16-byte vector to the effective
              address obtained by adding the displacement provided in the
              address provided.</para>
              <para>Result value:</para>
              <para>Stores the provided vector in memory.</para>
              <important>
                <para>For languages that support built-in
                methods for pointer dereferencing, such as the C/C++ pointer
                dereference * and array access [ ] operators, use of the
                native operators is encouraged and use of the vec_xl
                intrinsic is discouraged.</para>
              </important>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>void vec_xst (vector signed char, signed long long, signed char
              *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>void vec_xst (vector unsigned char, signed long long, unsigned
              char *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>void vec_xst (vector signed int, signed long long, signed int
              *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>void vec_xst (vector unsigned int, signed long long, unsigned int
              *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>void vec_xst (vector signed __int128, signed long long, signed
              __int128 *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>void vec_xst (vector unsigned __int128, signed long long, unsigned
              __int128 *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>void vec_xst (vector signed long long, signed long long, signed
              long long *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>void vec_xst (vector unsigned long long, signed long long,
              unsigned long long *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>void vec_xst (vector signed short, signed long long, signed short
              *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>void vec_xst (vector unsigned short, signed long long, unsigned
              short *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>void vec_xst (vector double, signed long long, double *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>void vec_xst (vector float, signed long long, float *);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>void vec_xst (vector _Float16, signed long long, _Float16
              *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_XST_BE (ARG1, ARG2, ARG3)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>In little-endian environments, stores the elements of the
              16-byte vector ARG1 starting with the highest-numbered element at
              the memory address specified by the displacement ARG1 and the
              pointer ARG2. In big-endian environments, this operator performs
              the same operation as VEC_XST.</para>
              <para>Result value:</para>
              <para>In little-endian mode, stores the elements of the vector in
              sequential order, with the highest-numbered element stored at the
              lowest data address and the lowest-numbered element of the vector
              at the highest address. All elements are stored in little-endian
              data format.</para>
              <para>This function adds the displacement and the pointer R-value
              to obtain the address for the store operation. It does not
              truncate the affected address to a multiple of 16 bytes.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>void vec_xst_be (vector signed char, signed long long, signed char
              *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>void vec_xst_be (vector unsigned char, signed long long, unsigned
              char *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>void vec_xst_be (vector signed int, signed long long, signed int
              *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>void vec_xst_be (vector unsigned int, signed long long, unsigned
              int *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>void vec_xst_be (vector signed __int128, signed long long, signed
              __int128 *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>void vec_xst_be (vector unsigned __int128, signed long long,
              unsigned __int128 *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>void vec_xst_be (vector signed long long, signed long long, signed
              long long *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>void vec_xst_be (vector unsigned long long, signed long long,
              unsigned long long *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>void vec_xst_be (vector signed short, signed long long, signed
              short *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>void vec_xst_be (vector unsigned short, signed long long, unsigned
              short *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>void vec_xst_be (vector double, signed long long, double
              *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>void vec_xst_be (vector float, signed long long, float *);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
              <para>Phased in.<footnoteref linkend="dbdoclet.50655245_taba2fn" />
              </para>
            </entry>
            <entry>
              <para>void vec_xst_be (vector _Float16, signed long long, _Float16
              *);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_XST_LEN (ARG1, ARG2, ARG3)</para>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Stores a vector of a specified byte length.</para>
              <para>Result value:</para>
              <para>Stores the number of bytes specified by ARG3 of the vector
              ARG1 to the address specified in ARG2. The bytes are obtained
              starting from the lowest-numbered byte of the lowest-numbered
              element (as defined by the endianness of the operating
              environment). All bytes of an element are accessed before
              proceeding to the next higher element.</para>
              <para>At least 0 and at most 16 bytes will be stored. The length
              is specified by the least-significant byte of ARG3, as min (mod
              (ARG3, 256), 16). The behavior is undefined if the length
              argument is outside of the range 0&#8211;255, or if it is not a
              multiple of the vector element size.</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>void vec_xst_len (vector signed char, signed char *,
              size_t);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>void vec_xst_len (vector unsigned char, unsigned char *,
              size_t);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>void vec_xst_len (vector signed int, signed int *,
              size_t);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>void vec_xst_len (vector unsigned int, unsigned int *,
              size_t);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>void vec_xst_len (vector signed __int128, signed __int128
              *, size_t);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>void vec_xst_len (vector unsigned __int128, unsigned
              __int128 *, size_t);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>void vec_xst_len (vector signed long long, signed long long
              *, size_t);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>void vec_xst_len (vector unsigned long long, unsigned long
              long *, size_t);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>void vec_xst_len (vector signed short, signed short *,
              size_t);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>void vec_xst_len (vector unsigned short, unsigned short *,
              size_t);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>void vec_xst_len (vector double, double *, size_t);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>void vec_xst_len (vector float, float *, size_t);</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>void vec_xst_len (vector _Float16, _Float16 *,
              size_t);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_XST_LEN_R (ARG1, ARG2, ARG3)</para>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Stores a right-justified vector of a specified byte
              length.</para>
              <para>Result value:</para>
              <para>Stores the number of bytes specified by ARG3 of the
              right-justified vector ARG1 to the address specified by
              ARG2.</para>
              <para>At least 0 and at most 16 bytes will be stored. The length
              is specified by the least-significant byte of ARG3, as min (mod
              (ARG2, 256), 16). The behavior is undefined if the length
              argument is outside of the range 0&#8211;255, or if it is not a
              multiple of the vector element size.</para>
            </entry>
          </row>
          <row>
            <entry>
	      <para>POWER ISA 3.0</para>
            </entry>
            <entry>
              <para>void vec_xst_len_r (vector unsigned char, unsigned char *,
              size_t);</para>
            </entry>
          </row>
        </tbody>
      </tgroup>
    </table>
  </section>
  <section xml:id="dbdoclet.50655245_64716">
    <title>Built-In Vector Predicate Functions</title>
    <para>
    <xref linkend="dbdoclet.50655245_55078" /> defines vector predicates that
    compare all elements of two vectors and return 1 for TRUE or 0 for FALSE if
    any or all of the elements meet the specified condition.</para>
    <para>As in 
    <xref linkend="dbdoclet.50655245_35801" />, functions are listed
    alphabetically; supported prototypes are provided for each function.
    Prototypes are grouped by integer and floating-point types. Within each
    group, types are sorted alphabetically, first by type name and then by
    modifier. Prototypes are first sorted by the built-in result type, which is
    the output argument. Then, prototypes are sorted by the input arguments;
    ARG1, ARG2, and ARG3; in order. See 
    <xref linkend="dbdoclet.50655245_88976" /> for the format of the
    prototypes.</para>
    <para> </para>
    <table frame="all" pgwide="1" xml:id="dbdoclet.50655245_55078">
      <title>Built-in Vector Predicate Functions</title>
      <tgroup cols="2">
        <colspec colname="c1" colwidth="30*" align="center" />
        <colspec colname="c2" colwidth="70*" />
        <thead>
          <row>
            <entry>
              <para>
                <emphasis role="bold">Group</emphasis>
              </para>
            </entry>
            <entry align="center">
              <para>
                <emphasis role="bold">Description of Built-In Vector Predicate
                Functions (with Prototypes)</emphasis>
              </para>
            </entry>
          </row>
        </thead>
        <tbody>
          <row>
            <entry>
              <para>VEC_ALL_EQ (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Tests whether all sets of corresponding elements of the
              given vectors are equal.</para>
              <para>Result value:</para>
              <para>The result is 1 if each element of ARG1 is equal to the
              corresponding element of ARG2. Otherwise, the result is 0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_eq (vector bool char, vector bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_eq (vector signed char, vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_eq (vector unsigned char, vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_eq (vector bool int, vector bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_eq (vector signed int, vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_eq (vector unsigned int, vector unsigned
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_eq (vector bool long long, vector bool long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_eq (vector signed long long, vector signed long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_eq (vector unsigned long long, vector unsigned
              long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_eq (vector pixel, vector pixel);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_eq (vector bool short, vector bool
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_eq (vector signed short, vector signed
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_eq (vector unsigned short, vector unsigned
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_eq (vector double, vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_eq (vector float, vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ALL_GE (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Tests whether all elements of the first argument are
              greater than or equal to the corresponding elements of the second
              argument.</para>
              <para>Result value:</para>
              <para>The result is 1 if all elements of ARG1 are greater than or
              equal to the corresponding elements of ARG2. Otherwise, the
              result is 0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ge (vector signed char, vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ge (vector unsigned char, vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ge (vector signed int, vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ge (vector unsigned int, vector unsigned
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ge (vector signed long long, vector signed long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ge (vector unsigned long long, vector unsigned
              long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ge (vector signed short, vector signed
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ge (vector unsigned short, vector unsigned
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ge (vector double, vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ge (vector float, vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ALL_GT (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Tests whether all elements of the first argument are
              greater than the corresponding elements of the second
              argument.</para>
              <para>Result value:</para>
              <para>The result is 1 if all elements of ARG1 are greater than
              the corresponding elements of ARG2. Otherwise, the result is
              0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_gt (vector signed char, vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_gt (vector unsigned char, vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_gt (vector signed int, vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_gt (vector unsigned int, vector unsigned
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_gt (vector signed long long, vector signed long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_gt (vector unsigned long long, vector unsigned
              long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_gt (vector signed short, vector signed
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_gt (vector unsigned short, vector unsigned
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_gt (vector double, vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_gt (vector float, vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ALL_IN (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Tests whether each element of a given vector is within a
              given range.</para>
              <para>Result value:</para>
              <para>The result is 1 if all elements of ARG1 have values less
              than or equal to the value of the corresponding element of ARG2,
              and greater than or equal to the negative of the value of the
              corresponding element of ARG2. Otherwise, the result is 0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_in (vector float, vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ALL_LE (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Tests whether all elements of the first argument are less
              than or equal to the corresponding elements of the second
              argument.</para>
              <para>Result value:</para>
              <para>The result is 1 if all elements of ARG1 are less than or
              equal to the corresponding elements of ARG2. Otherwise, the
              result is 0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_le (vector signed char, vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_le (vector unsigned char, vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_le (vector signed int, vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_le (vector unsigned int, vector unsigned
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_le (vector signed long long, vector signed long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_le (vector unsigned long long, vector unsigned
              long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_le (vector signed short, vector signed
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_le (vector unsigned short, vector unsigned
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_le (vector double, vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_le (vector float, vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ALL_LT (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Tests whether all elements of the first argument are less
              than the corresponding elements of the second argument.</para>
              <para>Result value:</para>
              <para>The result is 1 if all elements of ARG1 are less than the
              corresponding elements of ARG2. Otherwise, the result is
              0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_lt (vector signed char, vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_lt (vector unsigned char, vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_lt (vector signed int, vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_lt (vector unsigned int, vector unsigned
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_lt (vector signed long long, vector signed long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Phased in.<footnote xml:id="taba3fn"><para>This optional function is being 
              phased in, and it might not be available on all implementations.  
              Phased-in interfaces are optional for the current generation of 
              compliant systems.</para></footnote></para>
            </entry>
            <entry>
              <para>int vec_all_lt (vector unsigned long long, vector unsigned
              long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_lt (vector signed short, vector signed
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_lt (vector unsigned short, vector unsigned
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_lt (vector double, vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_lt (vector float, vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ALL_NAN (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Tests whether each element of the given vector is a
              not-a-number (NaN).</para>
              <para>Result value:</para>
              <para>The result is 1 if each element of ARG1 is a NaN.
              Otherwise, the result is 0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_nan (vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_nan (vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ALL_NE (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Tests whether all sets of corresponding elements of the
              given vectors are not equal.</para>
              <para>Result value:</para>
              <para>The result is 1 if each element of ARG1 is not equal to the
              corresponding element of ARG2. Otherwise, the result is 0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ne (vector bool char, vector bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ne (vector signed char, vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ne (vector unsigned char, vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ne (vector bool int, vector bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ne (vector signed int, vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ne (vector unsigned int, vector unsigned
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ne (vector bool long long, vector bool long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ne (vector signed long long, vector signed long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ne (vector unsigned long long, vector unsigned
              long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ne (vector pixel, vector pixel);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ne (vector bool short, vector bool
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ne (vector signed short, vector signed
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ne (vector unsigned short, vector unsigned
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ne (vector double, vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ne (vector float, vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ALL_NGE (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Tests whether each element of the first argument is not
              greater than or equal to the corresponding element of the second
              argument.</para>
              <para>Result value:</para>
              <para>The result is 1 if each element of ARG1 is not greater than
              or equal to the corresponding element of ARG2. Otherwise, the
              result is 0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_nge (vector double, vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_nge (vector float, vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ALL_NGT (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Tests whether each element of the first argument is not
              greater than the corresponding element of the second
              argument.</para>
              <para>Result value:</para>
              <para>The result is 1 if each element of ARG1 is not greater than
              the corresponding element of ARG2. Otherwise, the result is
              0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ngt (vector double, vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ngt (vector float, vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ALL_NLE (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Tests whether each element of the first argument is not
              less than or equal to the corresponding element of the second
              argument.</para>
              <para>Result value:</para>
              <para>The result is 1 if each element of ARG1 is not less than or
              equal to the corresponding element of ARG2. Otherwise, the result
              is 0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_nle (vector double, vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_nle (vector float, vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ALL_NLT (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Tests whether each element of the first argument is not
              less than the corresponding element of the second
              argument.</para>
              <para>Result value:</para>
              <para>The result is 1 if each element of ARG1 is not less than
              the corresponding element of ARG2. Otherwise, the result is
              0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_nlt (vector double, vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_nlt (vector float, vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ALL_NUMERIC (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Tests whether each element of the given vector is numeric
              (not a NaN).</para>
              <para>Result value:</para>
              <para>The result is 1 if each element of ARG1 is numeric (not a
              NaN). Otherwise, the result is 0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_numeric (vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_numeric (vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ANY_EQ (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Tests whether any set of corresponding elements of the
              given vectors is equal.</para>
              <para>Result value:</para>
              <para>The result is 1 if any element of ARG1 is equal to the
              corresponding element of ARG2. Otherwise, the result is 0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_eq (vector bool char, vector bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_eq (vector signed char, vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_eq (vector unsigned char, vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_eq (vector bool int, vector bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_eq (vector signed int, vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_eq (vector unsigned int, vector unsigned
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_eq (vector bool long long, vector bool long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_eq (vector signed long long, vector signed long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_eq (vector unsigned long long, vector unsigned
              long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_eq (vector pixel, vector pixel);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_eq (vector bool short, vector bool
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_eq (vector signed short, vector signed
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_eq (vector unsigned short, vector unsigned
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_eq (vector double, vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_eq (vector float, vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ANY_GE (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Tests whether any element of the first argument is greater
              than or equal to the corresponding element of the second
              argument.</para>
              <para>Result value:</para>
              <para>The result is 1 if any element of ARG1 is greater than or
              equal to the corresponding element of ARG2. Otherwise, the result
              is 0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ge (vector signed char, vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ge (vector unsigned char, vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ge (vector signed int, vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ge (vector unsigned int, vector unsigned
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ge (vector signed long long, vector signed long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ge (vector unsigned long long, vector unsigned
              long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ge (vector signed short, vector signed
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ge (vector unsigned short, vector unsigned
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ge (vector double, vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ge (vector float, vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ANY_GT (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Tests whether any element of the first argument is greater
              than the corresponding element of the second argument.</para>
              <para>Result value:</para>
              <para>The result is 1 if any element of ARG1 is greater than the
              corresponding element of ARG2. Otherwise, the result is 0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_gt (vector signed char, vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_gt (vector unsigned char, vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_gt (vector signed int, vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_gt (vector unsigned int, vector unsigned
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_gt (vector signed long long, vector signed long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_gt (vector unsigned long long, vector unsigned
              long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_gt (vector signed short, vector signed
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_gt (vector unsigned short, vector unsigned
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_gt (vector double, vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_gt (vector float, vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ANY_LE (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Tests whether any element of the first argument is less
              than or equal to the corresponding element of the second
              argument.</para>
              <para>Result value:</para>
              <para>The result is 1 if any element of ARG1 is less than or
              equal to the corresponding element of ARG2. Otherwise, the result
              is 0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_le (vector signed char, vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_le (vector unsigned char, vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_le (vector signed int, vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_le (vector unsigned int, vector unsigned
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_le (vector signed long long, vector signed long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_le (vector unsigned long long, vector unsigned
              long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_le (vector signed short, vector signed
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_le (vector unsigned short, vector unsigned
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_le (vector double, vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_le (vector float, vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ANY_LT (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Tests whether any element of the first argument is less
              than the corresponding element of the second argument.</para>
              <para>Result value:</para>
              <para>The result is 1 if any element of ARG1 is less than the
              corresponding element of ARG2. Otherwise, the result is 0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_lt (vector signed char, vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_lt (vector unsigned char, vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_lt (vector signed int, vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_lt (vector unsigned int, vector unsigned
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_lt (vector signed long long, vector signed long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_lt (vector unsigned long long, vector unsigned
              long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_lt (vector signed short, vector signed
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_lt (vector unsigned short, vector unsigned
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_lt (vector double, vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_lt (vector float, vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ANY_NAN (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Tests whether any element of the given vector is a
              NaN.</para>
              <para>Result value:</para>
              <para>The result is 1 if any element of ARG1 is a NaN. Otherwise,
              the result is 0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_nan (vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_nan (vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ANY_NE (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Tests whether any set of corresponding elements of the
              given vectors is not equal.</para>
              <para>Result value:</para>
              <para>The result is 1 if any element of ARG1 is not equal to the
              corresponding element of ARG2. Otherwise, the result is 0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ne (vector bool char, vector bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ne (vector signed char, vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ne (vector unsigned char, vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ne (vector bool int, vector bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ne (vector signed int, vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ne (vector unsigned int, vector unsigned
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ne (vector bool long long, vector bool long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ne (vector signed long long, vector signed long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ne (vector unsigned long long, vector unsigned
              long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ne (vector pixel, vector pixel);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ne (vector bool short, vector bool
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ne (vector signed short, vector signed
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ne (vector unsigned short, vector unsigned
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ne (vector double, vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ne (vector float, vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ANY_NGE (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Tests whether any element of the first argument is not
              greater than or equal to the corresponding element of the second
              argument.</para>
              <para>Result value:</para>
              <para>The result is 1 if any element of ARG1 is not greater than
              or equal to the corresponding element of ARG2. Otherwise, the
              result is 0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_nge (vector double, vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_nge (vector float, vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ANY_NGT (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Tests whether any element of the first argument is not
              greater than the corresponding element of the second
              argument.</para>
              <para>Result value:</para>
              <para>The result is 1 if any element of ARG1 is not greater than
              the corresponding element of ARG2. Otherwise, the result is
              0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ngt (vector double, vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ngt (vector float, vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ANY_NLE (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Tests whether any element of the first argument is not less
              than or equal to the corresponding element of the second
              argument.</para>
              <para>Result value:</para>
              <para>The result is 1 if any element of ARG1 is not less than or
              equal to the corresponding element of ARG2. Otherwise, the result
              is 0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_nle (vector double, vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_nle (vector float, vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ANY_NLT (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Tests whether any element of the first argument is not less
              than the corresponding element of the second argument.</para>
              <para>Result value:</para>
              <para>The result is 1 if any element of ARG1 is not less than the
              corresponding element of ARG2. Otherwise, the result is 0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_nlt (vector double, vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_nlt (vector float, vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ANY_NUMERIC (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Tests whether any element of the given vector is numeric
              (not a NaN).</para>
              <para>Result value:</para>
              <para>The result is 1 if any element of ARG1 is numeric (not a
              NaN). Otherwise, the result is 0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_numeric (vector double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_numeric (vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ANY_OUT (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Tests whether the value of any element of a given vector is
              outside of a given range.</para>
              <para>Result value:</para>
              <para>The result is 1 if the value of any element of ARG1 is
              greater than the value of the corresponding element of ARG2 or
              less than the negative of the value of the corresponding element
              of ARG2. Otherwise, the result is 0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_out (vector float, vector float);</para>
            </entry>
          </row>
        </tbody>
      </tgroup>
    </table>
  </section>
  <section xml:id="dbdoclet.50655245_73958">
    <title>Coding Support</title>
    <para>The following built-in vector operators provide coding support. As
    suggested by the naming convention with the _be suffix, these operators
    always operate on the big-endian representation irrespective of the data
    layout of the execution environment. Thus, both input and output arguments
    have big-endian data representation, both with respect to the byte ordering
    of the base data types and the element ordering and numbering of each
    vector input and output.</para>
    <para>In accordance with these semantics, when an input or output vector
    for these operators is accessed, the vec_xl_be and vec_xst_be operators may
    be used to access vectors with big-endian element ordering regardless of
    the data layout of the execution environment. Alternatively, in a
    little-endian environment, big-endian element ordering may be established
    by using the vec_reve( ) vector operator. In a little-endian environment,
    big-endian byte order within each element may be established by using the
    vec_revb( ) vector operator.</para>
    <section>
      <title>Finite Field Arithmetic and Secure Hashing</title>
      <para>The vector operators listed in 
      <xref linkend="dbdoclet.50655245_55032" /> provide coding support for
      Secure Hashing and Finite Field Arithmetic, such as is used in the
      generation of common cyclic redundancy codes.</para>
      <para>Because these operators perform a similar operation on all vector
      elements, it is not necessary to establish a big-endian element order
      before invoking these operators. However, the byte order for bytes within
      each element must be established as big-endian.</para>
      <para>Thus, for example, a SHA computation in a little-endian environment
      may be performed by using the following sequence:</para>
      <programlisting>le_result = vec_revb(vec_shasigma_be(vec_revb(le_input), 0, 0));</programlisting>
      <table frame="all" pgwide="1" xml:id="dbdoclet.50655245_55032">
        <title>Built-In Vector Operators for Secure Hashing and Finite Field
        Arithmetic</title>
        <tgroup cols="2">
          <colspec colname="c1" colwidth="30*" align="center" />
          <colspec colname="c2" colwidth="70*" />
          <thead>
            <row>
              <entry>
                <para>
                  <emphasis role="bold">Group</emphasis>
                </para>
              </entry>
              <entry align="center">
                <para>
                  <emphasis role="bold">Description of Vector Built-In
                  Operators (with Prototypes)</emphasis>
                </para>
              </entry>
            </row>
          </thead>
          <tbody>
            <row>
              <entry>
                <para>VEC_PMSUM_BE (ARG1, ARG2)</para>
              </entry>
              <entry>
                <para>Purpose:</para>
                <para>Performs the exclusive-OR operation (implementing
                polynomial addition) on each even-odd pair of the
                polynomial-multiplication result of the corresponding
                elements.</para>
                <para>Result value:</para>
                <para>Each element i of the result vector is computed by an
                exclusive-OR operation of the polynomial multiplication of
                input elements 2 × i of ARG1 and ARG2 and input elements 2 × i
                + 1 of ARG1 and ARG2.</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>Phased in.<footnote xml:id="taba4fn"><para>
                  This optional function is being phased in and it 
                  might not be available on all implementations.
                </para></footnote></para>
              </entry>
              <entry>
                <para>vector unsigned int vec_pmsum_be (vector unsigned short,
                vector unsigned short);</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>Phased in.<footnoteref linkend="taba4fn"/>
                </para>
              </entry>
              <entry>
                <para>vector unsigned __int128 vec_pmsum_be (vector unsigned
                long long, vector unsigned long long);</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>Phased in.<footnoteref linkend="taba4fn"/>
                </para>
              </entry>
              <entry>
                <para>vector unsigned long long vec_pmsum_be (vector unsigned
                int, vector unsigned int);</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>Phased in.<footnoteref linkend="taba4fn"/>
                </para>
              </entry>
              <entry>
                <para>vector unsigned short vec_pmsum_be (vector unsigned char,
                vector unsigned char);</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>VEC_SHASIGMA_BE (ARG1, ARG2, ARG3)</para>
              </entry>
              <entry>
                <para>Purpose:</para>
                <para>Performs a Secure Hash computation in accordance with
                Federal Information Processing Standards FIPS-180-3.</para>
                <para>Result value:</para>
                <para>Each element of the result vector contains the SHA256 or
                SHA512 hash as follows.</para>
                <para>The result of the SHA-256 function is:</para>
                <itemizedlist>
                  <listitem>
                    <para>σ0(x[i]), if ARG2 is 0 and bit i of the 4-bit ARG3 is
                    0.</para>
                  </listitem>
                  <listitem>
                    <para>σ1(x[i]), if ARG2 is 0 and bit i of the 4-bit ARG3 is
                    1.</para>
                  </listitem>
                  <listitem>
                    <para>∑0(x[i]), if ARG2 is nonzero and bit i of the 4-bit
                    ARG3 is 0.</para>
                  </listitem>
                  <listitem>
                    <para>∑1(x[i]), if ARG2 is nonzero and bit i of the 4-bit
                    ARG3 is 1.</para>
                  </listitem>
                </itemizedlist>
                <para>The result of the SHA-512 function is:</para>
                <itemizedlist>
                  <listitem>
                    <para>σ0(x[i]), if ARG2 is 0 and bit 2 × i of the 4-bit
                    ARG3 is 0.</para>
                  </listitem>
                  <listitem>
                    <para>σ1(x[i]), if ARG2 is 0 and bit 2 × i of the 4-bit
                    ARG3 is 1.</para>
                  </listitem>
                  <listitem>
                    <para>∑0(x[i]), if ARG2 is nonzero and bit 2 × i of the
                    4-bit ARG3 is 0.</para>
                  </listitem>
                  <listitem>
                    <para>∑1(x[i]), if ARG2 is nonzero and bit 2 × i of the
                    4-bit ARG3 is 1.</para>
                  </listitem>
                </itemizedlist>
              </entry>
            </row>
            <row>
              <entry>
                <para>Phased in.<footnoteref linkend="taba4fn"/>
                </para>
              </entry>
              <entry>
                <para>vector unsigned int vec_shasigma_be (vector unsigned int,
                const int, const int);</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>Phased in.<footnoteref linkend="taba4fn"/>
                </para>
              </entry>
              <entry>
                <para>vector unsigned long long vec_shasigma_be (vector
                unsigned long long, const int, const int);</para>
              </entry>
            </row>
          </tbody>
        </tgroup>
      </table>
    </section>
    <section>
      <title>Advanced Encryption Standard (FIPS-197)</title>
      <para>The vector operators listed in 
      <xref linkend="dbdoclet.50655245_10826" /> provide support for the
      Advanced Encryption Standard (FIPS-197).</para>
      <para>Because these operators operate on a byte sequence (represented as
      vector char), it is not necessary to establish a big-endian byte order
      within each element before invoking these operators. However, the element
      order for each vector must be established as big endian.</para>
      <para>Thus, for example, an SBOX computation in a little-endian
      environment may be performed by using the following sequence:</para>
      <programlisting>le_result = vec_reve(vec_sbox(vec_reve(le_input), 0, 0));</programlisting>
      <para>Alternatively, the vec_xl_be and vec_xst_be operators may be used
      to access operands as follows:</para>
      <programlisting>input = vec_xl_be(0, &amp;le_input);
result = vec_sbox(input);
vec_xst_be(result,0, &amp;le_result);</programlisting>
      <table frame="all" pgwide="1" xml:id="dbdoclet.50655245_10826">
        <title>Built-In Vector Operators for the Advanced Encryption
        Standard</title>
        <tgroup cols="2">
          <colspec colname="c1" colwidth="30*" align="center"/>
          <colspec colname="c2" colwidth="70*" />
          <thead>
            <row>
              <entry>
                <para>
                  <emphasis role="bold">Group</emphasis>
                </para>
              </entry>
              <entry align="center">
                <para>
                  <emphasis role="bold">Description of Vector Built-In
                  Operators (with Prototypes)</emphasis>
                </para>
              </entry>
            </row>
          </thead>
          <tbody>
            <row>
              <entry>
                <para>VEC_SBOX_BE (ARG1)</para>
              </entry>
              <entry>
                <para>Purpose:</para>
                <para>Performs the SubBytes operation, as defined in Federal
                Information Processing Standards FIPS-197, on a
                state_array.</para>
                <para>Result value:</para>
                <para>Returns the result of the SubBytes operation, as defined
                in Federal Information Processing Standards FIPS-197, on the
                state array represented by ARG1.</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>Phased in.<footnote xml:id="taba5fn"><para>This optional function is being 
                  phased in and it might not be available on all implementations</para></footnote>
                </para>
              </entry>
              <entry>
                <para>vector unsigned char vec_sbox_be (vector unsigned
                char);</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>VEC_CIPHER_BE (ARG1, ARG2)</para>
              </entry>
              <entry>
                <para>Purpose:</para>
                <para>Performs one round of the AES cipher operation on an
                intermediate state state_array by using a given
                round_key.</para>
                <para>Result value:</para>
                <para>Returns the resulting intermediate state, after one round
                of the AES cipher operation on an intermediate state
                state_array specified by ARG1, using the round_key specified by
                ARG2.</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>Phased in.<footnoteref linkend="taba5fn" />
                </para>
              </entry>
              <entry>
                <para>vector unsigned char vec_cipher_be (vector unsigned char,
                vector unsigned char);</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>VEC_CIPHERLAST_BE (ARG1, ARG2)</para>
              </entry>
              <entry>
                <para>Purpose:</para>
                <para>Performs the final round of the AES cipher operation on
                an intermediate state state_array using the specified
                round_key.</para>
                <para>Result value:</para>
                <para>Returns the resulting final state, after the final round
                of the AES cipher operation on an intermediate state
                state_array specified by ARG1, using the round_key specified by
                ARG2.</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>Phased in.<footnoteref linkend="taba5fn" />
                </para>
              </entry>
              <entry>
                <para>vector unsigned char vec_cipherlast_be (vector unsigned
                char, vector unsigned char);</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>VEC_NCIPHER_BE (ARG1, ARG2)</para>
              </entry>
              <entry>
                <para>Purpose:</para>
                <para>Performs one round of the AES inverse cipher operation on
                an intermediate state state_array using a given
                round_key.</para>
                <para>Result value:</para>
                <para>Returns the resulting intermediate state, after one round
                of the AES inverse cipher operation on an intermediate state
                state_array specified by ARG1, using the round_key specified by
                ARG2.</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>Phased in.<footnoteref linkend="taba5fn" />
                </para>
              </entry>
              <entry>
                <para>vector unsigned char vec_ncipher_be (vector unsigned
                char, vector unsigned char);</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>VEC_NCIPHERLAST_BE (ARG1, ARG2)</para>
              </entry>
              <entry>
                <para>Purpose:</para>
                <para>Performs the final round of the AES inverse cipher
                operation on an intermediate state state_array using the
                specified round_key.</para>
                <para>Result value:</para>
                <para>Returns the resulting final state, after the final round
                of the AES inverse cipher operation on an intermediate state
                state_array specified by ARG1, using the round_key specified by
                ARG2.</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>Phased in.<footnoteref linkend="taba5fn" />
                </para>
              </entry>
              <entry>
                <para>vector unsigned char vec_ncipherlast_be (vector unsigned
                char, vector unsigned char);</para>
              </entry>
            </row>
          </tbody>
        </tgroup>
      </table>
    </section>
  </section>
  <section xml:id="dbdoclet.50655245_51379">
    <title>VSCR Management Built-in Functions</title>
    <para>
    <xref linkend="dbdoclet.50655245_33660" /> defines built-in functions for
    reading and writing the Vector Status and Control Register (VSCR).</para>
    <para> </para>
    <table frame="all" pgwide="1" xml:id="dbdoclet.50655245_33660">
      <title>VSCR Management Functions</title>
      <tgroup cols="2">
        <colspec colname="c1" colwidth="30*" align="center"/>
        <colspec colname="c2" colwidth="80*" />
        <thead>
          <row>
            <entry>
              <para>
                <emphasis role="bold">Group</emphasis>
              </para>
            </entry>
            <entry align="center">
              <para>
                <emphasis role="bold">Description of VSCR Management Functions
                (with Prototypes)</emphasis>
              </para>
            </entry>
          </row>
        </thead>
        <tbody>
          <row>
            <entry>
              <para>VEC_MTVSCR (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Copies the given value into the Vector Status and Control
              Register. The low-order 32 bits of ARG1 are copied into the
              VSCR.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>void vec_mtvscr (vector bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>void vec_mtvscr (vector signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>void vec_mtvscr (vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>void vec_mtvscr (vector bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>void vec_mtvscr (vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>void vec_mtvscr (vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>void vec_mtvscr (vector pixel);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>void vec_mtvscr (vector bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>void vec_mtvscr (vector signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>void vec_mtvscr (vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_MFVSCR</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Copies the contents of the Vector Status and Control
              Register into the result vector.</para>
              <para>Result value:</para>
              <para>The high-order 16 bits of the VSCR are copied into the
              seventh element of the result. The low-order 16 bits of the VSCR
              are copied into the eighth element of the result. All other
              elements are set to zero.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_mfvscr (void);</para>
            </entry>
          </row>
        </tbody>
      </tgroup>
    </table>
  </section>
  <section xml:id="dbdoclet.50655245_74680">
    <title>PowerSIMD API Named Constants</title>
    <para>This section defines constants for use by the PowerSIMD vector
    programming operators. They may be defined either as macros or as named
    constants.</para>
    <section>
      <title>Data Classes</title>
      <para>This section defines constants for use in conjunction with the
      vec_test_data_class operator.</para>
      <para> </para>
      <table frame="all" pgwide="1" xml:id="dbdoclet.50655245_81283">
        <title>Constants Used with vec_test_data_class</title>
        <tgroup cols="1">
          <colspec colname="c1" colwidth="100*" />
          <thead>
            <row>
              <entry align="center">
                <para>
                  <emphasis role="bold">Constants</emphasis>
                </para>
              </entry>
            </row>
          </thead>
          <tbody>
            <row>
              <entry>
                <para>#define __VEC_CLASS_FP_INFINITY_P (1&lt;&lt;5)</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>#define __VEC_CLASS_FP_INFINITY_N (1&lt;&lt;4)</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>#define __VEC_CLASS_FP_INFINITY
                (__VEC_CLASS_FP_INFINITY_P | __VEC_CLASS_FP_INFINITY _N)</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>#define __VEC_CLASS_FP_ZERO_P (1&lt;&lt;3)</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>#define __VEC_CLASS_FP_ZERO_N (1&lt;&lt;2)</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>#define __VEC_CLASS_FP_ZERO (__VEC_CLASS_FP_ZERO_P |
                __VEC_CLASS_FP_ZERO_N)</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>#define __VEC_CLASS_FP_SUBNORMAL_P (1 &lt;&lt; 1)</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>#define __VEC_CLASS_FP_SUBNORMAL_N (1 &lt;&lt; 0)</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>#define __VEC_CLASS_FP_SUBNORMAL
                (__VEC_CLASS_FP_SUBNORMAL_P |
                __VEC_CLASS_FP_SUBNORMAL_N)</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>#define __VEC_CLASS_FP_NAN (1&lt;&lt;6)</para>
              </entry>
            </row>
            <row>
              <entry>
                <para>#define __VEC_CLASS_FP_NOT_NORMAL (__VEC_CLASS_FP_NAN |
                __VEC_CLASS_FP_SUBNORMAL | __VEC_CLASS_FP_ZERO |
                __VEC_CLASS_FP_INFINITY)</para>
              </entry>
            </row>
          </tbody>
        </tgroup>
      </table>
    </section>
  </section>
  <section xml:id="dbdoclet.50655245_36964">
    <title>Deprecated Compatibility Functions</title>
    <para>The following functions should be provided for compatibility with
    previous versions of the Power SIMD vector environment. Where possible
    (subject to being supported by all targeted implementations of the Power
    SIMD environment), the use of type-generic built-in names is
    recommended.</para>
    <note>
        <para>The type-specific vector built-in types are provided for
        legacy code compatibility only. The functions are deprecated, and
        support may be discontinued in the future. It is recommended that
        programmers use the respective overloaded vector built-in functions in
        conjunction with the appropriate vector type.</para>
    </note>
    <para> </para>
    <table frame="all" pgwide="1" xml:id="dbdoclet.50655245_75081">
      <title>Functions Provided for Compatibility</title>
      <tgroup cols="2">
        <colspec colname="c1" colwidth="30*" align="center" />
        <colspec colname="c2" colwidth="70*" />
        <thead>
          <row>
            <entry>
              <para>
                <emphasis role="bold">ISA Level</emphasis>
              </para>
            </entry>
            <entry align="center">
              <para>
                <emphasis role="bold">Vector Built-In Function
                Prototypes</emphasis>
              </para>
            </entry>
          </row>
        </thead>
        <tbody>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector float vec_vaddfp (vector float, vector
              float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed char vec_vmaxsb (vector bool char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed char vec_vmaxsb (vector signed char, vector
              bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed char vec_vmaxsb (vector signed char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector signed long long vec_vmaxsd (vector signed long
              long, vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed short vec_vmaxsh (vector bool short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed short vec_vmaxsh (vector signed short, vector
              bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed short vec_vmaxsh (vector signed short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed int vec_vmaxsw (vector bool int, vector
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed int vec_vmaxsw (vector signed int, vector
              bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed int vec_vmaxsw (vector signed int, vector
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed char vec_vaddsbs (vector bool char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed char vec_vaddsbs (vector signed char, vector
              bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed char vec_vaddsbs (vector signed char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed short vec_vaddshs (vector signed short,
              vector bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed short vec_vaddshs (vector bool short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed short vec_vaddshs (vector signed short,
              vector signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed int vec_vaddsws (vector bool int, vector
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed int vec_vaddsws (vector signed int, vector
              bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed int vec_vaddsws (vector signed int, vector
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed char vec_vaddubm (vector bool char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed char vec_vaddubm (vector signed char, vector
              bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed char vec_vaddubm (vector signed char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned char vec_vaddubm (vector bool char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned char vec_vaddubm (vector unsigned char,
              vector bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned char vec_vaddubm (vector unsigned char,
              vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned char vec_vaddubs (vector bool char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned char vec_vaddubs (vector unsigned char,
              vector bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned char vec_vaddubs (vector unsigned char,
              vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector signed long long vec_vaddudm (vector bool long long,
              vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector signed long long vec_vaddudm (vector signed long
              long, vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector signed long long vec_vaddudm (vector signed long
              long, vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_vaddudm (vector bool long
              long, vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_vaddudm (vector unsigned long
              long, vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_vaddudm (vector unsigned long
              long, vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed short vec_vadduhm (vector bool short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed short vec_vadduhm (vector signed short,
              vector bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed short vec_vadduhm (vector signed short,
              vector signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned short vec_vadduhm (vector bool short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned short vec_vadduhm (vector unsigned short,
              vector bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned short vec_vadduhm (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned short vec_vadduhs (vector bool short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned short vec_vadduhs (vector unsigned short,
              vector bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned short vec_vadduhs (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_vadduwm (vector unsigned int,
              vector bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed int vec_vadduwm (vector bool int, vector
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed int vec_vadduwm (vector signed int, vector
              bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed int vec_vadduwm (vector signed int, vector
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_vadduwm (vector bool int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_vadduwm (vector unsigned int,
              vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_vadduws (vector bool int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_vadduws (vector unsigned int,
              vector bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_vadduws (vector unsigned int,
              vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed char vec_vavgsb (vector signed char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed short vec_vavgsh (vector signed short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed int vec_vavgsw (vector signed int, vector
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned char vec_vavgub (vector unsigned char,
              vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned short vec_vavguh (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_vavguw (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector signed char vec_vclzb (vector signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector unsigned char vec_vclzb (vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector signed long long vec_vclzd (vector signed long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_vclzd (vector unsigned long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector unsigned short vec_vclzh (vector unsigned
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector short vec_vclzh (vector short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_vclzw (vector int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector int vec_vclzw (vector int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector float vec_vcfsx (vector signed int, const
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector float vec_vcfux (vector unsigned int, const
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector bool int vec_vcmpeqfp (vector float, vector
              float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector bool char vec_vcmpequb (vector signed char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector bool char vec_vcmpequb (vector unsigned char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector bool short vec_vcmpequh (vector signed short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector bool short vec_vcmpequh (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector bool int vec_vcmpequw (vector signed int, vector
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector bool int vec_vcmpequw (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector bool int vec_vcmpgtfp (vector float, vector
              float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector bool char vec_vcmpgtsb (vector signed char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector bool short vec_vcmpgtsh (vector signed short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector bool short vec_vcmpgtsh (vector signed short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector bool int vec_vcmpgtsw (vector signed int, vector
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector bool char vec_vcmpgtub (vector unsigned char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector bool short vec_vcmpgtuh (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector bool int vec_vcmpgtuw (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector float vec_vmaxfp (vector float, vector
              float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned char vec_vmaxub (vector bool char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned char vec_vmaxub (vector bool char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned char vec_vmaxub (vector unsigned char,
              vector bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned char vec_vmaxub (vector unsigned char,
              vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_vmaxud (vector unsigned long
              long, unsigned vector long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned short vec_vmaxuh (vector bool short, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned short vec_vmaxuh (vector unsigned short,
              vector bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned short vec_vmaxuh (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_vmaxuw (vector bool int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_vmaxuw (vector unsigned int, vector
              bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_vmaxuw (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector float vec_vminfp (vector float, vector
              float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed char vec_vminsb (vector bool char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed char vec_vminsb (vector signed char, vector
              bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed char vec_vminsb (vector signed char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector signed long long vec_vminsd (vector signed long
              long, vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed short vec_vminsh (vector bool short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed short vec_vminsh (vector signed short, vector
              bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed short vec_vminsh (vector signed short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed int vec_vminsw (vector bool int, vector
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed int vec_vminsw (vector signed int, vector
              bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed int vec_vminsw (vector signed int, vector
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned char vec_vminub (vector bool char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned char vec_vminub (vector unsigned char,
              vector bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned char vec_vminub (vector unsigned char,
              vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_vminud (vector unsigned long
              long, vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned short vec_vminuh (vector bool short, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned short vec_vminuh (vector unsigned short,
              vector bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned short vec_vminuh (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_vminuw (vector bool int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_vminuw (vector unsigned int, vector
              bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_vminuw (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector float vec_vsubfp (vector float, vector
              float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx</para>
            </entry>
            <entry>
              <para>vector bool int vec_vcmpeqdp (vector double, vector
              double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx</para>
            </entry>
            <entry>
              <para>vector bool int vec_vcmpgtdp (vector double, vector
              double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector bool char vec_vmrghb (vector bool char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed char vec_vmrghb (vector signed char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned char vec_vmrghb (vector unsigned char,
              vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector bool short vec_vmrghh (vector bool short, vector
              bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed short vec_vmrghh (vector signed short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned short vec_vmrghh (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector pixel vec_vmrghh (vector pixel, vector
              pixel);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector bool int vec_vmrghw (vector bool int, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed int vec_vmrghw (vector signed int, vector
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_vmrghw (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector float vec_vmrghw (vector float, vector
              float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector bool char vec_vmrglb (vector bool char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed char vec_vmrglb (vector signed char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned char vec_vmrglb (vector unsigned char,
              vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector bool short vec_vmrglh (vector bool short, vector
              bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed short vec_vmrglh (vector signed short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned short vec_vmrglh (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector pixel vec_vmrglh (vector pixel, vector
              pixel);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector bool int vec_vmrglw (vector bool int, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed int vec_vmrglw (vector signed int, vector
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_vmrglw (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector float vec_vmrglw (vector float, vector
              float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed int vec_vmsummbm (vector signed char, vector
              unsigned char, vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed int vec_vmsumshm (vector signed short, vector
              signed short, vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed int vec_vmsumshs (vector signed short, vector
              signed short, vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_vmsumubm (vector unsigned char,
              vector unsigned char, vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_vmsumuhm (vector unsigned short,
              vector unsigned short, vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_vmsumuhs (vector unsigned short,
              vector unsigned short, vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed short vec_vmulesb (vector signed char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed int vec_vmulesh (vector signed short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned short vec_vmuleub (vector unsigned char,
              vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_vmuleuh (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed short vec_vmulosb (vector signed char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed int vec_vmulosh (vector signed short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned short vec_vmuloub (vector unsigned char,
              vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_vmulouh (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_vpksdss (vector unsigned long long,
              vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector int vec_vpksdss (vector signed long long, vector
              signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed char vec_vpkshss (vector signed short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned char vec_vpkshus (vector signed short,
              vector signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed short vec_vpkswss (vector signed int, vector
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned short vec_vpkswus (vector signed int,
              vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector bool int vec_vpkudum (vector bool long long, vector
              bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_vpkudum (vector unsigned long long,
              vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector int vec_vpkudum (vector signed long long, vector
              signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_vpkudus (vector unsigned long long,
              vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector bool char vec_vpkuhum (vector bool short, vector
              bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed char vec_vpkuhum (vector signed short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned char vec_vpkuhum (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned char vec_vpkuhus (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector bool short vec_vpkuwum (vector bool int, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed short vec_vpkuwum (vector signed int, vector
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned short vec_vpkuwum (vector unsigned int,
              vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned short vec_vpkuwus (vector unsigned int,
              vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector signed char vec_vpopcnt (vector signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector unsigned char vec_vpopcnt (vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_vpopcnt (vector int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector signed long long vec_vpopcnt (vector signed long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_vpopcnt (vector unsigned long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector unsigned short vec_vpopcnt (vector unsigned
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector int vec_vpopcnt (vector int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector short vec_vpopcnt (vector short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector signed char vec_vpopcntb (vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector unsigned char vec_vpopcntb (vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector signed long long vec_vpopcntd (vector signed long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_vpopcntd (vector unsigned
              long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector unsigned short vec_vpopcnth (vector unsigned
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector short vec_vpopcnth (vector short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_vpopcntw (vector 
              unsigned
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector int vec_vpopcntw (vector int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed char vec_vrlb (vector signed char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned char vec_vrlb (vector unsigned char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector signed long long vec_vrld (vector signed long long,
              vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_vrld (vector unsigned long
              long, vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed short vec_vrlh (vector signed short, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned short vec_vrlh (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed int vec_vrlw (vector signed int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_vrlw (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed char vec_vslb (vector signed char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned char vec_vslb (vector unsigned char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector signed long long vec_vsld (vector signed long long,
              vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector signed long long vec_vsld (vector unsigned long
              long, vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed short vec_vslh (vector signed short, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned short vec_vslh (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed int vec_vslw (vector signed int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_vslw (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector bool char vec_vspltb (vector bool char, const
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed char vec_vspltb (vector signed char, const
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned char vec_vspltb (vector unsigned char,
              const int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector bool short vec_vsplth (vector bool short, const
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed short vec_vsplth (vector signed short, const
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned short vec_vsplth (vector unsigned short,
              const int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector pixel vec_vsplth (vector pixel, const int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector bool int vec_vspltw (vector bool int, const
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed int vec_vspltw (vector signed int, const
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_vspltw (vector unsigned int, const
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector float vec_vspltw (vector float, const int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed char vec_vsrab (vector signed char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned char vec_vsrab (vector unsigned char,
              vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector signed long long vec_vsrad (vector signed long long,
              vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_vsrad (vector unsigned long
              long, vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed short vec_vsrah (vector signed short, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned short vec_vsrah (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed int vec_vsraw (vector signed int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_vsraw (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed char vec_vsrb (vector signed char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned char vec_vsrb (vector unsigned char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector signed long long vec_vsrd (vector signed long long,
              vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_vsrd (vector unsigned long
              long, vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed short vec_vsrh (vector signed short, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned short vec_vsrh (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed int vec_vsrw (vector signed int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_vsrw (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed char vec_vsubsbs (vector bool char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed char vec_vsubsbs (vector signed char, vector
              bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed char vec_vsubsbs (vector signed char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed short vec_vsubshs (vector bool short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed short vec_vsubshs (vector signed short,
              vector bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed short vec_vsubshs (vector signed short,
              vector signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed int vec_vsubsws (vector bool int, vector
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed int vec_vsubsws (vector signed int, vector
              bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed int vec_vsubsws (vector signed int, vector
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed char vec_vsububm (vector bool char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed char vec_vsububm (vector signed char, vector
              bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed char vec_vsububm (vector signed char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned char vec_vsububm (vector bool char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned char vec_vsububm (vector unsigned char,
              vector bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned char vec_vsububm (vector unsigned char,
              vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned char vec_vsububs (vector bool char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned char vec_vsububs (vector unsigned char,
              vector bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned char vec_vsububs (vector unsigned char,
              vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector signed long long vec_vsubudm (vector bool long long,
              vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector signed long long vec_vsubudm (vector signed long
              long, vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector signed long long vec_vsubudm (vector signed long
              long, vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_vsubudm (vector bool long
              long, vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_vsubudm (vector unsigned long
              long, vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_vsubudm (vector unsigned long
              long, vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed short vec_vsubuhm (vector bool short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed short vec_vsubuhm (vector signed short,
              vector bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed short vec_vsubuhm (vector signed short,
              vector signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned short vec_vsubuhm (vector bool short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned short vec_vsubuhm (vector unsigned short,
              vector bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned short vec_vsubuhm (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned short vec_vsubuhs (vector bool short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned short vec_vsubuhs (vector unsigned short,
              vector bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned short vec_vsubuhs (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed int vec_vsubuwm (vector bool int, vector
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed int vec_vsubuwm (vector signed int, vector
              bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed int vec_vsubuwm (vector signed int, vector
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_vsubuwm (vector bool int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_vsubuwm (vector unsigned int,
              vector bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_vsubuwm (vector unsigned int,
              vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_vsubuws (vector bool int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_vsubuws (vector unsigned int,
              vector bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_vsubuws (vector unsigned int,
              vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed int vec_vsum4sbs (vector signed char, vector
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed int vec_vsum4shs (vector signed short, vector
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_vsum4ubs (vector unsigned char,
              vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_vupkhpx (vector pixel);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector bool short vec_vupkhsb (vector bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed short vec_vupkhsb (vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector bool int vec_vupkhsh (vector bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed int vec_vupkhsh (vector signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector signed long long vec_vupkhsw (vector int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_vupkhsw (vector unsigned
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector unsigned int vec_vupklpx (vector pixel);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector bool short vec_vupklsb (vector bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed short vec_vupklsb (vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector bool int vec_vupklsh (vector bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vmx</para>
            </entry>
            <entry>
              <para>vector signed int vec_vupklsh (vector signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector signed long long vec_vupklsw (vector 
              signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>vsx2</para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_vupklsw (vector 
              unsigned
              int);</para>
            </entry>
          </row>
        </tbody>
      </tgroup>
    </table>
  </section>
  <section xml:id="dbdoclet.50655245_50332">
    <title>Deprecated Functions</title>
    <para>
    <xref linkend="dbdoclet.50655245_51769" /> lists the deprecated Power SIMD
    interfaces. 
    <xref linkend="dbdoclet.50655245_54718" /> lists the deprecated
    predicates.</para>
    <para>As in 
    <xref linkend="dbdoclet.50655245_35801" />, functions are listed
    alphabetically; supported prototypes are provided for each function.
    Prototypes are grouped by integer and floating-point types. Within each
    group, types are sorted alphabetically, first by type name and then by
    modifier. Prototypes are first sorted by the built-in result type, which is
    the output argument. Then, prototypes are sorted by the input arguments;
    ARG1, ARG2, and ARG3; in order. See 
    <xref linkend="dbdoclet.50655245_88976" /> for the format of the
    prototypes.</para>
    <note>
        <para>Developers should consult their compiler's documentation to
        determine which of these functions are provided because each compiler
        may implement a different subset (or none) of the functions specified
        in 
        <xref linkend="dbdoclet.50655245_51769" /> and 
        <xref linkend="dbdoclet.50655245_54718" />.</para>
    </note>
    <para> </para>
    <table frame="all" pgwide="1" xml:id="dbdoclet.50655245_51769">
      <title>Deprecated Power SIMD Interfaces</title>
      <tgroup cols="2">
        <colspec colname="c1" colwidth="30*" align="center" />
        <colspec colname="c2" colwidth="70*" />
        <thead>
          <row>
            <entry>
              <para>
                <emphasis role="bold">Group</emphasis>
              </para>
            </entry>
            <entry align="center">
              <para>
                <emphasis role="bold">Description of Deprecated POWER SIMD
                Prototypes</emphasis>
              </para>
            </entry>
          </row>
        </thead>
        <tbody>
          <row>
            <entry>
              <para>VEC_ADD (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the sums of each set of
              corresponding elements of the given vectors.</para>
              <para>Result value:</para>
              <para>The value of each element of the result is the sum of the
              corresponding elements of ARG1 and ARG2. For signed and unsigned
              integers, modular arithmetic is used.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_add (vector bool char, vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_add (vector signed char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_add (vector bool char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_add (vector unsigned char, vector
              bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_add (vector bool int, vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_add (vector signed int, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_add (vector bool int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_add (vector unsigned int, vector
              bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_add (vector bool short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_add (vector signed short, vector
              bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_add (vector bool short, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_add (vector unsigned short,
              vector bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ADDS (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the saturated sums of each set
              of corresponding elements of the given vectors.</para>
              <para>Result value:</para>
              <para>The value of each element of the result is the saturated
              sum of the corresponding elements of ARG1 and ARG2.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_adds (vector bool char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_adds (vector signed char, vector
              bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_adds (vector bool char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_adds (vector unsigned char, vector
              bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_adds (vector bool int, vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_adds (vector signed int, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_adds (vector bool int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_adds (vector unsigned int, vector
              bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_adds (vector bool short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_adds (vector signed short, vector
              bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_adds (vector bool short, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_adds (vector unsigned short,
              vector bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_AND (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Performs a bitwise AND of the given vectors.</para>
              <para>Result value:</para>
              <para>The result is the bitwise AND of ARG1 and ARG2.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_and (vector bool char, vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_and (vector signed char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_and (vector bool char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_and (vector unsigned char, vector
              bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_and (vector bool int, vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_and (vector signed int, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_and (vector bool int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_and (vector unsigned int, vector
              bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Optional</para>
            </entry>
            <entry>
              <para>vector signed long long vec_and (vector bool long long,
              vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Optional</para>
            </entry>
            <entry>
              <para>vector signed long long vec_and (vector signed long long,
              vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Optional</para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_and (vector bool long long,
              vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Optional</para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_and (vector unsigned long
              long, vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_and (vector bool short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_and (vector signed short, vector
              bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_and (vector bool short, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_and (vector unsigned short,
              vector bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_and (vector bool long long, vector
              double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_and (vector double, vector bool long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_and (vector bool int, vector
              float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_and (vector float, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ANDC (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Performs a bitwise AND of the first argument and the
              bitwise complement of the second argument.</para>
              <para>Result value:</para>
              <para>The result is the bitwise AND of ARG1 with the bitwise
              complement of ARG2.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_andc (vector bool char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_andc (vector signed char, vector
              bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_andc (vector bool char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_andc (vector unsigned char, vector
              bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_andc (vector bool int, vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_andc (vector signed int, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_andc (vector bool int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_andc (vector unsigned int, vector
              bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Optional</para>
            </entry>
            <entry>
              <para>vector signed long long vec_andc (vector bool long long,
              vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Optional</para>
            </entry>
            <entry>
              <para>vector signed long long vec_andc (vector signed long long,
              vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Optional</para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_andc (vector bool long long,
              vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Optional</para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_andc (vector unsigned long
              long, vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_andc (vector bool short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_andc (vector signed short, vector
              bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_andc (vector bool short, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_andc (vector unsigned short,
              vector bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_andc (vector bool long long, vector
              double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_andc (vector double, vector bool long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_andc (vector bool int, vector
              float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_andc (vector float, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_EQV (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Performs a bitwise XNOR of the given vectors.</para>
              <para>Result value:</para>
              <para>The result is the bitwise XNOR of ARG1 and ARG2.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_eqv (vector bool char, vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_eqv (vector signed char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_eqv (vector bool char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_eqv (vector unsigned char, vector
              bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_eqv (vector bool int, vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_eqv (vector signed int, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_eqv (vector bool int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_eqv (vector unsigned int, vector
              bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_eqv (vector bool long long,
              vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_eqv (vector signed long long,
              vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_eqv (vector bool long long,
              vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_eqv (vector unsigned long
              long, vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_eqv (vector bool short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_eqv (vector signed short, vector
              bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_eqv (vector bool short, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_eqv (vector unsigned short,
              vector bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_INSERT (ARG1, ARG2, ARG3)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a copy of vector ARG2 with element ARG3 replaced by
              the value of ARG1.</para>
              <para>Result value:</para>
              <para>A copy of vector ARG2 with element ARG3 replaced by the
              value of ARG1. This function uses modular arithmetic on ARG3 to
              determine the element number. For example, if ARG3 is out of
              range, the compiler uses ARG3 modulo the number of elements in
              the vector to determine the element position.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool char vec_insert (unsigned char, vector bool
              char, signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_insert (unsigned int, vector bool int,
              signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool long long vec_insert (unsigned long long,
              vector bool long long, signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool short vec_insert (unsigned short, vector bool
              short, signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_MAX (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose</para>
              <para>Returns a vector containing the maximum value from each set
              of corresponding elements of the given vectors.</para>
              <para>Result value</para>
              <para>The value of each element of the result is the maximum of
              the values of the corresponding elements of ARG1 and ARG2.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_max (vector bool char, vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_max (vector signed char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_max (vector bool char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_max (vector unsigned char, vector
              bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_max (vector bool int, vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_max (vector signed int, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_max (vector bool int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_max (vector unsigned int, vector
              bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_max (vector bool long long,
              vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_max (vector signed long long,
              vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_max (vector bool long long,
              vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_max (vector unsigned long
              long, vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_max (vector bool short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_max (vector signed short, vector
              bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_max (vector bool short, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_max (vector unsigned short,
              vector bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_MERGEH (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Merges the most-significant halves of two vectors.</para>
              <para>Result value:</para>
              <para>Assume that the elements of each vector are numbered
              beginning with 0. The even-numbered elements of the result are
              taken, in order, from the elements in the most-significant 8
              bytes of ARG1. The odd-numbered elements of the result are taken,
              in order, from the elements in the most-significant 8 bytes of
              ARG2.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Optional</para>
            </entry>
            <entry>
              <para>vector signed long long vec_mergeh (vector bool long long,
              vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Optional</para>
            </entry>
            <entry>
              <para>vector signed long long vec_mergeh (vector signed long
              long, vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Optional</para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_mergeh (vector bool long
              long, vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Optional</para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_mergeh (vector unsigned long
              long, vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_MERGEL (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Merges the least-significant halves of two vectors.</para>
              <para>Result value:</para>
              <para>Assume that the elements of each vector are numbered
              beginning with 0. The even-numbered elements of the result are
              taken, in order, from the elements in the least-significant 8
              bytes of ARG1. The odd-numbered elements of the result are taken,
              in order, from the elements in the least-significant 8 bytes of
              ARG2.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Optional</para>
            </entry>
            <entry>
              <para>vector signed long long vec_mergel (vector bool long long,
              vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Optional</para>
            </entry>
            <entry>
              <para>vector signed long long vec_mergel (vector signed long
              long, vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Optional</para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_mergel (vector bool long
              long, vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Optional</para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_mergel (vector unsigned long
              long, vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_MIN (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the minimum value from each set
              of corresponding elements of the given vectors.</para>
              <para>Result value:</para>
              <para>The value of each element of the result is the minimum of
              the values of the corresponding elements of ARG1 and ARG2.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_min (vector bool char, vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_min (vector signed char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_min (vector bool char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_min (vector unsigned char, vector
              bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_min (vector bool int, vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_min (vector signed int, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_min (vector bool int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_min (vector unsigned int, vector
              bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_min (vector signed long long,
              vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_min (vector bool long long,
              vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_min (vector unsigned long
              long, vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_min (vector bool long long,
              vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_min (vector bool short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_min (vector signed short, vector
              bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_min (vector bool short, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_min (vector unsigned short,
              vector bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_MLADD (ARG1, ARG2, ARG3)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the results of performing a
              multiply-low-and-add operation for each corresponding set of
              elements of the given vectors.</para>
              <para>Result value:</para>
              <para>The value of each element of the result is the value of the
              least-significant 16 bits of the product of the values of the
              corresponding elements of ARG1 and ARG2, added to the value of
              the corresponding element of ARG3. The addition is performed
              using modular arithmetic.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_mladd (vector signed short, vector
              signed short, vector signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_mladd (vector signed short, vector
              unsigned short, vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_mladd (vector unsigned short,
              vector signed short, vector signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_mladd (vector unsigned short,
              vector unsigned short, vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_NAND (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Performs a bitwise NAND of the given vectors.</para>
              <para>Result value:</para>
              <para>The result is the bitwise NAND of ARG1 and ARG2.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_nand (vector bool char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_nand (vector signed char, vector
              bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_nand (vector bool char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_nand (vector unsigned char, vector
              bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_nand (vector bool int, vector
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_nand (vector signed int, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_nand (vector bool int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_nand (vector unsigned int, vector
              bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_nand (vector bool long long,
              vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_nand (vector signed long long,
              vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_nand (vector bool long long,
              vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_nand (vector unsigned long
              long, vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_nand (vector bool short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_nand (vector signed short, vector
              bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_nand (vector bool short, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_nand (vector unsigned short,
              vector bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_NOR (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Performs a bitwise NOR of the given vectors.</para>
              <para>Result value:</para>
              <para>The result is the bitwise NOR of ARG1 and ARG2.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Optional</para>
            </entry>
            <entry>
              <para>vector signed long long vec_nor (vector bool long long,
              vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Optional</para>
            </entry>
            <entry>
              <para>vector signed long long vec_nor (vector signed long long,
              vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Optional</para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_nor (vector bool long long,
              vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Optional</para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_nor (vector unsigned long
              long, vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_OR (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Performs a bitwise OR of the given vectors.</para>
              <para>Result value:</para>
              <para>The result is the bitwise OR of ARG1 and ARG2.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_or (vector bool char, vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_or (vector signed char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_or (vector bool char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_or (vector unsigned char, vector
              bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_or (vector bool int, vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_or (vector signed int, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_or (vector bool int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_or (vector unsigned int, vector
              bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Optional</para>
            </entry>
            <entry>
              <para>vector signed long long vec_or (vector bool long long,
              vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Optional</para>
            </entry>
            <entry>
              <para>vector signed long long vec_or (vector signed long long,
              vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Optional</para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_or (vector bool long long,
              vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Optional</para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_or (vector unsigned long
              long, vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_or (vector bool short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_or (vector signed short, vector
              bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_or (vector bool short, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_or (vector unsigned short, vector
              bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_or (vector bool long long, vector
              double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_or (vector double, vector bool long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_or (vector bool int, vector float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_or (vector float, vector bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ORC (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Performs a bitwise OR of the first vector with the negated
              second vector.</para>
              <para>Result value:</para>
              <para>The result is the bitwise OR of ARG1 and the bitwise
              negation of ARG2.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_orc (vector bool char, vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_orc (vector signed char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_orc (vector bool char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_orc (vector unsigned char, vector
              bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_orc (vector bool int, vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_orc (vector int signed int, vector
              bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_orc (vector bool int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_orc (vector unsigned int, vector
              bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_orc (vector bool long long,
              vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_orc (vector signed long long,
              vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_orc (vector bool long long,
              vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_orc (vector unsigned long
              long, vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_orc (vector bool short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_orc (vector signed short, vector
              bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_orc (vector bool short, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_orc (vector unsigned short,
              vector bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_orc (vector bool long long, vector
              double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_orc (vector double, vector bool long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_orc (vector bool int, vector
              float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_orc (vector float, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_SEL (ARG1, ARG2, ARG3)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the value of either ARG1 or
              ARG2 depending on the value of ARG3.</para>
              <para>Result value:</para>
              <para>Each bit of the result vector has the value of the
              corresponding bit of ARG1 if the corresponding bit of ARG3 is 0.
              Otherwise, each bit of the result vector has the value of the
              corresponding bit of ARG2.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_sel (vector double, vector double, vector
              unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_SLL (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Left shifts a vector by a given number of bits.</para>
              <para>Result value:</para>
              <para>The result is the contents of ARG1, shifted left by the
              number of bits specified by the three least-significant bits of
              ARG2. The bits that are shifted out are replaced by zeros. The
              shift count must have been replicated into all bytes of the shift
              count specification.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool char vec_sll (vector bool char, vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool char vec_sll (vector bool char, vector unsigned
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool char vec_sll (vector bool char, vector unsigned
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_sll (vector signed char, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_sll (vector signed char, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_sll (vector unsigned char, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_sll (vector unsigned char, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_sll (vector bool int, vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_sll (vector bool int, vector unsigned
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_sll (vector bool int, vector unsigned
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_sll (vector signed int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_sll (vector signed int, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_sll (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_sll (vector unsigned int, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool long long vec_sll (vector bool long long,
              vector unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para></para>
            </entry>
            <entry>
              <para>vector bool long long vec_sll (vector bool long long,
              vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool long long vec_sll (vector bool long long,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_sll (vector signed long long,
              vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_sll (vector signed long long,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_sll (vector unsigned long
              long, vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_sll (vector unsigned long
              long, vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector pixel vec_sll (vector pixel, vector unsigned
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector pixel vec_sll (vector pixel, vector unsigned
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool short vec_sll (vector bool short, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool short vec_sll (vector bool short, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool short vec_sll (vector bool short, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_sll (vector signed short, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_sll (vector signed short, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_sll (vector unsigned short,
              vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_sll (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_SRL (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Right shifts a vector by a given number of bits.</para>
              <para>Result value:</para>
              <para>The result is the contents of ARG1, shifted right by the
              number of bits specified by the 3 least-significant bits of ARG2.
              The bits that are shifted out are replaced by zeros.
              The shift
              count must have been replicated into all bytes of the shift count
              specification.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool char vec_srl (vector bool char, vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool char vec_srl (vector bool char, vector unsigned
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool char vec_srl (vector bool char, vector unsigned
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_srl (vector signed char, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_srl (vector signed char, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_srl (vector unsigned char, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_srl (vector unsigned char, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_srl (vector bool int, vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_srl (vector bool int, vector unsigned
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool int vec_srl (vector bool int, vector unsigned
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_srl (vector signed int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_srl (vector signed int, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_srl (vector unsigned int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_srl (vector unsigned int, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_srl (vector signed long long,
              vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_srl (vector signed long long,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_srl (vector unsigned long
              long, vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_srl (vector unsigned long
              long, vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector pixel vec_srl (vector pixel, vector unsigned
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector pixel vec_srl (vector pixel, vector unsigned
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool short vec_srl (vector bool short, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool short vec_srl (vector bool short, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector bool short vec_srl (vector bool short, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_srl (vector signed short, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_srl (vector signed short, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_srl (vector unsigned short,
              vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_srl (vector unsigned short,
              vector unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_SUB (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the result of subtracting each
              element of ARG2 from the corresponding element of ARG1. This
              function emulates the operation on long long vectors.</para>
              <para>Result value:</para>
              <para>The value of each element of the result is the result of
              subtracting the value of the corresponding element of ARG2 from
              the value of the corresponding element of ARG1. The arithmetic is
              modular for integer vectors.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_sub (vector bool char, vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_sub (vector signed char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_sub (vector bool char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_sub (vector unsigned char, vector
              bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_sub (vector bool int, vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_sub (vector signed int, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_sub (vector bool int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_sub (vector unsigned int, vector
              bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_sub (vector bool long long,
              vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_sub (vector signed long long,
              vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_sub (vector bool long long,
              vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_sub (vector unsigned long
              long, vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_sub (vector bool short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_sub (vector signed short, vector
              bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_sub (vector bool short, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_sub (vector unsigned short,
              vector bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_SUBS (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the saturated differences of
              each set of corresponding elements of the given vectors.</para>
              <para>Result value:</para>
              <para>The value of each element of the result is the saturated
              result of subtracting the value of the corresponding element of
              ARG2 from the value of the corresponding element of ARG1.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_subs (vector bool char, vector
              signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_subs (vector signed char, vector
              bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_subs (vector bool char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_subs (vector unsigned char, vector
              bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_subs (vector bool int, vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_subs (vector signed int, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_subs (vector bool int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_subs (vector unsigned int, vector
              bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_subs (vector bool short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_subs (vector signed short, vector
              bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_subs (vector bool short, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_subs (vector unsigned short,
              vector bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_VCLZ (ARG1)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Returns a vector containing the number of most-significant
              bits equal to 0 of each corresponding element of the given
              vector.</para>
              <para>Result value:</para>
              <para>The value of each element of the result is the sum of the
              corresponding single-precision floating-point elements of ARG1
              and ARG2.</para>
              <para>
              <emphasis role="bold">Deprecated:</emphasis> The preferred form of this vector
              built-in function is vec_ctlz.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_vclz (vector signed char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_vclz (vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_vclz (vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_vclz (vector unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed long long vec_vclz (vector signed long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_vclz (vector unsigned long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_vclz (vector signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_vclz (vector unsigned
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_XOR (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Performs a bitwise XOR of the given vectors.</para>
              <para>Result value:</para>
              <para>The result is the bitwise XOR of ARG1 and ARG2.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_xor (vector bool char, vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed char vec_xor (vector signed char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_xor (vector bool char, vector
              unsigned char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned char vec_xor (vector unsigned char, vector
              bool char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_xor (vector bool int, vector signed
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed int vec_xor (vector signed int, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_xor (vector bool int, vector
              unsigned int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned int vec_xor (vector unsigned int, vector
              bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Optional</para>
            </entry>
            <entry>
              <para>vector signed long long vec_xor (vector bool long long,
              vector signed long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Optional</para>
            </entry>
            <entry>
              <para>vector signed long long vec_xor (vector signed long long,
              vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Optional</para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_xor (vector bool long long,
              vector unsigned long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>Optional</para>
            </entry>
            <entry>
              <para>vector unsigned long long vec_xor (vector unsigned long
              long, vector bool long long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_xor (vector bool short, vector
              signed short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector signed short vec_xor (vector signed short, vector
              bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_xor (vector bool short, vector
              unsigned short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector unsigned short vec_xor (vector unsigned short,
              vector bool short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_xor (vector bool long long, vector
              double);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector double vec_xor (vector double, vector bool long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_xor (vector bool int, vector
              float);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>vector float vec_xor (vector float, vector bool
              int);</para>
            </entry>
          </row>
        </tbody>
      </tgroup>
    </table>
    <para> </para>
    <table frame="all" pgwide="1" xml:id="dbdoclet.50655245_54718">
      <title>Deprecated Predicates</title>
      <tgroup cols="2">
        <colspec colname="c1" colwidth="30*" align="center" />
        <colspec colname="c2" colwidth="70*" />
        <thead>
          <row>
            <entry>
              <para>
                <emphasis role="bold">Group</emphasis>
              </para>
            </entry>
            <entry align="center">
              <para>
                <emphasis role="bold">Description of Deprecated Predicate
                Prototypes</emphasis>
              </para>
            </entry>
          </row>
        </thead>
        <tbody>
          <row>
            <entry>
              <para>VEC_ALL_EQ (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Tests whether all sets of corresponding elements of the
              given vectors are equal.</para>
              <para>Result value:</para>
              <para>The result is 1 if each element of ARG1 is equal to the
              corresponding element of ARG2. Otherwise, the result is 0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_eq (vector bool char, vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_eq (vector bool char, vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_eq (vector signed char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_eq (vector unsigned char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_eq (vector bool int, vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_eq (vector bool int, vector unsigned
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_eq (vector signed int, vector bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_eq (vector unsigned int, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_eq (vector bool long long, vector signed long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_eq (vector bool long long, vector unsigned long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_eq (vector signed long long, vector bool long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_eq (vector unsigned long long, vector bool long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_eq (vector bool short, vector signed
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_eq (vector bool short, vector unsigned
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_eq (vector signed short, vector bool
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_eq (vector unsigned short, vector bool
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ALL_GE (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Tests whether all elements of the first argument are
              greater than or equal to the corresponding elements of the second
              argument.</para>
              <para>Result value:</para>
              <para>The result is 1 if all elements of ARG1 are greater than or
              equal to the corresponding elements of ARG2. Otherwise, the
              result is 0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ge (vector bool char, vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ge (vector bool char, vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ge (vector signed char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ge (vector unsigned char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ge (vector bool int, vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ge (vector bool int, vector unsigned
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ge (vector signed int, vector bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ge (vector unsigned int, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ge (vector bool long long, vector signed long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ge (vector bool long long, vector unsigned long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ge (vector signed long long, vector bool long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ge (vector unsigned long long, vector bool long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ge (vector bool short, vector signed
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ge (vector bool short, vector unsigned
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ge (vector signed short, vector bool
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ge (vector unsigned short, vector bool
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ALL_GT (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Tests whether all elements of the first argument are
              greater than the corresponding elements of the second
              argument.</para>
              <para>Result value:</para>
              <para>The result is 1 if all elements of ARG1 are greater than
              the corresponding elements of ARG2. Otherwise, the result is
              0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_gt (vector bool char, vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_gt (vector bool char, vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_gt (vector signed char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_gt (vector unsigned char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_gt (vector bool int, vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_gt (vector bool int, vector unsigned
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_gt (vector signed int, vector bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_gt (vector unsigned int, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_gt (vector bool long long, vector signed long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_gt (vector bool long long, vector unsigned long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_gt (vector signed long long, vector bool long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_gt (vector unsigned long long, vector bool long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_gt (vector bool short, vector signed
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_gt (vector bool short, vector unsigned
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_gt (vector signed short, vector bool
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_gt (vector unsigned short, vector bool
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ALL_LE (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Tests whether all elements of the first argument are less
              than or equal to the corresponding elements of the second
              argument.</para>
              <para>Result value:</para>
              <para>The result is 1 if all elements of ARG1 are less than or
              equal to the corresponding elements of ARG2. Otherwise, the
              result is 0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_le (vector bool char, vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_le (vector bool char, vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_le (vector signed char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_le (vector unsigned char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_le (vector bool int, vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_le (vector bool int, vector unsigned
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_le (vector signed int, vector bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_le (vector unsigned int, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_le (vector bool long long, vector signed long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_le (vector bool long long, vector unsigned long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_le (vector signed long long, vector bool long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_le (vector unsigned long long, vector bool long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_le (vector bool short, vector signed
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_le (vector bool short, vector unsigned
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_le (vector signed short, vector bool
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_le (vector unsigned short, vector bool
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ALL_LT (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Tests whether all elements of the first argument are less
              than the corresponding elements of the second argument.</para>
              <para>Result value:</para>
              <para>The result is 1 if all elements of ARG1 are less than the
              corresponding elements of ARG2. Otherwise, the result is
              0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_lt (vector bool char, vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_lt (vector bool char, vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_lt (vector signed char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_lt (vector unsigned char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_lt (vector bool int, vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_lt (vector bool int, vector unsigned
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_lt (vector signed int, vector bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_lt (vector unsigned int, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_lt (vector bool long long, vector signed long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_lt (vector bool long long, vector unsigned long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_lt (vector signed long long, vector bool long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_lt (vector unsigned long long, vector bool long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_lt (vector bool short, vector signed
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_lt (vector bool short, vector unsigned
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_lt (vector signed short, vector bool
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_lt (vector unsigned short, vector bool
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ALL_NE (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Tests whether all sets of corresponding elements of the
              given vectors are not equal.</para>
              <para>Result value:</para>
              <para>The result is 1 if each element of ARG1 is not equal to the
              corresponding element of ARG2. Otherwise, the result is 0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ne (vector bool char, vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ne (vector bool char, vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ne (vector signed char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ne (vector unsigned char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ne (vector bool int, vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ne (vector bool int, vector unsigned
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ne (vector signed int, vector bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ne (vector unsigned int, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ne (vector bool long long, vector signed long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ne (vector bool long long, vector unsigned long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ne (vector signed long long, vector bool long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ne (vector unsigned long long, vector bool long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ne (vector bool short, vector signed
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ne (vector bool short, vector unsigned
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ne (vector signed short, vector bool
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_all_ne (vector unsigned short, vector bool
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ANY_EQ (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Tests whether any set of corresponding elements of the
              given vectors are equal.</para>
              <para>Result value:</para>
              <para>The result is 1 if any element of ARG1 is equal to the
              corresponding element of ARG2. Otherwise, the result is 0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_eq (vector bool char, vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_eq (vector bool char, vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_eq (vector signed char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_eq (vector unsigned char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_eq (vector bool int, vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_eq (vector bool int, vector unsigned
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_eq (vector signed int, vector bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_eq (vector unsigned int, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_eq (vector bool long long, vector signed long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_eq (vector bool long long, vector unsigned long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_eq (vector signed long long, vector bool long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_eq (vector unsigned long long, vector bool long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_eq (vector bool short, vector signed
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_eq (vector bool short, vector unsigned
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_eq (vector signed short, vector bool
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_eq (vector unsigned short, vector bool
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ANY_GE (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Tests whether any element of the first argument is greater
              than or equal to the corresponding element of the second
              argument.</para>
              <para>Result value:</para>
              <para>The result is 1 if any element of ARG1 is greater than or
              equal to the corresponding element of ARG2. Otherwise, the result
              is 0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ge (vector bool char, vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ge (vector bool char, vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ge (vector signed char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ge (vector unsigned char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ge (vector bool int, vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ge (vector bool int, vector unsigned
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ge (vector signed int, vector bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ge (vector unsigned int, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ge (vector bool long long, vector signed long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ge (vector bool long long, vector unsigned long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ge (vector signed long long, vector bool long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ge (vector unsigned long long, vector bool long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ge (vector bool short, vector signed
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ge (vector bool short, vector unsigned
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ge (vector signed short, vector bool
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ge (vector unsigned short, vector bool
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ANY_GT (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Tests whether any element of the first argument is greater
              than the corresponding element of the second argument.</para>
              <para>Result value:</para>
              <para>The result is 1 if any element of ARG1 is greater than the
              corresponding element of ARG2. Otherwise, the result is 0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_gt (vector bool char, vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_gt (vector bool char, vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_gt (vector signed char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_gt (vector unsigned char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_gt (vector bool int, vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_gt (vector bool int, vector unsigned
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_gt (vector signed int, vector bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_gt (vector unsigned int, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_gt (vector bool long long, vector signed long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_gt (vector bool long long, vector unsigned long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_gt (vector signed long long, vector bool long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_gt (vector unsigned long long, vector bool long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_gt (vector bool short, vector signed
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_gt (vector bool short, vector unsigned
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_gt (vector signed short, vector bool
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_gt (vector unsigned short, vector bool
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ANY_LE (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Tests whether any element of the first argument is less
              than or equal to the corresponding element of the second
              argument.</para>
              <para>Result value:</para>
              <para>The result is 1 if any element of ARG1 is less than or
              equal to the corresponding element of ARG2. Otherwise, the result
              is 0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_le (vector bool char, vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_le (vector bool char, vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_le (vector signed char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_le (vector unsigned char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_le (vector bool int, vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_le (vector bool int, vector unsigned
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_le (vector signed int, vector bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_le (vector unsigned int, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_le (vector bool long long, vector signed long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_le (vector bool long long, vector unsigned long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_le (vector signed long long, vector bool long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_le (vector unsigned long long, vector bool long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_le (vector bool short, vector signed
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_le (vector bool short, vector unsigned
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_le (vector signed short, vector bool
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_le (vector unsigned short, vector bool
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ANY_LT (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Tests whether any element of the first argument is less
              than the corresponding element of the second argument.</para>
              <para>Result value:</para>
              <para>The result is 1 if any element of ARG1 is less than the
              corresponding element of ARG2. Otherwise, the result is 0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_lt (vector bool char, vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_lt (vector bool char, vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_lt (vector signed char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_lt (vector unsigned char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_lt (vector bool int, vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_lt (vector bool int, vector unsigned
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_lt (vector signed int, vector bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_lt (vector unsigned int, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_lt (vector bool long long, vector signed long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_lt (vector bool long long, vector unsigned long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_lt (vector signed long long, vector bool long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_lt (vector unsigned long long, vector bool long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_lt (vector bool short, vector signed
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_lt (vector bool short, vector unsigned
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_lt (vector signed short, vector bool
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_lt (vector unsigned short, vector bool
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para>VEC_ANY_NE (ARG1, ARG2)</para>
            </entry>
            <entry>
              <para>Purpose:</para>
              <para>Tests whether any set of corresponding elements of the
              given vectors are not equal.</para>
              <para>Result value:</para>
              <para>The result is 1 if any element of ARG1 is not equal to the
              corresponding element of ARG2. Otherwise, the result is 0.</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ne (vector bool char, vector signed
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ne (vector bool char, vector unsigned
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ne (vector signed char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ne (vector unsigned char, vector bool
              char);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ne (vector bool int, vector signed int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ne (vector bool int, vector unsigned
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ne (vector signed int, vector bool int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ne (vector unsigned int, vector bool
              int);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ne (vector bool long long, vector signed long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ne (vector bool long long, vector unsigned long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ne (vector signed long long, vector bool long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ne (vector unsigned long long, vector bool long
              long);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ne (vector bool short, vector signed
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ne (vector bool short, vector unsigned
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ne (vector signed short, vector bool
              short);</para>
            </entry>
          </row>
          <row>
            <entry>
              <para> </para>
            </entry>
            <entry>
              <para>int vec_any_ne (vector unsigned short, vector bool
              short);</para>
            </entry>
          </row>
        </tbody>
      </tgroup>
    </table>
    <para> </para>
  </section>
</appendix>
