1------------------------------------------------------------------------------
2--                                                                          --
3--                         GNAT COMPILER COMPONENTS                         --
4--                                                                          --
5--       G N A T . A L T I V E C . V E C T O R _ O P E R A T I O N S        --
6--                                                                          --
7--                                 S p e c                                  --
8--                                                                          --
9--          Copyright (C) 2004-2009, Free Software Foundation, Inc.         --
10--                                                                          --
11-- GNAT is free software;  you can  redistribute it  and/or modify it under --
12-- terms of the  GNU General Public License as published  by the Free Soft- --
13-- ware  Foundation;  either version 3,  or (at your option) any later ver- --
14-- sion.  GNAT is distributed in the hope that it will be useful, but WITH- --
15-- OUT ANY WARRANTY;  without even the  implied warranty of MERCHANTABILITY --
16-- or FITNESS FOR A PARTICULAR PURPOSE.                                     --
17--                                                                          --
18-- As a special exception under Section 7 of GPL version 3, you are granted --
19-- additional permissions described in the GCC Runtime Library Exception,   --
20-- version 3.1, as published by the Free Software Foundation.               --
21--                                                                          --
22-- You should have received a copy of the GNU General Public License and    --
23-- a copy of the GCC Runtime Library Exception along with this program;     --
24-- see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see    --
25-- <http://www.gnu.org/licenses/>.                                          --
26--                                                                          --
27-- GNAT was originally developed  by the GNAT team at  New York University. --
28-- Extensive contributions were provided by Ada Core Technologies Inc.      --
29--                                                                          --
30------------------------------------------------------------------------------
31
32--  This unit is the user-level Ada interface to AltiVec operations on vector
33--  objects. It is common to both the Soft and the Hard bindings.
34
35with GNAT.Altivec.Vector_Types;  use GNAT.Altivec.Vector_Types;
36with GNAT.Altivec.Low_Level_Interface;  use GNAT.Altivec.Low_Level_Interface;
37
38package GNAT.Altivec.Vector_Operations is
39
40   --  The vast majority of the operations exposed here are overloads over a
41   --  much smaller set of low level primitives with type conversions around.
42   --
43   --  In some cases, a direct binding without any intermediate body is
44   --  possible or even mandatory for technical reasons. What we provide
45   --  here for such cases are renamings of straight imports exposed by
46   --  Altivec.Low_Level_Interface.  See the comments in the private part for
47   --  additional details.
48
49   -------------------------------------------------------
50   -- [PIM-4.4 Generic and Specific AltiVec operations] --
51   -------------------------------------------------------
52
53   -- vec_abs --
54
55   function vec_abs
56     (A : vector_signed_char) return vector_signed_char;
57
58   function vec_abs
59     (A : vector_signed_short) return vector_signed_short;
60
61   function vec_abs
62     (A : vector_signed_int) return vector_signed_int;
63
64   function vec_abs
65     (A : vector_float) return vector_float;
66
67   -- vec_abss --
68
69   function vec_abss
70     (A : vector_signed_char) return vector_signed_char;
71
72   function vec_abss
73     (A : vector_signed_short) return vector_signed_short;
74
75   function vec_abss
76     (A : vector_signed_int) return vector_signed_int;
77
78   -- vec_add --
79
80   function vec_add
81     (A : vector_bool_char;
82      B : vector_signed_char) return vector_signed_char;
83
84   function vec_add
85     (A : vector_signed_char;
86      B : vector_bool_char) return vector_signed_char;
87
88   function vec_add
89     (A : vector_signed_char;
90      B : vector_signed_char) return vector_signed_char;
91
92   function vec_add
93     (A : vector_bool_char;
94      B : vector_unsigned_char) return vector_unsigned_char;
95
96   function vec_add
97     (A : vector_unsigned_char;
98      B : vector_bool_char) return vector_unsigned_char;
99
100   function vec_add
101     (A : vector_unsigned_char;
102      B : vector_unsigned_char) return vector_unsigned_char;
103
104   function vec_add
105     (A : vector_bool_short;
106      B : vector_signed_short) return vector_signed_short;
107
108   function vec_add
109     (A : vector_signed_short;
110      B : vector_bool_short) return vector_signed_short;
111
112   function vec_add
113     (A : vector_signed_short;
114      B : vector_signed_short) return vector_signed_short;
115
116   function vec_add
117     (A : vector_bool_short;
118      B : vector_unsigned_short) return vector_unsigned_short;
119
120   function vec_add
121     (A : vector_unsigned_short;
122      B : vector_bool_short) return vector_unsigned_short;
123
124   function vec_add
125     (A : vector_unsigned_short;
126      B : vector_unsigned_short) return vector_unsigned_short;
127
128   function vec_add
129     (A : vector_bool_int;
130      B : vector_signed_int) return vector_signed_int;
131
132   function vec_add
133     (A : vector_signed_int;
134      B : vector_bool_int) return vector_signed_int;
135
136   function vec_add
137     (A : vector_signed_int;
138      B : vector_signed_int) return vector_signed_int;
139
140   function vec_add
141     (A : vector_bool_int;
142      B : vector_unsigned_int) return vector_unsigned_int;
143
144   function vec_add
145     (A : vector_unsigned_int;
146      B : vector_bool_int) return vector_unsigned_int;
147
148   function vec_add
149     (A : vector_unsigned_int;
150      B : vector_unsigned_int) return vector_unsigned_int;
151
152   function vec_add
153     (A : vector_float;
154      B : vector_float) return vector_float;
155
156   -- vec_vaddfp --
157
158   function vec_vaddfp
159     (A : vector_float;
160      B : vector_float) return vector_float;
161
162   -- vec_vadduwm --
163
164   function vec_vadduwm
165     (A : vector_bool_int;
166      B : vector_signed_int) return vector_signed_int;
167
168   function vec_vadduwm
169     (A : vector_signed_int;
170      B : vector_bool_int) return vector_signed_int;
171
172   function vec_vadduwm
173     (A : vector_signed_int;
174      B : vector_signed_int) return vector_signed_int;
175
176   function vec_vadduwm
177     (A : vector_bool_int;
178      B : vector_unsigned_int) return vector_unsigned_int;
179
180   function vec_vadduwm
181     (A : vector_unsigned_int;
182      B : vector_bool_int) return vector_unsigned_int;
183
184   function vec_vadduwm
185     (A : vector_unsigned_int;
186      B : vector_unsigned_int) return vector_unsigned_int;
187
188   -- vec_vadduhm --
189
190   function vec_vadduhm
191     (A : vector_bool_short;
192      B : vector_signed_short) return vector_signed_short;
193
194   function vec_vadduhm
195     (A : vector_signed_short;
196      B : vector_bool_short) return vector_signed_short;
197
198   function vec_vadduhm
199     (A : vector_signed_short;
200      B : vector_signed_short) return vector_signed_short;
201
202   function vec_vadduhm
203     (A : vector_bool_short;
204      B : vector_unsigned_short) return vector_unsigned_short;
205
206   function vec_vadduhm
207     (A : vector_unsigned_short;
208      B : vector_bool_short) return vector_unsigned_short;
209
210   function vec_vadduhm
211     (A : vector_unsigned_short;
212      B : vector_unsigned_short) return vector_unsigned_short;
213
214   -- vec_vaddubm --
215
216   function vec_vaddubm
217     (A : vector_bool_char;
218      B : vector_signed_char) return vector_signed_char;
219
220   function vec_vaddubm
221     (A : vector_signed_char;
222      B : vector_bool_char) return vector_signed_char;
223
224   function vec_vaddubm
225     (A : vector_signed_char;
226      B : vector_signed_char) return vector_signed_char;
227
228   function vec_vaddubm
229     (A : vector_bool_char;
230      B : vector_unsigned_char) return vector_unsigned_char;
231
232   function vec_vaddubm
233     (A : vector_unsigned_char;
234      B : vector_bool_char) return vector_unsigned_char;
235
236   function vec_vaddubm
237     (A : vector_unsigned_char;
238      B : vector_unsigned_char) return vector_unsigned_char;
239
240   -- vec_addc --
241
242   function vec_addc
243     (A : vector_unsigned_int;
244      B : vector_unsigned_int) return vector_unsigned_int;
245
246   -- vec_adds --
247
248   function vec_adds
249     (A : vector_bool_char;
250      B : vector_unsigned_char) return vector_unsigned_char;
251
252   function vec_adds
253     (A : vector_unsigned_char;
254      B : vector_bool_char) return vector_unsigned_char;
255
256   function vec_adds
257     (A : vector_unsigned_char;
258      B : vector_unsigned_char) return vector_unsigned_char;
259
260   function vec_adds
261     (A : vector_bool_char;
262      B : vector_signed_char) return vector_signed_char;
263
264   function vec_adds
265     (A : vector_signed_char;
266      B : vector_bool_char) return vector_signed_char;
267
268   function vec_adds
269     (A : vector_signed_char;
270      B : vector_signed_char) return vector_signed_char;
271
272   function vec_adds
273     (A : vector_bool_short;
274      B : vector_unsigned_short) return vector_unsigned_short;
275
276   function vec_adds
277     (A : vector_unsigned_short;
278      B : vector_bool_short) return vector_unsigned_short;
279
280   function vec_adds
281     (A : vector_unsigned_short;
282      B : vector_unsigned_short) return vector_unsigned_short;
283
284   function vec_adds
285     (A : vector_bool_short;
286      B : vector_signed_short) return vector_signed_short;
287
288   function vec_adds
289     (A : vector_signed_short;
290      B : vector_bool_short) return vector_signed_short;
291
292   function vec_adds
293     (A : vector_signed_short;
294      B : vector_signed_short) return vector_signed_short;
295
296   function vec_adds
297     (A : vector_bool_int;
298      B : vector_unsigned_int) return vector_unsigned_int;
299
300   function vec_adds
301     (A : vector_unsigned_int;
302      B : vector_bool_int) return vector_unsigned_int;
303
304   function vec_adds
305     (A : vector_unsigned_int;
306      B : vector_unsigned_int) return vector_unsigned_int;
307
308   function vec_adds
309     (A : vector_bool_int;
310      B : vector_signed_int) return vector_signed_int;
311
312   function vec_adds
313     (A : vector_signed_int;
314      B : vector_bool_int) return vector_signed_int;
315
316   function vec_adds
317     (A : vector_signed_int;
318      B : vector_signed_int) return vector_signed_int;
319
320   -- vec_vaddsws --
321
322   function vec_vaddsws
323     (A : vector_bool_int;
324      B : vector_signed_int) return vector_signed_int;
325
326   function vec_vaddsws
327     (A : vector_signed_int;
328      B : vector_bool_int) return vector_signed_int;
329
330   function vec_vaddsws
331     (A : vector_signed_int;
332      B : vector_signed_int) return vector_signed_int;
333
334   -- vec_vadduws --
335
336   function vec_vadduws
337     (A : vector_bool_int;
338      B : vector_unsigned_int) return vector_unsigned_int;
339
340   function vec_vadduws
341     (A : vector_unsigned_int;
342      B : vector_bool_int) return vector_unsigned_int;
343
344   function vec_vadduws
345     (A : vector_unsigned_int;
346      B : vector_unsigned_int) return vector_unsigned_int;
347
348   -- vec_vaddshs --
349
350   function vec_vaddshs
351     (A : vector_bool_short;
352      B : vector_signed_short) return vector_signed_short;
353
354   function vec_vaddshs
355     (A : vector_signed_short;
356      B : vector_bool_short) return vector_signed_short;
357
358   function vec_vaddshs
359     (A : vector_signed_short;
360      B : vector_signed_short) return vector_signed_short;
361
362   -- vec_vadduhs --
363
364   function vec_vadduhs
365     (A : vector_bool_short;
366      B : vector_unsigned_short) return vector_unsigned_short;
367
368   function vec_vadduhs
369     (A : vector_unsigned_short;
370      B : vector_bool_short) return vector_unsigned_short;
371
372   function vec_vadduhs
373     (A : vector_unsigned_short;
374      B : vector_unsigned_short) return vector_unsigned_short;
375
376   -- vec_vaddsbs --
377
378   function vec_vaddsbs
379     (A : vector_bool_char;
380      B : vector_signed_char) return vector_signed_char;
381
382   function vec_vaddsbs
383     (A : vector_signed_char;
384      B : vector_bool_char) return vector_signed_char;
385
386   function vec_vaddsbs
387     (A : vector_signed_char;
388      B : vector_signed_char) return vector_signed_char;
389
390   -- vec_vaddubs --
391
392   function vec_vaddubs
393     (A : vector_bool_char;
394      B : vector_unsigned_char) return vector_unsigned_char;
395
396   function vec_vaddubs
397     (A : vector_unsigned_char;
398      B : vector_bool_char) return vector_unsigned_char;
399
400   function vec_vaddubs
401     (A : vector_unsigned_char;
402      B : vector_unsigned_char) return vector_unsigned_char;
403
404   -- vec_and --
405
406   function vec_and
407     (A : vector_float;
408      B : vector_float) return vector_float;
409
410   function vec_and
411     (A : vector_float;
412      B : vector_bool_int) return vector_float;
413
414   function vec_and
415     (A : vector_bool_int;
416      B : vector_float) return vector_float;
417
418   function vec_and
419     (A : vector_bool_int;
420      B : vector_bool_int) return vector_bool_int;
421
422   function vec_and
423     (A : vector_bool_int;
424      B : vector_signed_int) return vector_signed_int;
425
426   function vec_and
427     (A : vector_signed_int;
428      B : vector_bool_int) return vector_signed_int;
429
430   function vec_and
431     (A : vector_signed_int;
432      B : vector_signed_int) return vector_signed_int;
433
434   function vec_and
435     (A : vector_bool_int;
436      B : vector_unsigned_int) return vector_unsigned_int;
437
438   function vec_and
439     (A : vector_unsigned_int;
440      B : vector_bool_int) return vector_unsigned_int;
441
442   function vec_and
443     (A : vector_unsigned_int;
444      B : vector_unsigned_int) return vector_unsigned_int;
445
446   function vec_and
447     (A : vector_bool_short;
448      B : vector_bool_short) return vector_bool_short;
449
450   function vec_and
451     (A : vector_bool_short;
452      B : vector_signed_short) return vector_signed_short;
453
454   function vec_and
455     (A : vector_signed_short;
456      B : vector_bool_short) return vector_signed_short;
457
458   function vec_and
459     (A : vector_signed_short;
460      B : vector_signed_short) return vector_signed_short;
461
462   function vec_and
463     (A : vector_bool_short;
464      B : vector_unsigned_short) return vector_unsigned_short;
465
466   function vec_and
467     (A : vector_unsigned_short;
468      B : vector_bool_short) return vector_unsigned_short;
469
470   function vec_and
471     (A : vector_unsigned_short;
472      B : vector_unsigned_short) return vector_unsigned_short;
473
474   function vec_and
475     (A : vector_bool_char;
476      B : vector_signed_char) return vector_signed_char;
477
478   function vec_and
479     (A : vector_bool_char;
480      B : vector_bool_char) return vector_bool_char;
481
482   function vec_and
483     (A : vector_signed_char;
484      B : vector_bool_char) return vector_signed_char;
485
486   function vec_and
487     (A : vector_signed_char;
488      B : vector_signed_char) return vector_signed_char;
489
490   function vec_and
491     (A : vector_bool_char;
492      B : vector_unsigned_char) return vector_unsigned_char;
493
494   function vec_and
495     (A : vector_unsigned_char;
496      B : vector_bool_char) return vector_unsigned_char;
497
498   function vec_and
499     (A : vector_unsigned_char;
500      B : vector_unsigned_char) return vector_unsigned_char;
501
502   -- vec_andc --
503
504   function vec_andc
505     (A : vector_float;
506      B : vector_float) return vector_float;
507
508   function vec_andc
509     (A : vector_float;
510      B : vector_bool_int) return vector_float;
511
512   function vec_andc
513     (A : vector_bool_int;
514      B : vector_float) return vector_float;
515
516   function vec_andc
517     (A : vector_bool_int;
518      B : vector_bool_int) return vector_bool_int;
519
520   function vec_andc
521     (A : vector_bool_int;
522      B : vector_signed_int) return vector_signed_int;
523
524   function vec_andc
525     (A : vector_signed_int;
526      B : vector_bool_int) return vector_signed_int;
527
528   function vec_andc
529     (A : vector_signed_int;
530      B : vector_signed_int) return vector_signed_int;
531
532   function vec_andc
533     (A : vector_bool_int;
534      B : vector_unsigned_int) return vector_unsigned_int;
535
536   function vec_andc
537     (A : vector_unsigned_int;
538      B : vector_bool_int) return vector_unsigned_int;
539
540   function vec_andc
541     (A : vector_unsigned_int;
542      B : vector_unsigned_int) return vector_unsigned_int;
543
544   function vec_andc
545     (A : vector_bool_short;
546      B : vector_bool_short) return vector_bool_short;
547
548   function vec_andc
549     (A : vector_bool_short;
550      B : vector_signed_short) return vector_signed_short;
551
552   function vec_andc
553     (A : vector_signed_short;
554      B : vector_bool_short) return vector_signed_short;
555
556   function vec_andc
557     (A : vector_signed_short;
558      B : vector_signed_short) return vector_signed_short;
559
560   function vec_andc
561     (A : vector_bool_short;
562      B : vector_unsigned_short) return vector_unsigned_short;
563
564   function vec_andc
565     (A : vector_unsigned_short;
566      B : vector_bool_short) return vector_unsigned_short;
567
568   function vec_andc
569     (A : vector_unsigned_short;
570      B : vector_unsigned_short) return vector_unsigned_short;
571
572   function vec_andc
573     (A : vector_bool_char;
574      B : vector_signed_char) return vector_signed_char;
575
576   function vec_andc
577     (A : vector_bool_char;
578      B : vector_bool_char) return vector_bool_char;
579
580   function vec_andc
581     (A : vector_signed_char;
582      B : vector_bool_char) return vector_signed_char;
583
584   function vec_andc
585     (A : vector_signed_char;
586      B : vector_signed_char) return vector_signed_char;
587
588   function vec_andc
589     (A : vector_bool_char;
590      B : vector_unsigned_char) return vector_unsigned_char;
591
592   function vec_andc
593     (A : vector_unsigned_char;
594      B : vector_bool_char) return vector_unsigned_char;
595
596   function vec_andc
597     (A : vector_unsigned_char;
598      B : vector_unsigned_char) return vector_unsigned_char;
599
600   -- vec_avg --
601
602   function vec_avg
603     (A : vector_unsigned_char;
604      B : vector_unsigned_char) return vector_unsigned_char;
605
606   function vec_avg
607     (A : vector_signed_char;
608      B : vector_signed_char) return vector_signed_char;
609
610   function vec_avg
611     (A : vector_unsigned_short;
612      B : vector_unsigned_short) return vector_unsigned_short;
613
614   function vec_avg
615     (A : vector_signed_short;
616      B : vector_signed_short) return vector_signed_short;
617
618   function vec_avg
619     (A : vector_unsigned_int;
620      B : vector_unsigned_int) return vector_unsigned_int;
621
622   function vec_avg
623     (A : vector_signed_int;
624      B : vector_signed_int) return vector_signed_int;
625
626   -- vec_vavgsw --
627
628   function vec_vavgsw
629     (A : vector_signed_int;
630      B : vector_signed_int) return vector_signed_int;
631
632   -- vec_vavguw --
633
634   function vec_vavguw
635     (A : vector_unsigned_int;
636      B : vector_unsigned_int) return vector_unsigned_int;
637
638   -- vec_vavgsh --
639
640   function vec_vavgsh
641     (A : vector_signed_short;
642      B : vector_signed_short) return vector_signed_short;
643
644   -- vec_vavguh --
645
646   function vec_vavguh
647     (A : vector_unsigned_short;
648      B : vector_unsigned_short) return vector_unsigned_short;
649
650   -- vec_vavgsb --
651
652   function vec_vavgsb
653     (A : vector_signed_char;
654      B : vector_signed_char) return vector_signed_char;
655
656   -- vec_vavgub --
657
658   function vec_vavgub
659     (A : vector_unsigned_char;
660      B : vector_unsigned_char) return vector_unsigned_char;
661
662   -- vec_ceil --
663
664   function vec_ceil
665     (A : vector_float) return vector_float;
666
667   -- vec_cmpb --
668
669   function vec_cmpb
670     (A : vector_float;
671      B : vector_float) return vector_signed_int;
672
673   -- vec_cmpeq --
674
675   function vec_cmpeq
676     (A : vector_signed_char;
677      B : vector_signed_char) return vector_bool_char;
678
679   function vec_cmpeq
680     (A : vector_unsigned_char;
681      B : vector_unsigned_char) return vector_bool_char;
682
683   function vec_cmpeq
684     (A : vector_signed_short;
685      B : vector_signed_short) return vector_bool_short;
686
687   function vec_cmpeq
688     (A : vector_unsigned_short;
689      B : vector_unsigned_short) return vector_bool_short;
690
691   function vec_cmpeq
692     (A : vector_signed_int;
693      B : vector_signed_int) return vector_bool_int;
694
695   function vec_cmpeq
696     (A : vector_unsigned_int;
697      B : vector_unsigned_int) return vector_bool_int;
698
699   function vec_cmpeq
700     (A : vector_float;
701      B : vector_float) return vector_bool_int;
702
703   -- vec_vcmpeqfp --
704
705   function vec_vcmpeqfp
706     (A : vector_float;
707      B : vector_float) return vector_bool_int;
708
709   -- vec_vcmpequw --
710
711   function vec_vcmpequw
712     (A : vector_signed_int;
713      B : vector_signed_int) return vector_bool_int;
714
715   function vec_vcmpequw
716     (A : vector_unsigned_int;
717      B : vector_unsigned_int) return vector_bool_int;
718
719   -- vec_vcmpequh --
720
721   function vec_vcmpequh
722     (A : vector_signed_short;
723      B : vector_signed_short) return vector_bool_short;
724
725   function vec_vcmpequh
726     (A : vector_unsigned_short;
727      B : vector_unsigned_short) return vector_bool_short;
728
729   -- vec_vcmpequb --
730
731   function vec_vcmpequb
732     (A : vector_signed_char;
733      B : vector_signed_char) return vector_bool_char;
734
735   function vec_vcmpequb
736     (A : vector_unsigned_char;
737      B : vector_unsigned_char) return vector_bool_char;
738
739   -- vec_cmpge --
740
741   function vec_cmpge
742     (A : vector_float;
743      B : vector_float) return vector_bool_int;
744
745   -- vec_cmpgt --
746
747   function vec_cmpgt
748     (A : vector_unsigned_char;
749      B : vector_unsigned_char) return vector_bool_char;
750
751   function vec_cmpgt
752     (A : vector_signed_char;
753      B : vector_signed_char) return vector_bool_char;
754
755   function vec_cmpgt
756     (A : vector_unsigned_short;
757      B : vector_unsigned_short) return vector_bool_short;
758
759   function vec_cmpgt
760     (A : vector_signed_short;
761      B : vector_signed_short) return vector_bool_short;
762
763   function vec_cmpgt
764     (A : vector_unsigned_int;
765      B : vector_unsigned_int) return vector_bool_int;
766
767   function vec_cmpgt
768     (A : vector_signed_int;
769      B : vector_signed_int) return vector_bool_int;
770
771   function vec_cmpgt
772     (A : vector_float;
773      B : vector_float) return vector_bool_int;
774
775   -- vec_vcmpgtfp --
776
777   function vec_vcmpgtfp
778     (A : vector_float;
779      B : vector_float) return vector_bool_int;
780
781   -- vec_vcmpgtsw --
782
783   function vec_vcmpgtsw
784     (A : vector_signed_int;
785      B : vector_signed_int) return vector_bool_int;
786
787   -- vec_vcmpgtuw --
788
789   function vec_vcmpgtuw
790     (A : vector_unsigned_int;
791      B : vector_unsigned_int) return vector_bool_int;
792
793   -- vec_vcmpgtsh --
794
795   function vec_vcmpgtsh
796     (A : vector_signed_short;
797      B : vector_signed_short) return vector_bool_short;
798
799   -- vec_vcmpgtuh --
800
801   function vec_vcmpgtuh
802     (A : vector_unsigned_short;
803      B : vector_unsigned_short) return vector_bool_short;
804
805   -- vec_vcmpgtsb --
806
807   function vec_vcmpgtsb
808     (A : vector_signed_char;
809      B : vector_signed_char) return vector_bool_char;
810
811   -- vec_vcmpgtub --
812
813   function vec_vcmpgtub
814     (A : vector_unsigned_char;
815      B : vector_unsigned_char) return vector_bool_char;
816
817   -- vec_cmple --
818
819   function vec_cmple
820     (A : vector_float;
821      B : vector_float) return vector_bool_int;
822
823   -- vec_cmplt --
824
825   function vec_cmplt
826     (A : vector_unsigned_char;
827      B : vector_unsigned_char) return vector_bool_char;
828
829   function vec_cmplt
830     (A : vector_signed_char;
831      B : vector_signed_char) return vector_bool_char;
832
833   function vec_cmplt
834     (A : vector_unsigned_short;
835      B : vector_unsigned_short) return vector_bool_short;
836
837   function vec_cmplt
838     (A : vector_signed_short;
839      B : vector_signed_short) return vector_bool_short;
840
841   function vec_cmplt
842     (A : vector_unsigned_int;
843      B : vector_unsigned_int) return vector_bool_int;
844
845   function vec_cmplt
846     (A : vector_signed_int;
847      B : vector_signed_int) return vector_bool_int;
848
849   function vec_cmplt
850     (A : vector_float;
851      B : vector_float) return vector_bool_int;
852
853   -- vec_ctf --
854
855   function vec_ctf
856     (A : vector_unsigned_int;
857      B : c_int) return vector_float
858   renames Low_Level_Interface.vec_ctf_vui_cint_r_vf;
859
860   function vec_ctf
861     (A : vector_signed_int;
862      B : c_int) return vector_float
863   renames Low_Level_Interface.vec_ctf_vsi_cint_r_vf;
864
865   -- vec_vcfsx --
866
867   function vec_vcfsx
868     (A : vector_signed_int;
869      B : c_int) return vector_float
870   renames Low_Level_Interface.vec_vcfsx_vsi_cint_r_vf;
871
872   -- vec_vcfux --
873
874   function vec_vcfux
875     (A : vector_unsigned_int;
876      B : c_int) return vector_float
877   renames Low_Level_Interface.vec_vcfux_vui_cint_r_vf;
878
879   -- vec_cts --
880
881   function vec_cts
882     (A : vector_float;
883      B : c_int) return vector_signed_int
884   renames Low_Level_Interface.vec_cts_vf_cint_r_vsi;
885
886   -- vec_ctu --
887
888   function vec_ctu
889     (A : vector_float;
890      B : c_int) return vector_unsigned_int
891   renames Low_Level_Interface.vec_ctu_vf_cint_r_vui;
892
893   -- vec_dss --
894
895   procedure vec_dss
896     (A : c_int)
897   renames Low_Level_Interface.vec_dss_cint;
898
899   -- vec_dssall --
900
901   procedure vec_dssall
902   renames Low_Level_Interface.vec_dssall;
903
904   -- vec_dst --
905
906   procedure vec_dst
907     (A : const_vector_unsigned_char_ptr;
908      B : c_int;
909      C : c_int)
910   renames Low_Level_Interface.vec_dst_kvucp_cint_cint;
911
912   procedure vec_dst
913     (A : const_vector_signed_char_ptr;
914      B : c_int;
915      C : c_int)
916   renames Low_Level_Interface.vec_dst_kvscp_cint_cint;
917
918   procedure vec_dst
919     (A : const_vector_bool_char_ptr;
920      B : c_int;
921      C : c_int)
922   renames Low_Level_Interface.vec_dst_kvbcp_cint_cint;
923
924   procedure vec_dst
925     (A : const_vector_unsigned_short_ptr;
926      B : c_int;
927      C : c_int)
928   renames Low_Level_Interface.vec_dst_kvusp_cint_cint;
929
930   procedure vec_dst
931     (A : const_vector_signed_short_ptr;
932      B : c_int;
933      C : c_int)
934   renames Low_Level_Interface.vec_dst_kvssp_cint_cint;
935
936   procedure vec_dst
937     (A : const_vector_bool_short_ptr;
938      B : c_int;
939      C : c_int)
940   renames Low_Level_Interface.vec_dst_kvbsp_cint_cint;
941
942   procedure vec_dst
943     (A : const_vector_pixel_ptr;
944      B : c_int;
945      C : c_int)
946   renames Low_Level_Interface.vec_dst_kvxp_cint_cint;
947
948   procedure vec_dst
949     (A : const_vector_unsigned_int_ptr;
950      B : c_int;
951      C : c_int)
952   renames Low_Level_Interface.vec_dst_kvuip_cint_cint;
953
954   procedure vec_dst
955     (A : const_vector_signed_int_ptr;
956      B : c_int;
957      C : c_int)
958   renames Low_Level_Interface.vec_dst_kvsip_cint_cint;
959
960   procedure vec_dst
961     (A : const_vector_bool_int_ptr;
962      B : c_int;
963      C : c_int)
964   renames Low_Level_Interface.vec_dst_kvbip_cint_cint;
965
966   procedure vec_dst
967     (A : const_vector_float_ptr;
968      B : c_int;
969      C : c_int)
970   renames Low_Level_Interface.vec_dst_kvfp_cint_cint;
971
972   procedure vec_dst
973     (A : const_unsigned_char_ptr;
974      B : c_int;
975      C : c_int)
976   renames Low_Level_Interface.vec_dst_kucp_cint_cint;
977
978   procedure vec_dst
979     (A : const_signed_char_ptr;
980      B : c_int;
981      C : c_int)
982   renames Low_Level_Interface.vec_dst_kscp_cint_cint;
983
984   procedure vec_dst
985     (A : const_unsigned_short_ptr;
986      B : c_int;
987      C : c_int)
988   renames Low_Level_Interface.vec_dst_kusp_cint_cint;
989
990   procedure vec_dst
991     (A : const_short_ptr;
992      B : c_int;
993      C : c_int)
994   renames Low_Level_Interface.vec_dst_ksp_cint_cint;
995
996   procedure vec_dst
997     (A : const_unsigned_int_ptr;
998      B : c_int;
999      C : c_int)
1000   renames Low_Level_Interface.vec_dst_kuip_cint_cint;
1001
1002   procedure vec_dst
1003     (A : const_int_ptr;
1004      B : c_int;
1005      C : c_int)
1006   renames Low_Level_Interface.vec_dst_kip_cint_cint;
1007
1008   procedure vec_dst
1009     (A : const_unsigned_long_ptr;
1010      B : c_int;
1011      C : c_int)
1012   renames Low_Level_Interface.vec_dst_kulongp_cint_cint;
1013
1014   procedure vec_dst
1015     (A : const_long_ptr;
1016      B : c_int;
1017      C : c_int)
1018   renames Low_Level_Interface.vec_dst_klongp_cint_cint;
1019
1020   procedure vec_dst
1021     (A : const_float_ptr;
1022      B : c_int;
1023      C : c_int)
1024   renames Low_Level_Interface.vec_dst_kfp_cint_cint;
1025
1026   -- vec_dstst --
1027
1028   procedure vec_dstst
1029     (A : const_vector_unsigned_char_ptr;
1030      B : c_int;
1031      C : c_int)
1032   renames Low_Level_Interface.vec_dstst_kvucp_cint_cint;
1033
1034   procedure vec_dstst
1035     (A : const_vector_signed_char_ptr;
1036      B : c_int;
1037      C : c_int)
1038   renames Low_Level_Interface.vec_dstst_kvscp_cint_cint;
1039
1040   procedure vec_dstst
1041     (A : const_vector_bool_char_ptr;
1042      B : c_int;
1043      C : c_int)
1044   renames Low_Level_Interface.vec_dstst_kvbcp_cint_cint;
1045
1046   procedure vec_dstst
1047     (A : const_vector_unsigned_short_ptr;
1048      B : c_int;
1049      C : c_int)
1050   renames Low_Level_Interface.vec_dstst_kvusp_cint_cint;
1051
1052   procedure vec_dstst
1053     (A : const_vector_signed_short_ptr;
1054      B : c_int;
1055      C : c_int)
1056   renames Low_Level_Interface.vec_dstst_kvssp_cint_cint;
1057
1058   procedure vec_dstst
1059     (A : const_vector_bool_short_ptr;
1060      B : c_int;
1061      C : c_int)
1062   renames Low_Level_Interface.vec_dstst_kvbsp_cint_cint;
1063
1064   procedure vec_dstst
1065     (A : const_vector_pixel_ptr;
1066      B : c_int;
1067      C : c_int)
1068   renames Low_Level_Interface.vec_dstst_kvxp_cint_cint;
1069
1070   procedure vec_dstst
1071     (A : const_vector_unsigned_int_ptr;
1072      B : c_int;
1073      C : c_int)
1074   renames Low_Level_Interface.vec_dstst_kvuip_cint_cint;
1075
1076   procedure vec_dstst
1077     (A : const_vector_signed_int_ptr;
1078      B : c_int;
1079      C : c_int)
1080   renames Low_Level_Interface.vec_dstst_kvsip_cint_cint;
1081
1082   procedure vec_dstst
1083     (A : const_vector_bool_int_ptr;
1084      B : c_int;
1085      C : c_int)
1086   renames Low_Level_Interface.vec_dstst_kvbip_cint_cint;
1087
1088   procedure vec_dstst
1089     (A : const_vector_float_ptr;
1090      B : c_int;
1091      C : c_int)
1092   renames Low_Level_Interface.vec_dstst_kvfp_cint_cint;
1093
1094   procedure vec_dstst
1095     (A : const_unsigned_char_ptr;
1096      B : c_int;
1097      C : c_int)
1098   renames Low_Level_Interface.vec_dstst_kucp_cint_cint;
1099
1100   procedure vec_dstst
1101     (A : const_signed_char_ptr;
1102      B : c_int;
1103      C : c_int)
1104   renames Low_Level_Interface.vec_dstst_kscp_cint_cint;
1105
1106   procedure vec_dstst
1107     (A : const_unsigned_short_ptr;
1108      B : c_int;
1109      C : c_int)
1110   renames Low_Level_Interface.vec_dstst_kusp_cint_cint;
1111
1112   procedure vec_dstst
1113     (A : const_short_ptr;
1114      B : c_int;
1115      C : c_int)
1116   renames Low_Level_Interface.vec_dstst_ksp_cint_cint;
1117
1118   procedure vec_dstst
1119     (A : const_unsigned_int_ptr;
1120      B : c_int;
1121      C : c_int)
1122   renames Low_Level_Interface.vec_dstst_kuip_cint_cint;
1123
1124   procedure vec_dstst
1125     (A : const_int_ptr;
1126      B : c_int;
1127      C : c_int)
1128   renames Low_Level_Interface.vec_dstst_kip_cint_cint;
1129
1130   procedure vec_dstst
1131     (A : const_unsigned_long_ptr;
1132      B : c_int;
1133      C : c_int)
1134   renames Low_Level_Interface.vec_dstst_kulongp_cint_cint;
1135
1136   procedure vec_dstst
1137     (A : const_long_ptr;
1138      B : c_int;
1139      C : c_int)
1140   renames Low_Level_Interface.vec_dstst_klongp_cint_cint;
1141
1142   procedure vec_dstst
1143     (A : const_float_ptr;
1144      B : c_int;
1145      C : c_int)
1146   renames Low_Level_Interface.vec_dstst_kfp_cint_cint;
1147
1148   -- vec_dststt --
1149
1150   procedure vec_dststt
1151     (A : const_vector_unsigned_char_ptr;
1152      B : c_int;
1153      C : c_int)
1154   renames Low_Level_Interface.vec_dststt_kvucp_cint_cint;
1155
1156   procedure vec_dststt
1157     (A : const_vector_signed_char_ptr;
1158      B : c_int;
1159      C : c_int)
1160   renames Low_Level_Interface.vec_dststt_kvscp_cint_cint;
1161
1162   procedure vec_dststt
1163     (A : const_vector_bool_char_ptr;
1164      B : c_int;
1165      C : c_int)
1166   renames Low_Level_Interface.vec_dststt_kvbcp_cint_cint;
1167
1168   procedure vec_dststt
1169     (A : const_vector_unsigned_short_ptr;
1170      B : c_int;
1171      C : c_int)
1172   renames Low_Level_Interface.vec_dststt_kvusp_cint_cint;
1173
1174   procedure vec_dststt
1175     (A : const_vector_signed_short_ptr;
1176      B : c_int;
1177      C : c_int)
1178   renames Low_Level_Interface.vec_dststt_kvssp_cint_cint;
1179
1180   procedure vec_dststt
1181     (A : const_vector_bool_short_ptr;
1182      B : c_int;
1183      C : c_int)
1184   renames Low_Level_Interface.vec_dststt_kvbsp_cint_cint;
1185
1186   procedure vec_dststt
1187     (A : const_vector_pixel_ptr;
1188      B : c_int;
1189      C : c_int)
1190   renames Low_Level_Interface.vec_dststt_kvxp_cint_cint;
1191
1192   procedure vec_dststt
1193     (A : const_vector_unsigned_int_ptr;
1194      B : c_int;
1195      C : c_int)
1196   renames Low_Level_Interface.vec_dststt_kvuip_cint_cint;
1197
1198   procedure vec_dststt
1199     (A : const_vector_signed_int_ptr;
1200      B : c_int;
1201      C : c_int)
1202   renames Low_Level_Interface.vec_dststt_kvsip_cint_cint;
1203
1204   procedure vec_dststt
1205     (A : const_vector_bool_int_ptr;
1206      B : c_int;
1207      C : c_int)
1208   renames Low_Level_Interface.vec_dststt_kvbip_cint_cint;
1209
1210   procedure vec_dststt
1211     (A : const_vector_float_ptr;
1212      B : c_int;
1213      C : c_int)
1214   renames Low_Level_Interface.vec_dststt_kvfp_cint_cint;
1215
1216   procedure vec_dststt
1217     (A : const_unsigned_char_ptr;
1218      B : c_int;
1219      C : c_int)
1220   renames Low_Level_Interface.vec_dststt_kucp_cint_cint;
1221
1222   procedure vec_dststt
1223     (A : const_signed_char_ptr;
1224      B : c_int;
1225      C : c_int)
1226   renames Low_Level_Interface.vec_dststt_kscp_cint_cint;
1227
1228   procedure vec_dststt
1229     (A : const_unsigned_short_ptr;
1230      B : c_int;
1231      C : c_int)
1232   renames Low_Level_Interface.vec_dststt_kusp_cint_cint;
1233
1234   procedure vec_dststt
1235     (A : const_short_ptr;
1236      B : c_int;
1237      C : c_int)
1238   renames Low_Level_Interface.vec_dststt_ksp_cint_cint;
1239
1240   procedure vec_dststt
1241     (A : const_unsigned_int_ptr;
1242      B : c_int;
1243      C : c_int)
1244   renames Low_Level_Interface.vec_dststt_kuip_cint_cint;
1245
1246   procedure vec_dststt
1247     (A : const_int_ptr;
1248      B : c_int;
1249      C : c_int)
1250   renames Low_Level_Interface.vec_dststt_kip_cint_cint;
1251
1252   procedure vec_dststt
1253     (A : const_unsigned_long_ptr;
1254      B : c_int;
1255      C : c_int)
1256   renames Low_Level_Interface.vec_dststt_kulongp_cint_cint;
1257
1258   procedure vec_dststt
1259     (A : const_long_ptr;
1260      B : c_int;
1261      C : c_int)
1262   renames Low_Level_Interface.vec_dststt_klongp_cint_cint;
1263
1264   procedure vec_dststt
1265     (A : const_float_ptr;
1266      B : c_int;
1267      C : c_int)
1268   renames Low_Level_Interface.vec_dststt_kfp_cint_cint;
1269
1270   -- vec_dstt --
1271
1272   procedure vec_dstt
1273     (A : const_vector_unsigned_char_ptr;
1274      B : c_int;
1275      C : c_int)
1276   renames Low_Level_Interface.vec_dstt_kvucp_cint_cint;
1277
1278   procedure vec_dstt
1279     (A : const_vector_signed_char_ptr;
1280      B : c_int;
1281      C : c_int)
1282   renames Low_Level_Interface.vec_dstt_kvscp_cint_cint;
1283
1284   procedure vec_dstt
1285     (A : const_vector_bool_char_ptr;
1286      B : c_int;
1287      C : c_int)
1288   renames Low_Level_Interface.vec_dstt_kvbcp_cint_cint;
1289
1290   procedure vec_dstt
1291     (A : const_vector_unsigned_short_ptr;
1292      B : c_int;
1293      C : c_int)
1294   renames Low_Level_Interface.vec_dstt_kvusp_cint_cint;
1295
1296   procedure vec_dstt
1297     (A : const_vector_signed_short_ptr;
1298      B : c_int;
1299      C : c_int)
1300   renames Low_Level_Interface.vec_dstt_kvssp_cint_cint;
1301
1302   procedure vec_dstt
1303     (A : const_vector_bool_short_ptr;
1304      B : c_int;
1305      C : c_int)
1306   renames Low_Level_Interface.vec_dstt_kvbsp_cint_cint;
1307
1308   procedure vec_dstt
1309     (A : const_vector_pixel_ptr;
1310      B : c_int;
1311      C : c_int)
1312   renames Low_Level_Interface.vec_dstt_kvxp_cint_cint;
1313
1314   procedure vec_dstt
1315     (A : const_vector_unsigned_int_ptr;
1316      B : c_int;
1317      C : c_int)
1318   renames Low_Level_Interface.vec_dstt_kvuip_cint_cint;
1319
1320   procedure vec_dstt
1321     (A : const_vector_signed_int_ptr;
1322      B : c_int;
1323      C : c_int)
1324   renames Low_Level_Interface.vec_dstt_kvsip_cint_cint;
1325
1326   procedure vec_dstt
1327     (A : const_vector_bool_int_ptr;
1328      B : c_int;
1329      C : c_int)
1330   renames Low_Level_Interface.vec_dstt_kvbip_cint_cint;
1331
1332   procedure vec_dstt
1333     (A : const_vector_float_ptr;
1334      B : c_int;
1335      C : c_int)
1336   renames Low_Level_Interface.vec_dstt_kvfp_cint_cint;
1337
1338   procedure vec_dstt
1339     (A : const_unsigned_char_ptr;
1340      B : c_int;
1341      C : c_int)
1342   renames Low_Level_Interface.vec_dstt_kucp_cint_cint;
1343
1344   procedure vec_dstt
1345     (A : const_signed_char_ptr;
1346      B : c_int;
1347      C : c_int)
1348   renames Low_Level_Interface.vec_dstt_kscp_cint_cint;
1349
1350   procedure vec_dstt
1351     (A : const_unsigned_short_ptr;
1352      B : c_int;
1353      C : c_int)
1354   renames Low_Level_Interface.vec_dstt_kusp_cint_cint;
1355
1356   procedure vec_dstt
1357     (A : const_short_ptr;
1358      B : c_int;
1359      C : c_int)
1360   renames Low_Level_Interface.vec_dstt_ksp_cint_cint;
1361
1362   procedure vec_dstt
1363     (A : const_unsigned_int_ptr;
1364      B : c_int;
1365      C : c_int)
1366   renames Low_Level_Interface.vec_dstt_kuip_cint_cint;
1367
1368   procedure vec_dstt
1369     (A : const_int_ptr;
1370      B : c_int;
1371      C : c_int)
1372   renames Low_Level_Interface.vec_dstt_kip_cint_cint;
1373
1374   procedure vec_dstt
1375     (A : const_unsigned_long_ptr;
1376      B : c_int;
1377      C : c_int)
1378   renames Low_Level_Interface.vec_dstt_kulongp_cint_cint;
1379
1380   procedure vec_dstt
1381     (A : const_long_ptr;
1382      B : c_int;
1383      C : c_int)
1384   renames Low_Level_Interface.vec_dstt_klongp_cint_cint;
1385
1386   procedure vec_dstt
1387     (A : const_float_ptr;
1388      B : c_int;
1389      C : c_int)
1390   renames Low_Level_Interface.vec_dstt_kfp_cint_cint;
1391
1392   -- vec_expte --
1393
1394   function vec_expte
1395     (A : vector_float) return vector_float;
1396
1397   -- vec_floor --
1398
1399   function vec_floor
1400     (A : vector_float) return vector_float;
1401
1402   -- vec_ld --
1403
1404   function vec_ld
1405     (A : c_long;
1406      B : const_vector_float_ptr) return vector_float;
1407
1408   function vec_ld
1409     (A : c_long;
1410      B : const_float_ptr) return vector_float;
1411
1412   function vec_ld
1413     (A : c_long;
1414      B : const_vector_bool_int_ptr) return vector_bool_int;
1415
1416   function vec_ld
1417     (A : c_long;
1418      B : const_vector_signed_int_ptr) return vector_signed_int;
1419
1420   function vec_ld
1421     (A : c_long;
1422      B : const_int_ptr) return vector_signed_int;
1423
1424   function vec_ld
1425     (A : c_long;
1426      B : const_long_ptr) return vector_signed_int;
1427
1428   function vec_ld
1429     (A : c_long;
1430      B : const_vector_unsigned_int_ptr) return vector_unsigned_int;
1431
1432   function vec_ld
1433     (A : c_long;
1434      B : const_unsigned_int_ptr) return vector_unsigned_int;
1435
1436   function vec_ld
1437     (A : c_long;
1438      B : const_unsigned_long_ptr) return vector_unsigned_int;
1439
1440   function vec_ld
1441     (A : c_long;
1442      B : const_vector_bool_short_ptr) return vector_bool_short;
1443
1444   function vec_ld
1445     (A : c_long;
1446      B : const_vector_pixel_ptr) return vector_pixel;
1447
1448   function vec_ld
1449     (A : c_long;
1450      B : const_vector_signed_short_ptr) return vector_signed_short;
1451
1452   function vec_ld
1453     (A : c_long;
1454      B : const_short_ptr) return vector_signed_short;
1455
1456   function vec_ld
1457     (A : c_long;
1458      B : const_vector_unsigned_short_ptr) return vector_unsigned_short;
1459
1460   function vec_ld
1461     (A : c_long;
1462      B : const_unsigned_short_ptr) return vector_unsigned_short;
1463
1464   function vec_ld
1465     (A : c_long;
1466      B : const_vector_bool_char_ptr) return vector_bool_char;
1467
1468   function vec_ld
1469     (A : c_long;
1470      B : const_vector_signed_char_ptr) return vector_signed_char;
1471
1472   function vec_ld
1473     (A : c_long;
1474      B : const_signed_char_ptr) return vector_signed_char;
1475
1476   function vec_ld
1477     (A : c_long;
1478      B : const_vector_unsigned_char_ptr) return vector_unsigned_char;
1479
1480   function vec_ld
1481     (A : c_long;
1482      B : const_unsigned_char_ptr) return vector_unsigned_char;
1483
1484   -- vec_lde --
1485
1486   function vec_lde
1487     (A : c_long;
1488      B : const_signed_char_ptr) return vector_signed_char;
1489
1490   function vec_lde
1491     (A : c_long;
1492      B : const_unsigned_char_ptr) return vector_unsigned_char;
1493
1494   function vec_lde
1495     (A : c_long;
1496      B : const_short_ptr) return vector_signed_short;
1497
1498   function vec_lde
1499     (A : c_long;
1500      B : const_unsigned_short_ptr) return vector_unsigned_short;
1501
1502   function vec_lde
1503     (A : c_long;
1504      B : const_float_ptr) return vector_float;
1505
1506   function vec_lde
1507     (A : c_long;
1508      B : const_int_ptr) return vector_signed_int;
1509
1510   function vec_lde
1511     (A : c_long;
1512      B : const_unsigned_int_ptr) return vector_unsigned_int;
1513
1514   function vec_lde
1515     (A : c_long;
1516      B : const_long_ptr) return vector_signed_int;
1517
1518   function vec_lde
1519     (A : c_long;
1520      B : const_unsigned_long_ptr) return vector_unsigned_int;
1521
1522   -- vec_lvewx --
1523
1524   function vec_lvewx
1525     (A : c_long;
1526      B : float_ptr) return vector_float;
1527
1528   function vec_lvewx
1529     (A : c_long;
1530      B : int_ptr) return vector_signed_int;
1531
1532   function vec_lvewx
1533     (A : c_long;
1534      B : unsigned_int_ptr) return vector_unsigned_int;
1535
1536   function vec_lvewx
1537     (A : c_long;
1538      B : long_ptr) return vector_signed_int;
1539
1540   function vec_lvewx
1541     (A : c_long;
1542      B : unsigned_long_ptr) return vector_unsigned_int;
1543
1544   -- vec_lvehx --
1545
1546   function vec_lvehx
1547     (A : c_long;
1548      B : short_ptr) return vector_signed_short;
1549
1550   function vec_lvehx
1551     (A : c_long;
1552      B : unsigned_short_ptr) return vector_unsigned_short;
1553
1554   -- vec_lvebx --
1555
1556   function vec_lvebx
1557     (A : c_long;
1558      B : signed_char_ptr) return vector_signed_char;
1559
1560   function vec_lvebx
1561     (A : c_long;
1562      B : unsigned_char_ptr) return vector_unsigned_char;
1563
1564   -- vec_ldl --
1565
1566   function vec_ldl
1567     (A : c_long;
1568      B : const_vector_float_ptr) return vector_float;
1569
1570   function vec_ldl
1571     (A : c_long;
1572      B : const_float_ptr) return vector_float;
1573
1574   function vec_ldl
1575     (A : c_long;
1576      B : const_vector_bool_int_ptr) return vector_bool_int;
1577
1578   function vec_ldl
1579     (A : c_long;
1580      B : const_vector_signed_int_ptr) return vector_signed_int;
1581
1582   function vec_ldl
1583     (A : c_long;
1584      B : const_int_ptr) return vector_signed_int;
1585
1586   function vec_ldl
1587     (A : c_long;
1588      B : const_long_ptr) return vector_signed_int;
1589
1590   function vec_ldl
1591     (A : c_long;
1592      B : const_vector_unsigned_int_ptr) return vector_unsigned_int;
1593
1594   function vec_ldl
1595     (A : c_long;
1596      B : const_unsigned_int_ptr) return vector_unsigned_int;
1597
1598   function vec_ldl
1599     (A : c_long;
1600      B : const_unsigned_long_ptr) return vector_unsigned_int;
1601
1602   function vec_ldl
1603     (A : c_long;
1604      B : const_vector_bool_short_ptr) return vector_bool_short;
1605
1606   function vec_ldl
1607     (A : c_long;
1608      B : const_vector_pixel_ptr) return vector_pixel;
1609
1610   function vec_ldl
1611     (A : c_long;
1612      B : const_vector_signed_short_ptr) return vector_signed_short;
1613
1614   function vec_ldl
1615     (A : c_long;
1616      B : const_short_ptr) return vector_signed_short;
1617
1618   function vec_ldl
1619     (A : c_long;
1620      B : const_vector_unsigned_short_ptr) return vector_unsigned_short;
1621
1622   function vec_ldl
1623     (A : c_long;
1624      B : const_unsigned_short_ptr) return vector_unsigned_short;
1625
1626   function vec_ldl
1627     (A : c_long;
1628      B : const_vector_bool_char_ptr) return vector_bool_char;
1629
1630   function vec_ldl
1631     (A : c_long;
1632      B : const_vector_signed_char_ptr) return vector_signed_char;
1633
1634   function vec_ldl
1635     (A : c_long;
1636      B : const_signed_char_ptr) return vector_signed_char;
1637
1638   function vec_ldl
1639     (A : c_long;
1640      B : const_vector_unsigned_char_ptr) return vector_unsigned_char;
1641
1642   function vec_ldl
1643     (A : c_long;
1644      B : const_unsigned_char_ptr) return vector_unsigned_char;
1645
1646   -- vec_loge --
1647
1648   function vec_loge
1649     (A : vector_float) return vector_float;
1650
1651   -- vec_lvsl --
1652
1653   function vec_lvsl
1654     (A : c_long;
1655      B : constv_unsigned_char_ptr) return vector_unsigned_char;
1656
1657   function vec_lvsl
1658     (A : c_long;
1659      B : constv_signed_char_ptr) return vector_unsigned_char;
1660
1661   function vec_lvsl
1662     (A : c_long;
1663      B : constv_unsigned_short_ptr) return vector_unsigned_char;
1664
1665   function vec_lvsl
1666     (A : c_long;
1667      B : constv_short_ptr) return vector_unsigned_char;
1668
1669   function vec_lvsl
1670     (A : c_long;
1671      B : constv_unsigned_int_ptr) return vector_unsigned_char;
1672
1673   function vec_lvsl
1674     (A : c_long;
1675      B : constv_int_ptr) return vector_unsigned_char;
1676
1677   function vec_lvsl
1678     (A : c_long;
1679      B : constv_unsigned_long_ptr) return vector_unsigned_char;
1680
1681   function vec_lvsl
1682     (A : c_long;
1683      B : constv_long_ptr) return vector_unsigned_char;
1684
1685   function vec_lvsl
1686     (A : c_long;
1687      B : constv_float_ptr) return vector_unsigned_char;
1688
1689   -- vec_lvsr --
1690
1691   function vec_lvsr
1692     (A : c_long;
1693      B : constv_unsigned_char_ptr) return vector_unsigned_char;
1694
1695   function vec_lvsr
1696     (A : c_long;
1697      B : constv_signed_char_ptr) return vector_unsigned_char;
1698
1699   function vec_lvsr
1700     (A : c_long;
1701      B : constv_unsigned_short_ptr) return vector_unsigned_char;
1702
1703   function vec_lvsr
1704     (A : c_long;
1705      B : constv_short_ptr) return vector_unsigned_char;
1706
1707   function vec_lvsr
1708     (A : c_long;
1709      B : constv_unsigned_int_ptr) return vector_unsigned_char;
1710
1711   function vec_lvsr
1712     (A : c_long;
1713      B : constv_int_ptr) return vector_unsigned_char;
1714
1715   function vec_lvsr
1716     (A : c_long;
1717      B : constv_unsigned_long_ptr) return vector_unsigned_char;
1718
1719   function vec_lvsr
1720     (A : c_long;
1721      B : constv_long_ptr) return vector_unsigned_char;
1722
1723   function vec_lvsr
1724     (A : c_long;
1725      B : constv_float_ptr) return vector_unsigned_char;
1726
1727   -- vec_madd --
1728
1729   function vec_madd
1730     (A : vector_float;
1731      B : vector_float;
1732      C : vector_float) return vector_float;
1733
1734   -- vec_madds --
1735
1736   function vec_madds
1737     (A : vector_signed_short;
1738      B : vector_signed_short;
1739      C : vector_signed_short) return vector_signed_short;
1740
1741   -- vec_max --
1742
1743   function vec_max
1744     (A : vector_bool_char;
1745      B : vector_unsigned_char) return vector_unsigned_char;
1746
1747   function vec_max
1748     (A : vector_unsigned_char;
1749      B : vector_bool_char) return vector_unsigned_char;
1750
1751   function vec_max
1752     (A : vector_unsigned_char;
1753      B : vector_unsigned_char) return vector_unsigned_char;
1754
1755   function vec_max
1756     (A : vector_bool_char;
1757      B : vector_signed_char) return vector_signed_char;
1758
1759   function vec_max
1760     (A : vector_signed_char;
1761      B : vector_bool_char) return vector_signed_char;
1762
1763   function vec_max
1764     (A : vector_signed_char;
1765      B : vector_signed_char) return vector_signed_char;
1766
1767   function vec_max
1768     (A : vector_bool_short;
1769      B : vector_unsigned_short) return vector_unsigned_short;
1770
1771   function vec_max
1772     (A : vector_unsigned_short;
1773      B : vector_bool_short) return vector_unsigned_short;
1774
1775   function vec_max
1776     (A : vector_unsigned_short;
1777      B : vector_unsigned_short) return vector_unsigned_short;
1778
1779   function vec_max
1780     (A : vector_bool_short;
1781      B : vector_signed_short) return vector_signed_short;
1782
1783   function vec_max
1784     (A : vector_signed_short;
1785      B : vector_bool_short) return vector_signed_short;
1786
1787   function vec_max
1788     (A : vector_signed_short;
1789      B : vector_signed_short) return vector_signed_short;
1790
1791   function vec_max
1792     (A : vector_bool_int;
1793      B : vector_unsigned_int) return vector_unsigned_int;
1794
1795   function vec_max
1796     (A : vector_unsigned_int;
1797      B : vector_bool_int) return vector_unsigned_int;
1798
1799   function vec_max
1800     (A : vector_unsigned_int;
1801      B : vector_unsigned_int) return vector_unsigned_int;
1802
1803   function vec_max
1804     (A : vector_bool_int;
1805      B : vector_signed_int) return vector_signed_int;
1806
1807   function vec_max
1808     (A : vector_signed_int;
1809      B : vector_bool_int) return vector_signed_int;
1810
1811   function vec_max
1812     (A : vector_signed_int;
1813      B : vector_signed_int) return vector_signed_int;
1814
1815   function vec_max
1816     (A : vector_float;
1817      B : vector_float) return vector_float;
1818
1819   -- vec_vmaxfp --
1820
1821   function vec_vmaxfp
1822     (A : vector_float;
1823      B : vector_float) return vector_float;
1824
1825   -- vec_vmaxsw --
1826
1827   function vec_vmaxsw
1828     (A : vector_bool_int;
1829      B : vector_signed_int) return vector_signed_int;
1830
1831   function vec_vmaxsw
1832     (A : vector_signed_int;
1833      B : vector_bool_int) return vector_signed_int;
1834
1835   function vec_vmaxsw
1836     (A : vector_signed_int;
1837      B : vector_signed_int) return vector_signed_int;
1838
1839   -- vec_vmaxuw --
1840
1841   function vec_vmaxuw
1842     (A : vector_bool_int;
1843      B : vector_unsigned_int) return vector_unsigned_int;
1844
1845   function vec_vmaxuw
1846     (A : vector_unsigned_int;
1847      B : vector_bool_int) return vector_unsigned_int;
1848
1849   function vec_vmaxuw
1850     (A : vector_unsigned_int;
1851      B : vector_unsigned_int) return vector_unsigned_int;
1852
1853   -- vec_vmaxsh --
1854
1855   function vec_vmaxsh
1856     (A : vector_bool_short;
1857      B : vector_signed_short) return vector_signed_short;
1858
1859   function vec_vmaxsh
1860     (A : vector_signed_short;
1861      B : vector_bool_short) return vector_signed_short;
1862
1863   function vec_vmaxsh
1864     (A : vector_signed_short;
1865      B : vector_signed_short) return vector_signed_short;
1866
1867   -- vec_vmaxuh --
1868
1869   function vec_vmaxuh
1870     (A : vector_bool_short;
1871      B : vector_unsigned_short) return vector_unsigned_short;
1872
1873   function vec_vmaxuh
1874     (A : vector_unsigned_short;
1875      B : vector_bool_short) return vector_unsigned_short;
1876
1877   function vec_vmaxuh
1878     (A : vector_unsigned_short;
1879      B : vector_unsigned_short) return vector_unsigned_short;
1880
1881   -- vec_vmaxsb --
1882
1883   function vec_vmaxsb
1884     (A : vector_bool_char;
1885      B : vector_signed_char) return vector_signed_char;
1886
1887   function vec_vmaxsb
1888     (A : vector_signed_char;
1889      B : vector_bool_char) return vector_signed_char;
1890
1891   function vec_vmaxsb
1892     (A : vector_signed_char;
1893      B : vector_signed_char) return vector_signed_char;
1894
1895   -- vec_vmaxub --
1896
1897   function vec_vmaxub
1898     (A : vector_bool_char;
1899      B : vector_unsigned_char) return vector_unsigned_char;
1900
1901   function vec_vmaxub
1902     (A : vector_unsigned_char;
1903      B : vector_bool_char) return vector_unsigned_char;
1904
1905   function vec_vmaxub
1906     (A : vector_unsigned_char;
1907      B : vector_unsigned_char) return vector_unsigned_char;
1908
1909   -- vec_mergeh --
1910
1911   function vec_mergeh
1912     (A : vector_bool_char;
1913      B : vector_bool_char) return vector_bool_char;
1914
1915   function vec_mergeh
1916     (A : vector_signed_char;
1917      B : vector_signed_char) return vector_signed_char;
1918
1919   function vec_mergeh
1920     (A : vector_unsigned_char;
1921      B : vector_unsigned_char) return vector_unsigned_char;
1922
1923   function vec_mergeh
1924     (A : vector_bool_short;
1925      B : vector_bool_short) return vector_bool_short;
1926
1927   function vec_mergeh
1928     (A : vector_pixel;
1929      B : vector_pixel) return vector_pixel;
1930
1931   function vec_mergeh
1932     (A : vector_signed_short;
1933      B : vector_signed_short) return vector_signed_short;
1934
1935   function vec_mergeh
1936     (A : vector_unsigned_short;
1937      B : vector_unsigned_short) return vector_unsigned_short;
1938
1939   function vec_mergeh
1940     (A : vector_float;
1941      B : vector_float) return vector_float;
1942
1943   function vec_mergeh
1944     (A : vector_bool_int;
1945      B : vector_bool_int) return vector_bool_int;
1946
1947   function vec_mergeh
1948     (A : vector_signed_int;
1949      B : vector_signed_int) return vector_signed_int;
1950
1951   function vec_mergeh
1952     (A : vector_unsigned_int;
1953      B : vector_unsigned_int) return vector_unsigned_int;
1954
1955   -- vec_vmrghw --
1956
1957   function vec_vmrghw
1958     (A : vector_float;
1959      B : vector_float) return vector_float;
1960
1961   function vec_vmrghw
1962     (A : vector_bool_int;
1963      B : vector_bool_int) return vector_bool_int;
1964
1965   function vec_vmrghw
1966     (A : vector_signed_int;
1967      B : vector_signed_int) return vector_signed_int;
1968
1969   function vec_vmrghw
1970     (A : vector_unsigned_int;
1971      B : vector_unsigned_int) return vector_unsigned_int;
1972
1973   -- vec_vmrghh --
1974
1975   function vec_vmrghh
1976     (A : vector_bool_short;
1977      B : vector_bool_short) return vector_bool_short;
1978
1979   function vec_vmrghh
1980     (A : vector_signed_short;
1981      B : vector_signed_short) return vector_signed_short;
1982
1983   function vec_vmrghh
1984     (A : vector_unsigned_short;
1985      B : vector_unsigned_short) return vector_unsigned_short;
1986
1987   function vec_vmrghh
1988     (A : vector_pixel;
1989      B : vector_pixel) return vector_pixel;
1990
1991   -- vec_vmrghb --
1992
1993   function vec_vmrghb
1994     (A : vector_bool_char;
1995      B : vector_bool_char) return vector_bool_char;
1996
1997   function vec_vmrghb
1998     (A : vector_signed_char;
1999      B : vector_signed_char) return vector_signed_char;
2000
2001   function vec_vmrghb
2002     (A : vector_unsigned_char;
2003      B : vector_unsigned_char) return vector_unsigned_char;
2004
2005   -- vec_mergel --
2006
2007   function vec_mergel
2008     (A : vector_bool_char;
2009      B : vector_bool_char) return vector_bool_char;
2010
2011   function vec_mergel
2012     (A : vector_signed_char;
2013      B : vector_signed_char) return vector_signed_char;
2014
2015   function vec_mergel
2016     (A : vector_unsigned_char;
2017      B : vector_unsigned_char) return vector_unsigned_char;
2018
2019   function vec_mergel
2020     (A : vector_bool_short;
2021      B : vector_bool_short) return vector_bool_short;
2022
2023   function vec_mergel
2024     (A : vector_pixel;
2025      B : vector_pixel) return vector_pixel;
2026
2027   function vec_mergel
2028     (A : vector_signed_short;
2029      B : vector_signed_short) return vector_signed_short;
2030
2031   function vec_mergel
2032     (A : vector_unsigned_short;
2033      B : vector_unsigned_short) return vector_unsigned_short;
2034
2035   function vec_mergel
2036     (A : vector_float;
2037      B : vector_float) return vector_float;
2038
2039   function vec_mergel
2040     (A : vector_bool_int;
2041      B : vector_bool_int) return vector_bool_int;
2042
2043   function vec_mergel
2044     (A : vector_signed_int;
2045      B : vector_signed_int) return vector_signed_int;
2046
2047   function vec_mergel
2048     (A : vector_unsigned_int;
2049      B : vector_unsigned_int) return vector_unsigned_int;
2050
2051   -- vec_vmrglw --
2052
2053   function vec_vmrglw
2054     (A : vector_float;
2055      B : vector_float) return vector_float;
2056
2057   function vec_vmrglw
2058     (A : vector_signed_int;
2059      B : vector_signed_int) return vector_signed_int;
2060
2061   function vec_vmrglw
2062     (A : vector_unsigned_int;
2063      B : vector_unsigned_int) return vector_unsigned_int;
2064
2065   function vec_vmrglw
2066     (A : vector_bool_int;
2067      B : vector_bool_int) return vector_bool_int;
2068
2069   -- vec_vmrglh --
2070
2071   function vec_vmrglh
2072     (A : vector_bool_short;
2073      B : vector_bool_short) return vector_bool_short;
2074
2075   function vec_vmrglh
2076     (A : vector_signed_short;
2077      B : vector_signed_short) return vector_signed_short;
2078
2079   function vec_vmrglh
2080     (A : vector_unsigned_short;
2081      B : vector_unsigned_short) return vector_unsigned_short;
2082
2083   function vec_vmrglh
2084     (A : vector_pixel;
2085      B : vector_pixel) return vector_pixel;
2086
2087   -- vec_vmrglb --
2088
2089   function vec_vmrglb
2090     (A : vector_bool_char;
2091      B : vector_bool_char) return vector_bool_char;
2092
2093   function vec_vmrglb
2094     (A : vector_signed_char;
2095      B : vector_signed_char) return vector_signed_char;
2096
2097   function vec_vmrglb
2098     (A : vector_unsigned_char;
2099      B : vector_unsigned_char) return vector_unsigned_char;
2100
2101   -- vec_mfvscr --
2102
2103   function vec_mfvscr return vector_unsigned_short;
2104
2105   -- vec_min --
2106
2107   function vec_min
2108     (A : vector_bool_char;
2109      B : vector_unsigned_char) return vector_unsigned_char;
2110
2111   function vec_min
2112     (A : vector_unsigned_char;
2113      B : vector_bool_char) return vector_unsigned_char;
2114
2115   function vec_min
2116     (A : vector_unsigned_char;
2117      B : vector_unsigned_char) return vector_unsigned_char;
2118
2119   function vec_min
2120     (A : vector_bool_char;
2121      B : vector_signed_char) return vector_signed_char;
2122
2123   function vec_min
2124     (A : vector_signed_char;
2125      B : vector_bool_char) return vector_signed_char;
2126
2127   function vec_min
2128     (A : vector_signed_char;
2129      B : vector_signed_char) return vector_signed_char;
2130
2131   function vec_min
2132     (A : vector_bool_short;
2133      B : vector_unsigned_short) return vector_unsigned_short;
2134
2135   function vec_min
2136     (A : vector_unsigned_short;
2137      B : vector_bool_short) return vector_unsigned_short;
2138
2139   function vec_min
2140     (A : vector_unsigned_short;
2141      B : vector_unsigned_short) return vector_unsigned_short;
2142
2143   function vec_min
2144     (A : vector_bool_short;
2145      B : vector_signed_short) return vector_signed_short;
2146
2147   function vec_min
2148     (A : vector_signed_short;
2149      B : vector_bool_short) return vector_signed_short;
2150
2151   function vec_min
2152     (A : vector_signed_short;
2153      B : vector_signed_short) return vector_signed_short;
2154
2155   function vec_min
2156     (A : vector_bool_int;
2157      B : vector_unsigned_int) return vector_unsigned_int;
2158
2159   function vec_min
2160     (A : vector_unsigned_int;
2161      B : vector_bool_int) return vector_unsigned_int;
2162
2163   function vec_min
2164     (A : vector_unsigned_int;
2165      B : vector_unsigned_int) return vector_unsigned_int;
2166
2167   function vec_min
2168     (A : vector_bool_int;
2169      B : vector_signed_int) return vector_signed_int;
2170
2171   function vec_min
2172     (A : vector_signed_int;
2173      B : vector_bool_int) return vector_signed_int;
2174
2175   function vec_min
2176     (A : vector_signed_int;
2177      B : vector_signed_int) return vector_signed_int;
2178
2179   function vec_min
2180     (A : vector_float;
2181      B : vector_float) return vector_float;
2182
2183   -- vec_vminfp --
2184
2185   function vec_vminfp
2186     (A : vector_float;
2187      B : vector_float) return vector_float;
2188
2189   -- vec_vminsw --
2190
2191   function vec_vminsw
2192     (A : vector_bool_int;
2193      B : vector_signed_int) return vector_signed_int;
2194
2195   function vec_vminsw
2196     (A : vector_signed_int;
2197      B : vector_bool_int) return vector_signed_int;
2198
2199   function vec_vminsw
2200     (A : vector_signed_int;
2201      B : vector_signed_int) return vector_signed_int;
2202
2203   -- vec_vminuw --
2204
2205   function vec_vminuw
2206     (A : vector_bool_int;
2207      B : vector_unsigned_int) return vector_unsigned_int;
2208
2209   function vec_vminuw
2210     (A : vector_unsigned_int;
2211      B : vector_bool_int) return vector_unsigned_int;
2212
2213   function vec_vminuw
2214     (A : vector_unsigned_int;
2215      B : vector_unsigned_int) return vector_unsigned_int;
2216
2217   -- vec_vminsh --
2218
2219   function vec_vminsh
2220     (A : vector_bool_short;
2221      B : vector_signed_short) return vector_signed_short;
2222
2223   function vec_vminsh
2224     (A : vector_signed_short;
2225      B : vector_bool_short) return vector_signed_short;
2226
2227   function vec_vminsh
2228     (A : vector_signed_short;
2229      B : vector_signed_short) return vector_signed_short;
2230
2231   -- vec_vminuh --
2232
2233   function vec_vminuh
2234     (A : vector_bool_short;
2235      B : vector_unsigned_short) return vector_unsigned_short;
2236
2237   function vec_vminuh
2238     (A : vector_unsigned_short;
2239      B : vector_bool_short) return vector_unsigned_short;
2240
2241   function vec_vminuh
2242     (A : vector_unsigned_short;
2243      B : vector_unsigned_short) return vector_unsigned_short;
2244
2245   -- vec_vminsb --
2246
2247   function vec_vminsb
2248     (A : vector_bool_char;
2249      B : vector_signed_char) return vector_signed_char;
2250
2251   function vec_vminsb
2252     (A : vector_signed_char;
2253      B : vector_bool_char) return vector_signed_char;
2254
2255   function vec_vminsb
2256     (A : vector_signed_char;
2257      B : vector_signed_char) return vector_signed_char;
2258
2259   -- vec_vminub --
2260
2261   function vec_vminub
2262     (A : vector_bool_char;
2263      B : vector_unsigned_char) return vector_unsigned_char;
2264
2265   function vec_vminub
2266     (A : vector_unsigned_char;
2267      B : vector_bool_char) return vector_unsigned_char;
2268
2269   function vec_vminub
2270     (A : vector_unsigned_char;
2271      B : vector_unsigned_char) return vector_unsigned_char;
2272
2273   -- vec_mladd --
2274
2275   function vec_mladd
2276     (A : vector_signed_short;
2277      B : vector_signed_short;
2278      C : vector_signed_short) return vector_signed_short;
2279
2280   function vec_mladd
2281     (A : vector_signed_short;
2282      B : vector_unsigned_short;
2283      C : vector_unsigned_short) return vector_signed_short;
2284
2285   function vec_mladd
2286     (A : vector_unsigned_short;
2287      B : vector_signed_short;
2288      C : vector_signed_short) return vector_signed_short;
2289
2290   function vec_mladd
2291     (A : vector_unsigned_short;
2292      B : vector_unsigned_short;
2293      C : vector_unsigned_short) return vector_unsigned_short;
2294
2295   -- vec_mradds --
2296
2297   function vec_mradds
2298     (A : vector_signed_short;
2299      B : vector_signed_short;
2300      C : vector_signed_short) return vector_signed_short;
2301
2302   -- vec_msum --
2303
2304   function vec_msum
2305     (A : vector_unsigned_char;
2306      B : vector_unsigned_char;
2307      C : vector_unsigned_int) return vector_unsigned_int;
2308
2309   function vec_msum
2310     (A : vector_signed_char;
2311      B : vector_unsigned_char;
2312      C : vector_signed_int) return vector_signed_int;
2313
2314   function vec_msum
2315     (A : vector_unsigned_short;
2316      B : vector_unsigned_short;
2317      C : vector_unsigned_int) return vector_unsigned_int;
2318
2319   function vec_msum
2320     (A : vector_signed_short;
2321      B : vector_signed_short;
2322      C : vector_signed_int) return vector_signed_int;
2323
2324   -- vec_vmsumshm --
2325
2326   function vec_vmsumshm
2327     (A : vector_signed_short;
2328      B : vector_signed_short;
2329      C : vector_signed_int) return vector_signed_int;
2330
2331   -- vec_vmsumuhm --
2332
2333   function vec_vmsumuhm
2334     (A : vector_unsigned_short;
2335      B : vector_unsigned_short;
2336      C : vector_unsigned_int) return vector_unsigned_int;
2337
2338   -- vec_vmsummbm --
2339
2340   function vec_vmsummbm
2341     (A : vector_signed_char;
2342      B : vector_unsigned_char;
2343      C : vector_signed_int) return vector_signed_int;
2344
2345   -- vec_vmsumubm --
2346
2347   function vec_vmsumubm
2348     (A : vector_unsigned_char;
2349      B : vector_unsigned_char;
2350      C : vector_unsigned_int) return vector_unsigned_int;
2351
2352   -- vec_msums --
2353
2354   function vec_msums
2355     (A : vector_unsigned_short;
2356      B : vector_unsigned_short;
2357      C : vector_unsigned_int) return vector_unsigned_int;
2358
2359   function vec_msums
2360     (A : vector_signed_short;
2361      B : vector_signed_short;
2362      C : vector_signed_int) return vector_signed_int;
2363
2364   -- vec_vmsumshs --
2365
2366   function vec_vmsumshs
2367     (A : vector_signed_short;
2368      B : vector_signed_short;
2369      C : vector_signed_int) return vector_signed_int;
2370
2371   -- vec_vmsumuhs --
2372
2373   function vec_vmsumuhs
2374     (A : vector_unsigned_short;
2375      B : vector_unsigned_short;
2376      C : vector_unsigned_int) return vector_unsigned_int;
2377
2378   -- vec_mtvscr --
2379
2380   procedure vec_mtvscr
2381     (A : vector_signed_int);
2382
2383   procedure vec_mtvscr
2384     (A : vector_unsigned_int);
2385
2386   procedure vec_mtvscr
2387     (A : vector_bool_int);
2388
2389   procedure vec_mtvscr
2390     (A : vector_signed_short);
2391
2392   procedure vec_mtvscr
2393     (A : vector_unsigned_short);
2394
2395   procedure vec_mtvscr
2396     (A : vector_bool_short);
2397
2398   procedure vec_mtvscr
2399     (A : vector_pixel);
2400
2401   procedure vec_mtvscr
2402     (A : vector_signed_char);
2403
2404   procedure vec_mtvscr
2405     (A : vector_unsigned_char);
2406
2407   procedure vec_mtvscr
2408     (A : vector_bool_char);
2409
2410   -- vec_mule --
2411
2412   function vec_mule
2413     (A : vector_unsigned_char;
2414      B : vector_unsigned_char) return vector_unsigned_short;
2415
2416   function vec_mule
2417     (A : vector_signed_char;
2418      B : vector_signed_char) return vector_signed_short;
2419
2420   function vec_mule
2421     (A : vector_unsigned_short;
2422      B : vector_unsigned_short) return vector_unsigned_int;
2423
2424   function vec_mule
2425     (A : vector_signed_short;
2426      B : vector_signed_short) return vector_signed_int;
2427
2428   -- vec_vmulesh --
2429
2430   function vec_vmulesh
2431     (A : vector_signed_short;
2432      B : vector_signed_short) return vector_signed_int;
2433
2434   -- vec_vmuleuh --
2435
2436   function vec_vmuleuh
2437     (A : vector_unsigned_short;
2438      B : vector_unsigned_short) return vector_unsigned_int;
2439
2440   -- vec_vmulesb --
2441
2442   function vec_vmulesb
2443     (A : vector_signed_char;
2444      B : vector_signed_char) return vector_signed_short;
2445
2446   -- vec_vmuleub --
2447
2448   function vec_vmuleub
2449     (A : vector_unsigned_char;
2450      B : vector_unsigned_char) return vector_unsigned_short;
2451
2452   -- vec_mulo --
2453
2454   function vec_mulo
2455     (A : vector_unsigned_char;
2456      B : vector_unsigned_char) return vector_unsigned_short;
2457
2458   function vec_mulo
2459     (A : vector_signed_char;
2460      B : vector_signed_char) return vector_signed_short;
2461
2462   function vec_mulo
2463     (A : vector_unsigned_short;
2464      B : vector_unsigned_short) return vector_unsigned_int;
2465
2466   function vec_mulo
2467     (A : vector_signed_short;
2468      B : vector_signed_short) return vector_signed_int;
2469
2470   -- vec_vmulosh --
2471
2472   function vec_vmulosh
2473     (A : vector_signed_short;
2474      B : vector_signed_short) return vector_signed_int;
2475
2476   -- vec_vmulouh --
2477
2478   function vec_vmulouh
2479     (A : vector_unsigned_short;
2480      B : vector_unsigned_short) return vector_unsigned_int;
2481
2482   -- vec_vmulosb --
2483
2484   function vec_vmulosb
2485     (A : vector_signed_char;
2486      B : vector_signed_char) return vector_signed_short;
2487
2488   -- vec_vmuloub --
2489
2490   function vec_vmuloub
2491     (A : vector_unsigned_char;
2492      B : vector_unsigned_char) return vector_unsigned_short;
2493
2494   -- vec_nmsub --
2495
2496   function vec_nmsub
2497     (A : vector_float;
2498      B : vector_float;
2499      C : vector_float) return vector_float;
2500
2501   -- vec_nor --
2502
2503   function vec_nor
2504     (A : vector_float;
2505      B : vector_float) return vector_float;
2506
2507   function vec_nor
2508     (A : vector_signed_int;
2509      B : vector_signed_int) return vector_signed_int;
2510
2511   function vec_nor
2512     (A : vector_unsigned_int;
2513      B : vector_unsigned_int) return vector_unsigned_int;
2514
2515   function vec_nor
2516     (A : vector_bool_int;
2517      B : vector_bool_int) return vector_bool_int;
2518
2519   function vec_nor
2520     (A : vector_signed_short;
2521      B : vector_signed_short) return vector_signed_short;
2522
2523   function vec_nor
2524     (A : vector_unsigned_short;
2525      B : vector_unsigned_short) return vector_unsigned_short;
2526
2527   function vec_nor
2528     (A : vector_bool_short;
2529      B : vector_bool_short) return vector_bool_short;
2530
2531   function vec_nor
2532     (A : vector_signed_char;
2533      B : vector_signed_char) return vector_signed_char;
2534
2535   function vec_nor
2536     (A : vector_unsigned_char;
2537      B : vector_unsigned_char) return vector_unsigned_char;
2538
2539   function vec_nor
2540     (A : vector_bool_char;
2541      B : vector_bool_char) return vector_bool_char;
2542
2543   -- vec_or --
2544
2545   function vec_or
2546     (A : vector_float;
2547      B : vector_float) return vector_float;
2548
2549   function vec_or
2550     (A : vector_float;
2551      B : vector_bool_int) return vector_float;
2552
2553   function vec_or
2554     (A : vector_bool_int;
2555      B : vector_float) return vector_float;
2556
2557   function vec_or
2558     (A : vector_bool_int;
2559      B : vector_bool_int) return vector_bool_int;
2560
2561   function vec_or
2562     (A : vector_bool_int;
2563      B : vector_signed_int) return vector_signed_int;
2564
2565   function vec_or
2566     (A : vector_signed_int;
2567      B : vector_bool_int) return vector_signed_int;
2568
2569   function vec_or
2570     (A : vector_signed_int;
2571      B : vector_signed_int) return vector_signed_int;
2572
2573   function vec_or
2574     (A : vector_bool_int;
2575      B : vector_unsigned_int) return vector_unsigned_int;
2576
2577   function vec_or
2578     (A : vector_unsigned_int;
2579      B : vector_bool_int) return vector_unsigned_int;
2580
2581   function vec_or
2582     (A : vector_unsigned_int;
2583      B : vector_unsigned_int) return vector_unsigned_int;
2584
2585   function vec_or
2586     (A : vector_bool_short;
2587      B : vector_bool_short) return vector_bool_short;
2588
2589   function vec_or
2590     (A : vector_bool_short;
2591      B : vector_signed_short) return vector_signed_short;
2592
2593   function vec_or
2594     (A : vector_signed_short;
2595      B : vector_bool_short) return vector_signed_short;
2596
2597   function vec_or
2598     (A : vector_signed_short;
2599      B : vector_signed_short) return vector_signed_short;
2600
2601   function vec_or
2602     (A : vector_bool_short;
2603      B : vector_unsigned_short) return vector_unsigned_short;
2604
2605   function vec_or
2606     (A : vector_unsigned_short;
2607      B : vector_bool_short) return vector_unsigned_short;
2608
2609   function vec_or
2610     (A : vector_unsigned_short;
2611      B : vector_unsigned_short) return vector_unsigned_short;
2612
2613   function vec_or
2614     (A : vector_bool_char;
2615      B : vector_signed_char) return vector_signed_char;
2616
2617   function vec_or
2618     (A : vector_bool_char;
2619      B : vector_bool_char) return vector_bool_char;
2620
2621   function vec_or
2622     (A : vector_signed_char;
2623      B : vector_bool_char) return vector_signed_char;
2624
2625   function vec_or
2626     (A : vector_signed_char;
2627      B : vector_signed_char) return vector_signed_char;
2628
2629   function vec_or
2630     (A : vector_bool_char;
2631      B : vector_unsigned_char) return vector_unsigned_char;
2632
2633   function vec_or
2634     (A : vector_unsigned_char;
2635      B : vector_bool_char) return vector_unsigned_char;
2636
2637   function vec_or
2638     (A : vector_unsigned_char;
2639      B : vector_unsigned_char) return vector_unsigned_char;
2640
2641   -- vec_pack --
2642
2643   function vec_pack
2644     (A : vector_signed_short;
2645      B : vector_signed_short) return vector_signed_char;
2646
2647   function vec_pack
2648     (A : vector_unsigned_short;
2649      B : vector_unsigned_short) return vector_unsigned_char;
2650
2651   function vec_pack
2652     (A : vector_bool_short;
2653      B : vector_bool_short) return vector_bool_char;
2654
2655   function vec_pack
2656     (A : vector_signed_int;
2657      B : vector_signed_int) return vector_signed_short;
2658
2659   function vec_pack
2660     (A : vector_unsigned_int;
2661      B : vector_unsigned_int) return vector_unsigned_short;
2662
2663   function vec_pack
2664     (A : vector_bool_int;
2665      B : vector_bool_int) return vector_bool_short;
2666
2667   -- vec_vpkuwum --
2668
2669   function vec_vpkuwum
2670     (A : vector_bool_int;
2671      B : vector_bool_int) return vector_bool_short;
2672
2673   function vec_vpkuwum
2674     (A : vector_signed_int;
2675      B : vector_signed_int) return vector_signed_short;
2676
2677   function vec_vpkuwum
2678     (A : vector_unsigned_int;
2679      B : vector_unsigned_int) return vector_unsigned_short;
2680
2681   -- vec_vpkuhum --
2682
2683   function vec_vpkuhum
2684     (A : vector_bool_short;
2685      B : vector_bool_short) return vector_bool_char;
2686
2687   function vec_vpkuhum
2688     (A : vector_signed_short;
2689      B : vector_signed_short) return vector_signed_char;
2690
2691   function vec_vpkuhum
2692     (A : vector_unsigned_short;
2693      B : vector_unsigned_short) return vector_unsigned_char;
2694
2695   -- vec_packpx --
2696
2697   function vec_packpx
2698     (A : vector_unsigned_int;
2699      B : vector_unsigned_int) return vector_pixel;
2700
2701   -- vec_packs --
2702
2703   function vec_packs
2704     (A : vector_unsigned_short;
2705      B : vector_unsigned_short) return vector_unsigned_char;
2706
2707   function vec_packs
2708     (A : vector_signed_short;
2709      B : vector_signed_short) return vector_signed_char;
2710
2711   function vec_packs
2712     (A : vector_unsigned_int;
2713      B : vector_unsigned_int) return vector_unsigned_short;
2714
2715   function vec_packs
2716     (A : vector_signed_int;
2717      B : vector_signed_int) return vector_signed_short;
2718
2719   -- vec_vpkswss --
2720
2721   function vec_vpkswss
2722     (A : vector_signed_int;
2723      B : vector_signed_int) return vector_signed_short;
2724
2725   -- vec_vpkuwus --
2726
2727   function vec_vpkuwus
2728     (A : vector_unsigned_int;
2729      B : vector_unsigned_int) return vector_unsigned_short;
2730
2731   -- vec_vpkshss --
2732
2733   function vec_vpkshss
2734     (A : vector_signed_short;
2735      B : vector_signed_short) return vector_signed_char;
2736
2737   -- vec_vpkuhus --
2738
2739   function vec_vpkuhus
2740     (A : vector_unsigned_short;
2741      B : vector_unsigned_short) return vector_unsigned_char;
2742
2743   -- vec_packsu --
2744
2745   function vec_packsu
2746     (A : vector_unsigned_short;
2747      B : vector_unsigned_short) return vector_unsigned_char;
2748
2749   function vec_packsu
2750     (A : vector_signed_short;
2751      B : vector_signed_short) return vector_unsigned_char;
2752
2753   function vec_packsu
2754     (A : vector_unsigned_int;
2755      B : vector_unsigned_int) return vector_unsigned_short;
2756
2757   function vec_packsu
2758     (A : vector_signed_int;
2759      B : vector_signed_int) return vector_unsigned_short;
2760
2761   -- vec_vpkswus --
2762
2763   function vec_vpkswus
2764     (A : vector_signed_int;
2765      B : vector_signed_int) return vector_unsigned_short;
2766
2767   -- vec_vpkshus --
2768
2769   function vec_vpkshus
2770     (A : vector_signed_short;
2771      B : vector_signed_short) return vector_unsigned_char;
2772
2773   -- vec_perm --
2774
2775   function vec_perm
2776     (A : vector_float;
2777      B : vector_float;
2778      C : vector_unsigned_char) return vector_float;
2779
2780   function vec_perm
2781     (A : vector_signed_int;
2782      B : vector_signed_int;
2783      C : vector_unsigned_char) return vector_signed_int;
2784
2785   function vec_perm
2786     (A : vector_unsigned_int;
2787      B : vector_unsigned_int;
2788      C : vector_unsigned_char) return vector_unsigned_int;
2789
2790   function vec_perm
2791     (A : vector_bool_int;
2792      B : vector_bool_int;
2793      C : vector_unsigned_char) return vector_bool_int;
2794
2795   function vec_perm
2796     (A : vector_signed_short;
2797      B : vector_signed_short;
2798      C : vector_unsigned_char) return vector_signed_short;
2799
2800   function vec_perm
2801     (A : vector_unsigned_short;
2802      B : vector_unsigned_short;
2803      C : vector_unsigned_char) return vector_unsigned_short;
2804
2805   function vec_perm
2806     (A : vector_bool_short;
2807      B : vector_bool_short;
2808      C : vector_unsigned_char) return vector_bool_short;
2809
2810   function vec_perm
2811     (A : vector_pixel;
2812      B : vector_pixel;
2813      C : vector_unsigned_char) return vector_pixel;
2814
2815   function vec_perm
2816     (A : vector_signed_char;
2817      B : vector_signed_char;
2818      C : vector_unsigned_char) return vector_signed_char;
2819
2820   function vec_perm
2821     (A : vector_unsigned_char;
2822      B : vector_unsigned_char;
2823      C : vector_unsigned_char) return vector_unsigned_char;
2824
2825   function vec_perm
2826     (A : vector_bool_char;
2827      B : vector_bool_char;
2828      C : vector_unsigned_char) return vector_bool_char;
2829
2830   -- vec_re --
2831
2832   function vec_re
2833     (A : vector_float) return vector_float;
2834
2835   -- vec_rl --
2836
2837   function vec_rl
2838     (A : vector_signed_char;
2839      B : vector_unsigned_char) return vector_signed_char;
2840
2841   function vec_rl
2842     (A : vector_unsigned_char;
2843      B : vector_unsigned_char) return vector_unsigned_char;
2844
2845   function vec_rl
2846     (A : vector_signed_short;
2847      B : vector_unsigned_short) return vector_signed_short;
2848
2849   function vec_rl
2850     (A : vector_unsigned_short;
2851      B : vector_unsigned_short) return vector_unsigned_short;
2852
2853   function vec_rl
2854     (A : vector_signed_int;
2855      B : vector_unsigned_int) return vector_signed_int;
2856
2857   function vec_rl
2858     (A : vector_unsigned_int;
2859      B : vector_unsigned_int) return vector_unsigned_int;
2860
2861   -- vec_vrlw --
2862
2863   function vec_vrlw
2864     (A : vector_signed_int;
2865      B : vector_unsigned_int) return vector_signed_int;
2866
2867   function vec_vrlw
2868     (A : vector_unsigned_int;
2869      B : vector_unsigned_int) return vector_unsigned_int;
2870
2871   -- vec_vrlh --
2872
2873   function vec_vrlh
2874     (A : vector_signed_short;
2875      B : vector_unsigned_short) return vector_signed_short;
2876
2877   function vec_vrlh
2878     (A : vector_unsigned_short;
2879      B : vector_unsigned_short) return vector_unsigned_short;
2880
2881   -- vec_vrlb --
2882
2883   function vec_vrlb
2884     (A : vector_signed_char;
2885      B : vector_unsigned_char) return vector_signed_char;
2886
2887   function vec_vrlb
2888     (A : vector_unsigned_char;
2889      B : vector_unsigned_char) return vector_unsigned_char;
2890
2891   -- vec_round --
2892
2893   function vec_round
2894     (A : vector_float) return vector_float;
2895
2896   -- vec_rsqrte --
2897
2898   function vec_rsqrte
2899     (A : vector_float) return vector_float;
2900
2901   -- vec_sel --
2902
2903   function vec_sel
2904     (A : vector_float;
2905      B : vector_float;
2906      C : vector_bool_int) return vector_float;
2907
2908   function vec_sel
2909     (A : vector_float;
2910      B : vector_float;
2911      C : vector_unsigned_int) return vector_float;
2912
2913   function vec_sel
2914     (A : vector_signed_int;
2915      B : vector_signed_int;
2916      C : vector_bool_int) return vector_signed_int;
2917
2918   function vec_sel
2919     (A : vector_signed_int;
2920      B : vector_signed_int;
2921      C : vector_unsigned_int) return vector_signed_int;
2922
2923   function vec_sel
2924     (A : vector_unsigned_int;
2925      B : vector_unsigned_int;
2926      C : vector_bool_int) return vector_unsigned_int;
2927
2928   function vec_sel
2929     (A : vector_unsigned_int;
2930      B : vector_unsigned_int;
2931      C : vector_unsigned_int) return vector_unsigned_int;
2932
2933   function vec_sel
2934     (A : vector_bool_int;
2935      B : vector_bool_int;
2936      C : vector_bool_int) return vector_bool_int;
2937
2938   function vec_sel
2939     (A : vector_bool_int;
2940      B : vector_bool_int;
2941      C : vector_unsigned_int) return vector_bool_int;
2942
2943   function vec_sel
2944     (A : vector_signed_short;
2945      B : vector_signed_short;
2946      C : vector_bool_short) return vector_signed_short;
2947
2948   function vec_sel
2949     (A : vector_signed_short;
2950      B : vector_signed_short;
2951      C : vector_unsigned_short) return vector_signed_short;
2952
2953   function vec_sel
2954     (A : vector_unsigned_short;
2955      B : vector_unsigned_short;
2956      C : vector_bool_short) return vector_unsigned_short;
2957
2958   function vec_sel
2959     (A : vector_unsigned_short;
2960      B : vector_unsigned_short;
2961      C : vector_unsigned_short) return vector_unsigned_short;
2962
2963   function vec_sel
2964     (A : vector_bool_short;
2965      B : vector_bool_short;
2966      C : vector_bool_short) return vector_bool_short;
2967
2968   function vec_sel
2969     (A : vector_bool_short;
2970      B : vector_bool_short;
2971      C : vector_unsigned_short) return vector_bool_short;
2972
2973   function vec_sel
2974     (A : vector_signed_char;
2975      B : vector_signed_char;
2976      C : vector_bool_char) return vector_signed_char;
2977
2978   function vec_sel
2979     (A : vector_signed_char;
2980      B : vector_signed_char;
2981      C : vector_unsigned_char) return vector_signed_char;
2982
2983   function vec_sel
2984     (A : vector_unsigned_char;
2985      B : vector_unsigned_char;
2986      C : vector_bool_char) return vector_unsigned_char;
2987
2988   function vec_sel
2989     (A : vector_unsigned_char;
2990      B : vector_unsigned_char;
2991      C : vector_unsigned_char) return vector_unsigned_char;
2992
2993   function vec_sel
2994     (A : vector_bool_char;
2995      B : vector_bool_char;
2996      C : vector_bool_char) return vector_bool_char;
2997
2998   function vec_sel
2999     (A : vector_bool_char;
3000      B : vector_bool_char;
3001      C : vector_unsigned_char) return vector_bool_char;
3002
3003   -- vec_sl --
3004
3005   function vec_sl
3006     (A : vector_signed_char;
3007      B : vector_unsigned_char) return vector_signed_char;
3008
3009   function vec_sl
3010     (A : vector_unsigned_char;
3011      B : vector_unsigned_char) return vector_unsigned_char;
3012
3013   function vec_sl
3014     (A : vector_signed_short;
3015      B : vector_unsigned_short) return vector_signed_short;
3016
3017   function vec_sl
3018     (A : vector_unsigned_short;
3019      B : vector_unsigned_short) return vector_unsigned_short;
3020
3021   function vec_sl
3022     (A : vector_signed_int;
3023      B : vector_unsigned_int) return vector_signed_int;
3024
3025   function vec_sl
3026     (A : vector_unsigned_int;
3027      B : vector_unsigned_int) return vector_unsigned_int;
3028
3029   -- vec_vslw --
3030
3031   function vec_vslw
3032     (A : vector_signed_int;
3033      B : vector_unsigned_int) return vector_signed_int;
3034
3035   function vec_vslw
3036     (A : vector_unsigned_int;
3037      B : vector_unsigned_int) return vector_unsigned_int;
3038
3039   -- vec_vslh --
3040
3041   function vec_vslh
3042     (A : vector_signed_short;
3043      B : vector_unsigned_short) return vector_signed_short;
3044
3045   function vec_vslh
3046     (A : vector_unsigned_short;
3047      B : vector_unsigned_short) return vector_unsigned_short;
3048
3049   -- vec_vslb --
3050
3051   function vec_vslb
3052     (A : vector_signed_char;
3053      B : vector_unsigned_char) return vector_signed_char;
3054
3055   function vec_vslb
3056     (A : vector_unsigned_char;
3057      B : vector_unsigned_char) return vector_unsigned_char;
3058
3059   -- vec_sld --
3060
3061   function vec_sld
3062     (A : vector_float;
3063      B : vector_float;
3064      C : c_int) return vector_float
3065   renames Low_Level_Interface.vec_sld_vf_vf_cint_r_vf;
3066
3067   function vec_sld
3068     (A : vector_signed_int;
3069      B : vector_signed_int;
3070      C : c_int) return vector_signed_int
3071   renames Low_Level_Interface.vec_sld_vsi_vsi_cint_r_vsi;
3072
3073   function vec_sld
3074     (A : vector_unsigned_int;
3075      B : vector_unsigned_int;
3076      C : c_int) return vector_unsigned_int
3077   renames Low_Level_Interface.vec_sld_vui_vui_cint_r_vui;
3078
3079   function vec_sld
3080     (A : vector_bool_int;
3081      B : vector_bool_int;
3082      C : c_int) return vector_bool_int
3083   renames Low_Level_Interface.vec_sld_vbi_vbi_cint_r_vbi;
3084
3085   function vec_sld
3086     (A : vector_signed_short;
3087      B : vector_signed_short;
3088      C : c_int) return vector_signed_short
3089   renames Low_Level_Interface.vec_sld_vss_vss_cint_r_vss;
3090
3091   function vec_sld
3092     (A : vector_unsigned_short;
3093      B : vector_unsigned_short;
3094      C : c_int) return vector_unsigned_short
3095   renames Low_Level_Interface.vec_sld_vus_vus_cint_r_vus;
3096
3097   function vec_sld
3098     (A : vector_bool_short;
3099      B : vector_bool_short;
3100      C : c_int) return vector_bool_short
3101   renames Low_Level_Interface.vec_sld_vbs_vbs_cint_r_vbs;
3102
3103   function vec_sld
3104     (A : vector_pixel;
3105      B : vector_pixel;
3106      C : c_int) return vector_pixel
3107   renames Low_Level_Interface.vec_sld_vx_vx_cint_r_vx;
3108
3109   function vec_sld
3110     (A : vector_signed_char;
3111      B : vector_signed_char;
3112      C : c_int) return vector_signed_char
3113   renames Low_Level_Interface.vec_sld_vsc_vsc_cint_r_vsc;
3114
3115   function vec_sld
3116     (A : vector_unsigned_char;
3117      B : vector_unsigned_char;
3118      C : c_int) return vector_unsigned_char
3119   renames Low_Level_Interface.vec_sld_vuc_vuc_cint_r_vuc;
3120
3121   function vec_sld
3122     (A : vector_bool_char;
3123      B : vector_bool_char;
3124      C : c_int) return vector_bool_char
3125   renames Low_Level_Interface.vec_sld_vbc_vbc_cint_r_vbc;
3126
3127   -- vec_sll --
3128
3129   function vec_sll
3130     (A : vector_signed_int;
3131      B : vector_unsigned_int) return vector_signed_int;
3132
3133   function vec_sll
3134     (A : vector_signed_int;
3135      B : vector_unsigned_short) return vector_signed_int;
3136
3137   function vec_sll
3138     (A : vector_signed_int;
3139      B : vector_unsigned_char) return vector_signed_int;
3140
3141   function vec_sll
3142     (A : vector_unsigned_int;
3143      B : vector_unsigned_int) return vector_unsigned_int;
3144
3145   function vec_sll
3146     (A : vector_unsigned_int;
3147      B : vector_unsigned_short) return vector_unsigned_int;
3148
3149   function vec_sll
3150     (A : vector_unsigned_int;
3151      B : vector_unsigned_char) return vector_unsigned_int;
3152
3153   function vec_sll
3154     (A : vector_bool_int;
3155      B : vector_unsigned_int) return vector_bool_int;
3156
3157   function vec_sll
3158     (A : vector_bool_int;
3159      B : vector_unsigned_short) return vector_bool_int;
3160
3161   function vec_sll
3162     (A : vector_bool_int;
3163      B : vector_unsigned_char) return vector_bool_int;
3164
3165   function vec_sll
3166     (A : vector_signed_short;
3167      B : vector_unsigned_int) return vector_signed_short;
3168
3169   function vec_sll
3170     (A : vector_signed_short;
3171      B : vector_unsigned_short) return vector_signed_short;
3172
3173   function vec_sll
3174     (A : vector_signed_short;
3175      B : vector_unsigned_char) return vector_signed_short;
3176
3177   function vec_sll
3178     (A : vector_unsigned_short;
3179      B : vector_unsigned_int) return vector_unsigned_short;
3180
3181   function vec_sll
3182     (A : vector_unsigned_short;
3183      B : vector_unsigned_short) return vector_unsigned_short;
3184
3185   function vec_sll
3186     (A : vector_unsigned_short;
3187      B : vector_unsigned_char) return vector_unsigned_short;
3188
3189   function vec_sll
3190     (A : vector_bool_short;
3191      B : vector_unsigned_int) return vector_bool_short;
3192
3193   function vec_sll
3194     (A : vector_bool_short;
3195      B : vector_unsigned_short) return vector_bool_short;
3196
3197   function vec_sll
3198     (A : vector_bool_short;
3199      B : vector_unsigned_char) return vector_bool_short;
3200
3201   function vec_sll
3202     (A : vector_pixel;
3203      B : vector_unsigned_int) return vector_pixel;
3204
3205   function vec_sll
3206     (A : vector_pixel;
3207      B : vector_unsigned_short) return vector_pixel;
3208
3209   function vec_sll
3210     (A : vector_pixel;
3211      B : vector_unsigned_char) return vector_pixel;
3212
3213   function vec_sll
3214     (A : vector_signed_char;
3215      B : vector_unsigned_int) return vector_signed_char;
3216
3217   function vec_sll
3218     (A : vector_signed_char;
3219      B : vector_unsigned_short) return vector_signed_char;
3220
3221   function vec_sll
3222     (A : vector_signed_char;
3223      B : vector_unsigned_char) return vector_signed_char;
3224
3225   function vec_sll
3226     (A : vector_unsigned_char;
3227      B : vector_unsigned_int) return vector_unsigned_char;
3228
3229   function vec_sll
3230     (A : vector_unsigned_char;
3231      B : vector_unsigned_short) return vector_unsigned_char;
3232
3233   function vec_sll
3234     (A : vector_unsigned_char;
3235      B : vector_unsigned_char) return vector_unsigned_char;
3236
3237   function vec_sll
3238     (A : vector_bool_char;
3239      B : vector_unsigned_int) return vector_bool_char;
3240
3241   function vec_sll
3242     (A : vector_bool_char;
3243      B : vector_unsigned_short) return vector_bool_char;
3244
3245   function vec_sll
3246     (A : vector_bool_char;
3247      B : vector_unsigned_char) return vector_bool_char;
3248
3249   -- vec_slo --
3250
3251   function vec_slo
3252     (A : vector_float;
3253      B : vector_signed_char) return vector_float;
3254
3255   function vec_slo
3256     (A : vector_float;
3257      B : vector_unsigned_char) return vector_float;
3258
3259   function vec_slo
3260     (A : vector_signed_int;
3261      B : vector_signed_char) return vector_signed_int;
3262
3263   function vec_slo
3264     (A : vector_signed_int;
3265      B : vector_unsigned_char) return vector_signed_int;
3266
3267   function vec_slo
3268     (A : vector_unsigned_int;
3269      B : vector_signed_char) return vector_unsigned_int;
3270
3271   function vec_slo
3272     (A : vector_unsigned_int;
3273      B : vector_unsigned_char) return vector_unsigned_int;
3274
3275   function vec_slo
3276     (A : vector_signed_short;
3277      B : vector_signed_char) return vector_signed_short;
3278
3279   function vec_slo
3280     (A : vector_signed_short;
3281      B : vector_unsigned_char) return vector_signed_short;
3282
3283   function vec_slo
3284     (A : vector_unsigned_short;
3285      B : vector_signed_char) return vector_unsigned_short;
3286
3287   function vec_slo
3288     (A : vector_unsigned_short;
3289      B : vector_unsigned_char) return vector_unsigned_short;
3290
3291   function vec_slo
3292     (A : vector_pixel;
3293      B : vector_signed_char) return vector_pixel;
3294
3295   function vec_slo
3296     (A : vector_pixel;
3297      B : vector_unsigned_char) return vector_pixel;
3298
3299   function vec_slo
3300     (A : vector_signed_char;
3301      B : vector_signed_char) return vector_signed_char;
3302
3303   function vec_slo
3304     (A : vector_signed_char;
3305      B : vector_unsigned_char) return vector_signed_char;
3306
3307   function vec_slo
3308     (A : vector_unsigned_char;
3309      B : vector_signed_char) return vector_unsigned_char;
3310
3311   function vec_slo
3312     (A : vector_unsigned_char;
3313      B : vector_unsigned_char) return vector_unsigned_char;
3314
3315   -- vec_splat --
3316
3317   function vec_splat
3318     (A : vector_signed_char;
3319      B : c_int) return vector_signed_char
3320   renames Low_Level_Interface.vec_splat_vsc_cint_r_vsc;
3321
3322   function vec_splat
3323     (A : vector_unsigned_char;
3324      B : c_int) return vector_unsigned_char
3325   renames Low_Level_Interface.vec_splat_vuc_cint_r_vuc;
3326
3327   function vec_splat
3328     (A : vector_bool_char;
3329      B : c_int) return vector_bool_char
3330   renames Low_Level_Interface.vec_splat_vbc_cint_r_vbc;
3331
3332   function vec_splat
3333     (A : vector_signed_short;
3334      B : c_int) return vector_signed_short
3335   renames Low_Level_Interface.vec_splat_vss_cint_r_vss;
3336
3337   function vec_splat
3338     (A : vector_unsigned_short;
3339      B : c_int) return vector_unsigned_short
3340   renames Low_Level_Interface.vec_splat_vus_cint_r_vus;
3341
3342   function vec_splat
3343     (A : vector_bool_short;
3344      B : c_int) return vector_bool_short
3345   renames Low_Level_Interface.vec_splat_vbs_cint_r_vbs;
3346
3347   function vec_splat
3348     (A : vector_pixel;
3349      B : c_int) return vector_pixel
3350   renames Low_Level_Interface.vec_splat_vx_cint_r_vx;
3351
3352   function vec_splat
3353     (A : vector_float;
3354      B : c_int) return vector_float
3355   renames Low_Level_Interface.vec_splat_vf_cint_r_vf;
3356
3357   function vec_splat
3358     (A : vector_signed_int;
3359      B : c_int) return vector_signed_int
3360   renames Low_Level_Interface.vec_splat_vsi_cint_r_vsi;
3361
3362   function vec_splat
3363     (A : vector_unsigned_int;
3364      B : c_int) return vector_unsigned_int
3365   renames Low_Level_Interface.vec_splat_vui_cint_r_vui;
3366
3367   function vec_splat
3368     (A : vector_bool_int;
3369      B : c_int) return vector_bool_int
3370   renames Low_Level_Interface.vec_splat_vbi_cint_r_vbi;
3371
3372   -- vec_vspltw --
3373
3374   function vec_vspltw
3375     (A : vector_float;
3376      B : c_int) return vector_float
3377   renames Low_Level_Interface.vec_vspltw_vf_cint_r_vf;
3378
3379   function vec_vspltw
3380     (A : vector_signed_int;
3381      B : c_int) return vector_signed_int
3382   renames Low_Level_Interface.vec_vspltw_vsi_cint_r_vsi;
3383
3384   function vec_vspltw
3385     (A : vector_unsigned_int;
3386      B : c_int) return vector_unsigned_int
3387   renames Low_Level_Interface.vec_vspltw_vui_cint_r_vui;
3388
3389   function vec_vspltw
3390     (A : vector_bool_int;
3391      B : c_int) return vector_bool_int
3392   renames Low_Level_Interface.vec_vspltw_vbi_cint_r_vbi;
3393
3394   -- vec_vsplth --
3395
3396   function vec_vsplth
3397     (A : vector_bool_short;
3398      B : c_int) return vector_bool_short
3399   renames Low_Level_Interface.vec_vsplth_vbs_cint_r_vbs;
3400
3401   function vec_vsplth
3402     (A : vector_signed_short;
3403      B : c_int) return vector_signed_short
3404   renames Low_Level_Interface.vec_vsplth_vss_cint_r_vss;
3405
3406   function vec_vsplth
3407     (A : vector_unsigned_short;
3408      B : c_int) return vector_unsigned_short
3409   renames Low_Level_Interface.vec_vsplth_vus_cint_r_vus;
3410
3411   function vec_vsplth
3412     (A : vector_pixel;
3413      B : c_int) return vector_pixel
3414   renames Low_Level_Interface.vec_vsplth_vx_cint_r_vx;
3415
3416   -- vec_vspltb --
3417
3418   function vec_vspltb
3419     (A : vector_signed_char;
3420      B : c_int) return vector_signed_char
3421   renames Low_Level_Interface.vec_vspltb_vsc_cint_r_vsc;
3422
3423   function vec_vspltb
3424     (A : vector_unsigned_char;
3425      B : c_int) return vector_unsigned_char
3426   renames Low_Level_Interface.vec_vspltb_vuc_cint_r_vuc;
3427
3428   function vec_vspltb
3429     (A : vector_bool_char;
3430      B : c_int) return vector_bool_char
3431   renames Low_Level_Interface.vec_vspltb_vbc_cint_r_vbc;
3432
3433   -- vec_splat_s8 --
3434
3435   function vec_splat_s8
3436     (A : c_int) return vector_signed_char
3437   renames Low_Level_Interface.vec_splat_s8_cint_r_vsc;
3438
3439   -- vec_splat_s16 --
3440
3441   function vec_splat_s16
3442     (A : c_int) return vector_signed_short
3443   renames Low_Level_Interface.vec_splat_s16_cint_r_vss;
3444
3445   -- vec_splat_s32 --
3446
3447   function vec_splat_s32
3448     (A : c_int) return vector_signed_int
3449   renames Low_Level_Interface.vec_splat_s32_cint_r_vsi;
3450
3451   -- vec_splat_u8 --
3452
3453   function vec_splat_u8
3454     (A : c_int) return vector_unsigned_char
3455   renames Low_Level_Interface.vec_splat_u8_cint_r_vuc;
3456
3457   -- vec_splat_u16 --
3458
3459   function vec_splat_u16
3460     (A : c_int) return vector_unsigned_short
3461   renames Low_Level_Interface.vec_splat_u16_cint_r_vus;
3462
3463   -- vec_splat_u32 --
3464
3465   function vec_splat_u32
3466     (A : c_int) return vector_unsigned_int
3467   renames Low_Level_Interface.vec_splat_u32_cint_r_vui;
3468
3469   -- vec_sr --
3470
3471   function vec_sr
3472     (A : vector_signed_char;
3473      B : vector_unsigned_char) return vector_signed_char;
3474
3475   function vec_sr
3476     (A : vector_unsigned_char;
3477      B : vector_unsigned_char) return vector_unsigned_char;
3478
3479   function vec_sr
3480     (A : vector_signed_short;
3481      B : vector_unsigned_short) return vector_signed_short;
3482
3483   function vec_sr
3484     (A : vector_unsigned_short;
3485      B : vector_unsigned_short) return vector_unsigned_short;
3486
3487   function vec_sr
3488     (A : vector_signed_int;
3489      B : vector_unsigned_int) return vector_signed_int;
3490
3491   function vec_sr
3492     (A : vector_unsigned_int;
3493      B : vector_unsigned_int) return vector_unsigned_int;
3494
3495   -- vec_vsrw --
3496
3497   function vec_vsrw
3498     (A : vector_signed_int;
3499      B : vector_unsigned_int) return vector_signed_int;
3500
3501   function vec_vsrw
3502     (A : vector_unsigned_int;
3503      B : vector_unsigned_int) return vector_unsigned_int;
3504
3505   -- vec_vsrh --
3506
3507   function vec_vsrh
3508     (A : vector_signed_short;
3509      B : vector_unsigned_short) return vector_signed_short;
3510
3511   function vec_vsrh
3512     (A : vector_unsigned_short;
3513      B : vector_unsigned_short) return vector_unsigned_short;
3514
3515   -- vec_vsrb --
3516
3517   function vec_vsrb
3518     (A : vector_signed_char;
3519      B : vector_unsigned_char) return vector_signed_char;
3520
3521   function vec_vsrb
3522     (A : vector_unsigned_char;
3523      B : vector_unsigned_char) return vector_unsigned_char;
3524
3525   -- vec_sra --
3526
3527   function vec_sra
3528     (A : vector_signed_char;
3529      B : vector_unsigned_char) return vector_signed_char;
3530
3531   function vec_sra
3532     (A : vector_unsigned_char;
3533      B : vector_unsigned_char) return vector_unsigned_char;
3534
3535   function vec_sra
3536     (A : vector_signed_short;
3537      B : vector_unsigned_short) return vector_signed_short;
3538
3539   function vec_sra
3540     (A : vector_unsigned_short;
3541      B : vector_unsigned_short) return vector_unsigned_short;
3542
3543   function vec_sra
3544     (A : vector_signed_int;
3545      B : vector_unsigned_int) return vector_signed_int;
3546
3547   function vec_sra
3548     (A : vector_unsigned_int;
3549      B : vector_unsigned_int) return vector_unsigned_int;
3550
3551   -- vec_vsraw --
3552
3553   function vec_vsraw
3554     (A : vector_signed_int;
3555      B : vector_unsigned_int) return vector_signed_int;
3556
3557   function vec_vsraw
3558     (A : vector_unsigned_int;
3559      B : vector_unsigned_int) return vector_unsigned_int;
3560
3561   -- vec_vsrah --
3562
3563   function vec_vsrah
3564     (A : vector_signed_short;
3565      B : vector_unsigned_short) return vector_signed_short;
3566
3567   function vec_vsrah
3568     (A : vector_unsigned_short;
3569      B : vector_unsigned_short) return vector_unsigned_short;
3570
3571   -- vec_vsrab --
3572
3573   function vec_vsrab
3574     (A : vector_signed_char;
3575      B : vector_unsigned_char) return vector_signed_char;
3576
3577   function vec_vsrab
3578     (A : vector_unsigned_char;
3579      B : vector_unsigned_char) return vector_unsigned_char;
3580
3581   -- vec_srl --
3582
3583   function vec_srl
3584     (A : vector_signed_int;
3585      B : vector_unsigned_int) return vector_signed_int;
3586
3587   function vec_srl
3588     (A : vector_signed_int;
3589      B : vector_unsigned_short) return vector_signed_int;
3590
3591   function vec_srl
3592     (A : vector_signed_int;
3593      B : vector_unsigned_char) return vector_signed_int;
3594
3595   function vec_srl
3596     (A : vector_unsigned_int;
3597      B : vector_unsigned_int) return vector_unsigned_int;
3598
3599   function vec_srl
3600     (A : vector_unsigned_int;
3601      B : vector_unsigned_short) return vector_unsigned_int;
3602
3603   function vec_srl
3604     (A : vector_unsigned_int;
3605      B : vector_unsigned_char) return vector_unsigned_int;
3606
3607   function vec_srl
3608     (A : vector_bool_int;
3609      B : vector_unsigned_int) return vector_bool_int;
3610
3611   function vec_srl
3612     (A : vector_bool_int;
3613      B : vector_unsigned_short) return vector_bool_int;
3614
3615   function vec_srl
3616     (A : vector_bool_int;
3617      B : vector_unsigned_char) return vector_bool_int;
3618
3619   function vec_srl
3620     (A : vector_signed_short;
3621      B : vector_unsigned_int) return vector_signed_short;
3622
3623   function vec_srl
3624     (A : vector_signed_short;
3625      B : vector_unsigned_short) return vector_signed_short;
3626
3627   function vec_srl
3628     (A : vector_signed_short;
3629      B : vector_unsigned_char) return vector_signed_short;
3630
3631   function vec_srl
3632     (A : vector_unsigned_short;
3633      B : vector_unsigned_int) return vector_unsigned_short;
3634
3635   function vec_srl
3636     (A : vector_unsigned_short;
3637      B : vector_unsigned_short) return vector_unsigned_short;
3638
3639   function vec_srl
3640     (A : vector_unsigned_short;
3641      B : vector_unsigned_char) return vector_unsigned_short;
3642
3643   function vec_srl
3644     (A : vector_bool_short;
3645      B : vector_unsigned_int) return vector_bool_short;
3646
3647   function vec_srl
3648     (A : vector_bool_short;
3649      B : vector_unsigned_short) return vector_bool_short;
3650
3651   function vec_srl
3652     (A : vector_bool_short;
3653      B : vector_unsigned_char) return vector_bool_short;
3654
3655   function vec_srl
3656     (A : vector_pixel;
3657      B : vector_unsigned_int) return vector_pixel;
3658
3659   function vec_srl
3660     (A : vector_pixel;
3661      B : vector_unsigned_short) return vector_pixel;
3662
3663   function vec_srl
3664     (A : vector_pixel;
3665      B : vector_unsigned_char) return vector_pixel;
3666
3667   function vec_srl
3668     (A : vector_signed_char;
3669      B : vector_unsigned_int) return vector_signed_char;
3670
3671   function vec_srl
3672     (A : vector_signed_char;
3673      B : vector_unsigned_short) return vector_signed_char;
3674
3675   function vec_srl
3676     (A : vector_signed_char;
3677      B : vector_unsigned_char) return vector_signed_char;
3678
3679   function vec_srl
3680     (A : vector_unsigned_char;
3681      B : vector_unsigned_int) return vector_unsigned_char;
3682
3683   function vec_srl
3684     (A : vector_unsigned_char;
3685      B : vector_unsigned_short) return vector_unsigned_char;
3686
3687   function vec_srl
3688     (A : vector_unsigned_char;
3689      B : vector_unsigned_char) return vector_unsigned_char;
3690
3691   function vec_srl
3692     (A : vector_bool_char;
3693      B : vector_unsigned_int) return vector_bool_char;
3694
3695   function vec_srl
3696     (A : vector_bool_char;
3697      B : vector_unsigned_short) return vector_bool_char;
3698
3699   function vec_srl
3700     (A : vector_bool_char;
3701      B : vector_unsigned_char) return vector_bool_char;
3702
3703   -- vec_sro --
3704
3705   function vec_sro
3706     (A : vector_float;
3707      B : vector_signed_char) return vector_float;
3708
3709   function vec_sro
3710     (A : vector_float;
3711      B : vector_unsigned_char) return vector_float;
3712
3713   function vec_sro
3714     (A : vector_signed_int;
3715      B : vector_signed_char) return vector_signed_int;
3716
3717   function vec_sro
3718     (A : vector_signed_int;
3719      B : vector_unsigned_char) return vector_signed_int;
3720
3721   function vec_sro
3722     (A : vector_unsigned_int;
3723      B : vector_signed_char) return vector_unsigned_int;
3724
3725   function vec_sro
3726     (A : vector_unsigned_int;
3727      B : vector_unsigned_char) return vector_unsigned_int;
3728
3729   function vec_sro
3730     (A : vector_signed_short;
3731      B : vector_signed_char) return vector_signed_short;
3732
3733   function vec_sro
3734     (A : vector_signed_short;
3735      B : vector_unsigned_char) return vector_signed_short;
3736
3737   function vec_sro
3738     (A : vector_unsigned_short;
3739      B : vector_signed_char) return vector_unsigned_short;
3740
3741   function vec_sro
3742     (A : vector_unsigned_short;
3743      B : vector_unsigned_char) return vector_unsigned_short;
3744
3745   function vec_sro
3746     (A : vector_pixel;
3747      B : vector_signed_char) return vector_pixel;
3748
3749   function vec_sro
3750     (A : vector_pixel;
3751      B : vector_unsigned_char) return vector_pixel;
3752
3753   function vec_sro
3754     (A : vector_signed_char;
3755      B : vector_signed_char) return vector_signed_char;
3756
3757   function vec_sro
3758     (A : vector_signed_char;
3759      B : vector_unsigned_char) return vector_signed_char;
3760
3761   function vec_sro
3762     (A : vector_unsigned_char;
3763      B : vector_signed_char) return vector_unsigned_char;
3764
3765   function vec_sro
3766     (A : vector_unsigned_char;
3767      B : vector_unsigned_char) return vector_unsigned_char;
3768
3769   -- vec_st --
3770
3771   procedure vec_st
3772     (A : vector_float;
3773      B : c_int;
3774      C : vector_float_ptr);
3775
3776   procedure vec_st
3777     (A : vector_float;
3778      B : c_int;
3779      C : float_ptr);
3780
3781   procedure vec_st
3782     (A : vector_signed_int;
3783      B : c_int;
3784      C : vector_signed_int_ptr);
3785
3786   procedure vec_st
3787     (A : vector_signed_int;
3788      B : c_int;
3789      C : int_ptr);
3790
3791   procedure vec_st
3792     (A : vector_unsigned_int;
3793      B : c_int;
3794      C : vector_unsigned_int_ptr);
3795
3796   procedure vec_st
3797     (A : vector_unsigned_int;
3798      B : c_int;
3799      C : unsigned_int_ptr);
3800
3801   procedure vec_st
3802     (A : vector_bool_int;
3803      B : c_int;
3804      C : vector_bool_int_ptr);
3805
3806   procedure vec_st
3807     (A : vector_bool_int;
3808      B : c_int;
3809      C : unsigned_int_ptr);
3810
3811   procedure vec_st
3812     (A : vector_bool_int;
3813      B : c_int;
3814      C : int_ptr);
3815
3816   procedure vec_st
3817     (A : vector_signed_short;
3818      B : c_int;
3819      C : vector_signed_short_ptr);
3820
3821   procedure vec_st
3822     (A : vector_signed_short;
3823      B : c_int;
3824      C : short_ptr);
3825
3826   procedure vec_st
3827     (A : vector_unsigned_short;
3828      B : c_int;
3829      C : vector_unsigned_short_ptr);
3830
3831   procedure vec_st
3832     (A : vector_unsigned_short;
3833      B : c_int;
3834      C : unsigned_short_ptr);
3835
3836   procedure vec_st
3837     (A : vector_bool_short;
3838      B : c_int;
3839      C : vector_bool_short_ptr);
3840
3841   procedure vec_st
3842     (A : vector_bool_short;
3843      B : c_int;
3844      C : unsigned_short_ptr);
3845
3846   procedure vec_st
3847     (A : vector_pixel;
3848      B : c_int;
3849      C : vector_pixel_ptr);
3850
3851   procedure vec_st
3852     (A : vector_pixel;
3853      B : c_int;
3854      C : unsigned_short_ptr);
3855
3856   procedure vec_st
3857     (A : vector_pixel;
3858      B : c_int;
3859      C : short_ptr);
3860
3861   procedure vec_st
3862     (A : vector_bool_short;
3863      B : c_int;
3864      C : short_ptr);
3865
3866   procedure vec_st
3867     (A : vector_signed_char;
3868      B : c_int;
3869      C : vector_signed_char_ptr);
3870
3871   procedure vec_st
3872     (A : vector_signed_char;
3873      B : c_int;
3874      C : signed_char_ptr);
3875
3876   procedure vec_st
3877     (A : vector_unsigned_char;
3878      B : c_int;
3879      C : vector_unsigned_char_ptr);
3880
3881   procedure vec_st
3882     (A : vector_unsigned_char;
3883      B : c_int;
3884      C : unsigned_char_ptr);
3885
3886   procedure vec_st
3887     (A : vector_bool_char;
3888      B : c_int;
3889      C : vector_bool_char_ptr);
3890
3891   procedure vec_st
3892     (A : vector_bool_char;
3893      B : c_int;
3894      C : unsigned_char_ptr);
3895
3896   procedure vec_st
3897     (A : vector_bool_char;
3898      B : c_int;
3899      C : signed_char_ptr);
3900
3901   -- vec_ste --
3902
3903   procedure vec_ste
3904     (A : vector_signed_char;
3905      B : c_int;
3906      C : signed_char_ptr);
3907
3908   procedure vec_ste
3909     (A : vector_unsigned_char;
3910      B : c_int;
3911      C : unsigned_char_ptr);
3912
3913   procedure vec_ste
3914     (A : vector_bool_char;
3915      B : c_int;
3916      C : signed_char_ptr);
3917
3918   procedure vec_ste
3919     (A : vector_bool_char;
3920      B : c_int;
3921      C : unsigned_char_ptr);
3922
3923   procedure vec_ste
3924     (A : vector_signed_short;
3925      B : c_int;
3926      C : short_ptr);
3927
3928   procedure vec_ste
3929     (A : vector_unsigned_short;
3930      B : c_int;
3931      C : unsigned_short_ptr);
3932
3933   procedure vec_ste
3934     (A : vector_bool_short;
3935      B : c_int;
3936      C : short_ptr);
3937
3938   procedure vec_ste
3939     (A : vector_bool_short;
3940      B : c_int;
3941      C : unsigned_short_ptr);
3942
3943   procedure vec_ste
3944     (A : vector_pixel;
3945      B : c_int;
3946      C : short_ptr);
3947
3948   procedure vec_ste
3949     (A : vector_pixel;
3950      B : c_int;
3951      C : unsigned_short_ptr);
3952
3953   procedure vec_ste
3954     (A : vector_float;
3955      B : c_int;
3956      C : float_ptr);
3957
3958   procedure vec_ste
3959     (A : vector_signed_int;
3960      B : c_int;
3961      C : int_ptr);
3962
3963   procedure vec_ste
3964     (A : vector_unsigned_int;
3965      B : c_int;
3966      C : unsigned_int_ptr);
3967
3968   procedure vec_ste
3969     (A : vector_bool_int;
3970      B : c_int;
3971      C : int_ptr);
3972
3973   procedure vec_ste
3974     (A : vector_bool_int;
3975      B : c_int;
3976      C : unsigned_int_ptr);
3977
3978   -- vec_stvewx --
3979
3980   procedure vec_stvewx
3981     (A : vector_float;
3982      B : c_int;
3983      C : float_ptr);
3984
3985   procedure vec_stvewx
3986     (A : vector_signed_int;
3987      B : c_int;
3988      C : int_ptr);
3989
3990   procedure vec_stvewx
3991     (A : vector_unsigned_int;
3992      B : c_int;
3993      C : unsigned_int_ptr);
3994
3995   procedure vec_stvewx
3996     (A : vector_bool_int;
3997      B : c_int;
3998      C : int_ptr);
3999
4000   procedure vec_stvewx
4001     (A : vector_bool_int;
4002      B : c_int;
4003      C : unsigned_int_ptr);
4004
4005   -- vec_stvehx --
4006
4007   procedure vec_stvehx
4008     (A : vector_signed_short;
4009      B : c_int;
4010      C : short_ptr);
4011
4012   procedure vec_stvehx
4013     (A : vector_unsigned_short;
4014      B : c_int;
4015      C : unsigned_short_ptr);
4016
4017   procedure vec_stvehx
4018     (A : vector_bool_short;
4019      B : c_int;
4020      C : short_ptr);
4021
4022   procedure vec_stvehx
4023     (A : vector_bool_short;
4024      B : c_int;
4025      C : unsigned_short_ptr);
4026
4027   procedure vec_stvehx
4028     (A : vector_pixel;
4029      B : c_int;
4030      C : short_ptr);
4031
4032   procedure vec_stvehx
4033     (A : vector_pixel;
4034      B : c_int;
4035      C : unsigned_short_ptr);
4036
4037   -- vec_stvebx --
4038
4039   procedure vec_stvebx
4040     (A : vector_signed_char;
4041      B : c_int;
4042      C : signed_char_ptr);
4043
4044   procedure vec_stvebx
4045     (A : vector_unsigned_char;
4046      B : c_int;
4047      C : unsigned_char_ptr);
4048
4049   procedure vec_stvebx
4050     (A : vector_bool_char;
4051      B : c_int;
4052      C : signed_char_ptr);
4053
4054   procedure vec_stvebx
4055     (A : vector_bool_char;
4056      B : c_int;
4057      C : unsigned_char_ptr);
4058
4059   -- vec_stl --
4060
4061   procedure vec_stl
4062     (A : vector_float;
4063      B : c_int;
4064      C : vector_float_ptr);
4065
4066   procedure vec_stl
4067     (A : vector_float;
4068      B : c_int;
4069      C : float_ptr);
4070
4071   procedure vec_stl
4072     (A : vector_signed_int;
4073      B : c_int;
4074      C : vector_signed_int_ptr);
4075
4076   procedure vec_stl
4077     (A : vector_signed_int;
4078      B : c_int;
4079      C : int_ptr);
4080
4081   procedure vec_stl
4082     (A : vector_unsigned_int;
4083      B : c_int;
4084      C : vector_unsigned_int_ptr);
4085
4086   procedure vec_stl
4087     (A : vector_unsigned_int;
4088      B : c_int;
4089      C : unsigned_int_ptr);
4090
4091   procedure vec_stl
4092     (A : vector_bool_int;
4093      B : c_int;
4094      C : vector_bool_int_ptr);
4095
4096   procedure vec_stl
4097     (A : vector_bool_int;
4098      B : c_int;
4099      C : unsigned_int_ptr);
4100
4101   procedure vec_stl
4102     (A : vector_bool_int;
4103      B : c_int;
4104      C : int_ptr);
4105
4106   procedure vec_stl
4107     (A : vector_signed_short;
4108      B : c_int;
4109      C : vector_signed_short_ptr);
4110
4111   procedure vec_stl
4112     (A : vector_signed_short;
4113      B : c_int;
4114      C : short_ptr);
4115
4116   procedure vec_stl
4117     (A : vector_unsigned_short;
4118      B : c_int;
4119      C : vector_unsigned_short_ptr);
4120
4121   procedure vec_stl
4122     (A : vector_unsigned_short;
4123      B : c_int;
4124      C : unsigned_short_ptr);
4125
4126   procedure vec_stl
4127     (A : vector_bool_short;
4128      B : c_int;
4129      C : vector_bool_short_ptr);
4130
4131   procedure vec_stl
4132     (A : vector_bool_short;
4133      B : c_int;
4134      C : unsigned_short_ptr);
4135
4136   procedure vec_stl
4137     (A : vector_bool_short;
4138      B : c_int;
4139      C : short_ptr);
4140
4141   procedure vec_stl
4142     (A : vector_pixel;
4143      B : c_int;
4144      C : vector_pixel_ptr);
4145
4146   procedure vec_stl
4147     (A : vector_pixel;
4148      B : c_int;
4149      C : unsigned_short_ptr);
4150
4151   procedure vec_stl
4152     (A : vector_pixel;
4153      B : c_int;
4154      C : short_ptr);
4155
4156   procedure vec_stl
4157     (A : vector_signed_char;
4158      B : c_int;
4159      C : vector_signed_char_ptr);
4160
4161   procedure vec_stl
4162     (A : vector_signed_char;
4163      B : c_int;
4164      C : signed_char_ptr);
4165
4166   procedure vec_stl
4167     (A : vector_unsigned_char;
4168      B : c_int;
4169      C : vector_unsigned_char_ptr);
4170
4171   procedure vec_stl
4172     (A : vector_unsigned_char;
4173      B : c_int;
4174      C : unsigned_char_ptr);
4175
4176   procedure vec_stl
4177     (A : vector_bool_char;
4178      B : c_int;
4179      C : vector_bool_char_ptr);
4180
4181   procedure vec_stl
4182     (A : vector_bool_char;
4183      B : c_int;
4184      C : unsigned_char_ptr);
4185
4186   procedure vec_stl
4187     (A : vector_bool_char;
4188      B : c_int;
4189      C : signed_char_ptr);
4190
4191   -- vec_sub --
4192
4193   function vec_sub
4194     (A : vector_bool_char;
4195      B : vector_signed_char) return vector_signed_char;
4196
4197   function vec_sub
4198     (A : vector_signed_char;
4199      B : vector_bool_char) return vector_signed_char;
4200
4201   function vec_sub
4202     (A : vector_signed_char;
4203      B : vector_signed_char) return vector_signed_char;
4204
4205   function vec_sub
4206     (A : vector_bool_char;
4207      B : vector_unsigned_char) return vector_unsigned_char;
4208
4209   function vec_sub
4210     (A : vector_unsigned_char;
4211      B : vector_bool_char) return vector_unsigned_char;
4212
4213   function vec_sub
4214     (A : vector_unsigned_char;
4215      B : vector_unsigned_char) return vector_unsigned_char;
4216
4217   function vec_sub
4218     (A : vector_bool_short;
4219      B : vector_signed_short) return vector_signed_short;
4220
4221   function vec_sub
4222     (A : vector_signed_short;
4223      B : vector_bool_short) return vector_signed_short;
4224
4225   function vec_sub
4226     (A : vector_signed_short;
4227      B : vector_signed_short) return vector_signed_short;
4228
4229   function vec_sub
4230     (A : vector_bool_short;
4231      B : vector_unsigned_short) return vector_unsigned_short;
4232
4233   function vec_sub
4234     (A : vector_unsigned_short;
4235      B : vector_bool_short) return vector_unsigned_short;
4236
4237   function vec_sub
4238     (A : vector_unsigned_short;
4239      B : vector_unsigned_short) return vector_unsigned_short;
4240
4241   function vec_sub
4242     (A : vector_bool_int;
4243      B : vector_signed_int) return vector_signed_int;
4244
4245   function vec_sub
4246     (A : vector_signed_int;
4247      B : vector_bool_int) return vector_signed_int;
4248
4249   function vec_sub
4250     (A : vector_signed_int;
4251      B : vector_signed_int) return vector_signed_int;
4252
4253   function vec_sub
4254     (A : vector_bool_int;
4255      B : vector_unsigned_int) return vector_unsigned_int;
4256
4257   function vec_sub
4258     (A : vector_unsigned_int;
4259      B : vector_bool_int) return vector_unsigned_int;
4260
4261   function vec_sub
4262     (A : vector_unsigned_int;
4263      B : vector_unsigned_int) return vector_unsigned_int;
4264
4265   function vec_sub
4266     (A : vector_float;
4267      B : vector_float) return vector_float;
4268
4269   -- vec_vsubfp --
4270
4271   function vec_vsubfp
4272     (A : vector_float;
4273      B : vector_float) return vector_float;
4274
4275   -- vec_vsubuwm --
4276
4277   function vec_vsubuwm
4278     (A : vector_bool_int;
4279      B : vector_signed_int) return vector_signed_int;
4280
4281   function vec_vsubuwm
4282     (A : vector_signed_int;
4283      B : vector_bool_int) return vector_signed_int;
4284
4285   function vec_vsubuwm
4286     (A : vector_signed_int;
4287      B : vector_signed_int) return vector_signed_int;
4288
4289   function vec_vsubuwm
4290     (A : vector_bool_int;
4291      B : vector_unsigned_int) return vector_unsigned_int;
4292
4293   function vec_vsubuwm
4294     (A : vector_unsigned_int;
4295      B : vector_bool_int) return vector_unsigned_int;
4296
4297   function vec_vsubuwm
4298     (A : vector_unsigned_int;
4299      B : vector_unsigned_int) return vector_unsigned_int;
4300
4301   -- vec_vsubuhm --
4302
4303   function vec_vsubuhm
4304     (A : vector_bool_short;
4305      B : vector_signed_short) return vector_signed_short;
4306
4307   function vec_vsubuhm
4308     (A : vector_signed_short;
4309      B : vector_bool_short) return vector_signed_short;
4310
4311   function vec_vsubuhm
4312     (A : vector_signed_short;
4313      B : vector_signed_short) return vector_signed_short;
4314
4315   function vec_vsubuhm
4316     (A : vector_bool_short;
4317      B : vector_unsigned_short) return vector_unsigned_short;
4318
4319   function vec_vsubuhm
4320     (A : vector_unsigned_short;
4321      B : vector_bool_short) return vector_unsigned_short;
4322
4323   function vec_vsubuhm
4324     (A : vector_unsigned_short;
4325      B : vector_unsigned_short) return vector_unsigned_short;
4326
4327   -- vec_vsububm --
4328
4329   function vec_vsububm
4330     (A : vector_bool_char;
4331      B : vector_signed_char) return vector_signed_char;
4332
4333   function vec_vsububm
4334     (A : vector_signed_char;
4335      B : vector_bool_char) return vector_signed_char;
4336
4337   function vec_vsububm
4338     (A : vector_signed_char;
4339      B : vector_signed_char) return vector_signed_char;
4340
4341   function vec_vsububm
4342     (A : vector_bool_char;
4343      B : vector_unsigned_char) return vector_unsigned_char;
4344
4345   function vec_vsububm
4346     (A : vector_unsigned_char;
4347      B : vector_bool_char) return vector_unsigned_char;
4348
4349   function vec_vsububm
4350     (A : vector_unsigned_char;
4351      B : vector_unsigned_char) return vector_unsigned_char;
4352
4353   -- vec_subc --
4354
4355   function vec_subc
4356     (A : vector_unsigned_int;
4357      B : vector_unsigned_int) return vector_unsigned_int;
4358
4359   -- vec_subs --
4360
4361   function vec_subs
4362     (A : vector_bool_char;
4363      B : vector_unsigned_char) return vector_unsigned_char;
4364
4365   function vec_subs
4366     (A : vector_unsigned_char;
4367      B : vector_bool_char) return vector_unsigned_char;
4368
4369   function vec_subs
4370     (A : vector_unsigned_char;
4371      B : vector_unsigned_char) return vector_unsigned_char;
4372
4373   function vec_subs
4374     (A : vector_bool_char;
4375      B : vector_signed_char) return vector_signed_char;
4376
4377   function vec_subs
4378     (A : vector_signed_char;
4379      B : vector_bool_char) return vector_signed_char;
4380
4381   function vec_subs
4382     (A : vector_signed_char;
4383      B : vector_signed_char) return vector_signed_char;
4384
4385   function vec_subs
4386     (A : vector_bool_short;
4387      B : vector_unsigned_short) return vector_unsigned_short;
4388
4389   function vec_subs
4390     (A : vector_unsigned_short;
4391      B : vector_bool_short) return vector_unsigned_short;
4392
4393   function vec_subs
4394     (A : vector_unsigned_short;
4395      B : vector_unsigned_short) return vector_unsigned_short;
4396
4397   function vec_subs
4398     (A : vector_bool_short;
4399      B : vector_signed_short) return vector_signed_short;
4400
4401   function vec_subs
4402     (A : vector_signed_short;
4403      B : vector_bool_short) return vector_signed_short;
4404
4405   function vec_subs
4406     (A : vector_signed_short;
4407      B : vector_signed_short) return vector_signed_short;
4408
4409   function vec_subs
4410     (A : vector_bool_int;
4411      B : vector_unsigned_int) return vector_unsigned_int;
4412
4413   function vec_subs
4414     (A : vector_unsigned_int;
4415      B : vector_bool_int) return vector_unsigned_int;
4416
4417   function vec_subs
4418     (A : vector_unsigned_int;
4419      B : vector_unsigned_int) return vector_unsigned_int;
4420
4421   function vec_subs
4422     (A : vector_bool_int;
4423      B : vector_signed_int) return vector_signed_int;
4424
4425   function vec_subs
4426     (A : vector_signed_int;
4427      B : vector_bool_int) return vector_signed_int;
4428
4429   function vec_subs
4430     (A : vector_signed_int;
4431      B : vector_signed_int) return vector_signed_int;
4432
4433   -- vec_vsubsws --
4434
4435   function vec_vsubsws
4436     (A : vector_bool_int;
4437      B : vector_signed_int) return vector_signed_int;
4438
4439   function vec_vsubsws
4440     (A : vector_signed_int;
4441      B : vector_bool_int) return vector_signed_int;
4442
4443   function vec_vsubsws
4444     (A : vector_signed_int;
4445      B : vector_signed_int) return vector_signed_int;
4446
4447   -- vec_vsubuws --
4448
4449   function vec_vsubuws
4450     (A : vector_bool_int;
4451      B : vector_unsigned_int) return vector_unsigned_int;
4452
4453   function vec_vsubuws
4454     (A : vector_unsigned_int;
4455      B : vector_bool_int) return vector_unsigned_int;
4456
4457   function vec_vsubuws
4458     (A : vector_unsigned_int;
4459      B : vector_unsigned_int) return vector_unsigned_int;
4460
4461   -- vec_vsubshs --
4462
4463   function vec_vsubshs
4464     (A : vector_bool_short;
4465      B : vector_signed_short) return vector_signed_short;
4466
4467   function vec_vsubshs
4468     (A : vector_signed_short;
4469      B : vector_bool_short) return vector_signed_short;
4470
4471   function vec_vsubshs
4472     (A : vector_signed_short;
4473      B : vector_signed_short) return vector_signed_short;
4474
4475   -- vec_vsubuhs --
4476
4477   function vec_vsubuhs
4478     (A : vector_bool_short;
4479      B : vector_unsigned_short) return vector_unsigned_short;
4480
4481   function vec_vsubuhs
4482     (A : vector_unsigned_short;
4483      B : vector_bool_short) return vector_unsigned_short;
4484
4485   function vec_vsubuhs
4486     (A : vector_unsigned_short;
4487      B : vector_unsigned_short) return vector_unsigned_short;
4488
4489   -- vec_vsubsbs --
4490
4491   function vec_vsubsbs
4492     (A : vector_bool_char;
4493      B : vector_signed_char) return vector_signed_char;
4494
4495   function vec_vsubsbs
4496     (A : vector_signed_char;
4497      B : vector_bool_char) return vector_signed_char;
4498
4499   function vec_vsubsbs
4500     (A : vector_signed_char;
4501      B : vector_signed_char) return vector_signed_char;
4502
4503   -- vec_vsububs --
4504
4505   function vec_vsububs
4506     (A : vector_bool_char;
4507      B : vector_unsigned_char) return vector_unsigned_char;
4508
4509   function vec_vsububs
4510     (A : vector_unsigned_char;
4511      B : vector_bool_char) return vector_unsigned_char;
4512
4513   function vec_vsububs
4514     (A : vector_unsigned_char;
4515      B : vector_unsigned_char) return vector_unsigned_char;
4516
4517   -- vec_sum4s --
4518
4519   function vec_sum4s
4520     (A : vector_unsigned_char;
4521      B : vector_unsigned_int) return vector_unsigned_int;
4522
4523   function vec_sum4s
4524     (A : vector_signed_char;
4525      B : vector_signed_int) return vector_signed_int;
4526
4527   function vec_sum4s
4528     (A : vector_signed_short;
4529      B : vector_signed_int) return vector_signed_int;
4530
4531   -- vec_vsum4shs --
4532
4533   function vec_vsum4shs
4534     (A : vector_signed_short;
4535      B : vector_signed_int) return vector_signed_int;
4536
4537   -- vec_vsum4sbs --
4538
4539   function vec_vsum4sbs
4540     (A : vector_signed_char;
4541      B : vector_signed_int) return vector_signed_int;
4542
4543   -- vec_vsum4ubs --
4544
4545   function vec_vsum4ubs
4546     (A : vector_unsigned_char;
4547      B : vector_unsigned_int) return vector_unsigned_int;
4548
4549   -- vec_sum2s --
4550
4551   function vec_sum2s
4552     (A : vector_signed_int;
4553      B : vector_signed_int) return vector_signed_int;
4554
4555   -- vec_sums --
4556
4557   function vec_sums
4558     (A : vector_signed_int;
4559      B : vector_signed_int) return vector_signed_int;
4560
4561   -- vec_trunc --
4562
4563   function vec_trunc
4564     (A : vector_float) return vector_float;
4565
4566   -- vec_unpackh --
4567
4568   function vec_unpackh
4569     (A : vector_signed_char) return vector_signed_short;
4570
4571   function vec_unpackh
4572     (A : vector_bool_char) return vector_bool_short;
4573
4574   function vec_unpackh
4575     (A : vector_signed_short) return vector_signed_int;
4576
4577   function vec_unpackh
4578     (A : vector_bool_short) return vector_bool_int;
4579
4580   function vec_unpackh
4581     (A : vector_pixel) return vector_unsigned_int;
4582
4583   -- vec_vupkhsh --
4584
4585   function vec_vupkhsh
4586     (A : vector_bool_short) return vector_bool_int;
4587
4588   function vec_vupkhsh
4589     (A : vector_signed_short) return vector_signed_int;
4590
4591   -- vec_vupkhpx --
4592
4593   function vec_vupkhpx
4594     (A : vector_pixel) return vector_unsigned_int;
4595
4596   -- vec_vupkhsb --
4597
4598   function vec_vupkhsb
4599     (A : vector_bool_char) return vector_bool_short;
4600
4601   function vec_vupkhsb
4602     (A : vector_signed_char) return vector_signed_short;
4603
4604   -- vec_unpackl --
4605
4606   function vec_unpackl
4607     (A : vector_signed_char) return vector_signed_short;
4608
4609   function vec_unpackl
4610     (A : vector_bool_char) return vector_bool_short;
4611
4612   function vec_unpackl
4613     (A : vector_pixel) return vector_unsigned_int;
4614
4615   function vec_unpackl
4616     (A : vector_signed_short) return vector_signed_int;
4617
4618   function vec_unpackl
4619     (A : vector_bool_short) return vector_bool_int;
4620
4621   -- vec_vupklpx --
4622
4623   function vec_vupklpx
4624     (A : vector_pixel) return vector_unsigned_int;
4625
4626   -- vec_upklsh --
4627
4628   function vec_vupklsh
4629     (A : vector_bool_short) return vector_bool_int;
4630
4631   function vec_vupklsh
4632     (A : vector_signed_short) return vector_signed_int;
4633
4634   -- vec_vupklsb --
4635
4636   function vec_vupklsb
4637     (A : vector_bool_char) return vector_bool_short;
4638
4639   function vec_vupklsb
4640     (A : vector_signed_char) return vector_signed_short;
4641
4642   -- vec_xor --
4643
4644   function vec_xor
4645     (A : vector_float;
4646      B : vector_float) return vector_float;
4647
4648   function vec_xor
4649     (A : vector_float;
4650      B : vector_bool_int) return vector_float;
4651
4652   function vec_xor
4653     (A : vector_bool_int;
4654      B : vector_float) return vector_float;
4655
4656   function vec_xor
4657     (A : vector_bool_int;
4658      B : vector_bool_int) return vector_bool_int;
4659
4660   function vec_xor
4661     (A : vector_bool_int;
4662      B : vector_signed_int) return vector_signed_int;
4663
4664   function vec_xor
4665     (A : vector_signed_int;
4666      B : vector_bool_int) return vector_signed_int;
4667
4668   function vec_xor
4669     (A : vector_signed_int;
4670      B : vector_signed_int) return vector_signed_int;
4671
4672   function vec_xor
4673     (A : vector_bool_int;
4674      B : vector_unsigned_int) return vector_unsigned_int;
4675
4676   function vec_xor
4677     (A : vector_unsigned_int;
4678      B : vector_bool_int) return vector_unsigned_int;
4679
4680   function vec_xor
4681     (A : vector_unsigned_int;
4682      B : vector_unsigned_int) return vector_unsigned_int;
4683
4684   function vec_xor
4685     (A : vector_bool_short;
4686      B : vector_bool_short) return vector_bool_short;
4687
4688   function vec_xor
4689     (A : vector_bool_short;
4690      B : vector_signed_short) return vector_signed_short;
4691
4692   function vec_xor
4693     (A : vector_signed_short;
4694      B : vector_bool_short) return vector_signed_short;
4695
4696   function vec_xor
4697     (A : vector_signed_short;
4698      B : vector_signed_short) return vector_signed_short;
4699
4700   function vec_xor
4701     (A : vector_bool_short;
4702      B : vector_unsigned_short) return vector_unsigned_short;
4703
4704   function vec_xor
4705     (A : vector_unsigned_short;
4706      B : vector_bool_short) return vector_unsigned_short;
4707
4708   function vec_xor
4709     (A : vector_unsigned_short;
4710      B : vector_unsigned_short) return vector_unsigned_short;
4711
4712   function vec_xor
4713     (A : vector_bool_char;
4714      B : vector_signed_char) return vector_signed_char;
4715
4716   function vec_xor
4717     (A : vector_bool_char;
4718      B : vector_bool_char) return vector_bool_char;
4719
4720   function vec_xor
4721     (A : vector_signed_char;
4722      B : vector_bool_char) return vector_signed_char;
4723
4724   function vec_xor
4725     (A : vector_signed_char;
4726      B : vector_signed_char) return vector_signed_char;
4727
4728   function vec_xor
4729     (A : vector_bool_char;
4730      B : vector_unsigned_char) return vector_unsigned_char;
4731
4732   function vec_xor
4733     (A : vector_unsigned_char;
4734      B : vector_bool_char) return vector_unsigned_char;
4735
4736   function vec_xor
4737     (A : vector_unsigned_char;
4738      B : vector_unsigned_char) return vector_unsigned_char;
4739
4740   ----------------------------------
4741   -- [PIM-4.5 AltiVec predicates] --
4742   ----------------------------------
4743
4744   -- vec_all_eq --
4745
4746   function vec_all_eq
4747     (A : vector_signed_char;
4748      B : vector_bool_char) return c_int;
4749
4750   function vec_all_eq
4751     (A : vector_signed_char;
4752      B : vector_signed_char) return c_int;
4753
4754   function vec_all_eq
4755     (A : vector_unsigned_char;
4756      B : vector_bool_char) return c_int;
4757
4758   function vec_all_eq
4759     (A : vector_unsigned_char;
4760      B : vector_unsigned_char) return c_int;
4761
4762   function vec_all_eq
4763     (A : vector_bool_char;
4764      B : vector_bool_char) return c_int;
4765
4766   function vec_all_eq
4767     (A : vector_bool_char;
4768      B : vector_unsigned_char) return c_int;
4769
4770   function vec_all_eq
4771     (A : vector_bool_char;
4772      B : vector_signed_char) return c_int;
4773
4774   function vec_all_eq
4775     (A : vector_signed_short;
4776      B : vector_bool_short) return c_int;
4777
4778   function vec_all_eq
4779     (A : vector_signed_short;
4780      B : vector_signed_short) return c_int;
4781
4782   function vec_all_eq
4783     (A : vector_unsigned_short;
4784      B : vector_bool_short) return c_int;
4785
4786   function vec_all_eq
4787     (A : vector_unsigned_short;
4788      B : vector_unsigned_short) return c_int;
4789
4790   function vec_all_eq
4791     (A : vector_bool_short;
4792      B : vector_bool_short) return c_int;
4793
4794   function vec_all_eq
4795     (A : vector_bool_short;
4796      B : vector_unsigned_short) return c_int;
4797
4798   function vec_all_eq
4799     (A : vector_bool_short;
4800      B : vector_signed_short) return c_int;
4801
4802   function vec_all_eq
4803     (A : vector_pixel;
4804      B : vector_pixel) return c_int;
4805
4806   function vec_all_eq
4807     (A : vector_signed_int;
4808      B : vector_bool_int) return c_int;
4809
4810   function vec_all_eq
4811     (A : vector_signed_int;
4812      B : vector_signed_int) return c_int;
4813
4814   function vec_all_eq
4815     (A : vector_unsigned_int;
4816      B : vector_bool_int) return c_int;
4817
4818   function vec_all_eq
4819     (A : vector_unsigned_int;
4820      B : vector_unsigned_int) return c_int;
4821
4822   function vec_all_eq
4823     (A : vector_bool_int;
4824      B : vector_bool_int) return c_int;
4825
4826   function vec_all_eq
4827     (A : vector_bool_int;
4828      B : vector_unsigned_int) return c_int;
4829
4830   function vec_all_eq
4831     (A : vector_bool_int;
4832      B : vector_signed_int) return c_int;
4833
4834   function vec_all_eq
4835     (A : vector_float;
4836      B : vector_float) return c_int;
4837
4838   -- vec_all_ge --
4839
4840   function vec_all_ge
4841     (A : vector_bool_char;
4842      B : vector_unsigned_char) return c_int;
4843
4844   function vec_all_ge
4845     (A : vector_unsigned_char;
4846      B : vector_bool_char) return c_int;
4847
4848   function vec_all_ge
4849     (A : vector_unsigned_char;
4850      B : vector_unsigned_char) return c_int;
4851
4852   function vec_all_ge
4853     (A : vector_bool_char;
4854      B : vector_signed_char) return c_int;
4855
4856   function vec_all_ge
4857     (A : vector_signed_char;
4858      B : vector_bool_char) return c_int;
4859
4860   function vec_all_ge
4861     (A : vector_signed_char;
4862      B : vector_signed_char) return c_int;
4863
4864   function vec_all_ge
4865     (A : vector_bool_short;
4866      B : vector_unsigned_short) return c_int;
4867
4868   function vec_all_ge
4869     (A : vector_unsigned_short;
4870      B : vector_bool_short) return c_int;
4871
4872   function vec_all_ge
4873     (A : vector_unsigned_short;
4874      B : vector_unsigned_short) return c_int;
4875
4876   function vec_all_ge
4877     (A : vector_signed_short;
4878      B : vector_signed_short) return c_int;
4879
4880   function vec_all_ge
4881     (A : vector_bool_short;
4882      B : vector_signed_short) return c_int;
4883
4884   function vec_all_ge
4885     (A : vector_signed_short;
4886      B : vector_bool_short) return c_int;
4887
4888   function vec_all_ge
4889     (A : vector_bool_int;
4890      B : vector_unsigned_int) return c_int;
4891
4892   function vec_all_ge
4893     (A : vector_unsigned_int;
4894      B : vector_bool_int) return c_int;
4895
4896   function vec_all_ge
4897     (A : vector_unsigned_int;
4898      B : vector_unsigned_int) return c_int;
4899
4900   function vec_all_ge
4901     (A : vector_bool_int;
4902      B : vector_signed_int) return c_int;
4903
4904   function vec_all_ge
4905     (A : vector_signed_int;
4906      B : vector_bool_int) return c_int;
4907
4908   function vec_all_ge
4909     (A : vector_signed_int;
4910      B : vector_signed_int) return c_int;
4911
4912   function vec_all_ge
4913     (A : vector_float;
4914      B : vector_float) return c_int;
4915
4916   -- vec_all_gt --
4917
4918   function vec_all_gt
4919     (A : vector_bool_char;
4920      B : vector_unsigned_char) return c_int;
4921
4922   function vec_all_gt
4923     (A : vector_unsigned_char;
4924      B : vector_bool_char) return c_int;
4925
4926   function vec_all_gt
4927     (A : vector_unsigned_char;
4928      B : vector_unsigned_char) return c_int;
4929
4930   function vec_all_gt
4931     (A : vector_bool_char;
4932      B : vector_signed_char) return c_int;
4933
4934   function vec_all_gt
4935     (A : vector_signed_char;
4936      B : vector_bool_char) return c_int;
4937
4938   function vec_all_gt
4939     (A : vector_signed_char;
4940      B : vector_signed_char) return c_int;
4941
4942   function vec_all_gt
4943     (A : vector_bool_short;
4944      B : vector_unsigned_short) return c_int;
4945
4946   function vec_all_gt
4947     (A : vector_unsigned_short;
4948      B : vector_bool_short) return c_int;
4949
4950   function vec_all_gt
4951     (A : vector_unsigned_short;
4952      B : vector_unsigned_short) return c_int;
4953
4954   function vec_all_gt
4955     (A : vector_bool_short;
4956      B : vector_signed_short) return c_int;
4957
4958   function vec_all_gt
4959     (A : vector_signed_short;
4960      B : vector_bool_short) return c_int;
4961
4962   function vec_all_gt
4963     (A : vector_signed_short;
4964      B : vector_signed_short) return c_int;
4965
4966   function vec_all_gt
4967     (A : vector_bool_int;
4968      B : vector_unsigned_int) return c_int;
4969
4970   function vec_all_gt
4971     (A : vector_unsigned_int;
4972      B : vector_bool_int) return c_int;
4973
4974   function vec_all_gt
4975     (A : vector_unsigned_int;
4976      B : vector_unsigned_int) return c_int;
4977
4978   function vec_all_gt
4979     (A : vector_bool_int;
4980      B : vector_signed_int) return c_int;
4981
4982   function vec_all_gt
4983     (A : vector_signed_int;
4984      B : vector_bool_int) return c_int;
4985
4986   function vec_all_gt
4987     (A : vector_signed_int;
4988      B : vector_signed_int) return c_int;
4989
4990   function vec_all_gt
4991     (A : vector_float;
4992      B : vector_float) return c_int;
4993
4994   -- vec_all_in --
4995
4996   function vec_all_in
4997     (A : vector_float;
4998      B : vector_float) return c_int;
4999
5000   -- vec_all_le --
5001
5002   function vec_all_le
5003     (A : vector_bool_char;
5004      B : vector_unsigned_char) return c_int;
5005
5006   function vec_all_le
5007     (A : vector_unsigned_char;
5008      B : vector_bool_char) return c_int;
5009
5010   function vec_all_le
5011     (A : vector_unsigned_char;
5012      B : vector_unsigned_char) return c_int;
5013
5014   function vec_all_le
5015     (A : vector_bool_char;
5016      B : vector_signed_char) return c_int;
5017
5018   function vec_all_le
5019     (A : vector_signed_char;
5020      B : vector_bool_char) return c_int;
5021
5022   function vec_all_le
5023     (A : vector_signed_char;
5024      B : vector_signed_char) return c_int;
5025
5026   function vec_all_le
5027     (A : vector_bool_short;
5028      B : vector_unsigned_short) return c_int;
5029
5030   function vec_all_le
5031     (A : vector_unsigned_short;
5032      B : vector_bool_short) return c_int;
5033
5034   function vec_all_le
5035     (A : vector_unsigned_short;
5036      B : vector_unsigned_short) return c_int;
5037
5038   function vec_all_le
5039     (A : vector_bool_short;
5040      B : vector_signed_short) return c_int;
5041
5042   function vec_all_le
5043     (A : vector_signed_short;
5044      B : vector_bool_short) return c_int;
5045
5046   function vec_all_le
5047     (A : vector_signed_short;
5048      B : vector_signed_short) return c_int;
5049
5050   function vec_all_le
5051     (A : vector_bool_int;
5052      B : vector_unsigned_int) return c_int;
5053
5054   function vec_all_le
5055     (A : vector_unsigned_int;
5056      B : vector_bool_int) return c_int;
5057
5058   function vec_all_le
5059     (A : vector_unsigned_int;
5060      B : vector_unsigned_int) return c_int;
5061
5062   function vec_all_le
5063     (A : vector_bool_int;
5064      B : vector_signed_int) return c_int;
5065
5066   function vec_all_le
5067     (A : vector_signed_int;
5068      B : vector_bool_int) return c_int;
5069
5070   function vec_all_le
5071     (A : vector_signed_int;
5072      B : vector_signed_int) return c_int;
5073
5074   function vec_all_le
5075     (A : vector_float;
5076      B : vector_float) return c_int;
5077
5078   -- vec_all_lt --
5079
5080   function vec_all_lt
5081     (A : vector_bool_char;
5082      B : vector_unsigned_char) return c_int;
5083
5084   function vec_all_lt
5085     (A : vector_unsigned_char;
5086      B : vector_bool_char) return c_int;
5087
5088   function vec_all_lt
5089     (A : vector_unsigned_char;
5090      B : vector_unsigned_char) return c_int;
5091
5092   function vec_all_lt
5093     (A : vector_bool_char;
5094      B : vector_signed_char) return c_int;
5095
5096   function vec_all_lt
5097     (A : vector_signed_char;
5098      B : vector_bool_char) return c_int;
5099
5100   function vec_all_lt
5101     (A : vector_signed_char;
5102      B : vector_signed_char) return c_int;
5103
5104   function vec_all_lt
5105     (A : vector_bool_short;
5106      B : vector_unsigned_short) return c_int;
5107
5108   function vec_all_lt
5109     (A : vector_unsigned_short;
5110      B : vector_bool_short) return c_int;
5111
5112   function vec_all_lt
5113     (A : vector_unsigned_short;
5114      B : vector_unsigned_short) return c_int;
5115
5116   function vec_all_lt
5117     (A : vector_bool_short;
5118      B : vector_signed_short) return c_int;
5119
5120   function vec_all_lt
5121     (A : vector_signed_short;
5122      B : vector_bool_short) return c_int;
5123
5124   function vec_all_lt
5125     (A : vector_signed_short;
5126      B : vector_signed_short) return c_int;
5127
5128   function vec_all_lt
5129     (A : vector_bool_int;
5130      B : vector_unsigned_int) return c_int;
5131
5132   function vec_all_lt
5133     (A : vector_unsigned_int;
5134      B : vector_bool_int) return c_int;
5135
5136   function vec_all_lt
5137     (A : vector_unsigned_int;
5138      B : vector_unsigned_int) return c_int;
5139
5140   function vec_all_lt
5141     (A : vector_bool_int;
5142      B : vector_signed_int) return c_int;
5143
5144   function vec_all_lt
5145     (A : vector_signed_int;
5146      B : vector_bool_int) return c_int;
5147
5148   function vec_all_lt
5149     (A : vector_signed_int;
5150      B : vector_signed_int) return c_int;
5151
5152   function vec_all_lt
5153     (A : vector_float;
5154      B : vector_float) return c_int;
5155
5156   -- vec_all_nan --
5157
5158   function vec_all_nan
5159     (A : vector_float) return c_int;
5160
5161   -- vec_all_ne --
5162
5163   function vec_all_ne
5164     (A : vector_signed_char;
5165      B : vector_bool_char) return c_int;
5166
5167   function vec_all_ne
5168     (A : vector_signed_char;
5169      B : vector_signed_char) return c_int;
5170
5171   function vec_all_ne
5172     (A : vector_unsigned_char;
5173      B : vector_bool_char) return c_int;
5174
5175   function vec_all_ne
5176     (A : vector_unsigned_char;
5177      B : vector_unsigned_char) return c_int;
5178
5179   function vec_all_ne
5180     (A : vector_bool_char;
5181      B : vector_bool_char) return c_int;
5182
5183   function vec_all_ne
5184     (A : vector_bool_char;
5185      B : vector_unsigned_char) return c_int;
5186
5187   function vec_all_ne
5188     (A : vector_bool_char;
5189      B : vector_signed_char) return c_int;
5190
5191   function vec_all_ne
5192     (A : vector_signed_short;
5193      B : vector_bool_short) return c_int;
5194
5195   function vec_all_ne
5196     (A : vector_signed_short;
5197      B : vector_signed_short) return c_int;
5198
5199   function vec_all_ne
5200     (A : vector_unsigned_short;
5201      B : vector_bool_short) return c_int;
5202
5203   function vec_all_ne
5204     (A : vector_unsigned_short;
5205      B : vector_unsigned_short) return c_int;
5206
5207   function vec_all_ne
5208     (A : vector_bool_short;
5209      B : vector_bool_short) return c_int;
5210
5211   function vec_all_ne
5212     (A : vector_bool_short;
5213      B : vector_unsigned_short) return c_int;
5214
5215   function vec_all_ne
5216     (A : vector_bool_short;
5217      B : vector_signed_short) return c_int;
5218
5219   function vec_all_ne
5220     (A : vector_pixel;
5221      B : vector_pixel) return c_int;
5222
5223   function vec_all_ne
5224     (A : vector_signed_int;
5225      B : vector_bool_int) return c_int;
5226
5227   function vec_all_ne
5228     (A : vector_signed_int;
5229      B : vector_signed_int) return c_int;
5230
5231   function vec_all_ne
5232     (A : vector_unsigned_int;
5233      B : vector_bool_int) return c_int;
5234
5235   function vec_all_ne
5236     (A : vector_unsigned_int;
5237      B : vector_unsigned_int) return c_int;
5238
5239   function vec_all_ne
5240     (A : vector_bool_int;
5241      B : vector_bool_int) return c_int;
5242
5243   function vec_all_ne
5244     (A : vector_bool_int;
5245      B : vector_unsigned_int) return c_int;
5246
5247   function vec_all_ne
5248     (A : vector_bool_int;
5249      B : vector_signed_int) return c_int;
5250
5251   function vec_all_ne
5252     (A : vector_float;
5253      B : vector_float) return c_int;
5254
5255   -- vec_all_nge --
5256
5257   function vec_all_nge
5258     (A : vector_float;
5259      B : vector_float) return c_int;
5260
5261   -- vec_all_ngt --
5262
5263   function vec_all_ngt
5264     (A : vector_float;
5265      B : vector_float) return c_int;
5266
5267   -- vec_all_nle --
5268
5269   function vec_all_nle
5270     (A : vector_float;
5271      B : vector_float) return c_int;
5272
5273   -- vec_all_nlt --
5274
5275   function vec_all_nlt
5276     (A : vector_float;
5277      B : vector_float) return c_int;
5278
5279   -- vec_all_numeric --
5280
5281   function vec_all_numeric
5282     (A : vector_float) return c_int;
5283
5284   -- vec_any_eq --
5285
5286   function vec_any_eq
5287     (A : vector_signed_char;
5288      B : vector_bool_char) return c_int;
5289
5290   function vec_any_eq
5291     (A : vector_signed_char;
5292      B : vector_signed_char) return c_int;
5293
5294   function vec_any_eq
5295     (A : vector_unsigned_char;
5296      B : vector_bool_char) return c_int;
5297
5298   function vec_any_eq
5299     (A : vector_unsigned_char;
5300      B : vector_unsigned_char) return c_int;
5301
5302   function vec_any_eq
5303     (A : vector_bool_char;
5304      B : vector_bool_char) return c_int;
5305
5306   function vec_any_eq
5307     (A : vector_bool_char;
5308      B : vector_unsigned_char) return c_int;
5309
5310   function vec_any_eq
5311     (A : vector_bool_char;
5312      B : vector_signed_char) return c_int;
5313
5314   function vec_any_eq
5315     (A : vector_signed_short;
5316      B : vector_bool_short) return c_int;
5317
5318   function vec_any_eq
5319     (A : vector_signed_short;
5320      B : vector_signed_short) return c_int;
5321
5322   function vec_any_eq
5323     (A : vector_unsigned_short;
5324      B : vector_bool_short) return c_int;
5325
5326   function vec_any_eq
5327     (A : vector_unsigned_short;
5328      B : vector_unsigned_short) return c_int;
5329
5330   function vec_any_eq
5331     (A : vector_bool_short;
5332      B : vector_bool_short) return c_int;
5333
5334   function vec_any_eq
5335     (A : vector_bool_short;
5336      B : vector_unsigned_short) return c_int;
5337
5338   function vec_any_eq
5339     (A : vector_bool_short;
5340      B : vector_signed_short) return c_int;
5341
5342   function vec_any_eq
5343     (A : vector_pixel;
5344      B : vector_pixel) return c_int;
5345
5346   function vec_any_eq
5347     (A : vector_signed_int;
5348      B : vector_bool_int) return c_int;
5349
5350   function vec_any_eq
5351     (A : vector_signed_int;
5352      B : vector_signed_int) return c_int;
5353
5354   function vec_any_eq
5355     (A : vector_unsigned_int;
5356      B : vector_bool_int) return c_int;
5357
5358   function vec_any_eq
5359     (A : vector_unsigned_int;
5360      B : vector_unsigned_int) return c_int;
5361
5362   function vec_any_eq
5363     (A : vector_bool_int;
5364      B : vector_bool_int) return c_int;
5365
5366   function vec_any_eq
5367     (A : vector_bool_int;
5368      B : vector_unsigned_int) return c_int;
5369
5370   function vec_any_eq
5371     (A : vector_bool_int;
5372      B : vector_signed_int) return c_int;
5373
5374   function vec_any_eq
5375     (A : vector_float;
5376      B : vector_float) return c_int;
5377
5378   -- vec_any_ge --
5379
5380   function vec_any_ge
5381     (A : vector_signed_char;
5382      B : vector_bool_char) return c_int;
5383
5384   function vec_any_ge
5385     (A : vector_unsigned_char;
5386      B : vector_bool_char) return c_int;
5387
5388   function vec_any_ge
5389     (A : vector_unsigned_char;
5390      B : vector_unsigned_char) return c_int;
5391
5392   function vec_any_ge
5393     (A : vector_signed_char;
5394      B : vector_signed_char) return c_int;
5395
5396   function vec_any_ge
5397     (A : vector_bool_char;
5398      B : vector_unsigned_char) return c_int;
5399
5400   function vec_any_ge
5401     (A : vector_bool_char;
5402      B : vector_signed_char) return c_int;
5403
5404   function vec_any_ge
5405     (A : vector_unsigned_short;
5406      B : vector_bool_short) return c_int;
5407
5408   function vec_any_ge
5409     (A : vector_unsigned_short;
5410      B : vector_unsigned_short) return c_int;
5411
5412   function vec_any_ge
5413     (A : vector_signed_short;
5414      B : vector_signed_short) return c_int;
5415
5416   function vec_any_ge
5417     (A : vector_signed_short;
5418      B : vector_bool_short) return c_int;
5419
5420   function vec_any_ge
5421     (A : vector_bool_short;
5422      B : vector_unsigned_short) return c_int;
5423
5424   function vec_any_ge
5425     (A : vector_bool_short;
5426      B : vector_signed_short) return c_int;
5427
5428   function vec_any_ge
5429     (A : vector_signed_int;
5430      B : vector_bool_int) return c_int;
5431
5432   function vec_any_ge
5433     (A : vector_unsigned_int;
5434      B : vector_bool_int) return c_int;
5435
5436   function vec_any_ge
5437     (A : vector_unsigned_int;
5438      B : vector_unsigned_int) return c_int;
5439
5440   function vec_any_ge
5441     (A : vector_signed_int;
5442      B : vector_signed_int) return c_int;
5443
5444   function vec_any_ge
5445     (A : vector_bool_int;
5446      B : vector_unsigned_int) return c_int;
5447
5448   function vec_any_ge
5449     (A : vector_bool_int;
5450      B : vector_signed_int) return c_int;
5451
5452   function vec_any_ge
5453     (A : vector_float;
5454      B : vector_float) return c_int;
5455
5456   -- vec_any_gt --
5457
5458   function vec_any_gt
5459     (A : vector_bool_char;
5460      B : vector_unsigned_char) return c_int;
5461
5462   function vec_any_gt
5463     (A : vector_unsigned_char;
5464      B : vector_bool_char) return c_int;
5465
5466   function vec_any_gt
5467     (A : vector_unsigned_char;
5468      B : vector_unsigned_char) return c_int;
5469
5470   function vec_any_gt
5471     (A : vector_bool_char;
5472      B : vector_signed_char) return c_int;
5473
5474   function vec_any_gt
5475     (A : vector_signed_char;
5476      B : vector_bool_char) return c_int;
5477
5478   function vec_any_gt
5479     (A : vector_signed_char;
5480      B : vector_signed_char) return c_int;
5481
5482   function vec_any_gt
5483     (A : vector_bool_short;
5484      B : vector_unsigned_short) return c_int;
5485
5486   function vec_any_gt
5487     (A : vector_unsigned_short;
5488      B : vector_bool_short) return c_int;
5489
5490   function vec_any_gt
5491     (A : vector_unsigned_short;
5492      B : vector_unsigned_short) return c_int;
5493
5494   function vec_any_gt
5495     (A : vector_bool_short;
5496      B : vector_signed_short) return c_int;
5497
5498   function vec_any_gt
5499     (A : vector_signed_short;
5500      B : vector_bool_short) return c_int;
5501
5502   function vec_any_gt
5503     (A : vector_signed_short;
5504      B : vector_signed_short) return c_int;
5505
5506   function vec_any_gt
5507     (A : vector_bool_int;
5508      B : vector_unsigned_int) return c_int;
5509
5510   function vec_any_gt
5511     (A : vector_unsigned_int;
5512      B : vector_bool_int) return c_int;
5513
5514   function vec_any_gt
5515     (A : vector_unsigned_int;
5516      B : vector_unsigned_int) return c_int;
5517
5518   function vec_any_gt
5519     (A : vector_bool_int;
5520      B : vector_signed_int) return c_int;
5521
5522   function vec_any_gt
5523     (A : vector_signed_int;
5524      B : vector_bool_int) return c_int;
5525
5526   function vec_any_gt
5527     (A : vector_signed_int;
5528      B : vector_signed_int) return c_int;
5529
5530   function vec_any_gt
5531     (A : vector_float;
5532      B : vector_float) return c_int;
5533
5534   -- vec_any_le --
5535
5536   function vec_any_le
5537     (A : vector_bool_char;
5538      B : vector_unsigned_char) return c_int;
5539
5540   function vec_any_le
5541     (A : vector_unsigned_char;
5542      B : vector_bool_char) return c_int;
5543
5544   function vec_any_le
5545     (A : vector_unsigned_char;
5546      B : vector_unsigned_char) return c_int;
5547
5548   function vec_any_le
5549     (A : vector_bool_char;
5550      B : vector_signed_char) return c_int;
5551
5552   function vec_any_le
5553     (A : vector_signed_char;
5554      B : vector_bool_char) return c_int;
5555
5556   function vec_any_le
5557     (A : vector_signed_char;
5558      B : vector_signed_char) return c_int;
5559
5560   function vec_any_le
5561     (A : vector_bool_short;
5562      B : vector_unsigned_short) return c_int;
5563
5564   function vec_any_le
5565     (A : vector_unsigned_short;
5566      B : vector_bool_short) return c_int;
5567
5568   function vec_any_le
5569     (A : vector_unsigned_short;
5570      B : vector_unsigned_short) return c_int;
5571
5572   function vec_any_le
5573     (A : vector_bool_short;
5574      B : vector_signed_short) return c_int;
5575
5576   function vec_any_le
5577     (A : vector_signed_short;
5578      B : vector_bool_short) return c_int;
5579
5580   function vec_any_le
5581     (A : vector_signed_short;
5582      B : vector_signed_short) return c_int;
5583
5584   function vec_any_le
5585     (A : vector_bool_int;
5586      B : vector_unsigned_int) return c_int;
5587
5588   function vec_any_le
5589     (A : vector_unsigned_int;
5590      B : vector_bool_int) return c_int;
5591
5592   function vec_any_le
5593     (A : vector_unsigned_int;
5594      B : vector_unsigned_int) return c_int;
5595
5596   function vec_any_le
5597     (A : vector_bool_int;
5598      B : vector_signed_int) return c_int;
5599
5600   function vec_any_le
5601     (A : vector_signed_int;
5602      B : vector_bool_int) return c_int;
5603
5604   function vec_any_le
5605     (A : vector_signed_int;
5606      B : vector_signed_int) return c_int;
5607
5608   function vec_any_le
5609     (A : vector_float;
5610      B : vector_float) return c_int;
5611
5612   -- vec_any_lt --
5613
5614   function vec_any_lt
5615     (A : vector_bool_char;
5616      B : vector_unsigned_char) return c_int;
5617
5618   function vec_any_lt
5619     (A : vector_unsigned_char;
5620      B : vector_bool_char) return c_int;
5621
5622   function vec_any_lt
5623     (A : vector_unsigned_char;
5624      B : vector_unsigned_char) return c_int;
5625
5626   function vec_any_lt
5627     (A : vector_bool_char;
5628      B : vector_signed_char) return c_int;
5629
5630   function vec_any_lt
5631     (A : vector_signed_char;
5632      B : vector_bool_char) return c_int;
5633
5634   function vec_any_lt
5635     (A : vector_signed_char;
5636      B : vector_signed_char) return c_int;
5637
5638   function vec_any_lt
5639     (A : vector_bool_short;
5640      B : vector_unsigned_short) return c_int;
5641
5642   function vec_any_lt
5643     (A : vector_unsigned_short;
5644      B : vector_bool_short) return c_int;
5645
5646   function vec_any_lt
5647     (A : vector_unsigned_short;
5648      B : vector_unsigned_short) return c_int;
5649
5650   function vec_any_lt
5651     (A : vector_bool_short;
5652      B : vector_signed_short) return c_int;
5653
5654   function vec_any_lt
5655     (A : vector_signed_short;
5656      B : vector_bool_short) return c_int;
5657
5658   function vec_any_lt
5659     (A : vector_signed_short;
5660      B : vector_signed_short) return c_int;
5661
5662   function vec_any_lt
5663     (A : vector_bool_int;
5664      B : vector_unsigned_int) return c_int;
5665
5666   function vec_any_lt
5667     (A : vector_unsigned_int;
5668      B : vector_bool_int) return c_int;
5669
5670   function vec_any_lt
5671     (A : vector_unsigned_int;
5672      B : vector_unsigned_int) return c_int;
5673
5674   function vec_any_lt
5675     (A : vector_bool_int;
5676      B : vector_signed_int) return c_int;
5677
5678   function vec_any_lt
5679     (A : vector_signed_int;
5680      B : vector_bool_int) return c_int;
5681
5682   function vec_any_lt
5683     (A : vector_signed_int;
5684      B : vector_signed_int) return c_int;
5685
5686   function vec_any_lt
5687     (A : vector_float;
5688      B : vector_float) return c_int;
5689
5690   -- vec_any_nan --
5691
5692   function vec_any_nan
5693     (A : vector_float) return c_int;
5694
5695   -- vec_any_ne --
5696
5697   function vec_any_ne
5698     (A : vector_signed_char;
5699      B : vector_bool_char) return c_int;
5700
5701   function vec_any_ne
5702     (A : vector_signed_char;
5703      B : vector_signed_char) return c_int;
5704
5705   function vec_any_ne
5706     (A : vector_unsigned_char;
5707      B : vector_bool_char) return c_int;
5708
5709   function vec_any_ne
5710     (A : vector_unsigned_char;
5711      B : vector_unsigned_char) return c_int;
5712
5713   function vec_any_ne
5714     (A : vector_bool_char;
5715      B : vector_bool_char) return c_int;
5716
5717   function vec_any_ne
5718     (A : vector_bool_char;
5719      B : vector_unsigned_char) return c_int;
5720
5721   function vec_any_ne
5722     (A : vector_bool_char;
5723      B : vector_signed_char) return c_int;
5724
5725   function vec_any_ne
5726     (A : vector_signed_short;
5727      B : vector_bool_short) return c_int;
5728
5729   function vec_any_ne
5730     (A : vector_signed_short;
5731      B : vector_signed_short) return c_int;
5732
5733   function vec_any_ne
5734     (A : vector_unsigned_short;
5735      B : vector_bool_short) return c_int;
5736
5737   function vec_any_ne
5738     (A : vector_unsigned_short;
5739      B : vector_unsigned_short) return c_int;
5740
5741   function vec_any_ne
5742     (A : vector_bool_short;
5743      B : vector_bool_short) return c_int;
5744
5745   function vec_any_ne
5746     (A : vector_bool_short;
5747      B : vector_unsigned_short) return c_int;
5748
5749   function vec_any_ne
5750     (A : vector_bool_short;
5751      B : vector_signed_short) return c_int;
5752
5753   function vec_any_ne
5754     (A : vector_pixel;
5755      B : vector_pixel) return c_int;
5756
5757   function vec_any_ne
5758     (A : vector_signed_int;
5759      B : vector_bool_int) return c_int;
5760
5761   function vec_any_ne
5762     (A : vector_signed_int;
5763      B : vector_signed_int) return c_int;
5764
5765   function vec_any_ne
5766     (A : vector_unsigned_int;
5767      B : vector_bool_int) return c_int;
5768
5769   function vec_any_ne
5770     (A : vector_unsigned_int;
5771      B : vector_unsigned_int) return c_int;
5772
5773   function vec_any_ne
5774     (A : vector_bool_int;
5775      B : vector_bool_int) return c_int;
5776
5777   function vec_any_ne
5778     (A : vector_bool_int;
5779      B : vector_unsigned_int) return c_int;
5780
5781   function vec_any_ne
5782     (A : vector_bool_int;
5783      B : vector_signed_int) return c_int;
5784
5785   function vec_any_ne
5786     (A : vector_float;
5787      B : vector_float) return c_int;
5788
5789   -- vec_any_nge --
5790
5791   function vec_any_nge
5792     (A : vector_float;
5793      B : vector_float) return c_int;
5794
5795   -- vec_any_ngt --
5796
5797   function vec_any_ngt
5798     (A : vector_float;
5799      B : vector_float) return c_int;
5800
5801   -- vec_any_nle --
5802
5803   function vec_any_nle
5804     (A : vector_float;
5805      B : vector_float) return c_int;
5806
5807   -- vec_any_nlt --
5808
5809   function vec_any_nlt
5810     (A : vector_float;
5811      B : vector_float) return c_int;
5812
5813   -- vec_any_numeric --
5814
5815   function vec_any_numeric
5816     (A : vector_float) return c_int;
5817
5818   -- vec_any_out --
5819
5820   function vec_any_out
5821     (A : vector_float;
5822      B : vector_float) return c_int;
5823
5824   -------------------------------------------
5825   -- Straight overloads of routines aboves --
5826   -------------------------------------------
5827
5828   -- vec_vaddcuw --
5829
5830   function vec_vaddcuw
5831     (A : vector_unsigned_int;
5832      B : vector_unsigned_int) return vector_unsigned_int
5833   renames vec_addc;
5834
5835   -- vec_vand --
5836
5837   function vec_vand
5838     (A : vector_float;
5839      B : vector_float) return vector_float
5840   renames vec_and;
5841
5842   function vec_vand
5843     (A : vector_float;
5844      B : vector_bool_int) return vector_float
5845   renames vec_and;
5846
5847   function vec_vand
5848     (A : vector_bool_int;
5849      B : vector_float) return vector_float
5850   renames vec_and;
5851
5852   function vec_vand
5853     (A : vector_bool_int;
5854      B : vector_bool_int) return vector_bool_int
5855   renames vec_and;
5856
5857   function vec_vand
5858     (A : vector_bool_int;
5859      B : vector_signed_int) return vector_signed_int
5860   renames vec_and;
5861
5862   function vec_vand
5863     (A : vector_signed_int;
5864      B : vector_bool_int) return vector_signed_int
5865   renames vec_and;
5866
5867   function vec_vand
5868     (A : vector_signed_int;
5869      B : vector_signed_int) return vector_signed_int
5870   renames vec_and;
5871
5872   function vec_vand
5873     (A : vector_bool_int;
5874      B : vector_unsigned_int) return vector_unsigned_int
5875   renames vec_and;
5876
5877   function vec_vand
5878     (A : vector_unsigned_int;
5879      B : vector_bool_int) return vector_unsigned_int
5880   renames vec_and;
5881
5882   function vec_vand
5883     (A : vector_unsigned_int;
5884      B : vector_unsigned_int) return vector_unsigned_int
5885   renames vec_and;
5886
5887   function vec_vand
5888     (A : vector_bool_short;
5889      B : vector_bool_short) return vector_bool_short
5890   renames vec_and;
5891
5892   function vec_vand
5893     (A : vector_bool_short;
5894      B : vector_signed_short) return vector_signed_short
5895   renames vec_and;
5896
5897   function vec_vand
5898     (A : vector_signed_short;
5899      B : vector_bool_short) return vector_signed_short
5900   renames vec_and;
5901
5902   function vec_vand
5903     (A : vector_signed_short;
5904      B : vector_signed_short) return vector_signed_short
5905   renames vec_and;
5906
5907   function vec_vand
5908     (A : vector_bool_short;
5909      B : vector_unsigned_short) return vector_unsigned_short
5910   renames vec_and;
5911
5912   function vec_vand
5913     (A : vector_unsigned_short;
5914      B : vector_bool_short) return vector_unsigned_short
5915   renames vec_and;
5916
5917   function vec_vand
5918     (A : vector_unsigned_short;
5919      B : vector_unsigned_short) return vector_unsigned_short
5920   renames vec_and;
5921
5922   function vec_vand
5923     (A : vector_bool_char;
5924      B : vector_signed_char) return vector_signed_char
5925   renames vec_and;
5926
5927   function vec_vand
5928     (A : vector_bool_char;
5929      B : vector_bool_char) return vector_bool_char
5930   renames vec_and;
5931
5932   function vec_vand
5933     (A : vector_signed_char;
5934      B : vector_bool_char) return vector_signed_char
5935   renames vec_and;
5936
5937   function vec_vand
5938     (A : vector_signed_char;
5939      B : vector_signed_char) return vector_signed_char
5940   renames vec_and;
5941
5942   function vec_vand
5943     (A : vector_bool_char;
5944      B : vector_unsigned_char) return vector_unsigned_char
5945   renames vec_and;
5946
5947   function vec_vand
5948     (A : vector_unsigned_char;
5949      B : vector_bool_char) return vector_unsigned_char
5950   renames vec_and;
5951
5952   function vec_vand
5953     (A : vector_unsigned_char;
5954      B : vector_unsigned_char) return vector_unsigned_char
5955   renames vec_and;
5956
5957   -- vec_vandc --
5958
5959   function vec_vandc
5960     (A : vector_float;
5961      B : vector_float) return vector_float
5962   renames vec_andc;
5963
5964   function vec_vandc
5965     (A : vector_float;
5966      B : vector_bool_int) return vector_float
5967   renames vec_andc;
5968
5969   function vec_vandc
5970     (A : vector_bool_int;
5971      B : vector_float) return vector_float
5972   renames vec_andc;
5973
5974   function vec_vandc
5975     (A : vector_bool_int;
5976      B : vector_bool_int) return vector_bool_int
5977   renames vec_andc;
5978
5979   function vec_vandc
5980     (A : vector_bool_int;
5981      B : vector_signed_int) return vector_signed_int
5982   renames vec_andc;
5983
5984   function vec_vandc
5985     (A : vector_signed_int;
5986      B : vector_bool_int) return vector_signed_int
5987   renames vec_andc;
5988
5989   function vec_vandc
5990     (A : vector_signed_int;
5991      B : vector_signed_int) return vector_signed_int
5992   renames vec_andc;
5993
5994   function vec_vandc
5995     (A : vector_bool_int;
5996      B : vector_unsigned_int) return vector_unsigned_int
5997   renames vec_andc;
5998
5999   function vec_vandc
6000     (A : vector_unsigned_int;
6001      B : vector_bool_int) return vector_unsigned_int
6002   renames vec_andc;
6003
6004   function vec_vandc
6005     (A : vector_unsigned_int;
6006      B : vector_unsigned_int) return vector_unsigned_int
6007   renames vec_andc;
6008
6009   function vec_vandc
6010     (A : vector_bool_short;
6011      B : vector_bool_short) return vector_bool_short
6012   renames vec_andc;
6013
6014   function vec_vandc
6015     (A : vector_bool_short;
6016      B : vector_signed_short) return vector_signed_short
6017   renames vec_andc;
6018
6019   function vec_vandc
6020     (A : vector_signed_short;
6021      B : vector_bool_short) return vector_signed_short
6022   renames vec_andc;
6023
6024   function vec_vandc
6025     (A : vector_signed_short;
6026      B : vector_signed_short) return vector_signed_short
6027   renames vec_andc;
6028
6029   function vec_vandc
6030     (A : vector_bool_short;
6031      B : vector_unsigned_short) return vector_unsigned_short
6032   renames vec_andc;
6033
6034   function vec_vandc
6035     (A : vector_unsigned_short;
6036      B : vector_bool_short) return vector_unsigned_short
6037   renames vec_andc;
6038
6039   function vec_vandc
6040     (A : vector_unsigned_short;
6041      B : vector_unsigned_short) return vector_unsigned_short
6042   renames vec_andc;
6043
6044   function vec_vandc
6045     (A : vector_bool_char;
6046      B : vector_signed_char) return vector_signed_char
6047   renames vec_andc;
6048
6049   function vec_vandc
6050     (A : vector_bool_char;
6051      B : vector_bool_char) return vector_bool_char
6052   renames vec_andc;
6053
6054   function vec_vandc
6055     (A : vector_signed_char;
6056      B : vector_bool_char) return vector_signed_char
6057   renames vec_andc;
6058
6059   function vec_vandc
6060     (A : vector_signed_char;
6061      B : vector_signed_char) return vector_signed_char
6062   renames vec_andc;
6063
6064   function vec_vandc
6065     (A : vector_bool_char;
6066      B : vector_unsigned_char) return vector_unsigned_char
6067   renames vec_andc;
6068
6069   function vec_vandc
6070     (A : vector_unsigned_char;
6071      B : vector_bool_char) return vector_unsigned_char
6072   renames vec_andc;
6073
6074   function vec_vandc
6075     (A : vector_unsigned_char;
6076      B : vector_unsigned_char) return vector_unsigned_char
6077   renames vec_andc;
6078
6079   -- vec_vrfip --
6080
6081   function vec_vrfip
6082     (A : vector_float) return vector_float
6083   renames vec_ceil;
6084
6085   -- vec_vcmpbfp --
6086
6087   function vec_vcmpbfp
6088     (A : vector_float;
6089      B : vector_float) return vector_signed_int
6090   renames vec_cmpb;
6091
6092   -- vec_vcmpgefp --
6093
6094   function vec_vcmpgefp
6095     (A : vector_float;
6096      B : vector_float) return vector_bool_int
6097   renames vec_cmpge;
6098
6099   -- vec_vctsxs --
6100
6101   function vec_vctsxs
6102     (A : vector_float;
6103      B : c_int) return vector_signed_int
6104   renames vec_cts;
6105
6106   -- vec_vctuxs --
6107
6108   function vec_vctuxs
6109     (A : vector_float;
6110      B : c_int) return vector_unsigned_int
6111   renames vec_ctu;
6112
6113   -- vec_vexptefp --
6114
6115   function vec_vexptefp
6116     (A : vector_float) return vector_float
6117   renames vec_expte;
6118
6119   -- vec_vrfim --
6120
6121   function vec_vrfim
6122     (A : vector_float) return vector_float
6123   renames vec_floor;
6124
6125   -- vec_lvx --
6126
6127   function vec_lvx
6128     (A : c_long;
6129      B : const_vector_float_ptr) return vector_float
6130   renames vec_ld;
6131
6132   function vec_lvx
6133     (A : c_long;
6134      B : const_float_ptr) return vector_float
6135   renames vec_ld;
6136
6137   function vec_lvx
6138     (A : c_long;
6139      B : const_vector_bool_int_ptr) return vector_bool_int
6140   renames vec_ld;
6141
6142   function vec_lvx
6143     (A : c_long;
6144      B : const_vector_signed_int_ptr) return vector_signed_int
6145   renames vec_ld;
6146
6147   function vec_lvx
6148     (A : c_long;
6149      B : const_int_ptr) return vector_signed_int
6150   renames vec_ld;
6151
6152   function vec_lvx
6153     (A : c_long;
6154      B : const_long_ptr) return vector_signed_int
6155   renames vec_ld;
6156
6157   function vec_lvx
6158     (A : c_long;
6159      B : const_vector_unsigned_int_ptr) return vector_unsigned_int
6160   renames vec_ld;
6161
6162   function vec_lvx
6163     (A : c_long;
6164      B : const_unsigned_int_ptr) return vector_unsigned_int
6165   renames vec_ld;
6166
6167   function vec_lvx
6168     (A : c_long;
6169      B : const_unsigned_long_ptr) return vector_unsigned_int
6170   renames vec_ld;
6171
6172   function vec_lvx
6173     (A : c_long;
6174      B : const_vector_bool_short_ptr) return vector_bool_short
6175   renames vec_ld;
6176
6177   function vec_lvx
6178     (A : c_long;
6179      B : const_vector_pixel_ptr) return vector_pixel
6180   renames vec_ld;
6181
6182   function vec_lvx
6183     (A : c_long;
6184      B : const_vector_signed_short_ptr) return vector_signed_short
6185   renames vec_ld;
6186
6187   function vec_lvx
6188     (A : c_long;
6189      B : const_short_ptr) return vector_signed_short
6190   renames vec_ld;
6191
6192   function vec_lvx
6193     (A : c_long;
6194      B : const_vector_unsigned_short_ptr) return vector_unsigned_short
6195   renames vec_ld;
6196
6197   function vec_lvx
6198     (A : c_long;
6199      B : const_unsigned_short_ptr) return vector_unsigned_short
6200   renames vec_ld;
6201
6202   function vec_lvx
6203     (A : c_long;
6204      B : const_vector_bool_char_ptr) return vector_bool_char
6205   renames vec_ld;
6206
6207   function vec_lvx
6208     (A : c_long;
6209      B : const_vector_signed_char_ptr) return vector_signed_char
6210   renames vec_ld;
6211
6212   function vec_lvx
6213     (A : c_long;
6214      B : const_signed_char_ptr) return vector_signed_char
6215   renames vec_ld;
6216
6217   function vec_lvx
6218     (A : c_long;
6219      B : const_vector_unsigned_char_ptr) return vector_unsigned_char
6220   renames vec_ld;
6221
6222   function vec_lvx
6223     (A : c_long;
6224      B : const_unsigned_char_ptr) return vector_unsigned_char
6225   renames vec_ld;
6226
6227   -- vec_lvxl --
6228
6229   function vec_lvxl
6230     (A : c_long;
6231      B : const_vector_float_ptr) return vector_float
6232   renames vec_ldl;
6233
6234   function vec_lvxl
6235     (A : c_long;
6236      B : const_float_ptr) return vector_float
6237   renames vec_ldl;
6238
6239   function vec_lvxl
6240     (A : c_long;
6241      B : const_vector_bool_int_ptr) return vector_bool_int
6242   renames vec_ldl;
6243
6244   function vec_lvxl
6245     (A : c_long;
6246      B : const_vector_signed_int_ptr) return vector_signed_int
6247   renames vec_ldl;
6248
6249   function vec_lvxl
6250     (A : c_long;
6251      B : const_int_ptr) return vector_signed_int
6252   renames vec_ldl;
6253
6254   function vec_lvxl
6255     (A : c_long;
6256      B : const_long_ptr) return vector_signed_int
6257   renames vec_ldl;
6258
6259   function vec_lvxl
6260     (A : c_long;
6261      B : const_vector_unsigned_int_ptr) return vector_unsigned_int
6262   renames vec_ldl;
6263
6264   function vec_lvxl
6265     (A : c_long;
6266      B : const_unsigned_int_ptr) return vector_unsigned_int
6267   renames vec_ldl;
6268
6269   function vec_lvxl
6270     (A : c_long;
6271      B : const_unsigned_long_ptr) return vector_unsigned_int
6272   renames vec_ldl;
6273
6274   function vec_lvxl
6275     (A : c_long;
6276      B : const_vector_bool_short_ptr) return vector_bool_short
6277   renames vec_ldl;
6278
6279   function vec_lvxl
6280     (A : c_long;
6281      B : const_vector_pixel_ptr) return vector_pixel
6282   renames vec_ldl;
6283
6284   function vec_lvxl
6285     (A : c_long;
6286      B : const_vector_signed_short_ptr) return vector_signed_short
6287   renames vec_ldl;
6288
6289   function vec_lvxl
6290     (A : c_long;
6291      B : const_short_ptr) return vector_signed_short
6292   renames vec_ldl;
6293
6294   function vec_lvxl
6295     (A : c_long;
6296      B : const_vector_unsigned_short_ptr) return vector_unsigned_short
6297   renames vec_ldl;
6298
6299   function vec_lvxl
6300     (A : c_long;
6301      B : const_unsigned_short_ptr) return vector_unsigned_short
6302   renames vec_ldl;
6303
6304   function vec_lvxl
6305     (A : c_long;
6306      B : const_vector_bool_char_ptr) return vector_bool_char
6307   renames vec_ldl;
6308
6309   function vec_lvxl
6310     (A : c_long;
6311      B : const_vector_signed_char_ptr) return vector_signed_char
6312   renames vec_ldl;
6313
6314   function vec_lvxl
6315     (A : c_long;
6316      B : const_signed_char_ptr) return vector_signed_char
6317   renames vec_ldl;
6318
6319   function vec_lvxl
6320     (A : c_long;
6321      B : const_vector_unsigned_char_ptr) return vector_unsigned_char
6322   renames vec_ldl;
6323
6324   function vec_lvxl
6325     (A : c_long;
6326      B : const_unsigned_char_ptr) return vector_unsigned_char
6327   renames vec_ldl;
6328
6329   -- vec_vlogefp --
6330
6331   function vec_vlogefp
6332     (A : vector_float) return vector_float
6333   renames vec_loge;
6334
6335   -- vec_vmaddfp --
6336
6337   function vec_vmaddfp
6338     (A : vector_float;
6339      B : vector_float;
6340      C : vector_float) return vector_float
6341   renames vec_madd;
6342
6343   -- vec_vmhaddshs --
6344
6345   function vec_vmhaddshs
6346     (A : vector_signed_short;
6347      B : vector_signed_short;
6348      C : vector_signed_short) return vector_signed_short
6349   renames vec_madds;
6350
6351   -- vec_vmladduhm --
6352
6353   function vec_vmladduhm
6354     (A : vector_signed_short;
6355      B : vector_signed_short;
6356      C : vector_signed_short) return vector_signed_short
6357   renames vec_mladd;
6358
6359   function vec_vmladduhm
6360     (A : vector_signed_short;
6361      B : vector_unsigned_short;
6362      C : vector_unsigned_short) return vector_signed_short
6363   renames vec_mladd;
6364
6365   function vec_vmladduhm
6366     (A : vector_unsigned_short;
6367      B : vector_signed_short;
6368      C : vector_signed_short) return vector_signed_short
6369   renames vec_mladd;
6370
6371   function vec_vmladduhm
6372     (A : vector_unsigned_short;
6373      B : vector_unsigned_short;
6374      C : vector_unsigned_short) return vector_unsigned_short
6375   renames vec_mladd;
6376
6377   -- vec_vmhraddshs --
6378
6379   function vec_vmhraddshs
6380     (A : vector_signed_short;
6381      B : vector_signed_short;
6382      C : vector_signed_short) return vector_signed_short
6383   renames vec_mradds;
6384
6385   -- vec_vnmsubfp --
6386
6387   function vec_vnmsubfp
6388     (A : vector_float;
6389      B : vector_float;
6390      C : vector_float) return vector_float
6391   renames vec_nmsub;
6392
6393   -- vec_vnor --
6394
6395   function vec_vnor
6396     (A : vector_float;
6397      B : vector_float) return vector_float
6398   renames vec_nor;
6399
6400   function vec_vnor
6401     (A : vector_signed_int;
6402      B : vector_signed_int) return vector_signed_int
6403   renames vec_nor;
6404
6405   function vec_vnor
6406     (A : vector_unsigned_int;
6407      B : vector_unsigned_int) return vector_unsigned_int
6408   renames vec_nor;
6409
6410   function vec_vnor
6411     (A : vector_bool_int;
6412      B : vector_bool_int) return vector_bool_int
6413   renames vec_nor;
6414
6415   function vec_vnor
6416     (A : vector_signed_short;
6417      B : vector_signed_short) return vector_signed_short
6418   renames vec_nor;
6419
6420   function vec_vnor
6421     (A : vector_unsigned_short;
6422      B : vector_unsigned_short) return vector_unsigned_short
6423   renames vec_nor;
6424
6425   function vec_vnor
6426     (A : vector_bool_short;
6427      B : vector_bool_short) return vector_bool_short
6428   renames vec_nor;
6429
6430   function vec_vnor
6431     (A : vector_signed_char;
6432      B : vector_signed_char) return vector_signed_char
6433   renames vec_nor;
6434
6435   function vec_vnor
6436     (A : vector_unsigned_char;
6437      B : vector_unsigned_char) return vector_unsigned_char
6438   renames vec_nor;
6439
6440   function vec_vnor
6441     (A : vector_bool_char;
6442      B : vector_bool_char) return vector_bool_char
6443   renames vec_nor;
6444
6445   -- vec_vor --
6446
6447   function vec_vor
6448     (A : vector_float;
6449      B : vector_float) return vector_float
6450   renames vec_or;
6451
6452   function vec_vor
6453     (A : vector_float;
6454      B : vector_bool_int) return vector_float
6455   renames vec_or;
6456
6457   function vec_vor
6458     (A : vector_bool_int;
6459      B : vector_float) return vector_float
6460   renames vec_or;
6461
6462   function vec_vor
6463     (A : vector_bool_int;
6464      B : vector_bool_int) return vector_bool_int
6465   renames vec_or;
6466
6467   function vec_vor
6468     (A : vector_bool_int;
6469      B : vector_signed_int) return vector_signed_int
6470   renames vec_or;
6471
6472   function vec_vor
6473     (A : vector_signed_int;
6474      B : vector_bool_int) return vector_signed_int
6475   renames vec_or;
6476
6477   function vec_vor
6478     (A : vector_signed_int;
6479      B : vector_signed_int) return vector_signed_int
6480   renames vec_or;
6481
6482   function vec_vor
6483     (A : vector_bool_int;
6484      B : vector_unsigned_int) return vector_unsigned_int
6485   renames vec_or;
6486
6487   function vec_vor
6488     (A : vector_unsigned_int;
6489      B : vector_bool_int) return vector_unsigned_int
6490   renames vec_or;
6491
6492   function vec_vor
6493     (A : vector_unsigned_int;
6494      B : vector_unsigned_int) return vector_unsigned_int
6495   renames vec_or;
6496
6497   function vec_vor
6498     (A : vector_bool_short;
6499      B : vector_bool_short) return vector_bool_short
6500   renames vec_or;
6501
6502   function vec_vor
6503     (A : vector_bool_short;
6504      B : vector_signed_short) return vector_signed_short
6505   renames vec_or;
6506
6507   function vec_vor
6508     (A : vector_signed_short;
6509      B : vector_bool_short) return vector_signed_short
6510   renames vec_or;
6511
6512   function vec_vor
6513     (A : vector_signed_short;
6514      B : vector_signed_short) return vector_signed_short
6515   renames vec_or;
6516
6517   function vec_vor
6518     (A : vector_bool_short;
6519      B : vector_unsigned_short) return vector_unsigned_short
6520   renames vec_or;
6521
6522   function vec_vor
6523     (A : vector_unsigned_short;
6524      B : vector_bool_short) return vector_unsigned_short
6525   renames vec_or;
6526
6527   function vec_vor
6528     (A : vector_unsigned_short;
6529      B : vector_unsigned_short) return vector_unsigned_short
6530   renames vec_or;
6531
6532   function vec_vor
6533     (A : vector_bool_char;
6534      B : vector_signed_char) return vector_signed_char
6535   renames vec_or;
6536
6537   function vec_vor
6538     (A : vector_bool_char;
6539      B : vector_bool_char) return vector_bool_char
6540   renames vec_or;
6541
6542   function vec_vor
6543     (A : vector_signed_char;
6544      B : vector_bool_char) return vector_signed_char
6545   renames vec_or;
6546
6547   function vec_vor
6548     (A : vector_signed_char;
6549      B : vector_signed_char) return vector_signed_char
6550   renames vec_or;
6551
6552   function vec_vor
6553     (A : vector_bool_char;
6554      B : vector_unsigned_char) return vector_unsigned_char
6555   renames vec_or;
6556
6557   function vec_vor
6558     (A : vector_unsigned_char;
6559      B : vector_bool_char) return vector_unsigned_char
6560   renames vec_or;
6561
6562   function vec_vor
6563     (A : vector_unsigned_char;
6564      B : vector_unsigned_char) return vector_unsigned_char
6565   renames vec_or;
6566
6567   -- vec_vpkpx --
6568
6569   function vec_vpkpx
6570     (A : vector_unsigned_int;
6571      B : vector_unsigned_int) return vector_pixel
6572   renames vec_packpx;
6573
6574   -- vec_vperm --
6575
6576   function vec_vperm
6577     (A : vector_float;
6578      B : vector_float;
6579      C : vector_unsigned_char) return vector_float
6580   renames vec_perm;
6581
6582   function vec_vperm
6583     (A : vector_signed_int;
6584      B : vector_signed_int;
6585      C : vector_unsigned_char) return vector_signed_int
6586   renames vec_perm;
6587
6588   function vec_vperm
6589     (A : vector_unsigned_int;
6590      B : vector_unsigned_int;
6591      C : vector_unsigned_char) return vector_unsigned_int
6592   renames vec_perm;
6593
6594   function vec_vperm
6595     (A : vector_bool_int;
6596      B : vector_bool_int;
6597      C : vector_unsigned_char) return vector_bool_int
6598   renames vec_perm;
6599
6600   function vec_vperm
6601     (A : vector_signed_short;
6602      B : vector_signed_short;
6603      C : vector_unsigned_char) return vector_signed_short
6604   renames vec_perm;
6605
6606   function vec_vperm
6607     (A : vector_unsigned_short;
6608      B : vector_unsigned_short;
6609      C : vector_unsigned_char) return vector_unsigned_short
6610   renames vec_perm;
6611
6612   function vec_vperm
6613     (A : vector_bool_short;
6614      B : vector_bool_short;
6615      C : vector_unsigned_char) return vector_bool_short
6616   renames vec_perm;
6617
6618   function vec_vperm
6619     (A : vector_pixel;
6620      B : vector_pixel;
6621      C : vector_unsigned_char) return vector_pixel
6622   renames vec_perm;
6623
6624   function vec_vperm
6625     (A : vector_signed_char;
6626      B : vector_signed_char;
6627      C : vector_unsigned_char) return vector_signed_char
6628   renames vec_perm;
6629
6630   function vec_vperm
6631     (A : vector_unsigned_char;
6632      B : vector_unsigned_char;
6633      C : vector_unsigned_char) return vector_unsigned_char
6634   renames vec_perm;
6635
6636   function vec_vperm
6637     (A : vector_bool_char;
6638      B : vector_bool_char;
6639      C : vector_unsigned_char) return vector_bool_char
6640   renames vec_perm;
6641
6642   -- vec_vrefp --
6643
6644   function vec_vrefp
6645     (A : vector_float) return vector_float
6646   renames vec_re;
6647
6648   -- vec_vrfin --
6649
6650   function vec_vrfin
6651     (A : vector_float) return vector_float
6652   renames vec_round;
6653
6654   -- vec_vrsqrtefp --
6655
6656   function vec_vrsqrtefp
6657     (A : vector_float) return vector_float
6658   renames vec_rsqrte;
6659
6660   -- vec_vsel --
6661
6662   function vec_vsel
6663     (A : vector_float;
6664      B : vector_float;
6665      C : vector_bool_int) return vector_float
6666   renames vec_sel;
6667
6668   function vec_vsel
6669     (A : vector_float;
6670      B : vector_float;
6671      C : vector_unsigned_int) return vector_float
6672   renames vec_sel;
6673
6674   function vec_vsel
6675     (A : vector_signed_int;
6676      B : vector_signed_int;
6677      C : vector_bool_int) return vector_signed_int
6678   renames vec_sel;
6679
6680   function vec_vsel
6681     (A : vector_signed_int;
6682      B : vector_signed_int;
6683      C : vector_unsigned_int) return vector_signed_int
6684   renames vec_sel;
6685
6686   function vec_vsel
6687     (A : vector_unsigned_int;
6688      B : vector_unsigned_int;
6689      C : vector_bool_int) return vector_unsigned_int
6690   renames vec_sel;
6691
6692   function vec_vsel
6693     (A : vector_unsigned_int;
6694      B : vector_unsigned_int;
6695      C : vector_unsigned_int) return vector_unsigned_int
6696   renames vec_sel;
6697
6698   function vec_vsel
6699     (A : vector_bool_int;
6700      B : vector_bool_int;
6701      C : vector_bool_int) return vector_bool_int
6702   renames vec_sel;
6703
6704   function vec_vsel
6705     (A : vector_bool_int;
6706      B : vector_bool_int;
6707      C : vector_unsigned_int) return vector_bool_int
6708   renames vec_sel;
6709
6710   function vec_vsel
6711     (A : vector_signed_short;
6712      B : vector_signed_short;
6713      C : vector_bool_short) return vector_signed_short
6714   renames vec_sel;
6715
6716   function vec_vsel
6717     (A : vector_signed_short;
6718      B : vector_signed_short;
6719      C : vector_unsigned_short) return vector_signed_short
6720   renames vec_sel;
6721
6722   function vec_vsel
6723     (A : vector_unsigned_short;
6724      B : vector_unsigned_short;
6725      C : vector_bool_short) return vector_unsigned_short
6726   renames vec_sel;
6727
6728   function vec_vsel
6729     (A : vector_unsigned_short;
6730      B : vector_unsigned_short;
6731      C : vector_unsigned_short) return vector_unsigned_short
6732   renames vec_sel;
6733
6734   function vec_vsel
6735     (A : vector_bool_short;
6736      B : vector_bool_short;
6737      C : vector_bool_short) return vector_bool_short
6738   renames vec_sel;
6739
6740   function vec_vsel
6741     (A : vector_bool_short;
6742      B : vector_bool_short;
6743      C : vector_unsigned_short) return vector_bool_short
6744   renames vec_sel;
6745
6746   function vec_vsel
6747     (A : vector_signed_char;
6748      B : vector_signed_char;
6749      C : vector_bool_char) return vector_signed_char
6750   renames vec_sel;
6751
6752   function vec_vsel
6753     (A : vector_signed_char;
6754      B : vector_signed_char;
6755      C : vector_unsigned_char) return vector_signed_char
6756   renames vec_sel;
6757
6758   function vec_vsel
6759     (A : vector_unsigned_char;
6760      B : vector_unsigned_char;
6761      C : vector_bool_char) return vector_unsigned_char
6762   renames vec_sel;
6763
6764   function vec_vsel
6765     (A : vector_unsigned_char;
6766      B : vector_unsigned_char;
6767      C : vector_unsigned_char) return vector_unsigned_char
6768   renames vec_sel;
6769
6770   function vec_vsel
6771     (A : vector_bool_char;
6772      B : vector_bool_char;
6773      C : vector_bool_char) return vector_bool_char
6774   renames vec_sel;
6775
6776   function vec_vsel
6777     (A : vector_bool_char;
6778      B : vector_bool_char;
6779      C : vector_unsigned_char) return vector_bool_char
6780   renames vec_sel;
6781
6782   -- vec_vsldoi --
6783
6784   function vec_vsldoi
6785     (A : vector_float;
6786      B : vector_float;
6787      C : c_int) return vector_float
6788   renames vec_sld;
6789
6790   function vec_vsldoi
6791     (A : vector_signed_int;
6792      B : vector_signed_int;
6793      C : c_int) return vector_signed_int
6794   renames vec_sld;
6795
6796   function vec_vsldoi
6797     (A : vector_unsigned_int;
6798      B : vector_unsigned_int;
6799      C : c_int) return vector_unsigned_int
6800   renames vec_sld;
6801
6802   function vec_vsldoi
6803     (A : vector_bool_int;
6804      B : vector_bool_int;
6805      C : c_int) return vector_bool_int
6806   renames vec_sld;
6807
6808   function vec_vsldoi
6809     (A : vector_signed_short;
6810      B : vector_signed_short;
6811      C : c_int) return vector_signed_short
6812   renames vec_sld;
6813
6814   function vec_vsldoi
6815     (A : vector_unsigned_short;
6816      B : vector_unsigned_short;
6817      C : c_int) return vector_unsigned_short
6818   renames vec_sld;
6819
6820   function vec_vsldoi
6821     (A : vector_bool_short;
6822      B : vector_bool_short;
6823      C : c_int) return vector_bool_short
6824   renames vec_sld;
6825
6826   function vec_vsldoi
6827     (A : vector_pixel;
6828      B : vector_pixel;
6829      C : c_int) return vector_pixel
6830   renames vec_sld;
6831
6832   function vec_vsldoi
6833     (A : vector_signed_char;
6834      B : vector_signed_char;
6835      C : c_int) return vector_signed_char
6836   renames vec_sld;
6837
6838   function vec_vsldoi
6839     (A : vector_unsigned_char;
6840      B : vector_unsigned_char;
6841      C : c_int) return vector_unsigned_char
6842   renames vec_sld;
6843
6844   function vec_vsldoi
6845     (A : vector_bool_char;
6846      B : vector_bool_char;
6847      C : c_int) return vector_bool_char
6848   renames vec_sld;
6849
6850   -- vec_vsl --
6851
6852   function vec_vsl
6853     (A : vector_signed_int;
6854      B : vector_unsigned_int) return vector_signed_int
6855   renames vec_sll;
6856
6857   function vec_vsl
6858     (A : vector_signed_int;
6859      B : vector_unsigned_short) return vector_signed_int
6860   renames vec_sll;
6861
6862   function vec_vsl
6863     (A : vector_signed_int;
6864      B : vector_unsigned_char) return vector_signed_int
6865   renames vec_sll;
6866
6867   function vec_vsl
6868     (A : vector_unsigned_int;
6869      B : vector_unsigned_int) return vector_unsigned_int
6870   renames vec_sll;
6871
6872   function vec_vsl
6873     (A : vector_unsigned_int;
6874      B : vector_unsigned_short) return vector_unsigned_int
6875   renames vec_sll;
6876
6877   function vec_vsl
6878     (A : vector_unsigned_int;
6879      B : vector_unsigned_char) return vector_unsigned_int
6880   renames vec_sll;
6881
6882   function vec_vsl
6883     (A : vector_bool_int;
6884      B : vector_unsigned_int) return vector_bool_int
6885   renames vec_sll;
6886
6887   function vec_vsl
6888     (A : vector_bool_int;
6889      B : vector_unsigned_short) return vector_bool_int
6890   renames vec_sll;
6891
6892   function vec_vsl
6893     (A : vector_bool_int;
6894      B : vector_unsigned_char) return vector_bool_int
6895   renames vec_sll;
6896
6897   function vec_vsl
6898     (A : vector_signed_short;
6899      B : vector_unsigned_int) return vector_signed_short
6900   renames vec_sll;
6901
6902   function vec_vsl
6903     (A : vector_signed_short;
6904      B : vector_unsigned_short) return vector_signed_short
6905   renames vec_sll;
6906
6907   function vec_vsl
6908     (A : vector_signed_short;
6909      B : vector_unsigned_char) return vector_signed_short
6910   renames vec_sll;
6911
6912   function vec_vsl
6913     (A : vector_unsigned_short;
6914      B : vector_unsigned_int) return vector_unsigned_short
6915   renames vec_sll;
6916
6917   function vec_vsl
6918     (A : vector_unsigned_short;
6919      B : vector_unsigned_short) return vector_unsigned_short
6920   renames vec_sll;
6921
6922   function vec_vsl
6923     (A : vector_unsigned_short;
6924      B : vector_unsigned_char) return vector_unsigned_short
6925   renames vec_sll;
6926
6927   function vec_vsl
6928     (A : vector_bool_short;
6929      B : vector_unsigned_int) return vector_bool_short
6930   renames vec_sll;
6931
6932   function vec_vsl
6933     (A : vector_bool_short;
6934      B : vector_unsigned_short) return vector_bool_short
6935   renames vec_sll;
6936
6937   function vec_vsl
6938     (A : vector_bool_short;
6939      B : vector_unsigned_char) return vector_bool_short
6940   renames vec_sll;
6941
6942   function vec_vsl
6943     (A : vector_pixel;
6944      B : vector_unsigned_int) return vector_pixel
6945   renames vec_sll;
6946
6947   function vec_vsl
6948     (A : vector_pixel;
6949      B : vector_unsigned_short) return vector_pixel
6950   renames vec_sll;
6951
6952   function vec_vsl
6953     (A : vector_pixel;
6954      B : vector_unsigned_char) return vector_pixel
6955   renames vec_sll;
6956
6957   function vec_vsl
6958     (A : vector_signed_char;
6959      B : vector_unsigned_int) return vector_signed_char
6960   renames vec_sll;
6961
6962   function vec_vsl
6963     (A : vector_signed_char;
6964      B : vector_unsigned_short) return vector_signed_char
6965   renames vec_sll;
6966
6967   function vec_vsl
6968     (A : vector_signed_char;
6969      B : vector_unsigned_char) return vector_signed_char
6970   renames vec_sll;
6971
6972   function vec_vsl
6973     (A : vector_unsigned_char;
6974      B : vector_unsigned_int) return vector_unsigned_char
6975   renames vec_sll;
6976
6977   function vec_vsl
6978     (A : vector_unsigned_char;
6979      B : vector_unsigned_short) return vector_unsigned_char
6980   renames vec_sll;
6981
6982   function vec_vsl
6983     (A : vector_unsigned_char;
6984      B : vector_unsigned_char) return vector_unsigned_char
6985   renames vec_sll;
6986
6987   function vec_vsl
6988     (A : vector_bool_char;
6989      B : vector_unsigned_int) return vector_bool_char
6990   renames vec_sll;
6991
6992   function vec_vsl
6993     (A : vector_bool_char;
6994      B : vector_unsigned_short) return vector_bool_char
6995   renames vec_sll;
6996
6997   function vec_vsl
6998     (A : vector_bool_char;
6999      B : vector_unsigned_char) return vector_bool_char
7000   renames vec_sll;
7001
7002   -- vec_vslo --
7003
7004   function vec_vslo
7005     (A : vector_float;
7006      B : vector_signed_char) return vector_float
7007   renames vec_slo;
7008
7009   function vec_vslo
7010     (A : vector_float;
7011      B : vector_unsigned_char) return vector_float
7012   renames vec_slo;
7013
7014   function vec_vslo
7015     (A : vector_signed_int;
7016      B : vector_signed_char) return vector_signed_int
7017   renames vec_slo;
7018
7019   function vec_vslo
7020     (A : vector_signed_int;
7021      B : vector_unsigned_char) return vector_signed_int
7022   renames vec_slo;
7023
7024   function vec_vslo
7025     (A : vector_unsigned_int;
7026      B : vector_signed_char) return vector_unsigned_int
7027   renames vec_slo;
7028
7029   function vec_vslo
7030     (A : vector_unsigned_int;
7031      B : vector_unsigned_char) return vector_unsigned_int
7032   renames vec_slo;
7033
7034   function vec_vslo
7035     (A : vector_signed_short;
7036      B : vector_signed_char) return vector_signed_short
7037   renames vec_slo;
7038
7039   function vec_vslo
7040     (A : vector_signed_short;
7041      B : vector_unsigned_char) return vector_signed_short
7042   renames vec_slo;
7043
7044   function vec_vslo
7045     (A : vector_unsigned_short;
7046      B : vector_signed_char) return vector_unsigned_short
7047   renames vec_slo;
7048
7049   function vec_vslo
7050     (A : vector_unsigned_short;
7051      B : vector_unsigned_char) return vector_unsigned_short
7052   renames vec_slo;
7053
7054   function vec_vslo
7055     (A : vector_pixel;
7056      B : vector_signed_char) return vector_pixel
7057   renames vec_slo;
7058
7059   function vec_vslo
7060     (A : vector_pixel;
7061      B : vector_unsigned_char) return vector_pixel
7062   renames vec_slo;
7063
7064   function vec_vslo
7065     (A : vector_signed_char;
7066      B : vector_signed_char) return vector_signed_char
7067   renames vec_slo;
7068
7069   function vec_vslo
7070     (A : vector_signed_char;
7071      B : vector_unsigned_char) return vector_signed_char
7072   renames vec_slo;
7073
7074   function vec_vslo
7075     (A : vector_unsigned_char;
7076      B : vector_signed_char) return vector_unsigned_char
7077   renames vec_slo;
7078
7079   function vec_vslo
7080     (A : vector_unsigned_char;
7081      B : vector_unsigned_char) return vector_unsigned_char
7082   renames vec_slo;
7083
7084   -- vec_vspltisb --
7085
7086   function vec_vspltisb
7087     (A : c_int) return vector_signed_char
7088   renames vec_splat_s8;
7089
7090   -- vec_vspltish --
7091
7092   function vec_vspltish
7093     (A : c_int) return vector_signed_short
7094   renames vec_splat_s16;
7095
7096   -- vec_vspltisw --
7097
7098   function vec_vspltisw
7099     (A : c_int) return vector_signed_int
7100   renames vec_splat_s32;
7101
7102   -- vec_vsr --
7103
7104   function vec_vsr
7105     (A : vector_signed_int;
7106      B : vector_unsigned_int) return vector_signed_int
7107   renames vec_srl;
7108
7109   function vec_vsr
7110     (A : vector_signed_int;
7111      B : vector_unsigned_short) return vector_signed_int
7112   renames vec_srl;
7113
7114   function vec_vsr
7115     (A : vector_signed_int;
7116      B : vector_unsigned_char) return vector_signed_int
7117   renames vec_srl;
7118
7119   function vec_vsr
7120     (A : vector_unsigned_int;
7121      B : vector_unsigned_int) return vector_unsigned_int
7122   renames vec_srl;
7123
7124   function vec_vsr
7125     (A : vector_unsigned_int;
7126      B : vector_unsigned_short) return vector_unsigned_int
7127   renames vec_srl;
7128
7129   function vec_vsr
7130     (A : vector_unsigned_int;
7131      B : vector_unsigned_char) return vector_unsigned_int
7132   renames vec_srl;
7133
7134   function vec_vsr
7135     (A : vector_bool_int;
7136      B : vector_unsigned_int) return vector_bool_int
7137   renames vec_srl;
7138
7139   function vec_vsr
7140     (A : vector_bool_int;
7141      B : vector_unsigned_short) return vector_bool_int
7142   renames vec_srl;
7143
7144   function vec_vsr
7145     (A : vector_bool_int;
7146      B : vector_unsigned_char) return vector_bool_int
7147   renames vec_srl;
7148
7149   function vec_vsr
7150     (A : vector_signed_short;
7151      B : vector_unsigned_int) return vector_signed_short
7152   renames vec_srl;
7153
7154   function vec_vsr
7155     (A : vector_signed_short;
7156      B : vector_unsigned_short) return vector_signed_short
7157   renames vec_srl;
7158
7159   function vec_vsr
7160     (A : vector_signed_short;
7161      B : vector_unsigned_char) return vector_signed_short
7162   renames vec_srl;
7163
7164   function vec_vsr
7165     (A : vector_unsigned_short;
7166      B : vector_unsigned_int) return vector_unsigned_short
7167   renames vec_srl;
7168
7169   function vec_vsr
7170     (A : vector_unsigned_short;
7171      B : vector_unsigned_short) return vector_unsigned_short
7172   renames vec_srl;
7173
7174   function vec_vsr
7175     (A : vector_unsigned_short;
7176      B : vector_unsigned_char) return vector_unsigned_short
7177   renames vec_srl;
7178
7179   function vec_vsr
7180     (A : vector_bool_short;
7181      B : vector_unsigned_int) return vector_bool_short
7182   renames vec_srl;
7183
7184   function vec_vsr
7185     (A : vector_bool_short;
7186      B : vector_unsigned_short) return vector_bool_short
7187   renames vec_srl;
7188
7189   function vec_vsr
7190     (A : vector_bool_short;
7191      B : vector_unsigned_char) return vector_bool_short
7192   renames vec_srl;
7193
7194   function vec_vsr
7195     (A : vector_pixel;
7196      B : vector_unsigned_int) return vector_pixel
7197   renames vec_srl;
7198
7199   function vec_vsr
7200     (A : vector_pixel;
7201      B : vector_unsigned_short) return vector_pixel
7202   renames vec_srl;
7203
7204   function vec_vsr
7205     (A : vector_pixel;
7206      B : vector_unsigned_char) return vector_pixel
7207   renames vec_srl;
7208
7209   function vec_vsr
7210     (A : vector_signed_char;
7211      B : vector_unsigned_int) return vector_signed_char
7212   renames vec_srl;
7213
7214   function vec_vsr
7215     (A : vector_signed_char;
7216      B : vector_unsigned_short) return vector_signed_char
7217   renames vec_srl;
7218
7219   function vec_vsr
7220     (A : vector_signed_char;
7221      B : vector_unsigned_char) return vector_signed_char
7222   renames vec_srl;
7223
7224   function vec_vsr
7225     (A : vector_unsigned_char;
7226      B : vector_unsigned_int) return vector_unsigned_char
7227   renames vec_srl;
7228
7229   function vec_vsr
7230     (A : vector_unsigned_char;
7231      B : vector_unsigned_short) return vector_unsigned_char
7232   renames vec_srl;
7233
7234   function vec_vsr
7235     (A : vector_unsigned_char;
7236      B : vector_unsigned_char) return vector_unsigned_char
7237   renames vec_srl;
7238
7239   function vec_vsr
7240     (A : vector_bool_char;
7241      B : vector_unsigned_int) return vector_bool_char
7242   renames vec_srl;
7243
7244   function vec_vsr
7245     (A : vector_bool_char;
7246      B : vector_unsigned_short) return vector_bool_char
7247   renames vec_srl;
7248
7249   function vec_vsr
7250     (A : vector_bool_char;
7251      B : vector_unsigned_char) return vector_bool_char
7252   renames vec_srl;
7253
7254   -- vec_vsro --
7255
7256   function vec_vsro
7257     (A : vector_float;
7258      B : vector_signed_char) return vector_float
7259   renames vec_sro;
7260
7261   function vec_vsro
7262     (A : vector_float;
7263      B : vector_unsigned_char) return vector_float
7264   renames vec_sro;
7265
7266   function vec_vsro
7267     (A : vector_signed_int;
7268      B : vector_signed_char) return vector_signed_int
7269   renames vec_sro;
7270
7271   function vec_vsro
7272     (A : vector_signed_int;
7273      B : vector_unsigned_char) return vector_signed_int
7274   renames vec_sro;
7275
7276   function vec_vsro
7277     (A : vector_unsigned_int;
7278      B : vector_signed_char) return vector_unsigned_int
7279   renames vec_sro;
7280
7281   function vec_vsro
7282     (A : vector_unsigned_int;
7283      B : vector_unsigned_char) return vector_unsigned_int
7284   renames vec_sro;
7285
7286   function vec_vsro
7287     (A : vector_signed_short;
7288      B : vector_signed_char) return vector_signed_short
7289   renames vec_sro;
7290
7291   function vec_vsro
7292     (A : vector_signed_short;
7293      B : vector_unsigned_char) return vector_signed_short
7294   renames vec_sro;
7295
7296   function vec_vsro
7297     (A : vector_unsigned_short;
7298      B : vector_signed_char) return vector_unsigned_short
7299   renames vec_sro;
7300
7301   function vec_vsro
7302     (A : vector_unsigned_short;
7303      B : vector_unsigned_char) return vector_unsigned_short
7304   renames vec_sro;
7305
7306   function vec_vsro
7307     (A : vector_pixel;
7308      B : vector_signed_char) return vector_pixel
7309   renames vec_sro;
7310
7311   function vec_vsro
7312     (A : vector_pixel;
7313      B : vector_unsigned_char) return vector_pixel
7314   renames vec_sro;
7315
7316   function vec_vsro
7317     (A : vector_signed_char;
7318      B : vector_signed_char) return vector_signed_char
7319   renames vec_sro;
7320
7321   function vec_vsro
7322     (A : vector_signed_char;
7323      B : vector_unsigned_char) return vector_signed_char
7324   renames vec_sro;
7325
7326   function vec_vsro
7327     (A : vector_unsigned_char;
7328      B : vector_signed_char) return vector_unsigned_char
7329   renames vec_sro;
7330
7331   function vec_vsro
7332     (A : vector_unsigned_char;
7333      B : vector_unsigned_char) return vector_unsigned_char
7334   renames vec_sro;
7335
7336   -- vec_stvx --
7337
7338   procedure vec_stvx
7339     (A : vector_float;
7340      B : c_int;
7341      C : vector_float_ptr)
7342   renames vec_st;
7343
7344   procedure vec_stvx
7345     (A : vector_float;
7346      B : c_int;
7347      C : float_ptr)
7348   renames vec_st;
7349
7350   procedure vec_stvx
7351     (A : vector_signed_int;
7352      B : c_int;
7353      C : vector_signed_int_ptr)
7354   renames vec_st;
7355
7356   procedure vec_stvx
7357     (A : vector_signed_int;
7358      B : c_int;
7359      C : int_ptr)
7360   renames vec_st;
7361
7362   procedure vec_stvx
7363     (A : vector_unsigned_int;
7364      B : c_int;
7365      C : vector_unsigned_int_ptr)
7366   renames vec_st;
7367
7368   procedure vec_stvx
7369     (A : vector_unsigned_int;
7370      B : c_int;
7371      C : unsigned_int_ptr)
7372   renames vec_st;
7373
7374   procedure vec_stvx
7375     (A : vector_bool_int;
7376      B : c_int;
7377      C : vector_bool_int_ptr)
7378   renames vec_st;
7379
7380   procedure vec_stvx
7381     (A : vector_bool_int;
7382      B : c_int;
7383      C : unsigned_int_ptr)
7384   renames vec_st;
7385
7386   procedure vec_stvx
7387     (A : vector_bool_int;
7388      B : c_int;
7389      C : int_ptr)
7390   renames vec_st;
7391
7392   procedure vec_stvx
7393     (A : vector_signed_short;
7394      B : c_int;
7395      C : vector_signed_short_ptr)
7396   renames vec_st;
7397
7398   procedure vec_stvx
7399     (A : vector_signed_short;
7400      B : c_int;
7401      C : short_ptr)
7402   renames vec_st;
7403
7404   procedure vec_stvx
7405     (A : vector_unsigned_short;
7406      B : c_int;
7407      C : vector_unsigned_short_ptr)
7408   renames vec_st;
7409
7410   procedure vec_stvx
7411     (A : vector_unsigned_short;
7412      B : c_int;
7413      C : unsigned_short_ptr)
7414   renames vec_st;
7415
7416   procedure vec_stvx
7417     (A : vector_bool_short;
7418      B : c_int;
7419      C : vector_bool_short_ptr)
7420   renames vec_st;
7421
7422   procedure vec_stvx
7423     (A : vector_bool_short;
7424      B : c_int;
7425      C : unsigned_short_ptr)
7426   renames vec_st;
7427
7428   procedure vec_stvx
7429     (A : vector_pixel;
7430      B : c_int;
7431      C : vector_pixel_ptr)
7432   renames vec_st;
7433
7434   procedure vec_stvx
7435     (A : vector_pixel;
7436      B : c_int;
7437      C : unsigned_short_ptr)
7438   renames vec_st;
7439
7440   procedure vec_stvx
7441     (A : vector_pixel;
7442      B : c_int;
7443      C : short_ptr)
7444   renames vec_st;
7445
7446   procedure vec_stvx
7447     (A : vector_bool_short;
7448      B : c_int;
7449      C : short_ptr)
7450   renames vec_st;
7451
7452   procedure vec_stvx
7453     (A : vector_signed_char;
7454      B : c_int;
7455      C : vector_signed_char_ptr)
7456   renames vec_st;
7457
7458   procedure vec_stvx
7459     (A : vector_signed_char;
7460      B : c_int;
7461      C : signed_char_ptr)
7462   renames vec_st;
7463
7464   procedure vec_stvx
7465     (A : vector_unsigned_char;
7466      B : c_int;
7467      C : vector_unsigned_char_ptr)
7468   renames vec_st;
7469
7470   procedure vec_stvx
7471     (A : vector_unsigned_char;
7472      B : c_int;
7473      C : unsigned_char_ptr)
7474   renames vec_st;
7475
7476   procedure vec_stvx
7477     (A : vector_bool_char;
7478      B : c_int;
7479      C : vector_bool_char_ptr)
7480   renames vec_st;
7481
7482   procedure vec_stvx
7483     (A : vector_bool_char;
7484      B : c_int;
7485      C : unsigned_char_ptr)
7486   renames vec_st;
7487
7488   procedure vec_stvx
7489     (A : vector_bool_char;
7490      B : c_int;
7491      C : signed_char_ptr)
7492   renames vec_st;
7493
7494   -- vec_stvxl --
7495
7496   procedure vec_stvxl
7497     (A : vector_float;
7498      B : c_int;
7499      C : vector_float_ptr)
7500   renames vec_stl;
7501
7502   procedure vec_stvxl
7503     (A : vector_float;
7504      B : c_int;
7505      C : float_ptr)
7506   renames vec_stl;
7507
7508   procedure vec_stvxl
7509     (A : vector_signed_int;
7510      B : c_int;
7511      C : vector_signed_int_ptr)
7512   renames vec_stl;
7513
7514   procedure vec_stvxl
7515     (A : vector_signed_int;
7516      B : c_int;
7517      C : int_ptr)
7518   renames vec_stl;
7519
7520   procedure vec_stvxl
7521     (A : vector_unsigned_int;
7522      B : c_int;
7523      C : vector_unsigned_int_ptr)
7524   renames vec_stl;
7525
7526   procedure vec_stvxl
7527     (A : vector_unsigned_int;
7528      B : c_int;
7529      C : unsigned_int_ptr)
7530   renames vec_stl;
7531
7532   procedure vec_stvxl
7533     (A : vector_bool_int;
7534      B : c_int;
7535      C : vector_bool_int_ptr)
7536   renames vec_stl;
7537
7538   procedure vec_stvxl
7539     (A : vector_bool_int;
7540      B : c_int;
7541      C : unsigned_int_ptr)
7542   renames vec_stl;
7543
7544   procedure vec_stvxl
7545     (A : vector_bool_int;
7546      B : c_int;
7547      C : int_ptr)
7548   renames vec_stl;
7549
7550   procedure vec_stvxl
7551     (A : vector_signed_short;
7552      B : c_int;
7553      C : vector_signed_short_ptr)
7554   renames vec_stl;
7555
7556   procedure vec_stvxl
7557     (A : vector_signed_short;
7558      B : c_int;
7559      C : short_ptr)
7560   renames vec_stl;
7561
7562   procedure vec_stvxl
7563     (A : vector_unsigned_short;
7564      B : c_int;
7565      C : vector_unsigned_short_ptr)
7566   renames vec_stl;
7567
7568   procedure vec_stvxl
7569     (A : vector_unsigned_short;
7570      B : c_int;
7571      C : unsigned_short_ptr)
7572   renames vec_stl;
7573
7574   procedure vec_stvxl
7575     (A : vector_bool_short;
7576      B : c_int;
7577      C : vector_bool_short_ptr)
7578   renames vec_stl;
7579
7580   procedure vec_stvxl
7581     (A : vector_bool_short;
7582      B : c_int;
7583      C : unsigned_short_ptr)
7584   renames vec_stl;
7585
7586   procedure vec_stvxl
7587     (A : vector_bool_short;
7588      B : c_int;
7589      C : short_ptr)
7590   renames vec_stl;
7591
7592   procedure vec_stvxl
7593     (A : vector_pixel;
7594      B : c_int;
7595      C : vector_pixel_ptr)
7596   renames vec_stl;
7597
7598   procedure vec_stvxl
7599     (A : vector_pixel;
7600      B : c_int;
7601      C : unsigned_short_ptr)
7602   renames vec_stl;
7603
7604   procedure vec_stvxl
7605     (A : vector_pixel;
7606      B : c_int;
7607      C : short_ptr)
7608   renames vec_stl;
7609
7610   procedure vec_stvxl
7611     (A : vector_signed_char;
7612      B : c_int;
7613      C : vector_signed_char_ptr)
7614   renames vec_stl;
7615
7616   procedure vec_stvxl
7617     (A : vector_signed_char;
7618      B : c_int;
7619      C : signed_char_ptr)
7620   renames vec_stl;
7621
7622   procedure vec_stvxl
7623     (A : vector_unsigned_char;
7624      B : c_int;
7625      C : vector_unsigned_char_ptr)
7626   renames vec_stl;
7627
7628   procedure vec_stvxl
7629     (A : vector_unsigned_char;
7630      B : c_int;
7631      C : unsigned_char_ptr)
7632   renames vec_stl;
7633
7634   procedure vec_stvxl
7635     (A : vector_bool_char;
7636      B : c_int;
7637      C : vector_bool_char_ptr)
7638   renames vec_stl;
7639
7640   procedure vec_stvxl
7641     (A : vector_bool_char;
7642      B : c_int;
7643      C : unsigned_char_ptr)
7644   renames vec_stl;
7645
7646   procedure vec_stvxl
7647     (A : vector_bool_char;
7648      B : c_int;
7649      C : signed_char_ptr)
7650   renames vec_stl;
7651
7652   -- vec_vsubcuw --
7653
7654   function vec_vsubcuw
7655     (A : vector_unsigned_int;
7656      B : vector_unsigned_int) return vector_unsigned_int
7657   renames vec_subc;
7658
7659   -- vec_vsum2sws --
7660
7661   function vec_vsum2sws
7662     (A : vector_signed_int;
7663      B : vector_signed_int) return vector_signed_int
7664   renames vec_sum2s;
7665
7666   -- vec_vsumsws --
7667
7668   function vec_vsumsws
7669     (A : vector_signed_int;
7670      B : vector_signed_int) return vector_signed_int
7671   renames vec_sums;
7672
7673   -- vec_vrfiz --
7674
7675   function vec_vrfiz
7676     (A : vector_float) return vector_float
7677   renames vec_trunc;
7678
7679   -- vec_vxor --
7680
7681   function vec_vxor
7682     (A : vector_float;
7683      B : vector_float) return vector_float
7684   renames vec_xor;
7685
7686   function vec_vxor
7687     (A : vector_float;
7688      B : vector_bool_int) return vector_float
7689   renames vec_xor;
7690
7691   function vec_vxor
7692     (A : vector_bool_int;
7693      B : vector_float) return vector_float
7694   renames vec_xor;
7695
7696   function vec_vxor
7697     (A : vector_bool_int;
7698      B : vector_bool_int) return vector_bool_int
7699   renames vec_xor;
7700
7701   function vec_vxor
7702     (A : vector_bool_int;
7703      B : vector_signed_int) return vector_signed_int
7704   renames vec_xor;
7705
7706   function vec_vxor
7707     (A : vector_signed_int;
7708      B : vector_bool_int) return vector_signed_int
7709   renames vec_xor;
7710
7711   function vec_vxor
7712     (A : vector_signed_int;
7713      B : vector_signed_int) return vector_signed_int
7714   renames vec_xor;
7715
7716   function vec_vxor
7717     (A : vector_bool_int;
7718      B : vector_unsigned_int) return vector_unsigned_int
7719   renames vec_xor;
7720
7721   function vec_vxor
7722     (A : vector_unsigned_int;
7723      B : vector_bool_int) return vector_unsigned_int
7724   renames vec_xor;
7725
7726   function vec_vxor
7727     (A : vector_unsigned_int;
7728      B : vector_unsigned_int) return vector_unsigned_int
7729   renames vec_xor;
7730
7731   function vec_vxor
7732     (A : vector_bool_short;
7733      B : vector_bool_short) return vector_bool_short
7734   renames vec_xor;
7735
7736   function vec_vxor
7737     (A : vector_bool_short;
7738      B : vector_signed_short) return vector_signed_short
7739   renames vec_xor;
7740
7741   function vec_vxor
7742     (A : vector_signed_short;
7743      B : vector_bool_short) return vector_signed_short
7744   renames vec_xor;
7745
7746   function vec_vxor
7747     (A : vector_signed_short;
7748      B : vector_signed_short) return vector_signed_short
7749   renames vec_xor;
7750
7751   function vec_vxor
7752     (A : vector_bool_short;
7753      B : vector_unsigned_short) return vector_unsigned_short
7754   renames vec_xor;
7755
7756   function vec_vxor
7757     (A : vector_unsigned_short;
7758      B : vector_bool_short) return vector_unsigned_short
7759   renames vec_xor;
7760
7761   function vec_vxor
7762     (A : vector_unsigned_short;
7763      B : vector_unsigned_short) return vector_unsigned_short
7764   renames vec_xor;
7765
7766   function vec_vxor
7767     (A : vector_bool_char;
7768      B : vector_signed_char) return vector_signed_char
7769   renames vec_xor;
7770
7771   function vec_vxor
7772     (A : vector_bool_char;
7773      B : vector_bool_char) return vector_bool_char
7774   renames vec_xor;
7775
7776   function vec_vxor
7777     (A : vector_signed_char;
7778      B : vector_bool_char) return vector_signed_char
7779   renames vec_xor;
7780
7781   function vec_vxor
7782     (A : vector_signed_char;
7783      B : vector_signed_char) return vector_signed_char
7784   renames vec_xor;
7785
7786   function vec_vxor
7787     (A : vector_bool_char;
7788      B : vector_unsigned_char) return vector_unsigned_char
7789   renames vec_xor;
7790
7791   function vec_vxor
7792     (A : vector_unsigned_char;
7793      B : vector_bool_char) return vector_unsigned_char
7794   renames vec_xor;
7795
7796   function vec_vxor
7797     (A : vector_unsigned_char;
7798      B : vector_unsigned_char) return vector_unsigned_char
7799   renames vec_xor;
7800
7801   ----------------------------------------------
7802   -- [PIM 2.5.3 Value for adjusting pointers] --
7803   ----------------------------------------------
7804
7805   --  "At compile time, vec_step (vec_data) produces the integer value
7806   --  representing the amount by which a pointer to a component of an AltiVec
7807   --  data type should increment to cause a pointer increment to increment by
7808   --  16 bytes".
7809
7810   function vec_step (V : vector_unsigned_char) return Integer;
7811   function vec_step (V : vector_signed_char) return Integer;
7812   function vec_step (V : vector_bool_char) return Integer;
7813
7814   function vec_step (V : vector_unsigned_short) return Integer;
7815   function vec_step (V : vector_signed_short) return Integer;
7816   function vec_step (V : vector_bool_short) return Integer;
7817
7818   function vec_step (V : vector_unsigned_int) return Integer;
7819   function vec_step (V : vector_signed_int) return Integer;
7820   function vec_step (V : vector_bool_int) return Integer;
7821
7822   function vec_step (V : vector_float) return Integer;
7823   function vec_step (V : vector_pixel) return Integer;
7824
7825private
7826
7827   -------------------------------------
7828   -- Different flavors of interfaces --
7829   -------------------------------------
7830
7831   --  The vast majority of the user visible functions are just neutral type
7832   --  conversion wrappers around calls to low level primitives. For instance:
7833   --
7834   --        function vec_sll
7835   --          (A : vector_signed_int;
7836   --           B : vector_unsigned_char) return vector_signed_int is
7837   --        begin
7838   --          return To_VSI (vsl (To_VSI (A), To_VSI (B)));
7839   --        end vec_sll;
7840   --
7841   --  We actually don't always need an explicit wrapper and can bind directly
7842   --  with a straight Import of the low level routine, or a renaming of such
7843   --  instead.
7844   --
7845   --  A direct binding is not possible (that is, a wrapper is mandatory) in
7846   --  a number of cases:
7847   --
7848   --  o When the high-level/low-level types don't match, in which case a
7849   --  straight import would risk wrong code generation or compiler blowups in
7850   --  the Hard binding case. This is the case for 'B' in the example above.
7851   --
7852   --  o When the high-level/low-level argument lists differ, as is the case
7853   --  for most of the AltiVec predicates, relying on a low-level primitive
7854   --  which expects a control code argument, like:
7855   --
7856   --        function vec_any_ne
7857   --           (A : vector_signed_int;
7858   --            B : vector_signed_int) return c_int is
7859   --        begin
7860   --          return vcmpequw_p (CR6_LT_REV, To_VSI (A), To_VSI (B));
7861   --        end vec_any_ne;
7862   --
7863   --  o When the high-level/low-level arguments order don't match, as in:
7864   --
7865   --        function vec_cmplt
7866   --           (A : vector_unsigned_char;
7867   --            B : vector_unsigned_char) return vector_bool_char is
7868   --         begin
7869   --           return To_VBC (vcmpgtub (To_VSC (B), To_VSC (A)));
7870   --         end vec_cmplt;
7871   --
7872   --  Conversely, a direct (without wrapper) binding is sometimes mandatory
7873   --  in the Hard binding case, because the corresponding low level code
7874   --  accept only literal values for some arguments. Inlined calls to the
7875   --  wrapper with proper arguments would be fine, but the wrapper body
7876   --  itself would not be compilable. These can of course also be used in the
7877   --  Soft binding, and so are naturally in this common unit.
7878   --
7879   --  Fortunately, the sets of operations for which a wrapper is required
7880   --  and the set of operations for which a wrapper would not be compilable
7881   --  do not intersect.
7882
7883   -----------------------------
7884   -- Inlining considerations --
7885   -----------------------------
7886
7887   --  The intent in the Hard binding case is to eventually map operations
7888   --  to hardware instructions. Needless to say, intermediate function calls
7889   --  do not fit this purpose, so all the user visible subprograms shall be
7890   --  inlined. In the soft case, the bulk of the work is performed by the
7891   --  low level routines, and those exported by this unit are short enough
7892   --  for the inlining to make sense and even be beneficial, so...
7893
7894   pragma Inline_Always (vec_abs);
7895   pragma Inline_Always (vec_abss);
7896   pragma Inline_Always (vec_add);
7897   pragma Inline_Always (vec_vaddfp);
7898   pragma Inline_Always (vec_vadduwm);
7899   pragma Inline_Always (vec_vadduhm);
7900   pragma Inline_Always (vec_vaddubm);
7901   pragma Inline_Always (vec_addc);
7902   pragma Inline_Always (vec_adds);
7903   pragma Inline_Always (vec_vaddsws);
7904   pragma Inline_Always (vec_vadduws);
7905   pragma Inline_Always (vec_vaddshs);
7906   pragma Inline_Always (vec_vadduhs);
7907   pragma Inline_Always (vec_vaddsbs);
7908   pragma Inline_Always (vec_vaddubs);
7909   pragma Inline_Always (vec_and);
7910   pragma Inline_Always (vec_andc);
7911   pragma Inline_Always (vec_avg);
7912   pragma Inline_Always (vec_vavgsw);
7913   pragma Inline_Always (vec_vavguw);
7914   pragma Inline_Always (vec_vavgsh);
7915   pragma Inline_Always (vec_vavguh);
7916   pragma Inline_Always (vec_vavgsb);
7917   pragma Inline_Always (vec_vavgub);
7918   pragma Inline_Always (vec_ceil);
7919   pragma Inline_Always (vec_cmpb);
7920   pragma Inline_Always (vec_cmpeq);
7921   pragma Inline_Always (vec_vcmpeqfp);
7922   pragma Inline_Always (vec_vcmpequw);
7923   pragma Inline_Always (vec_vcmpequh);
7924   pragma Inline_Always (vec_vcmpequb);
7925   pragma Inline_Always (vec_cmpge);
7926   pragma Inline_Always (vec_cmpgt);
7927   pragma Inline_Always (vec_vcmpgtfp);
7928   pragma Inline_Always (vec_vcmpgtsw);
7929   pragma Inline_Always (vec_vcmpgtuw);
7930   pragma Inline_Always (vec_vcmpgtsh);
7931   pragma Inline_Always (vec_vcmpgtuh);
7932   pragma Inline_Always (vec_vcmpgtsb);
7933   pragma Inline_Always (vec_vcmpgtub);
7934   pragma Inline_Always (vec_cmple);
7935   pragma Inline_Always (vec_cmplt);
7936   pragma Inline_Always (vec_expte);
7937   pragma Inline_Always (vec_floor);
7938   pragma Inline_Always (vec_ld);
7939   pragma Inline_Always (vec_lde);
7940   pragma Inline_Always (vec_lvewx);
7941   pragma Inline_Always (vec_lvehx);
7942   pragma Inline_Always (vec_lvebx);
7943   pragma Inline_Always (vec_ldl);
7944   pragma Inline_Always (vec_loge);
7945   pragma Inline_Always (vec_lvsl);
7946   pragma Inline_Always (vec_lvsr);
7947   pragma Inline_Always (vec_madd);
7948   pragma Inline_Always (vec_madds);
7949   pragma Inline_Always (vec_max);
7950   pragma Inline_Always (vec_vmaxfp);
7951   pragma Inline_Always (vec_vmaxsw);
7952   pragma Inline_Always (vec_vmaxuw);
7953   pragma Inline_Always (vec_vmaxsh);
7954   pragma Inline_Always (vec_vmaxuh);
7955   pragma Inline_Always (vec_vmaxsb);
7956   pragma Inline_Always (vec_vmaxub);
7957   pragma Inline_Always (vec_mergeh);
7958   pragma Inline_Always (vec_vmrghw);
7959   pragma Inline_Always (vec_vmrghh);
7960   pragma Inline_Always (vec_vmrghb);
7961   pragma Inline_Always (vec_mergel);
7962   pragma Inline_Always (vec_vmrglw);
7963   pragma Inline_Always (vec_vmrglh);
7964   pragma Inline_Always (vec_vmrglb);
7965   pragma Inline_Always (vec_mfvscr);
7966   pragma Inline_Always (vec_min);
7967   pragma Inline_Always (vec_vminfp);
7968   pragma Inline_Always (vec_vminsw);
7969   pragma Inline_Always (vec_vminuw);
7970   pragma Inline_Always (vec_vminsh);
7971   pragma Inline_Always (vec_vminuh);
7972   pragma Inline_Always (vec_vminsb);
7973   pragma Inline_Always (vec_vminub);
7974   pragma Inline_Always (vec_mladd);
7975   pragma Inline_Always (vec_mradds);
7976   pragma Inline_Always (vec_msum);
7977   pragma Inline_Always (vec_vmsumshm);
7978   pragma Inline_Always (vec_vmsumuhm);
7979   pragma Inline_Always (vec_vmsummbm);
7980   pragma Inline_Always (vec_vmsumubm);
7981   pragma Inline_Always (vec_msums);
7982   pragma Inline_Always (vec_vmsumshs);
7983   pragma Inline_Always (vec_vmsumuhs);
7984   pragma Inline_Always (vec_mtvscr);
7985   pragma Inline_Always (vec_mule);
7986   pragma Inline_Always (vec_vmulesh);
7987   pragma Inline_Always (vec_vmuleuh);
7988   pragma Inline_Always (vec_vmulesb);
7989   pragma Inline_Always (vec_vmuleub);
7990   pragma Inline_Always (vec_mulo);
7991   pragma Inline_Always (vec_vmulosh);
7992   pragma Inline_Always (vec_vmulouh);
7993   pragma Inline_Always (vec_vmulosb);
7994   pragma Inline_Always (vec_vmuloub);
7995   pragma Inline_Always (vec_nmsub);
7996   pragma Inline_Always (vec_nor);
7997   pragma Inline_Always (vec_or);
7998   pragma Inline_Always (vec_pack);
7999   pragma Inline_Always (vec_vpkuwum);
8000   pragma Inline_Always (vec_vpkuhum);
8001   pragma Inline_Always (vec_packpx);
8002   pragma Inline_Always (vec_packs);
8003   pragma Inline_Always (vec_vpkswss);
8004   pragma Inline_Always (vec_vpkuwus);
8005   pragma Inline_Always (vec_vpkshss);
8006   pragma Inline_Always (vec_vpkuhus);
8007   pragma Inline_Always (vec_packsu);
8008   pragma Inline_Always (vec_vpkswus);
8009   pragma Inline_Always (vec_vpkshus);
8010   pragma Inline_Always (vec_perm);
8011   pragma Inline_Always (vec_re);
8012   pragma Inline_Always (vec_rl);
8013   pragma Inline_Always (vec_vrlw);
8014   pragma Inline_Always (vec_vrlh);
8015   pragma Inline_Always (vec_vrlb);
8016   pragma Inline_Always (vec_round);
8017   pragma Inline_Always (vec_rsqrte);
8018   pragma Inline_Always (vec_sel);
8019   pragma Inline_Always (vec_sl);
8020   pragma Inline_Always (vec_vslw);
8021   pragma Inline_Always (vec_vslh);
8022   pragma Inline_Always (vec_vslb);
8023   pragma Inline_Always (vec_sll);
8024   pragma Inline_Always (vec_slo);
8025   pragma Inline_Always (vec_sr);
8026   pragma Inline_Always (vec_vsrw);
8027   pragma Inline_Always (vec_vsrh);
8028   pragma Inline_Always (vec_vsrb);
8029   pragma Inline_Always (vec_sra);
8030   pragma Inline_Always (vec_vsraw);
8031   pragma Inline_Always (vec_vsrah);
8032   pragma Inline_Always (vec_vsrab);
8033   pragma Inline_Always (vec_srl);
8034   pragma Inline_Always (vec_sro);
8035   pragma Inline_Always (vec_st);
8036   pragma Inline_Always (vec_ste);
8037   pragma Inline_Always (vec_stvewx);
8038   pragma Inline_Always (vec_stvehx);
8039   pragma Inline_Always (vec_stvebx);
8040   pragma Inline_Always (vec_stl);
8041   pragma Inline_Always (vec_sub);
8042   pragma Inline_Always (vec_vsubfp);
8043   pragma Inline_Always (vec_vsubuwm);
8044   pragma Inline_Always (vec_vsubuhm);
8045   pragma Inline_Always (vec_vsububm);
8046   pragma Inline_Always (vec_subc);
8047   pragma Inline_Always (vec_subs);
8048   pragma Inline_Always (vec_vsubsws);
8049   pragma Inline_Always (vec_vsubuws);
8050   pragma Inline_Always (vec_vsubshs);
8051   pragma Inline_Always (vec_vsubuhs);
8052   pragma Inline_Always (vec_vsubsbs);
8053   pragma Inline_Always (vec_vsububs);
8054   pragma Inline_Always (vec_sum4s);
8055   pragma Inline_Always (vec_vsum4shs);
8056   pragma Inline_Always (vec_vsum4sbs);
8057   pragma Inline_Always (vec_vsum4ubs);
8058   pragma Inline_Always (vec_sum2s);
8059   pragma Inline_Always (vec_sums);
8060   pragma Inline_Always (vec_trunc);
8061   pragma Inline_Always (vec_unpackh);
8062   pragma Inline_Always (vec_vupkhsh);
8063   pragma Inline_Always (vec_vupkhpx);
8064   pragma Inline_Always (vec_vupkhsb);
8065   pragma Inline_Always (vec_unpackl);
8066   pragma Inline_Always (vec_vupklpx);
8067   pragma Inline_Always (vec_vupklsh);
8068   pragma Inline_Always (vec_vupklsb);
8069   pragma Inline_Always (vec_xor);
8070
8071   pragma Inline_Always (vec_all_eq);
8072   pragma Inline_Always (vec_all_ge);
8073   pragma Inline_Always (vec_all_gt);
8074   pragma Inline_Always (vec_all_in);
8075   pragma Inline_Always (vec_all_le);
8076   pragma Inline_Always (vec_all_lt);
8077   pragma Inline_Always (vec_all_nan);
8078   pragma Inline_Always (vec_all_ne);
8079   pragma Inline_Always (vec_all_nge);
8080   pragma Inline_Always (vec_all_ngt);
8081   pragma Inline_Always (vec_all_nle);
8082   pragma Inline_Always (vec_all_nlt);
8083   pragma Inline_Always (vec_all_numeric);
8084   pragma Inline_Always (vec_any_eq);
8085   pragma Inline_Always (vec_any_ge);
8086   pragma Inline_Always (vec_any_gt);
8087   pragma Inline_Always (vec_any_le);
8088   pragma Inline_Always (vec_any_lt);
8089   pragma Inline_Always (vec_any_nan);
8090   pragma Inline_Always (vec_any_ne);
8091   pragma Inline_Always (vec_any_nge);
8092   pragma Inline_Always (vec_any_ngt);
8093   pragma Inline_Always (vec_any_nle);
8094   pragma Inline_Always (vec_any_nlt);
8095   pragma Inline_Always (vec_any_numeric);
8096   pragma Inline_Always (vec_any_out);
8097
8098   --  Similarly, vec_step is expected to be turned into a compile time
8099   --  constant, so ...
8100
8101   pragma Inline_Always (vec_step);
8102
8103end GNAT.Altivec.Vector_Operations;
8104