aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/g-alveop.ads
diff options
context:
space:
mode:
authorRobert Dewar <dewar@adacore.com>2015-02-20 14:27:54 +0000
committerArnaud Charlet <charlet@gcc.gnu.org>2015-02-20 15:27:54 +0100
commit4060ebd4be9d17ba7a5cb8dc44a7e047232bf335 (patch)
tree9308476d6d50f7986d912f42def99b50df0d9f80 /gcc/ada/g-alveop.ads
parent9ec98e13b932b9d8404d8d8d61357662e80b35d1 (diff)
downloadgcc-4060ebd4be9d17ba7a5cb8dc44a7e047232bf335.zip
gcc-4060ebd4be9d17ba7a5cb8dc44a7e047232bf335.tar.gz
gcc-4060ebd4be9d17ba7a5cb8dc44a7e047232bf335.tar.bz2
g-allein.ads, [...]: Minor reformatting
2015-02-20 Robert Dewar <dewar@adacore.com> * g-allein.ads, g-alveop.adb, g-alveop.ads, opt.ads: Minor reformatting From-SVN: r220867
Diffstat (limited to 'gcc/ada/g-alveop.ads')
-rw-r--r--gcc/ada/g-alveop.ads605
1 files changed, 472 insertions, 133 deletions
diff --git a/gcc/ada/g-alveop.ads b/gcc/ada/g-alveop.ads
index eb05e4e..82bc5f4 100644
--- a/gcc/ada/g-alveop.ads
+++ b/gcc/ada/g-alveop.ads
@@ -32,49 +32,57 @@
-- This unit is the user-level Ada interface to AltiVec operations on vector
-- objects. It is common to both the Soft and the Hard bindings.
-with GNAT.Altivec.Vector_Types; use GNAT.Altivec.Vector_Types;
+with GNAT.Altivec.Vector_Types; use GNAT.Altivec.Vector_Types;
with GNAT.Altivec.Low_Level_Vectors; use GNAT.Altivec.Low_Level_Vectors;
+------------------------------------
+-- GNAT.Altivec.Vector_Operations --
+------------------------------------
+
+------------------------------------
+-- GNAT.Altivec.Vector_Operations --
+------------------------------------
+
package GNAT.Altivec.Vector_Operations is
-------------------------------------
- -- Different flavors of interfaces --
+ -- Different Flavors of Interfaces --
-------------------------------------
-- The vast majority of the user visible functions are just neutral type
-- conversion wrappers around calls to low level primitives. For instance:
- --
+
-- function vec_sll
-- (A : vector_signed_int;
-- B : vector_unsigned_char) return vector_signed_int is
-- begin
-- return To_VSI (vsl (To_VSI (A), To_VSI (B)));
-- end vec_sll;
- --
+
-- We actually don't always need an explicit wrapper and can bind directly
-- with a straight Import of the low level routine, or a renaming of such
-- instead.
- --
+
-- A direct binding is not possible (that is, a wrapper is mandatory) in
-- a number of cases:
- --
+
-- o When the high-level/low-level types don't match, in which case a
-- straight import would risk wrong code generation or compiler blowups in
-- the Hard binding case. This is the case for 'B' in the example above.
- --
+
-- o When the high-level/low-level argument lists differ, as is the case
-- for most of the AltiVec predicates, relying on a low-level primitive
-- which expects a control code argument, like:
- --
+
-- function vec_any_ne
-- (A : vector_signed_int;
-- B : vector_signed_int) return c_int is
-- begin
-- return vcmpequw_p (CR6_LT_REV, To_VSI (A), To_VSI (B));
-- end vec_any_ne;
- --
+
-- o When the high-level/low-level arguments order don't match, as in:
- --
+
-- function vec_cmplt
-- (A : vector_unsigned_char;
-- B : vector_unsigned_char) return vector_bool_char is
@@ -83,16 +91,15 @@ package GNAT.Altivec.Vector_Operations is
-- end vec_cmplt;
-----------------------------
- -- Inlining considerations --
+ -- Inlining Considerations --
-----------------------------
- -- The intent in the Hard binding case is to eventually map operations to
+ -- The intent in the hard binding case is to eventually map operations to
-- hardware instructions. Needless to say, intermediate function calls do
- -- not fit this purpose, so all the user visible subprograms need to be
- -- marked Inline_Always. Some of the builtins we eventually bind to expect
- -- literal arguments. Wrappers to such builtins are made Convention
- -- Intrinsic as well so we don't attempt to compile the bodies on their
- -- own.
+ -- not fit this purpose, so all user visible subprograms need to be marked
+ -- Inline_Always. Some of the builtins we eventually bind to expect literal
+ -- arguments. Wrappers to such builtins are made Convention Intrinsic as
+ -- well so we don't attempt to compile the bodies on their own.
-- In the soft case, the bulk of the work is performed by the low level
-- routines, and those exported by this unit are short enough for the
@@ -102,7 +109,9 @@ package GNAT.Altivec.Vector_Operations is
-- [PIM-4.4 Generic and Specific AltiVec operations] --
-------------------------------------------------------
+ -------------
-- vec_abs --
+ -------------
function vec_abs
(A : vector_signed_char) return vector_signed_char;
@@ -116,7 +125,9 @@ package GNAT.Altivec.Vector_Operations is
function vec_abs
(A : vector_float) return vector_float;
+ --------------
-- vec_abss --
+ --------------
function vec_abss
(A : vector_signed_char) return vector_signed_char;
@@ -127,7 +138,9 @@ package GNAT.Altivec.Vector_Operations is
function vec_abss
(A : vector_signed_int) return vector_signed_int;
+ -------------
-- vec_add --
+ -------------
function vec_add
(A : vector_bool_char;
@@ -205,13 +218,17 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_float;
B : vector_float) return vector_float;
+ ----------------
-- vec_vaddfp --
+ ----------------
function vec_vaddfp
(A : vector_float;
B : vector_float) return vector_float;
+ -----------------
-- vec_vadduwm --
+ -----------------
function vec_vadduwm
(A : vector_bool_int;
@@ -237,7 +254,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_int;
B : vector_unsigned_int) return vector_unsigned_int;
+ -----------------
-- vec_vadduhm --
+ -----------------
function vec_vadduhm
(A : vector_bool_short;
@@ -263,7 +282,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_short;
B : vector_unsigned_short) return vector_unsigned_short;
+ -----------------
-- vec_vaddubm --
+ -----------------
function vec_vaddubm
(A : vector_bool_char;
@@ -289,13 +310,17 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_char;
B : vector_unsigned_char) return vector_unsigned_char;
+ --------------
-- vec_addc --
+ --------------
function vec_addc
(A : vector_unsigned_int;
B : vector_unsigned_int) return vector_unsigned_int;
+ --------------
-- vec_adds --
+ --------------
function vec_adds
(A : vector_bool_char;
@@ -369,7 +394,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_signed_int;
B : vector_signed_int) return vector_signed_int;
+ -----------------
-- vec_vaddsws --
+ -----------------
function vec_vaddsws
(A : vector_bool_int;
@@ -383,7 +410,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_signed_int;
B : vector_signed_int) return vector_signed_int;
+ -----------------
-- vec_vadduws --
+ -----------------
function vec_vadduws
(A : vector_bool_int;
@@ -397,7 +426,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_int;
B : vector_unsigned_int) return vector_unsigned_int;
+ -----------------
-- vec_vaddshs --
+ -----------------
function vec_vaddshs
(A : vector_bool_short;
@@ -411,7 +442,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_signed_short;
B : vector_signed_short) return vector_signed_short;
+ -----------------
-- vec_vadduhs --
+ -----------------
function vec_vadduhs
(A : vector_bool_short;
@@ -425,7 +458,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_short;
B : vector_unsigned_short) return vector_unsigned_short;
+ -----------------
-- vec_vaddsbs --
+ -----------------
function vec_vaddsbs
(A : vector_bool_char;
@@ -439,7 +474,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_signed_char;
B : vector_signed_char) return vector_signed_char;
+ -----------------
-- vec_vaddubs --
+ -----------------
function vec_vaddubs
(A : vector_bool_char;
@@ -453,7 +490,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_char;
B : vector_unsigned_char) return vector_unsigned_char;
+ -------------
-- vec_and --
+ -------------
function vec_and
(A : vector_float;
@@ -551,7 +590,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_char;
B : vector_unsigned_char) return vector_unsigned_char;
+ --------------
-- vec_andc --
+ --------------
function vec_andc
(A : vector_float;
@@ -649,7 +690,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_char;
B : vector_unsigned_char) return vector_unsigned_char;
+ -------------
-- vec_avg --
+ -------------
function vec_avg
(A : vector_unsigned_char;
@@ -675,55 +718,69 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_signed_int;
B : vector_signed_int) return vector_signed_int;
+ ----------------
-- vec_vavgsw --
+ ----------------
function vec_vavgsw
(A : vector_signed_int;
B : vector_signed_int) return vector_signed_int;
+ ----------------
-- vec_vavguw --
+ ----------------
function vec_vavguw
(A : vector_unsigned_int;
B : vector_unsigned_int) return vector_unsigned_int;
+ ----------------
-- vec_vavgsh --
+ ----------------
function vec_vavgsh
(A : vector_signed_short;
B : vector_signed_short) return vector_signed_short;
+ ----------------
-- vec_vavguh --
+ ----------------
function vec_vavguh
(A : vector_unsigned_short;
B : vector_unsigned_short) return vector_unsigned_short;
+ ----------------
-- vec_vavgsb --
+ ----------------
function vec_vavgsb
(A : vector_signed_char;
B : vector_signed_char) return vector_signed_char;
+ ----------------
-- vec_vavgub --
+ ----------------
function vec_vavgub
(A : vector_unsigned_char;
B : vector_unsigned_char) return vector_unsigned_char;
+ --------------
-- vec_ceil --
+ --------------
function vec_ceil
(A : vector_float) return vector_float;
+ --------------
-- vec_cmpb --
+ --------------
function vec_cmpb
(A : vector_float;
B : vector_float) return vector_signed_int;
- -- vec_cmpeq --
-
function vec_cmpeq
(A : vector_signed_char;
B : vector_signed_char) return vector_bool_char;
@@ -752,13 +809,17 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_float;
B : vector_float) return vector_bool_int;
+ ------------------
-- vec_vcmpeqfp --
+ ------------------
function vec_vcmpeqfp
(A : vector_float;
B : vector_float) return vector_bool_int;
+ ------------------
-- vec_vcmpequw --
+ ------------------
function vec_vcmpequw
(A : vector_signed_int;
@@ -768,7 +829,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_int;
B : vector_unsigned_int) return vector_bool_int;
+ ------------------
-- vec_vcmpequh --
+ ------------------
function vec_vcmpequh
(A : vector_signed_short;
@@ -778,7 +841,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_short;
B : vector_unsigned_short) return vector_bool_short;
+ ------------------
-- vec_vcmpequb --
+ ------------------
function vec_vcmpequb
(A : vector_signed_char;
@@ -788,13 +853,17 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_char;
B : vector_unsigned_char) return vector_bool_char;
+ ---------------
-- vec_cmpge --
+ ---------------
function vec_cmpge
(A : vector_float;
B : vector_float) return vector_bool_int;
+ ---------------
-- vec_cmpgt --
+ ---------------
function vec_cmpgt
(A : vector_unsigned_char;
@@ -824,55 +893,73 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_float;
B : vector_float) return vector_bool_int;
+ ------------------
-- vec_vcmpgtfp --
+ ------------------
function vec_vcmpgtfp
(A : vector_float;
B : vector_float) return vector_bool_int;
+ ------------------
-- vec_vcmpgtsw --
+ ------------------
function vec_vcmpgtsw
(A : vector_signed_int;
B : vector_signed_int) return vector_bool_int;
+ ------------------
-- vec_vcmpgtuw --
+ ------------------
function vec_vcmpgtuw
(A : vector_unsigned_int;
B : vector_unsigned_int) return vector_bool_int;
+ ------------------
-- vec_vcmpgtsh --
+ ------------------
function vec_vcmpgtsh
(A : vector_signed_short;
B : vector_signed_short) return vector_bool_short;
+ ------------------
-- vec_vcmpgtuh --
+ ------------------
function vec_vcmpgtuh
(A : vector_unsigned_short;
B : vector_unsigned_short) return vector_bool_short;
+ ------------------
-- vec_vcmpgtsb --
+ ------------------
function vec_vcmpgtsb
(A : vector_signed_char;
B : vector_signed_char) return vector_bool_char;
+ ------------------
-- vec_vcmpgtub --
+ ------------------
function vec_vcmpgtub
(A : vector_unsigned_char;
B : vector_unsigned_char) return vector_bool_char;
+ ---------------
-- vec_cmple --
+ ---------------
function vec_cmple
(A : vector_float;
B : vector_float) return vector_bool_int;
+ ---------------
-- vec_cmplt --
+ ---------------
function vec_cmplt
(A : vector_unsigned_char;
@@ -902,46 +989,60 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_float;
B : vector_float) return vector_bool_int;
+ ---------------
-- vec_vcfsx --
+ ---------------
function vec_vcfsx
(A : vector_signed_int;
B : c_int) return vector_float
renames Low_Level_Vectors.vcfsx;
+ ---------------
-- vec_vcfux --
+ ---------------
function vec_vcfux
(A : vector_unsigned_int;
B : c_int) return vector_float
renames Low_Level_Vectors.vcfux;
+ ----------------
-- vec_vctsxs --
+ ----------------
function vec_vctsxs
(A : vector_float;
B : c_int) return vector_signed_int
renames Low_Level_Vectors.vctsxs;
+ ----------------
-- vec_vctuxs --
+ ----------------
function vec_vctuxs
(A : vector_float;
B : c_int) return vector_unsigned_int
renames Low_Level_Vectors.vctuxs;
+ -------------
-- vec_dss --
+ -------------
procedure vec_dss
(A : c_int)
renames Low_Level_Vectors.dss;
+ ----------------
-- vec_dssall --
+ ----------------
procedure vec_dssall
renames Low_Level_Vectors.dssall;
+ -------------
-- vec_dst --
+ -------------
procedure vec_dst
(A : const_vector_unsigned_char_ptr;
@@ -1042,11 +1143,12 @@ package GNAT.Altivec.Vector_Operations is
(A : const_float_ptr;
B : c_int;
C : c_int);
-
pragma Inline_Always (vec_dst);
pragma Convention (Intrinsic, vec_dst);
+ ---------------
-- vec_dstst --
+ ---------------
procedure vec_dstst
(A : const_vector_unsigned_char_ptr;
@@ -1147,11 +1249,12 @@ package GNAT.Altivec.Vector_Operations is
(A : const_float_ptr;
B : c_int;
C : c_int);
-
pragma Inline_Always (vec_dstst);
pragma Convention (Intrinsic, vec_dstst);
+ ----------------
-- vec_dststt --
+ ----------------
procedure vec_dststt
(A : const_vector_unsigned_char_ptr;
@@ -1252,11 +1355,12 @@ package GNAT.Altivec.Vector_Operations is
(A : const_float_ptr;
B : c_int;
C : c_int);
-
pragma Inline_Always (vec_dststt);
pragma Convention (Intrinsic, vec_dststt);
+ --------------
-- vec_dstt --
+ --------------
procedure vec_dstt
(A : const_vector_unsigned_char_ptr;
@@ -1357,21 +1461,26 @@ package GNAT.Altivec.Vector_Operations is
(A : const_float_ptr;
B : c_int;
C : c_int);
-
pragma Inline_Always (vec_dstt);
pragma Convention (Intrinsic, vec_dstt);
+ ---------------
-- vec_expte --
+ ---------------
function vec_expte
(A : vector_float) return vector_float;
+ ---------------
-- vec_floor --
+ ---------------
function vec_floor
(A : vector_float) return vector_float;
+ ------------
-- vec_ld --
+ ------------
function vec_ld
(A : c_long;
@@ -1453,7 +1562,9 @@ package GNAT.Altivec.Vector_Operations is
(A : c_long;
B : const_unsigned_char_ptr) return vector_unsigned_char;
+ -------------
-- vec_lde --
+ -------------
function vec_lde
(A : c_long;
@@ -1491,7 +1602,9 @@ package GNAT.Altivec.Vector_Operations is
(A : c_long;
B : const_unsigned_long_ptr) return vector_unsigned_int;
+ ---------------
-- vec_lvewx --
+ ---------------
function vec_lvewx
(A : c_long;
@@ -1513,7 +1626,9 @@ package GNAT.Altivec.Vector_Operations is
(A : c_long;
B : unsigned_long_ptr) return vector_unsigned_int;
+ ---------------
-- vec_lvehx --
+ ---------------
function vec_lvehx
(A : c_long;
@@ -1523,7 +1638,9 @@ package GNAT.Altivec.Vector_Operations is
(A : c_long;
B : unsigned_short_ptr) return vector_unsigned_short;
+ ---------------
-- vec_lvebx --
+ ---------------
function vec_lvebx
(A : c_long;
@@ -1533,7 +1650,9 @@ package GNAT.Altivec.Vector_Operations is
(A : c_long;
B : unsigned_char_ptr) return vector_unsigned_char;
+ -------------
-- vec_ldl --
+ -------------
function vec_ldl
(A : c_long;
@@ -1615,12 +1734,16 @@ package GNAT.Altivec.Vector_Operations is
(A : c_long;
B : const_unsigned_char_ptr) return vector_unsigned_char;
+ --------------
-- vec_loge --
+ --------------
function vec_loge
(A : vector_float) return vector_float;
+ --------------
-- vec_lvsl --
+ --------------
function vec_lvsl
(A : c_long;
@@ -1658,7 +1781,9 @@ package GNAT.Altivec.Vector_Operations is
(A : c_long;
B : constv_float_ptr) return vector_unsigned_char;
+ --------------
-- vec_lvsr --
+ --------------
function vec_lvsr
(A : c_long;
@@ -1696,21 +1821,27 @@ package GNAT.Altivec.Vector_Operations is
(A : c_long;
B : constv_float_ptr) return vector_unsigned_char;
+ --------------
-- vec_madd --
+ --------------
function vec_madd
(A : vector_float;
B : vector_float;
C : vector_float) return vector_float;
+ ---------------
-- vec_madds --
+ ---------------
function vec_madds
(A : vector_signed_short;
B : vector_signed_short;
C : vector_signed_short) return vector_signed_short;
+ -------------
-- vec_max --
+ -------------
function vec_max
(A : vector_bool_char;
@@ -1788,13 +1919,17 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_float;
B : vector_float) return vector_float;
+ ----------------
-- vec_vmaxfp --
+ ----------------
function vec_vmaxfp
(A : vector_float;
B : vector_float) return vector_float;
+ ----------------
-- vec_vmaxsw --
+ ----------------
function vec_vmaxsw
(A : vector_bool_int;
@@ -1808,7 +1943,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_signed_int;
B : vector_signed_int) return vector_signed_int;
+ ----------------
-- vec_vmaxuw --
+ ----------------
function vec_vmaxuw
(A : vector_bool_int;
@@ -1822,7 +1959,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_int;
B : vector_unsigned_int) return vector_unsigned_int;
+ ----------------
-- vec_vmaxsh --
+ ----------------
function vec_vmaxsh
(A : vector_bool_short;
@@ -1836,7 +1975,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_signed_short;
B : vector_signed_short) return vector_signed_short;
+ ----------------
-- vec_vmaxuh --
+ ----------------
function vec_vmaxuh
(A : vector_bool_short;
@@ -1850,7 +1991,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_short;
B : vector_unsigned_short) return vector_unsigned_short;
+ ----------------
-- vec_vmaxsb --
+ ----------------
function vec_vmaxsb
(A : vector_bool_char;
@@ -1864,7 +2007,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_signed_char;
B : vector_signed_char) return vector_signed_char;
+ ----------------
-- vec_vmaxub --
+ ----------------
function vec_vmaxub
(A : vector_bool_char;
@@ -1878,7 +2023,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_char;
B : vector_unsigned_char) return vector_unsigned_char;
+ ----------------
-- vec_mergeh --
+ ----------------
function vec_mergeh
(A : vector_bool_char;
@@ -1924,7 +2071,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_int;
B : vector_unsigned_int) return vector_unsigned_int;
+ ----------------
-- vec_vmrghw --
+ ----------------
function vec_vmrghw
(A : vector_float;
@@ -1942,7 +2091,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_int;
B : vector_unsigned_int) return vector_unsigned_int;
+ ----------------
-- vec_vmrghh --
+ ----------------
function vec_vmrghh
(A : vector_bool_short;
@@ -1960,7 +2111,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_pixel;
B : vector_pixel) return vector_pixel;
+ ----------------
-- vec_vmrghb --
+ ----------------
function vec_vmrghb
(A : vector_bool_char;
@@ -1974,7 +2127,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_char;
B : vector_unsigned_char) return vector_unsigned_char;
+ ----------------
-- vec_mergel --
+ ----------------
function vec_mergel
(A : vector_bool_char;
@@ -2020,7 +2175,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_int;
B : vector_unsigned_int) return vector_unsigned_int;
+ ----------------
-- vec_vmrglw --
+ ----------------
function vec_vmrglw
(A : vector_float;
@@ -2038,7 +2195,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_bool_int;
B : vector_bool_int) return vector_bool_int;
+ ----------------
-- vec_vmrglh --
+ ----------------
function vec_vmrglh
(A : vector_bool_short;
@@ -2056,7 +2215,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_pixel;
B : vector_pixel) return vector_pixel;
+ ----------------
-- vec_vmrglb --
+ ----------------
function vec_vmrglb
(A : vector_bool_char;
@@ -2070,11 +2231,15 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_char;
B : vector_unsigned_char) return vector_unsigned_char;
+ ----------------
-- vec_mfvscr --
+ ----------------
function vec_mfvscr return vector_unsigned_short;
+ -------------
-- vec_min --
+ -------------
function vec_min
(A : vector_bool_char;
@@ -2152,13 +2317,17 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_float;
B : vector_float) return vector_float;
+ ----------------
-- vec_vminfp --
+ ----------------
function vec_vminfp
(A : vector_float;
B : vector_float) return vector_float;
+ ----------------
-- vec_vminsw --
+ ----------------
function vec_vminsw
(A : vector_bool_int;
@@ -2172,7 +2341,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_signed_int;
B : vector_signed_int) return vector_signed_int;
+ ----------------
-- vec_vminuw --
+ ----------------
function vec_vminuw
(A : vector_bool_int;
@@ -2186,7 +2357,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_int;
B : vector_unsigned_int) return vector_unsigned_int;
+ ----------------
-- vec_vminsh --
+ ----------------
function vec_vminsh
(A : vector_bool_short;
@@ -2200,7 +2373,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_signed_short;
B : vector_signed_short) return vector_signed_short;
+ ----------------
-- vec_vminuh --
+ ----------------
function vec_vminuh
(A : vector_bool_short;
@@ -2214,7 +2389,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_short;
B : vector_unsigned_short) return vector_unsigned_short;
+ ----------------
-- vec_vminsb --
+ ----------------
function vec_vminsb
(A : vector_bool_char;
@@ -2228,7 +2405,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_signed_char;
B : vector_signed_char) return vector_signed_char;
+ ----------------
-- vec_vminub --
+ ----------------
function vec_vminub
(A : vector_bool_char;
@@ -2242,7 +2421,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_char;
B : vector_unsigned_char) return vector_unsigned_char;
+ ---------------
-- vec_mladd --
+ ---------------
function vec_mladd
(A : vector_signed_short;
@@ -2264,14 +2445,18 @@ package GNAT.Altivec.Vector_Operations is
B : vector_unsigned_short;
C : vector_unsigned_short) return vector_unsigned_short;
+ ----------------
-- vec_mradds --
+ ----------------
function vec_mradds
(A : vector_signed_short;
B : vector_signed_short;
C : vector_signed_short) return vector_signed_short;
+ --------------
-- vec_msum --
+ --------------
function vec_msum
(A : vector_unsigned_char;
@@ -2293,35 +2478,45 @@ package GNAT.Altivec.Vector_Operations is
B : vector_signed_short;
C : vector_signed_int) return vector_signed_int;
+ ------------------
-- vec_vmsumshm --
+ ------------------
function vec_vmsumshm
(A : vector_signed_short;
B : vector_signed_short;
C : vector_signed_int) return vector_signed_int;
+ ------------------
-- vec_vmsumuhm --
+ ------------------
function vec_vmsumuhm
(A : vector_unsigned_short;
B : vector_unsigned_short;
C : vector_unsigned_int) return vector_unsigned_int;
+ ------------------
-- vec_vmsummbm --
+ ------------------
function vec_vmsummbm
(A : vector_signed_char;
B : vector_unsigned_char;
C : vector_signed_int) return vector_signed_int;
+ ------------------
-- vec_vmsumubm --
+ ------------------
function vec_vmsumubm
(A : vector_unsigned_char;
B : vector_unsigned_char;
C : vector_unsigned_int) return vector_unsigned_int;
+ ---------------
-- vec_msums --
+ ---------------
function vec_msums
(A : vector_unsigned_short;
@@ -2333,21 +2528,23 @@ package GNAT.Altivec.Vector_Operations is
B : vector_signed_short;
C : vector_signed_int) return vector_signed_int;
- -- vec_vmsumshs --
-
function vec_vmsumshs
(A : vector_signed_short;
B : vector_signed_short;
C : vector_signed_int) return vector_signed_int;
+ ------------------
-- vec_vmsumuhs --
+ ------------------
function vec_vmsumuhs
(A : vector_unsigned_short;
B : vector_unsigned_short;
C : vector_unsigned_int) return vector_unsigned_int;
+ ----------------
-- vec_mtvscr --
+ ----------------
procedure vec_mtvscr
(A : vector_signed_int);
@@ -2379,7 +2576,9 @@ package GNAT.Altivec.Vector_Operations is
procedure vec_mtvscr
(A : vector_bool_char);
+ --------------
-- vec_mule --
+ --------------
function vec_mule
(A : vector_unsigned_char;
@@ -2397,31 +2596,41 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_signed_short;
B : vector_signed_short) return vector_signed_int;
+ -----------------
-- vec_vmulesh --
+ -----------------
function vec_vmulesh
(A : vector_signed_short;
B : vector_signed_short) return vector_signed_int;
+ -----------------
-- vec_vmuleuh --
+ -----------------
function vec_vmuleuh
(A : vector_unsigned_short;
B : vector_unsigned_short) return vector_unsigned_int;
+ -----------------
-- vec_vmulesb --
+ -----------------
function vec_vmulesb
(A : vector_signed_char;
B : vector_signed_char) return vector_signed_short;
+ -----------------
-- vec_vmuleub --
+ -----------------
function vec_vmuleub
(A : vector_unsigned_char;
B : vector_unsigned_char) return vector_unsigned_short;
+ --------------
-- vec_mulo --
+ --------------
function vec_mulo
(A : vector_unsigned_char;
@@ -2439,38 +2648,50 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_signed_short;
B : vector_signed_short) return vector_signed_int;
+ -----------------
-- vec_vmulosh --
+ -----------------
function vec_vmulosh
(A : vector_signed_short;
B : vector_signed_short) return vector_signed_int;
+ -----------------
-- vec_vmulouh --
+ -----------------
function vec_vmulouh
(A : vector_unsigned_short;
B : vector_unsigned_short) return vector_unsigned_int;
+ -----------------
-- vec_vmulosb --
+ -----------------
function vec_vmulosb
(A : vector_signed_char;
B : vector_signed_char) return vector_signed_short;
+ -----------------
-- vec_vmuloub --
+ -----------------
function vec_vmuloub
(A : vector_unsigned_char;
B : vector_unsigned_char) return vector_unsigned_short;
+ ---------------
-- vec_nmsub --
+ ---------------
function vec_nmsub
(A : vector_float;
B : vector_float;
C : vector_float) return vector_float;
+ -------------
-- vec_nor --
+ -------------
function vec_nor
(A : vector_float;
@@ -2512,7 +2733,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_bool_char;
B : vector_bool_char) return vector_bool_char;
+ ------------
-- vec_or --
+ ------------
function vec_or
(A : vector_float;
@@ -2610,7 +2833,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_char;
B : vector_unsigned_char) return vector_unsigned_char;
+ --------------
-- vec_pack --
+ --------------
function vec_pack
(A : vector_signed_short;
@@ -2636,7 +2861,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_bool_int;
B : vector_bool_int) return vector_bool_short;
+ -----------------
-- vec_vpkuwum --
+ -----------------
function vec_vpkuwum
(A : vector_bool_int;
@@ -2650,7 +2877,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_int;
B : vector_unsigned_int) return vector_unsigned_short;
+ -----------------
-- vec_vpkuhum --
+ -----------------
function vec_vpkuhum
(A : vector_bool_short;
@@ -2664,13 +2893,17 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_short;
B : vector_unsigned_short) return vector_unsigned_char;
+ ----------------
-- vec_packpx --
+ ----------------
function vec_packpx
(A : vector_unsigned_int;
B : vector_unsigned_int) return vector_pixel;
+ ---------------
-- vec_packs --
+ ---------------
function vec_packs
(A : vector_unsigned_short;
@@ -2688,31 +2921,41 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_signed_int;
B : vector_signed_int) return vector_signed_short;
+ -----------------
-- vec_vpkswss --
+ -----------------
function vec_vpkswss
(A : vector_signed_int;
B : vector_signed_int) return vector_signed_short;
+ -----------------
-- vec_vpkuwus --
+ -----------------
function vec_vpkuwus
(A : vector_unsigned_int;
B : vector_unsigned_int) return vector_unsigned_short;
+ -----------------
-- vec_vpkshss --
+ -----------------
function vec_vpkshss
(A : vector_signed_short;
B : vector_signed_short) return vector_signed_char;
+ -----------------
-- vec_vpkuhus --
+ -----------------
function vec_vpkuhus
(A : vector_unsigned_short;
B : vector_unsigned_short) return vector_unsigned_char;
+ ----------------
-- vec_packsu --
+ ----------------
function vec_packsu
(A : vector_unsigned_short;
@@ -2730,19 +2973,25 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_signed_int;
B : vector_signed_int) return vector_unsigned_short;
+ -----------------
-- vec_vpkswus --
+ -----------------
function vec_vpkswus
(A : vector_signed_int;
B : vector_signed_int) return vector_unsigned_short;
+ -----------------
-- vec_vpkshus --
+ -----------------
function vec_vpkshus
(A : vector_signed_short;
B : vector_signed_short) return vector_unsigned_char;
+ --------------
-- vec_perm --
+ --------------
function vec_perm
(A : vector_float;
@@ -2799,12 +3048,16 @@ package GNAT.Altivec.Vector_Operations is
B : vector_bool_char;
C : vector_unsigned_char) return vector_bool_char;
+ ------------
-- vec_re --
+ ------------
function vec_re
(A : vector_float) return vector_float;
+ ------------
-- vec_rl --
+ ------------
function vec_rl
(A : vector_signed_char;
@@ -2830,7 +3083,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_int;
B : vector_unsigned_int) return vector_unsigned_int;
+ --------------
-- vec_vrlw --
+ --------------
function vec_vrlw
(A : vector_signed_int;
@@ -2840,7 +3095,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_int;
B : vector_unsigned_int) return vector_unsigned_int;
+ --------------
-- vec_vrlh --
+ --------------
function vec_vrlh
(A : vector_signed_short;
@@ -2850,7 +3107,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_short;
B : vector_unsigned_short) return vector_unsigned_short;
+ --------------
-- vec_vrlb --
+ --------------
function vec_vrlb
(A : vector_signed_char;
@@ -2860,17 +3119,23 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_char;
B : vector_unsigned_char) return vector_unsigned_char;
+ ---------------
-- vec_round --
+ ---------------
function vec_round
(A : vector_float) return vector_float;
+ ----------------
-- vec_rsqrte --
+ ----------------
function vec_rsqrte
(A : vector_float) return vector_float;
+ -------------
-- vec_sel --
+ -------------
function vec_sel
(A : vector_float;
@@ -2972,7 +3237,9 @@ package GNAT.Altivec.Vector_Operations is
B : vector_bool_char;
C : vector_unsigned_char) return vector_bool_char;
+ ------------
-- vec_sl --
+ ------------
function vec_sl
(A : vector_signed_char;
@@ -2998,7 +3265,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_int;
B : vector_unsigned_int) return vector_unsigned_int;
+ --------------
-- vec_vslw --
+ --------------
function vec_vslw
(A : vector_signed_int;
@@ -3008,7 +3277,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_int;
B : vector_unsigned_int) return vector_unsigned_int;
+ --------------
-- vec_vslh --
+ --------------
function vec_vslh
(A : vector_signed_short;
@@ -3018,7 +3289,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_short;
B : vector_unsigned_short) return vector_unsigned_short;
+ --------------
-- vec_vslb --
+ --------------
function vec_vslb
(A : vector_signed_char;
@@ -3028,7 +3301,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_char;
B : vector_unsigned_char) return vector_unsigned_char;
+ -------------
-- vec_sld --
+ -------------
function vec_sld
(A : vector_unsigned_int;
@@ -3064,7 +3339,6 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_bool_char;
B : vector_bool_char;
C : c_int) return vector_bool_char;
-
pragma Inline_Always (vec_sld);
pragma Convention (Intrinsic, vec_sld);
@@ -3092,7 +3366,9 @@ package GNAT.Altivec.Vector_Operations is
C : c_int) return vector_signed_char
renames Low_Level_Vectors.vsldoi_16qi;
+ -------------
-- vec_sll --
+ -------------
function vec_sll
(A : vector_signed_int;
@@ -3214,7 +3490,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_bool_char;
B : vector_unsigned_char) return vector_bool_char;
+ -------------
-- vec_slo --
+ -------------
function vec_slo
(A : vector_float;
@@ -3280,7 +3558,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_char;
B : vector_unsigned_char) return vector_unsigned_char;
+ ----------------
-- vec_vspltw --
+ ----------------
function vec_vspltw
(A : vector_float;
@@ -3293,7 +3573,6 @@ package GNAT.Altivec.Vector_Operations is
function vec_vspltw
(A : vector_bool_int;
B : c_int) return vector_bool_int;
-
pragma Inline_Always (vec_vspltw);
pragma Convention (Intrinsic, vec_vspltw);
@@ -3302,7 +3581,9 @@ package GNAT.Altivec.Vector_Operations is
B : c_int) return vector_signed_int
renames Low_Level_Vectors.vspltw;
+ ----------------
-- vec_vsplth --
+ ----------------
function vec_vsplth
(A : vector_bool_short;
@@ -3315,7 +3596,6 @@ package GNAT.Altivec.Vector_Operations is
function vec_vsplth
(A : vector_pixel;
B : c_int) return vector_pixel;
-
pragma Inline_Always (vec_vsplth);
pragma Convention (Intrinsic, vec_vsplth);
@@ -3324,7 +3604,9 @@ package GNAT.Altivec.Vector_Operations is
B : c_int) return vector_signed_short
renames Low_Level_Vectors.vsplth;
+ ----------------
-- vec_vspltb --
+ ----------------
function vec_vspltb
(A : vector_unsigned_char;
@@ -3333,7 +3615,6 @@ package GNAT.Altivec.Vector_Operations is
function vec_vspltb
(A : vector_bool_char;
B : c_int) return vector_bool_char;
-
pragma Inline_Always (vec_vspltb);
pragma Convention (Intrinsic, vec_vspltb);
@@ -3342,25 +3623,33 @@ package GNAT.Altivec.Vector_Operations is
B : c_int) return vector_signed_char
renames Low_Level_Vectors.vspltb;
+ ------------------
-- vec_vspltisb --
+ ------------------
function vec_vspltisb
(A : c_int) return vector_signed_char
renames Low_Level_Vectors.vspltisb;
+ ------------------
-- vec_vspltish --
+ ------------------
function vec_vspltish
(A : c_int) return vector_signed_short
renames Low_Level_Vectors.vspltish;
+ ------------------
-- vec_vspltisw --
+ ------------------
function vec_vspltisw
(A : c_int) return vector_signed_int
renames Low_Level_Vectors.vspltisw;
+ ------------
-- vec_sr --
+ ------------
function vec_sr
(A : vector_signed_char;
@@ -3386,7 +3675,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_int;
B : vector_unsigned_int) return vector_unsigned_int;
+ --------------
-- vec_vsrw --
+ --------------
function vec_vsrw
(A : vector_signed_int;
@@ -3396,7 +3687,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_int;
B : vector_unsigned_int) return vector_unsigned_int;
+ --------------
-- vec_vsrh --
+ --------------
function vec_vsrh
(A : vector_signed_short;
@@ -3406,7 +3699,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_short;
B : vector_unsigned_short) return vector_unsigned_short;
+ --------------
-- vec_vsrb --
+ --------------
function vec_vsrb
(A : vector_signed_char;
@@ -3416,7 +3711,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_char;
B : vector_unsigned_char) return vector_unsigned_char;
+ -------------
-- vec_sra --
+ -------------
function vec_sra
(A : vector_signed_char;
@@ -3442,7 +3739,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_int;
B : vector_unsigned_int) return vector_unsigned_int;
+ ---------------
-- vec_vsraw --
+ ---------------
function vec_vsraw
(A : vector_signed_int;
@@ -3452,8 +3751,6 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_int;
B : vector_unsigned_int) return vector_unsigned_int;
- -- vec_vsrah --
-
function vec_vsrah
(A : vector_signed_short;
B : vector_unsigned_short) return vector_signed_short;
@@ -3462,8 +3759,6 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_short;
B : vector_unsigned_short) return vector_unsigned_short;
- -- vec_vsrab --
-
function vec_vsrab
(A : vector_signed_char;
B : vector_unsigned_char) return vector_signed_char;
@@ -3472,7 +3767,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_char;
B : vector_unsigned_char) return vector_unsigned_char;
+ -------------
-- vec_srl --
+ -------------
function vec_srl
(A : vector_signed_int;
@@ -3594,8 +3891,6 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_bool_char;
B : vector_unsigned_char) return vector_bool_char;
- -- vec_sro --
-
function vec_sro
(A : vector_float;
B : vector_signed_char) return vector_float;
@@ -3660,8 +3955,6 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_char;
B : vector_unsigned_char) return vector_unsigned_char;
- -- vec_st --
-
procedure vec_st
(A : vector_float;
B : c_int;
@@ -3792,7 +4085,9 @@ package GNAT.Altivec.Vector_Operations is
B : c_int;
C : signed_char_ptr);
+ -------------
-- vec_ste --
+ -------------
procedure vec_ste
(A : vector_signed_char;
@@ -3869,7 +4164,9 @@ package GNAT.Altivec.Vector_Operations is
B : c_int;
C : unsigned_int_ptr);
+ ----------------
-- vec_stvewx --
+ ----------------
procedure vec_stvewx
(A : vector_float;
@@ -3896,8 +4193,6 @@ package GNAT.Altivec.Vector_Operations is
B : c_int;
C : unsigned_int_ptr);
- -- vec_stvehx --
-
procedure vec_stvehx
(A : vector_signed_short;
B : c_int;
@@ -3928,8 +4223,6 @@ package GNAT.Altivec.Vector_Operations is
B : c_int;
C : unsigned_short_ptr);
- -- vec_stvebx --
-
procedure vec_stvebx
(A : vector_signed_char;
B : c_int;
@@ -3950,8 +4243,6 @@ package GNAT.Altivec.Vector_Operations is
B : c_int;
C : unsigned_char_ptr);
- -- vec_stl --
-
procedure vec_stl
(A : vector_float;
B : c_int;
@@ -4082,7 +4373,9 @@ package GNAT.Altivec.Vector_Operations is
B : c_int;
C : signed_char_ptr);
+ -------------
-- vec_sub --
+ -------------
function vec_sub
(A : vector_bool_char;
@@ -4160,13 +4453,17 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_float;
B : vector_float) return vector_float;
+ ----------------
-- vec_vsubfp --
+ ----------------
function vec_vsubfp
(A : vector_float;
B : vector_float) return vector_float;
+ -----------------
-- vec_vsubuwm --
+ -----------------
function vec_vsubuwm
(A : vector_bool_int;
@@ -4192,7 +4489,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_int;
B : vector_unsigned_int) return vector_unsigned_int;
+ -----------------
-- vec_vsubuhm --
+ -----------------
function vec_vsubuhm
(A : vector_bool_short;
@@ -4218,7 +4517,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_short;
B : vector_unsigned_short) return vector_unsigned_short;
+ -----------------
-- vec_vsububm --
+ -----------------
function vec_vsububm
(A : vector_bool_char;
@@ -4244,13 +4545,17 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_char;
B : vector_unsigned_char) return vector_unsigned_char;
+ --------------
-- vec_subc --
+ --------------
function vec_subc
(A : vector_unsigned_int;
B : vector_unsigned_int) return vector_unsigned_int;
+ --------------
-- vec_subs --
+ --------------
function vec_subs
(A : vector_bool_char;
@@ -4324,7 +4629,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_signed_int;
B : vector_signed_int) return vector_signed_int;
+ -----------------
-- vec_vsubsws --
+ -----------------
function vec_vsubsws
(A : vector_bool_int;
@@ -4338,7 +4645,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_signed_int;
B : vector_signed_int) return vector_signed_int;
+ -----------------
-- vec_vsubuws --
+ -----------------
function vec_vsubuws
(A : vector_bool_int;
@@ -4352,7 +4661,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_int;
B : vector_unsigned_int) return vector_unsigned_int;
+ -----------------
-- vec_vsubshs --
+ -----------------
function vec_vsubshs
(A : vector_bool_short;
@@ -4366,7 +4677,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_signed_short;
B : vector_signed_short) return vector_signed_short;
+ -----------------
-- vec_vsubuhs --
+ -----------------
function vec_vsubuhs
(A : vector_bool_short;
@@ -4380,7 +4693,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_short;
B : vector_unsigned_short) return vector_unsigned_short;
+ -----------------
-- vec_vsubsbs --
+ -----------------
function vec_vsubsbs
(A : vector_bool_char;
@@ -4394,7 +4709,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_signed_char;
B : vector_signed_char) return vector_signed_char;
+ -----------------
-- vec_vsububs --
+ -----------------
function vec_vsububs
(A : vector_bool_char;
@@ -4408,7 +4725,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_char;
B : vector_unsigned_char) return vector_unsigned_char;
+ ---------------
-- vec_sum4s --
+ ---------------
function vec_sum4s
(A : vector_unsigned_char;
@@ -4422,43 +4741,49 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_signed_short;
B : vector_signed_int) return vector_signed_int;
+ ------------------
-- vec_vsum4shs --
+ ------------------
function vec_vsum4shs
(A : vector_signed_short;
B : vector_signed_int) return vector_signed_int;
+ ------------------
-- vec_vsum4sbs --
+ ------------------
function vec_vsum4sbs
(A : vector_signed_char;
B : vector_signed_int) return vector_signed_int;
+ ------------------
-- vec_vsum4ubs --
+ ------------------
function vec_vsum4ubs
(A : vector_unsigned_char;
B : vector_unsigned_int) return vector_unsigned_int;
+ ---------------
-- vec_sum2s --
+ ---------------
function vec_sum2s
(A : vector_signed_int;
B : vector_signed_int) return vector_signed_int;
+ --------------
-- vec_sums --
+ --------------
function vec_sums
(A : vector_signed_int;
B : vector_signed_int) return vector_signed_int;
- -- vec_trunc --
-
function vec_trunc
(A : vector_float) return vector_float;
- -- vec_unpackh --
-
function vec_unpackh
(A : vector_signed_char) return vector_signed_short;
@@ -4474,29 +4799,21 @@ package GNAT.Altivec.Vector_Operations is
function vec_unpackh
(A : vector_pixel) return vector_unsigned_int;
- -- vec_vupkhsh --
-
function vec_vupkhsh
(A : vector_bool_short) return vector_bool_int;
function vec_vupkhsh
(A : vector_signed_short) return vector_signed_int;
- -- vec_vupkhpx --
-
function vec_vupkhpx
(A : vector_pixel) return vector_unsigned_int;
- -- vec_vupkhsb --
-
function vec_vupkhsb
(A : vector_bool_char) return vector_bool_short;
function vec_vupkhsb
(A : vector_signed_char) return vector_signed_short;
- -- vec_unpackl --
-
function vec_unpackl
(A : vector_signed_char) return vector_signed_short;
@@ -4512,12 +4829,12 @@ package GNAT.Altivec.Vector_Operations is
function vec_unpackl
(A : vector_bool_short) return vector_bool_int;
- -- vec_vupklpx --
-
function vec_vupklpx
(A : vector_pixel) return vector_unsigned_int;
- -- vec_upklsh --
+ -----------------
+ -- vec_vupklsh --
+ -----------------
function vec_vupklsh
(A : vector_bool_short) return vector_bool_int;
@@ -4525,7 +4842,9 @@ package GNAT.Altivec.Vector_Operations is
function vec_vupklsh
(A : vector_signed_short) return vector_signed_int;
+ -----------------
-- vec_vupklsb --
+ -----------------
function vec_vupklsb
(A : vector_bool_char) return vector_bool_short;
@@ -4533,7 +4852,9 @@ package GNAT.Altivec.Vector_Operations is
function vec_vupklsb
(A : vector_signed_char) return vector_signed_short;
+ -------------
-- vec_xor --
+ -------------
function vec_xor
(A : vector_float;
@@ -4631,10 +4952,6 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_unsigned_char;
B : vector_unsigned_char) return vector_unsigned_char;
- ----------------------------------
- -- [PIM-4.5 AltiVec predicates] --
- ----------------------------------
-
-- vec_all_eq --
function vec_all_eq
@@ -4729,7 +5046,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_float;
B : vector_float) return c_int;
+ ----------------
-- vec_all_ge --
+ ----------------
function vec_all_ge
(A : vector_bool_char;
@@ -4807,7 +5126,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_float;
B : vector_float) return c_int;
+ ----------------
-- vec_all_gt --
+ ----------------
function vec_all_gt
(A : vector_bool_char;
@@ -4885,13 +5206,17 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_float;
B : vector_float) return c_int;
+ ----------------
-- vec_all_in --
+ ----------------
function vec_all_in
(A : vector_float;
B : vector_float) return c_int;
+ ----------------
-- vec_all_le --
+ ----------------
function vec_all_le
(A : vector_bool_char;
@@ -4969,7 +5294,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_float;
B : vector_float) return c_int;
+ ----------------
-- vec_all_lt --
+ ----------------
function vec_all_lt
(A : vector_bool_char;
@@ -5047,12 +5374,16 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_float;
B : vector_float) return c_int;
+ -----------------
-- vec_all_nan --
+ -----------------
function vec_all_nan
(A : vector_float) return c_int;
+ ----------------
-- vec_all_ne --
+ ----------------
function vec_all_ne
(A : vector_signed_char;
@@ -5146,36 +5477,48 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_float;
B : vector_float) return c_int;
+ -----------------
-- vec_all_nge --
+ -----------------
function vec_all_nge
(A : vector_float;
B : vector_float) return c_int;
+ -----------------
-- vec_all_ngt --
+ -----------------
function vec_all_ngt
(A : vector_float;
B : vector_float) return c_int;
+ -----------------
-- vec_all_nle --
+ -----------------
function vec_all_nle
(A : vector_float;
B : vector_float) return c_int;
+ -----------------
-- vec_all_nlt --
+ -----------------
function vec_all_nlt
(A : vector_float;
B : vector_float) return c_int;
+ ---------------------
-- vec_all_numeric --
+ ---------------------
function vec_all_numeric
(A : vector_float) return c_int;
+ ----------------
-- vec_any_eq --
+ ----------------
function vec_any_eq
(A : vector_signed_char;
@@ -5269,7 +5612,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_float;
B : vector_float) return c_int;
+ ----------------
-- vec_any_ge --
+ ----------------
function vec_any_ge
(A : vector_signed_char;
@@ -5347,7 +5692,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_float;
B : vector_float) return c_int;
+ ----------------
-- vec_any_gt --
+ ----------------
function vec_any_gt
(A : vector_bool_char;
@@ -5425,8 +5772,6 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_float;
B : vector_float) return c_int;
- -- vec_any_le --
-
function vec_any_le
(A : vector_bool_char;
B : vector_unsigned_char) return c_int;
@@ -5503,8 +5848,6 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_float;
B : vector_float) return c_int;
- -- vec_any_lt --
-
function vec_any_lt
(A : vector_bool_char;
B : vector_unsigned_char) return c_int;
@@ -5581,13 +5924,9 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_float;
B : vector_float) return c_int;
- -- vec_any_nan --
-
function vec_any_nan
(A : vector_float) return c_int;
- -- vec_any_ne --
-
function vec_any_ne
(A : vector_signed_char;
B : vector_bool_char) return c_int;
@@ -5680,65 +6019,53 @@ package GNAT.Altivec.Vector_Operations is
(A : vector_float;
B : vector_float) return c_int;
+ -----------------
-- vec_any_nge --
+ -----------------
function vec_any_nge
(A : vector_float;
B : vector_float) return c_int;
- -- vec_any_ngt --
-
function vec_any_ngt
(A : vector_float;
B : vector_float) return c_int;
- -- vec_any_nle --
-
function vec_any_nle
(A : vector_float;
B : vector_float) return c_int;
- -- vec_any_nlt --
-
function vec_any_nlt
(A : vector_float;
B : vector_float) return c_int;
- -- vec_any_numeric --
-
function vec_any_numeric
(A : vector_float) return c_int;
- -- vec_any_out --
-
function vec_any_out
(A : vector_float;
B : vector_float) return c_int;
- -------------------------------------------
- -- Straight overloads of routines aboves --
- -------------------------------------------
-
- -- vec_splat_s8 --
-
function vec_splat_s8
(A : c_int) return vector_signed_char
renames vec_vspltisb;
+ -------------------
-- vec_splat_s16 --
+ -------------------
function vec_splat_s16
(A : c_int) return vector_signed_short
renames vec_vspltish;
+ -------------------
-- vec_splat_s32 --
+ -------------------
function vec_splat_s32
(A : c_int) return vector_signed_int
renames vec_vspltisw;
- -- vec_splat --
-
function vec_splat
(A : vector_signed_char;
B : c_int) return vector_signed_char
@@ -5794,31 +6121,36 @@ package GNAT.Altivec.Vector_Operations is
B : c_int) return vector_bool_int
renames vec_vspltw;
+ ------------------
-- vec_splat_u8 --
+ ------------------
function vec_splat_u8
(A : c_int) return vector_unsigned_char;
-
pragma Inline_Always (vec_splat_u8);
pragma Convention (Intrinsic, vec_splat_u8);
+ -------------------
-- vec_splat_u16 --
+ -------------------
function vec_splat_u16
(A : c_int) return vector_unsigned_short;
-
pragma Inline_Always (vec_splat_u16);
pragma Convention (Intrinsic, vec_splat_u16);
+ -------------------
-- vec_splat_u32 --
+ -------------------
function vec_splat_u32
(A : c_int) return vector_unsigned_int;
-
pragma Inline_Always (vec_splat_u32);
pragma Convention (Intrinsic, vec_splat_u32);
+ -------------
-- vec_ctf --
+ -------------
function vec_ctf
(A : vector_unsigned_int;
@@ -5830,29 +6162,25 @@ package GNAT.Altivec.Vector_Operations is
B : c_int) return vector_float
renames vec_vcfsx;
+ -------------
-- vec_cts --
+ -------------
function vec_cts
(A : vector_float;
B : c_int) return vector_signed_int
renames vec_vctsxs;
- -- vec_ctu --
-
function vec_ctu
(A : vector_float;
B : c_int) return vector_unsigned_int
renames vec_vctuxs;
- -- vec_vaddcuw --
-
function vec_vaddcuw
(A : vector_unsigned_int;
B : vector_unsigned_int) return vector_unsigned_int
renames vec_addc;
- -- vec_vand --
-
function vec_vand
(A : vector_float;
B : vector_float) return vector_float
@@ -5973,7 +6301,9 @@ package GNAT.Altivec.Vector_Operations is
B : vector_unsigned_char) return vector_unsigned_char
renames vec_and;
+ ---------------
-- vec_vandc --
+ ---------------
function vec_vandc
(A : vector_float;
@@ -6095,40 +6425,40 @@ package GNAT.Altivec.Vector_Operations is
B : vector_unsigned_char) return vector_unsigned_char
renames vec_andc;
+ ---------------
-- vec_vrfip --
+ ---------------
function vec_vrfip
(A : vector_float) return vector_float
renames vec_ceil;
+ -----------------
-- vec_vcmpbfp --
+ -----------------
function vec_vcmpbfp
(A : vector_float;
B : vector_float) return vector_signed_int
renames vec_cmpb;
- -- vec_vcmpgefp --
-
function vec_vcmpgefp
(A : vector_float;
B : vector_float) return vector_bool_int
renames vec_cmpge;
- -- vec_vexptefp --
-
function vec_vexptefp
(A : vector_float) return vector_float
renames vec_expte;
+ ---------------
-- vec_vrfim --
+ ---------------
function vec_vrfim
(A : vector_float) return vector_float
renames vec_floor;
- -- vec_lvx --
-
function vec_lvx
(A : c_long;
B : const_vector_float_ptr) return vector_float
@@ -6229,8 +6559,6 @@ package GNAT.Altivec.Vector_Operations is
B : const_unsigned_char_ptr) return vector_unsigned_char
renames vec_ld;
- -- vec_lvxl --
-
function vec_lvxl
(A : c_long;
B : const_vector_float_ptr) return vector_float
@@ -6331,13 +6659,13 @@ package GNAT.Altivec.Vector_Operations is
B : const_unsigned_char_ptr) return vector_unsigned_char
renames vec_ldl;
- -- vec_vlogefp --
-
function vec_vlogefp
(A : vector_float) return vector_float
renames vec_loge;
+ -----------------
-- vec_vmaddfp --
+ -----------------
function vec_vmaddfp
(A : vector_float;
@@ -6345,7 +6673,9 @@ package GNAT.Altivec.Vector_Operations is
C : vector_float) return vector_float
renames vec_madd;
+ -------------------
-- vec_vmhaddshs --
+ -------------------
function vec_vmhaddshs
(A : vector_signed_short;
@@ -6353,7 +6683,9 @@ package GNAT.Altivec.Vector_Operations is
C : vector_signed_short) return vector_signed_short
renames vec_madds;
+ -------------------
-- vec_vmladduhm --
+ -------------------
function vec_vmladduhm
(A : vector_signed_short;
@@ -6379,7 +6711,9 @@ package GNAT.Altivec.Vector_Operations is
C : vector_unsigned_short) return vector_unsigned_short
renames vec_mladd;
+ --------------------
-- vec_vmhraddshs --
+ --------------------
function vec_vmhraddshs
(A : vector_signed_short;
@@ -6387,7 +6721,9 @@ package GNAT.Altivec.Vector_Operations is
C : vector_signed_short) return vector_signed_short
renames vec_mradds;
+ ------------------
-- vec_vnmsubfp --
+ ------------------
function vec_vnmsubfp
(A : vector_float;
@@ -6395,7 +6731,9 @@ package GNAT.Altivec.Vector_Operations is
C : vector_float) return vector_float
renames vec_nmsub;
+ --------------
-- vec_vnor --
+ --------------
function vec_vnor
(A : vector_float;
@@ -6447,7 +6785,9 @@ package GNAT.Altivec.Vector_Operations is
B : vector_bool_char) return vector_bool_char
renames vec_nor;
+ -------------
-- vec_vor --
+ -------------
function vec_vor
(A : vector_float;
@@ -6569,14 +6909,18 @@ package GNAT.Altivec.Vector_Operations is
B : vector_unsigned_char) return vector_unsigned_char
renames vec_or;
+ ---------------
-- vec_vpkpx --
+ ---------------
function vec_vpkpx
(A : vector_unsigned_int;
B : vector_unsigned_int) return vector_pixel
renames vec_packpx;
+ ---------------
-- vec_vperm --
+ ---------------
function vec_vperm
(A : vector_float;
@@ -6644,26 +6988,26 @@ package GNAT.Altivec.Vector_Operations is
C : vector_unsigned_char) return vector_bool_char
renames vec_perm;
+ ---------------
-- vec_vrefp --
+ ---------------
function vec_vrefp
(A : vector_float) return vector_float
renames vec_re;
+ ---------------
-- vec_vrfin --
+ ---------------
function vec_vrfin
(A : vector_float) return vector_float
renames vec_round;
- -- vec_vrsqrtefp --
-
function vec_vrsqrtefp
(A : vector_float) return vector_float
renames vec_rsqrte;
- -- vec_vsel --
-
function vec_vsel
(A : vector_float;
B : vector_float;
@@ -6784,7 +7128,9 @@ package GNAT.Altivec.Vector_Operations is
C : vector_unsigned_char) return vector_bool_char
renames vec_sel;
+ ----------------
-- vec_vsldoi --
+ ----------------
function vec_vsldoi
(A : vector_float;
@@ -6852,7 +7198,9 @@ package GNAT.Altivec.Vector_Operations is
C : c_int) return vector_bool_char
renames vec_sld;
+ -------------
-- vec_vsl --
+ -------------
function vec_vsl
(A : vector_signed_int;
@@ -7004,7 +7352,9 @@ package GNAT.Altivec.Vector_Operations is
B : vector_unsigned_char) return vector_bool_char
renames vec_sll;
+ --------------
-- vec_vslo --
+ --------------
function vec_vslo
(A : vector_float;
@@ -7086,8 +7436,6 @@ package GNAT.Altivec.Vector_Operations is
B : vector_unsigned_char) return vector_unsigned_char
renames vec_slo;
- -- vec_vsr --
-
function vec_vsr
(A : vector_signed_int;
B : vector_unsigned_int) return vector_signed_int
@@ -7238,8 +7586,6 @@ package GNAT.Altivec.Vector_Operations is
B : vector_unsigned_char) return vector_bool_char
renames vec_srl;
- -- vec_vsro --
-
function vec_vsro
(A : vector_float;
B : vector_signed_char) return vector_float
@@ -7320,7 +7666,9 @@ package GNAT.Altivec.Vector_Operations is
B : vector_unsigned_char) return vector_unsigned_char
renames vec_sro;
+ --------------
-- vec_stvx --
+ --------------
procedure vec_stvx
(A : vector_float;
@@ -7478,7 +7826,9 @@ package GNAT.Altivec.Vector_Operations is
C : signed_char_ptr)
renames vec_st;
+ ---------------
-- vec_stvxl --
+ ---------------
procedure vec_stvxl
(A : vector_float;
@@ -7636,34 +7986,32 @@ package GNAT.Altivec.Vector_Operations is
C : signed_char_ptr)
renames vec_stl;
- -- vec_vsubcuw --
-
function vec_vsubcuw
(A : vector_unsigned_int;
B : vector_unsigned_int) return vector_unsigned_int
renames vec_subc;
+ ------------------
-- vec_vsum2sws --
+ ------------------
function vec_vsum2sws
(A : vector_signed_int;
B : vector_signed_int) return vector_signed_int
renames vec_sum2s;
- -- vec_vsumsws --
-
function vec_vsumsws
(A : vector_signed_int;
B : vector_signed_int) return vector_signed_int
renames vec_sums;
- -- vec_vrfiz --
-
function vec_vrfiz
(A : vector_float) return vector_float
renames vec_trunc;
+ --------------
-- vec_vxor --
+ --------------
function vec_vxor
(A : vector_float;
@@ -7785,14 +8133,9 @@ package GNAT.Altivec.Vector_Operations is
B : vector_unsigned_char) return vector_unsigned_char
renames vec_xor;
- ----------------------------------------------
- -- [PIM 2.5.3 Value for adjusting pointers] --
- ----------------------------------------------
-
- -- "At compile time, vec_step (vec_data) produces the integer value
- -- representing the amount by which a pointer to a component of an AltiVec
- -- data type should increment to cause a pointer increment to increment by
- -- 16 bytes".
+ --------------
+ -- vec_step --
+ --------------
function vec_step (V : vector_unsigned_char) return Integer;
function vec_step (V : vector_signed_char) return Integer;
@@ -8014,10 +8357,6 @@ private
pragma Inline_Always (vec_any_nlt);
pragma Inline_Always (vec_any_numeric);
pragma Inline_Always (vec_any_out);
-
- -- Similarly, vec_step is expected to be turned into a compile time
- -- constant, so ...
-
pragma Inline_Always (vec_step);
end GNAT.Altivec.Vector_Operations;