OSDN Git Service

2008-05-27 Vincent Celier <celier@adacore.com>
[pf3gnuchains/gcc-fork.git] / gcc / ada / g-alveop.adb
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 --                                 B o d y                                  --
8 --                                                                          --
9 --           Copyright (C) 2004-2005, 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 2,  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.  See the GNU General Public License --
17 -- for  more details.  You should have  received  a copy of the GNU General --
18 -- Public License  distributed with GNAT;  see file COPYING.  If not, write --
19 -- to  the Free Software Foundation,  59 Temple Place - Suite 330,  Boston, --
20 -- MA 02111-1307, USA.                                                      --
21 --                                                                          --
22 -- As a special exception,  if other files  instantiate  generics from this --
23 -- unit, or you link  this unit with other files  to produce an executable, --
24 -- this  unit  does not  by itself cause  the resulting  executable  to  be --
25 -- covered  by the  GNU  General  Public  License.  This exception does not --
26 -- however invalidate  any other reasons why  the executable file  might be --
27 -- covered by the  GNU Public License.                                      --
28 --                                                                          --
29 -- GNAT was originally developed  by the GNAT team at  New York University. --
30 -- Extensive contributions were provided by Ada Core Technologies Inc.      --
31 --                                                                          --
32 ------------------------------------------------------------------------------
33
34 with GNAT.Altivec.Low_Level_Vectors; use GNAT.Altivec.Low_Level_Vectors;
35
36 package body GNAT.Altivec.Vector_Operations is
37
38    --------------------------------------------------------
39    -- Bodies for generic and specific Altivec operations --
40    --------------------------------------------------------
41
42    -- vec_abs --
43
44    function vec_abs
45      (A : vector_signed_char) return vector_signed_char
46    is
47    begin
48       return To_LL_VSC (abs_v16qi (A));
49    end vec_abs;
50
51    function vec_abs
52      (A : vector_signed_short) return vector_signed_short
53    is
54    begin
55       return To_LL_VSS (abs_v8hi (A));
56    end vec_abs;
57
58    function vec_abs
59      (A : vector_signed_int) return vector_signed_int
60    is
61    begin
62       return To_LL_VSI (abs_v4si (A));
63    end vec_abs;
64
65    function vec_abs
66      (A : vector_float) return vector_float
67    is
68    begin
69       return To_LL_VF (abs_v4sf (A));
70    end vec_abs;
71
72    -- vec_abss --
73
74    function vec_abss
75      (A : vector_signed_char) return vector_signed_char
76    is
77    begin
78       return To_LL_VSC (abss_v16qi (A));
79    end vec_abss;
80
81    function vec_abss
82      (A : vector_signed_short) return vector_signed_short
83    is
84    begin
85       return To_LL_VSS (abss_v8hi (A));
86    end vec_abss;
87
88    function vec_abss
89      (A : vector_signed_int) return vector_signed_int
90    is
91    begin
92       return To_LL_VSI (abss_v4si (A));
93    end vec_abss;
94
95    -- vec_add --
96
97    function vec_add
98      (A : vector_bool_char;
99       B : vector_signed_char) return vector_signed_char
100    is
101    begin
102       return To_LL_VSC (vaddubm (To_LL_VSC (A), To_LL_VSC (B)));
103    end vec_add;
104
105    function vec_add
106      (A : vector_signed_char;
107       B : vector_bool_char) return vector_signed_char
108    is
109    begin
110       return To_LL_VSC (vaddubm (To_LL_VSC (A), To_LL_VSC (B)));
111    end vec_add;
112
113    function vec_add
114      (A : vector_signed_char;
115       B : vector_signed_char) return vector_signed_char
116    is
117    begin
118       return To_LL_VSC (vaddubm (To_LL_VSC (A), To_LL_VSC (B)));
119    end vec_add;
120
121    function vec_add
122      (A : vector_bool_char;
123       B : vector_unsigned_char) return vector_unsigned_char
124    is
125    begin
126       return To_LL_VUC (vaddubm (To_LL_VSC (A), To_LL_VSC (B)));
127    end vec_add;
128
129    function vec_add
130      (A : vector_unsigned_char;
131       B : vector_bool_char) return vector_unsigned_char
132    is
133    begin
134       return To_LL_VUC (vaddubm (To_LL_VSC (A), To_LL_VSC (B)));
135    end vec_add;
136
137    function vec_add
138      (A : vector_unsigned_char;
139       B : vector_unsigned_char) return vector_unsigned_char
140    is
141    begin
142       return To_LL_VUC (vaddubm (To_LL_VSC (A), To_LL_VSC (B)));
143    end vec_add;
144
145    function vec_add
146      (A : vector_bool_short;
147       B : vector_signed_short) return vector_signed_short
148    is
149    begin
150       return To_LL_VSS (vadduhm (To_LL_VSS (A), To_LL_VSS (B)));
151    end vec_add;
152
153    function vec_add
154      (A : vector_signed_short;
155       B : vector_bool_short) return vector_signed_short
156    is
157    begin
158       return To_LL_VSS (vadduhm (To_LL_VSS (A), To_LL_VSS (B)));
159    end vec_add;
160
161    function vec_add
162      (A : vector_signed_short;
163       B : vector_signed_short) return vector_signed_short
164    is
165    begin
166       return To_LL_VSS (vadduhm (To_LL_VSS (A), To_LL_VSS (B)));
167    end vec_add;
168
169    function vec_add
170      (A : vector_bool_short;
171       B : vector_unsigned_short) return vector_unsigned_short
172    is
173    begin
174       return To_LL_VUS (vadduhm (To_LL_VSS (A), To_LL_VSS (B)));
175    end vec_add;
176
177    function vec_add
178      (A : vector_unsigned_short;
179       B : vector_bool_short) return vector_unsigned_short
180    is
181    begin
182       return To_LL_VUS (vadduhm (To_LL_VSS (A), To_LL_VSS (B)));
183    end vec_add;
184
185    function vec_add
186      (A : vector_unsigned_short;
187       B : vector_unsigned_short) return vector_unsigned_short
188    is
189    begin
190       return To_LL_VUS (vadduhm (To_LL_VSS (A), To_LL_VSS (B)));
191    end vec_add;
192
193    function vec_add
194      (A : vector_bool_int;
195       B : vector_signed_int) return vector_signed_int
196    is
197    begin
198       return To_LL_VSI (vadduwm (To_LL_VSI (A), To_LL_VSI (B)));
199    end vec_add;
200
201    function vec_add
202      (A : vector_signed_int;
203       B : vector_bool_int) return vector_signed_int
204    is
205    begin
206       return To_LL_VSI (vadduwm (To_LL_VSI (A), To_LL_VSI (B)));
207    end vec_add;
208
209    function vec_add
210      (A : vector_signed_int;
211       B : vector_signed_int) return vector_signed_int
212    is
213    begin
214       return To_LL_VSI (vadduwm (To_LL_VSI (A), To_LL_VSI (B)));
215    end vec_add;
216
217    function vec_add
218      (A : vector_bool_int;
219       B : vector_unsigned_int) return vector_unsigned_int
220    is
221    begin
222       return To_LL_VUI (vadduwm (To_LL_VSI (A), To_LL_VSI (B)));
223    end vec_add;
224
225    function vec_add
226      (A : vector_unsigned_int;
227       B : vector_bool_int) return vector_unsigned_int
228    is
229    begin
230       return To_LL_VUI (vadduwm (To_LL_VSI (A), To_LL_VSI (B)));
231    end vec_add;
232
233    function vec_add
234      (A : vector_unsigned_int;
235       B : vector_unsigned_int) return vector_unsigned_int
236    is
237    begin
238       return To_LL_VUI (vadduwm (To_LL_VSI (A), To_LL_VSI (B)));
239    end vec_add;
240
241    function vec_add
242      (A : vector_float;
243       B : vector_float) return vector_float
244    is
245    begin
246       return To_LL_VF  (vaddfp (To_LL_VF  (A), To_LL_VF  (B)));
247    end vec_add;
248
249    -- vec_vaddfp --
250
251    function vec_vaddfp
252      (A : vector_float;
253       B : vector_float) return vector_float
254    is
255    begin
256       return To_LL_VF  (vaddfp (To_LL_VF  (A), To_LL_VF  (B)));
257    end vec_vaddfp;
258
259    -- vec_vadduwm --
260
261    function vec_vadduwm
262      (A : vector_bool_int;
263       B : vector_signed_int) return vector_signed_int
264    is
265    begin
266       return To_LL_VSI (vadduwm (To_LL_VSI (A), To_LL_VSI (B)));
267    end vec_vadduwm;
268
269    function vec_vadduwm
270      (A : vector_signed_int;
271       B : vector_bool_int) return vector_signed_int
272    is
273    begin
274       return To_LL_VSI (vadduwm (To_LL_VSI (A), To_LL_VSI (B)));
275    end vec_vadduwm;
276
277    function vec_vadduwm
278      (A : vector_signed_int;
279       B : vector_signed_int) return vector_signed_int
280    is
281    begin
282       return To_LL_VSI (vadduwm (To_LL_VSI (A), To_LL_VSI (B)));
283    end vec_vadduwm;
284
285    function vec_vadduwm
286      (A : vector_bool_int;
287       B : vector_unsigned_int) return vector_unsigned_int
288    is
289    begin
290       return To_LL_VUI (vadduwm (To_LL_VSI (A), To_LL_VSI (B)));
291    end vec_vadduwm;
292
293    function vec_vadduwm
294      (A : vector_unsigned_int;
295       B : vector_bool_int) return vector_unsigned_int
296    is
297    begin
298       return To_LL_VUI (vadduwm (To_LL_VSI (A), To_LL_VSI (B)));
299    end vec_vadduwm;
300
301    function vec_vadduwm
302      (A : vector_unsigned_int;
303       B : vector_unsigned_int) return vector_unsigned_int
304    is
305    begin
306       return To_LL_VUI (vadduwm (To_LL_VSI (A), To_LL_VSI (B)));
307    end vec_vadduwm;
308
309    -- vec_vadduhm --
310
311    function vec_vadduhm
312      (A : vector_bool_short;
313       B : vector_signed_short) return vector_signed_short
314    is
315    begin
316       return To_LL_VSS (vadduhm (To_LL_VSS (A), To_LL_VSS (B)));
317    end vec_vadduhm;
318
319    function vec_vadduhm
320      (A : vector_signed_short;
321       B : vector_bool_short) return vector_signed_short
322    is
323    begin
324       return To_LL_VSS (vadduhm (To_LL_VSS (A), To_LL_VSS (B)));
325    end vec_vadduhm;
326
327    function vec_vadduhm
328      (A : vector_signed_short;
329       B : vector_signed_short) return vector_signed_short
330    is
331    begin
332       return To_LL_VSS (vadduhm (To_LL_VSS (A), To_LL_VSS (B)));
333    end vec_vadduhm;
334
335    function vec_vadduhm
336      (A : vector_bool_short;
337       B : vector_unsigned_short) return vector_unsigned_short
338    is
339    begin
340       return To_LL_VUS (vadduhm (To_LL_VSS (A), To_LL_VSS (B)));
341    end vec_vadduhm;
342
343    function vec_vadduhm
344      (A : vector_unsigned_short;
345       B : vector_bool_short) return vector_unsigned_short
346    is
347    begin
348       return To_LL_VUS (vadduhm (To_LL_VSS (A), To_LL_VSS (B)));
349    end vec_vadduhm;
350
351    function vec_vadduhm
352      (A : vector_unsigned_short;
353       B : vector_unsigned_short) return vector_unsigned_short
354    is
355    begin
356       return To_LL_VUS (vadduhm (To_LL_VSS (A), To_LL_VSS (B)));
357    end vec_vadduhm;
358
359    -- vec_vaddubm --
360
361    function vec_vaddubm
362      (A : vector_bool_char;
363       B : vector_signed_char) return vector_signed_char
364    is
365    begin
366       return To_LL_VSC (vaddubm (To_LL_VSC (A), To_LL_VSC (B)));
367    end vec_vaddubm;
368
369    function vec_vaddubm
370      (A : vector_signed_char;
371       B : vector_bool_char) return vector_signed_char
372    is
373    begin
374       return To_LL_VSC (vaddubm (To_LL_VSC (A), To_LL_VSC (B)));
375    end vec_vaddubm;
376
377    function vec_vaddubm
378      (A : vector_signed_char;
379       B : vector_signed_char) return vector_signed_char
380    is
381    begin
382       return To_LL_VSC (vaddubm (To_LL_VSC (A), To_LL_VSC (B)));
383    end vec_vaddubm;
384
385    function vec_vaddubm
386      (A : vector_bool_char;
387       B : vector_unsigned_char) return vector_unsigned_char
388    is
389    begin
390       return To_LL_VUC (vaddubm (To_LL_VSC (A), To_LL_VSC (B)));
391    end vec_vaddubm;
392
393    function vec_vaddubm
394      (A : vector_unsigned_char;
395       B : vector_bool_char) return vector_unsigned_char
396    is
397    begin
398       return To_LL_VUC (vaddubm (To_LL_VSC (A), To_LL_VSC (B)));
399    end vec_vaddubm;
400
401    function vec_vaddubm
402      (A : vector_unsigned_char;
403       B : vector_unsigned_char) return vector_unsigned_char
404    is
405    begin
406       return To_LL_VUC (vaddubm (To_LL_VSC (A), To_LL_VSC (B)));
407    end vec_vaddubm;
408
409    -- vec_addc --
410
411    function vec_addc
412      (A : vector_unsigned_int;
413       B : vector_unsigned_int) return vector_unsigned_int
414    is
415    begin
416       return To_LL_VUI (vaddcuw (To_LL_VSI (A), To_LL_VSI (B)));
417    end vec_addc;
418
419    -- vec_adds --
420
421    function vec_adds
422      (A : vector_bool_char;
423       B : vector_unsigned_char) return vector_unsigned_char
424    is
425    begin
426       return To_LL_VUC (vaddubs (To_LL_VSC (A), To_LL_VSC (B)));
427    end vec_adds;
428
429    function vec_adds
430      (A : vector_unsigned_char;
431       B : vector_bool_char) return vector_unsigned_char
432    is
433    begin
434       return To_LL_VUC (vaddubs (To_LL_VSC (A), To_LL_VSC (B)));
435    end vec_adds;
436
437    function vec_adds
438      (A : vector_unsigned_char;
439       B : vector_unsigned_char) return vector_unsigned_char
440    is
441    begin
442       return To_LL_VUC (vaddubs (To_LL_VSC (A), To_LL_VSC (B)));
443    end vec_adds;
444
445    function vec_adds
446      (A : vector_bool_char;
447       B : vector_signed_char) return vector_signed_char
448    is
449    begin
450       return To_LL_VSC (vaddsbs (To_LL_VSC (A), To_LL_VSC (B)));
451    end vec_adds;
452
453    function vec_adds
454      (A : vector_signed_char;
455       B : vector_bool_char) return vector_signed_char
456    is
457    begin
458       return To_LL_VSC (vaddsbs (To_LL_VSC (A), To_LL_VSC (B)));
459    end vec_adds;
460
461    function vec_adds
462      (A : vector_signed_char;
463       B : vector_signed_char) return vector_signed_char
464    is
465    begin
466       return To_LL_VSC (vaddsbs (To_LL_VSC (A), To_LL_VSC (B)));
467    end vec_adds;
468
469    function vec_adds
470      (A : vector_bool_short;
471       B : vector_unsigned_short) return vector_unsigned_short
472    is
473    begin
474       return To_LL_VUS (vadduhs (To_LL_VSS (A), To_LL_VSS (B)));
475    end vec_adds;
476
477    function vec_adds
478      (A : vector_unsigned_short;
479       B : vector_bool_short) return vector_unsigned_short
480    is
481    begin
482       return To_LL_VUS (vadduhs (To_LL_VSS (A), To_LL_VSS (B)));
483    end vec_adds;
484
485    function vec_adds
486      (A : vector_unsigned_short;
487       B : vector_unsigned_short) return vector_unsigned_short
488    is
489    begin
490       return To_LL_VUS (vadduhs (To_LL_VSS (A), To_LL_VSS (B)));
491    end vec_adds;
492
493    function vec_adds
494      (A : vector_bool_short;
495       B : vector_signed_short) return vector_signed_short
496    is
497    begin
498       return To_LL_VSS (vaddshs (To_LL_VSS (A), To_LL_VSS (B)));
499    end vec_adds;
500
501    function vec_adds
502      (A : vector_signed_short;
503       B : vector_bool_short) return vector_signed_short
504    is
505    begin
506       return To_LL_VSS (vaddshs (To_LL_VSS (A), To_LL_VSS (B)));
507    end vec_adds;
508
509    function vec_adds
510      (A : vector_signed_short;
511       B : vector_signed_short) return vector_signed_short
512    is
513    begin
514       return To_LL_VSS (vaddshs (To_LL_VSS (A), To_LL_VSS (B)));
515    end vec_adds;
516
517    function vec_adds
518      (A : vector_bool_int;
519       B : vector_unsigned_int) return vector_unsigned_int
520    is
521    begin
522       return To_LL_VUI (vadduws (To_LL_VSI (A), To_LL_VSI (B)));
523    end vec_adds;
524
525    function vec_adds
526      (A : vector_unsigned_int;
527       B : vector_bool_int) return vector_unsigned_int
528    is
529    begin
530       return To_LL_VUI (vadduws (To_LL_VSI (A), To_LL_VSI (B)));
531    end vec_adds;
532
533    function vec_adds
534      (A : vector_unsigned_int;
535       B : vector_unsigned_int) return vector_unsigned_int
536    is
537    begin
538       return To_LL_VUI (vadduws (To_LL_VSI (A), To_LL_VSI (B)));
539    end vec_adds;
540
541    function vec_adds
542      (A : vector_bool_int;
543       B : vector_signed_int) return vector_signed_int
544    is
545    begin
546       return To_LL_VSI (vaddsws (To_LL_VSI (A), To_LL_VSI (B)));
547    end vec_adds;
548
549    function vec_adds
550      (A : vector_signed_int;
551       B : vector_bool_int) return vector_signed_int
552    is
553    begin
554       return To_LL_VSI (vaddsws (To_LL_VSI (A), To_LL_VSI (B)));
555    end vec_adds;
556
557    function vec_adds
558      (A : vector_signed_int;
559       B : vector_signed_int) return vector_signed_int
560    is
561    begin
562       return To_LL_VSI (vaddsws (To_LL_VSI (A), To_LL_VSI (B)));
563    end vec_adds;
564
565    -- vec_vaddsws --
566
567    function vec_vaddsws
568      (A : vector_bool_int;
569       B : vector_signed_int) return vector_signed_int
570    is
571    begin
572       return To_LL_VSI (vaddsws (To_LL_VSI (A), To_LL_VSI (B)));
573    end vec_vaddsws;
574
575    function vec_vaddsws
576      (A : vector_signed_int;
577       B : vector_bool_int) return vector_signed_int
578    is
579    begin
580       return To_LL_VSI (vaddsws (To_LL_VSI (A), To_LL_VSI (B)));
581    end vec_vaddsws;
582
583    function vec_vaddsws
584      (A : vector_signed_int;
585       B : vector_signed_int) return vector_signed_int
586    is
587    begin
588       return To_LL_VSI (vaddsws (To_LL_VSI (A), To_LL_VSI (B)));
589    end vec_vaddsws;
590
591    -- vec_vadduws --
592
593    function vec_vadduws
594      (A : vector_bool_int;
595       B : vector_unsigned_int) return vector_unsigned_int
596    is
597    begin
598       return To_LL_VUI (vadduws (To_LL_VSI (A), To_LL_VSI (B)));
599    end vec_vadduws;
600
601    function vec_vadduws
602      (A : vector_unsigned_int;
603       B : vector_bool_int) return vector_unsigned_int
604    is
605    begin
606       return To_LL_VUI (vadduws (To_LL_VSI (A), To_LL_VSI (B)));
607    end vec_vadduws;
608
609    function vec_vadduws
610      (A : vector_unsigned_int;
611       B : vector_unsigned_int) return vector_unsigned_int
612    is
613    begin
614       return To_LL_VUI (vadduws (To_LL_VSI (A), To_LL_VSI (B)));
615    end vec_vadduws;
616
617    -- vec_vaddshs --
618
619    function vec_vaddshs
620      (A : vector_bool_short;
621       B : vector_signed_short) return vector_signed_short
622    is
623    begin
624       return To_LL_VSS (vaddshs (To_LL_VSS (A), To_LL_VSS (B)));
625    end vec_vaddshs;
626
627    function vec_vaddshs
628      (A : vector_signed_short;
629       B : vector_bool_short) return vector_signed_short
630    is
631    begin
632       return To_LL_VSS (vaddshs (To_LL_VSS (A), To_LL_VSS (B)));
633    end vec_vaddshs;
634
635    function vec_vaddshs
636      (A : vector_signed_short;
637       B : vector_signed_short) return vector_signed_short
638    is
639    begin
640       return To_LL_VSS (vaddshs (To_LL_VSS (A), To_LL_VSS (B)));
641    end vec_vaddshs;
642
643    -- vec_vadduhs --
644
645    function vec_vadduhs
646      (A : vector_bool_short;
647       B : vector_unsigned_short) return vector_unsigned_short
648    is
649    begin
650       return To_LL_VUS (vadduhs (To_LL_VSS (A), To_LL_VSS (B)));
651    end vec_vadduhs;
652
653    function vec_vadduhs
654      (A : vector_unsigned_short;
655       B : vector_bool_short) return vector_unsigned_short
656    is
657    begin
658       return To_LL_VUS (vadduhs (To_LL_VSS (A), To_LL_VSS (B)));
659    end vec_vadduhs;
660
661    function vec_vadduhs
662      (A : vector_unsigned_short;
663       B : vector_unsigned_short) return vector_unsigned_short
664    is
665    begin
666       return To_LL_VUS (vadduhs (To_LL_VSS (A), To_LL_VSS (B)));
667    end vec_vadduhs;
668
669    -- vec_vaddsbs --
670
671    function vec_vaddsbs
672      (A : vector_bool_char;
673       B : vector_signed_char) return vector_signed_char
674    is
675    begin
676       return To_LL_VSC (vaddsbs (To_LL_VSC (A), To_LL_VSC (B)));
677    end vec_vaddsbs;
678
679    function vec_vaddsbs
680      (A : vector_signed_char;
681       B : vector_bool_char) return vector_signed_char
682    is
683    begin
684       return To_LL_VSC (vaddsbs (To_LL_VSC (A), To_LL_VSC (B)));
685    end vec_vaddsbs;
686
687    function vec_vaddsbs
688      (A : vector_signed_char;
689       B : vector_signed_char) return vector_signed_char
690    is
691    begin
692       return To_LL_VSC (vaddsbs (To_LL_VSC (A), To_LL_VSC (B)));
693    end vec_vaddsbs;
694
695    -- vec_vaddubs --
696
697    function vec_vaddubs
698      (A : vector_bool_char;
699       B : vector_unsigned_char) return vector_unsigned_char
700    is
701    begin
702       return To_LL_VUC (vaddubs (To_LL_VSC (A), To_LL_VSC (B)));
703    end vec_vaddubs;
704
705    function vec_vaddubs
706      (A : vector_unsigned_char;
707       B : vector_bool_char) return vector_unsigned_char
708    is
709    begin
710       return To_LL_VUC (vaddubs (To_LL_VSC (A), To_LL_VSC (B)));
711    end vec_vaddubs;
712
713    function vec_vaddubs
714      (A : vector_unsigned_char;
715       B : vector_unsigned_char) return vector_unsigned_char
716    is
717    begin
718       return To_LL_VUC (vaddubs (To_LL_VSC (A), To_LL_VSC (B)));
719    end vec_vaddubs;
720
721    -- vec_and --
722
723    function vec_and
724      (A : vector_float;
725       B : vector_float) return vector_float
726    is
727    begin
728       return To_LL_VF  (vand (To_LL_VSI (A), To_LL_VSI (B)));
729    end vec_and;
730
731    function vec_and
732      (A : vector_float;
733       B : vector_bool_int) return vector_float
734    is
735    begin
736       return To_LL_VF  (vand (To_LL_VSI (A), To_LL_VSI (B)));
737    end vec_and;
738
739    function vec_and
740      (A : vector_bool_int;
741       B : vector_float) return vector_float
742    is
743    begin
744       return To_LL_VF  (vand (To_LL_VSI (A), To_LL_VSI (B)));
745    end vec_and;
746
747    function vec_and
748      (A : vector_bool_int;
749       B : vector_bool_int) return vector_bool_int
750    is
751    begin
752       return To_LL_VBI (vand (To_LL_VSI (A), To_LL_VSI (B)));
753    end vec_and;
754
755    function vec_and
756      (A : vector_bool_int;
757       B : vector_signed_int) return vector_signed_int
758    is
759    begin
760       return To_LL_VSI (vand (To_LL_VSI (A), To_LL_VSI (B)));
761    end vec_and;
762
763    function vec_and
764      (A : vector_signed_int;
765       B : vector_bool_int) return vector_signed_int
766    is
767    begin
768       return To_LL_VSI (vand (To_LL_VSI (A), To_LL_VSI (B)));
769    end vec_and;
770
771    function vec_and
772      (A : vector_signed_int;
773       B : vector_signed_int) return vector_signed_int
774    is
775    begin
776       return To_LL_VSI (vand (To_LL_VSI (A), To_LL_VSI (B)));
777    end vec_and;
778
779    function vec_and
780      (A : vector_bool_int;
781       B : vector_unsigned_int) return vector_unsigned_int
782    is
783    begin
784       return To_LL_VUI (vand (To_LL_VSI (A), To_LL_VSI (B)));
785    end vec_and;
786
787    function vec_and
788      (A : vector_unsigned_int;
789       B : vector_bool_int) return vector_unsigned_int
790    is
791    begin
792       return To_LL_VUI (vand (To_LL_VSI (A), To_LL_VSI (B)));
793    end vec_and;
794
795    function vec_and
796      (A : vector_unsigned_int;
797       B : vector_unsigned_int) return vector_unsigned_int
798    is
799    begin
800       return To_LL_VUI (vand (To_LL_VSI (A), To_LL_VSI (B)));
801    end vec_and;
802
803    function vec_and
804      (A : vector_bool_short;
805       B : vector_bool_short) return vector_bool_short
806    is
807    begin
808       return To_LL_VBS (vand (To_LL_VSI (A), To_LL_VSI (B)));
809    end vec_and;
810
811    function vec_and
812      (A : vector_bool_short;
813       B : vector_signed_short) return vector_signed_short
814    is
815    begin
816       return To_LL_VSS (vand (To_LL_VSI (A), To_LL_VSI (B)));
817    end vec_and;
818
819    function vec_and
820      (A : vector_signed_short;
821       B : vector_bool_short) return vector_signed_short
822    is
823    begin
824       return To_LL_VSS (vand (To_LL_VSI (A), To_LL_VSI (B)));
825    end vec_and;
826
827    function vec_and
828      (A : vector_signed_short;
829       B : vector_signed_short) return vector_signed_short
830    is
831    begin
832       return To_LL_VSS (vand (To_LL_VSI (A), To_LL_VSI (B)));
833    end vec_and;
834
835    function vec_and
836      (A : vector_bool_short;
837       B : vector_unsigned_short) return vector_unsigned_short
838    is
839    begin
840       return To_LL_VUS (vand (To_LL_VSI (A), To_LL_VSI (B)));
841    end vec_and;
842
843    function vec_and
844      (A : vector_unsigned_short;
845       B : vector_bool_short) return vector_unsigned_short
846    is
847    begin
848       return To_LL_VUS (vand (To_LL_VSI (A), To_LL_VSI (B)));
849    end vec_and;
850
851    function vec_and
852      (A : vector_unsigned_short;
853       B : vector_unsigned_short) return vector_unsigned_short
854    is
855    begin
856       return To_LL_VUS (vand (To_LL_VSI (A), To_LL_VSI (B)));
857    end vec_and;
858
859    function vec_and
860      (A : vector_bool_char;
861       B : vector_signed_char) return vector_signed_char
862    is
863    begin
864       return To_LL_VSC (vand (To_LL_VSI (A), To_LL_VSI (B)));
865    end vec_and;
866
867    function vec_and
868      (A : vector_bool_char;
869       B : vector_bool_char) return vector_bool_char
870    is
871    begin
872       return To_LL_VBC (vand (To_LL_VSI (A), To_LL_VSI (B)));
873    end vec_and;
874
875    function vec_and
876      (A : vector_signed_char;
877       B : vector_bool_char) return vector_signed_char
878    is
879    begin
880       return To_LL_VSC (vand (To_LL_VSI (A), To_LL_VSI (B)));
881    end vec_and;
882
883    function vec_and
884      (A : vector_signed_char;
885       B : vector_signed_char) return vector_signed_char
886    is
887    begin
888       return To_LL_VSC (vand (To_LL_VSI (A), To_LL_VSI (B)));
889    end vec_and;
890
891    function vec_and
892      (A : vector_bool_char;
893       B : vector_unsigned_char) return vector_unsigned_char
894    is
895    begin
896       return To_LL_VUC (vand (To_LL_VSI (A), To_LL_VSI (B)));
897    end vec_and;
898
899    function vec_and
900      (A : vector_unsigned_char;
901       B : vector_bool_char) return vector_unsigned_char
902    is
903    begin
904       return To_LL_VUC (vand (To_LL_VSI (A), To_LL_VSI (B)));
905    end vec_and;
906
907    function vec_and
908      (A : vector_unsigned_char;
909       B : vector_unsigned_char) return vector_unsigned_char
910    is
911    begin
912       return To_LL_VUC (vand (To_LL_VSI (A), To_LL_VSI (B)));
913    end vec_and;
914
915    -- vec_andc --
916
917    function vec_andc
918      (A : vector_float;
919       B : vector_float) return vector_float
920    is
921    begin
922       return To_LL_VF  (vandc (To_LL_VSI (A), To_LL_VSI (B)));
923    end vec_andc;
924
925    function vec_andc
926      (A : vector_float;
927       B : vector_bool_int) return vector_float
928    is
929    begin
930       return To_LL_VF  (vandc (To_LL_VSI (A), To_LL_VSI (B)));
931    end vec_andc;
932
933    function vec_andc
934      (A : vector_bool_int;
935       B : vector_float) return vector_float
936    is
937    begin
938       return To_LL_VF  (vandc (To_LL_VSI (A), To_LL_VSI (B)));
939    end vec_andc;
940
941    function vec_andc
942      (A : vector_bool_int;
943       B : vector_bool_int) return vector_bool_int
944    is
945    begin
946       return To_LL_VBI (vandc (To_LL_VSI (A), To_LL_VSI (B)));
947    end vec_andc;
948
949    function vec_andc
950      (A : vector_bool_int;
951       B : vector_signed_int) return vector_signed_int
952    is
953    begin
954       return To_LL_VSI (vandc (To_LL_VSI (A), To_LL_VSI (B)));
955    end vec_andc;
956
957    function vec_andc
958      (A : vector_signed_int;
959       B : vector_bool_int) return vector_signed_int
960    is
961    begin
962       return To_LL_VSI (vandc (To_LL_VSI (A), To_LL_VSI (B)));
963    end vec_andc;
964
965    function vec_andc
966      (A : vector_signed_int;
967       B : vector_signed_int) return vector_signed_int
968    is
969    begin
970       return To_LL_VSI (vandc (To_LL_VSI (A), To_LL_VSI (B)));
971    end vec_andc;
972
973    function vec_andc
974      (A : vector_bool_int;
975       B : vector_unsigned_int) return vector_unsigned_int
976    is
977    begin
978       return To_LL_VUI (vandc (To_LL_VSI (A), To_LL_VSI (B)));
979    end vec_andc;
980
981    function vec_andc
982      (A : vector_unsigned_int;
983       B : vector_bool_int) return vector_unsigned_int
984    is
985    begin
986       return To_LL_VUI (vandc (To_LL_VSI (A), To_LL_VSI (B)));
987    end vec_andc;
988
989    function vec_andc
990      (A : vector_unsigned_int;
991       B : vector_unsigned_int) return vector_unsigned_int
992    is
993    begin
994       return To_LL_VUI (vandc (To_LL_VSI (A), To_LL_VSI (B)));
995    end vec_andc;
996
997    function vec_andc
998      (A : vector_bool_short;
999       B : vector_bool_short) return vector_bool_short
1000    is
1001    begin
1002       return To_LL_VBS (vandc (To_LL_VSI (A), To_LL_VSI (B)));
1003    end vec_andc;
1004
1005    function vec_andc
1006      (A : vector_bool_short;
1007       B : vector_signed_short) return vector_signed_short
1008    is
1009    begin
1010       return To_LL_VSS (vandc (To_LL_VSI (A), To_LL_VSI (B)));
1011    end vec_andc;
1012
1013    function vec_andc
1014      (A : vector_signed_short;
1015       B : vector_bool_short) return vector_signed_short
1016    is
1017    begin
1018       return To_LL_VSS (vandc (To_LL_VSI (A), To_LL_VSI (B)));
1019    end vec_andc;
1020
1021    function vec_andc
1022      (A : vector_signed_short;
1023       B : vector_signed_short) return vector_signed_short
1024    is
1025    begin
1026       return To_LL_VSS (vandc (To_LL_VSI (A), To_LL_VSI (B)));
1027    end vec_andc;
1028
1029    function vec_andc
1030      (A : vector_bool_short;
1031       B : vector_unsigned_short) return vector_unsigned_short
1032    is
1033    begin
1034       return To_LL_VUS (vandc (To_LL_VSI (A), To_LL_VSI (B)));
1035    end vec_andc;
1036
1037    function vec_andc
1038      (A : vector_unsigned_short;
1039       B : vector_bool_short) return vector_unsigned_short
1040    is
1041    begin
1042       return To_LL_VUS (vandc (To_LL_VSI (A), To_LL_VSI (B)));
1043    end vec_andc;
1044
1045    function vec_andc
1046      (A : vector_unsigned_short;
1047       B : vector_unsigned_short) return vector_unsigned_short
1048    is
1049    begin
1050       return To_LL_VUS (vandc (To_LL_VSI (A), To_LL_VSI (B)));
1051    end vec_andc;
1052
1053    function vec_andc
1054      (A : vector_bool_char;
1055       B : vector_signed_char) return vector_signed_char
1056    is
1057    begin
1058       return To_LL_VSC (vandc (To_LL_VSI (A), To_LL_VSI (B)));
1059    end vec_andc;
1060
1061    function vec_andc
1062      (A : vector_bool_char;
1063       B : vector_bool_char) return vector_bool_char
1064    is
1065    begin
1066       return To_LL_VBC (vandc (To_LL_VSI (A), To_LL_VSI (B)));
1067    end vec_andc;
1068
1069    function vec_andc
1070      (A : vector_signed_char;
1071       B : vector_bool_char) return vector_signed_char
1072    is
1073    begin
1074       return To_LL_VSC (vandc (To_LL_VSI (A), To_LL_VSI (B)));
1075    end vec_andc;
1076
1077    function vec_andc
1078      (A : vector_signed_char;
1079       B : vector_signed_char) return vector_signed_char
1080    is
1081    begin
1082       return To_LL_VSC (vandc (To_LL_VSI (A), To_LL_VSI (B)));
1083    end vec_andc;
1084
1085    function vec_andc
1086      (A : vector_bool_char;
1087       B : vector_unsigned_char) return vector_unsigned_char
1088    is
1089    begin
1090       return To_LL_VUC (vandc (To_LL_VSI (A), To_LL_VSI (B)));
1091    end vec_andc;
1092
1093    function vec_andc
1094      (A : vector_unsigned_char;
1095       B : vector_bool_char) return vector_unsigned_char
1096    is
1097    begin
1098       return To_LL_VUC (vandc (To_LL_VSI (A), To_LL_VSI (B)));
1099    end vec_andc;
1100
1101    function vec_andc
1102      (A : vector_unsigned_char;
1103       B : vector_unsigned_char) return vector_unsigned_char
1104    is
1105    begin
1106       return To_LL_VUC (vandc (To_LL_VSI (A), To_LL_VSI (B)));
1107    end vec_andc;
1108
1109    -- vec_avg --
1110
1111    function vec_avg
1112      (A : vector_unsigned_char;
1113       B : vector_unsigned_char) return vector_unsigned_char
1114    is
1115    begin
1116       return To_LL_VUC (vavgub (To_LL_VSC (A), To_LL_VSC (B)));
1117    end vec_avg;
1118
1119    function vec_avg
1120      (A : vector_signed_char;
1121       B : vector_signed_char) return vector_signed_char
1122    is
1123    begin
1124       return To_LL_VSC (vavgsb (To_LL_VSC (A), To_LL_VSC (B)));
1125    end vec_avg;
1126
1127    function vec_avg
1128      (A : vector_unsigned_short;
1129       B : vector_unsigned_short) return vector_unsigned_short
1130    is
1131    begin
1132       return To_LL_VUS (vavguh (To_LL_VSS (A), To_LL_VSS (B)));
1133    end vec_avg;
1134
1135    function vec_avg
1136      (A : vector_signed_short;
1137       B : vector_signed_short) return vector_signed_short
1138    is
1139    begin
1140       return To_LL_VSS (vavgsh (To_LL_VSS (A), To_LL_VSS (B)));
1141    end vec_avg;
1142
1143    function vec_avg
1144      (A : vector_unsigned_int;
1145       B : vector_unsigned_int) return vector_unsigned_int
1146    is
1147    begin
1148       return To_LL_VUI (vavguw (To_LL_VSI (A), To_LL_VSI (B)));
1149    end vec_avg;
1150
1151    function vec_avg
1152      (A : vector_signed_int;
1153       B : vector_signed_int) return vector_signed_int
1154    is
1155    begin
1156       return To_LL_VSI (vavgsw (To_LL_VSI (A), To_LL_VSI (B)));
1157    end vec_avg;
1158
1159    -- vec_vavgsw --
1160
1161    function vec_vavgsw
1162      (A : vector_signed_int;
1163       B : vector_signed_int) return vector_signed_int
1164    is
1165    begin
1166       return To_LL_VSI (vavgsw (To_LL_VSI (A), To_LL_VSI (B)));
1167    end vec_vavgsw;
1168
1169    -- vec_vavguw --
1170
1171    function vec_vavguw
1172      (A : vector_unsigned_int;
1173       B : vector_unsigned_int) return vector_unsigned_int
1174    is
1175    begin
1176       return To_LL_VUI (vavguw (To_LL_VSI (A), To_LL_VSI (B)));
1177    end vec_vavguw;
1178
1179    -- vec_vavgsh --
1180
1181    function vec_vavgsh
1182      (A : vector_signed_short;
1183       B : vector_signed_short) return vector_signed_short
1184    is
1185    begin
1186       return To_LL_VSS (vavgsh (To_LL_VSS (A), To_LL_VSS (B)));
1187    end vec_vavgsh;
1188
1189    -- vec_vavguh --
1190
1191    function vec_vavguh
1192      (A : vector_unsigned_short;
1193       B : vector_unsigned_short) return vector_unsigned_short
1194    is
1195    begin
1196       return To_LL_VUS (vavguh (To_LL_VSS (A), To_LL_VSS (B)));
1197    end vec_vavguh;
1198
1199    -- vec_vavgsb --
1200
1201    function vec_vavgsb
1202      (A : vector_signed_char;
1203       B : vector_signed_char) return vector_signed_char
1204    is
1205    begin
1206       return To_LL_VSC (vavgsb (To_LL_VSC (A), To_LL_VSC (B)));
1207    end vec_vavgsb;
1208
1209    -- vec_vavgub --
1210
1211    function vec_vavgub
1212      (A : vector_unsigned_char;
1213       B : vector_unsigned_char) return vector_unsigned_char
1214    is
1215    begin
1216       return To_LL_VUC (vavgub (To_LL_VSC (A), To_LL_VSC (B)));
1217    end vec_vavgub;
1218
1219    -- vec_ceil --
1220
1221    function vec_ceil
1222      (A : vector_float) return vector_float
1223    is
1224    begin
1225       return To_LL_VF  (vrfip (To_LL_VF  (A)));
1226    end vec_ceil;
1227
1228    -- vec_cmpb --
1229
1230    function vec_cmpb
1231      (A : vector_float;
1232       B : vector_float) return vector_signed_int
1233    is
1234    begin
1235       return To_LL_VSI (vcmpbfp (To_LL_VF  (A), To_LL_VF  (B)));
1236    end vec_cmpb;
1237
1238    -- vec_cmpeq --
1239
1240    function vec_cmpeq
1241      (A : vector_signed_char;
1242       B : vector_signed_char) return vector_bool_char
1243    is
1244    begin
1245       return To_LL_VBC (vcmpequb (To_LL_VSC (A), To_LL_VSC (B)));
1246    end vec_cmpeq;
1247
1248    function vec_cmpeq
1249      (A : vector_unsigned_char;
1250       B : vector_unsigned_char) return vector_bool_char
1251    is
1252    begin
1253       return To_LL_VBC (vcmpequb (To_LL_VSC (A), To_LL_VSC (B)));
1254    end vec_cmpeq;
1255
1256    function vec_cmpeq
1257      (A : vector_signed_short;
1258       B : vector_signed_short) return vector_bool_short
1259    is
1260    begin
1261       return To_LL_VBS (vcmpequh (To_LL_VSS (A), To_LL_VSS (B)));
1262    end vec_cmpeq;
1263
1264    function vec_cmpeq
1265      (A : vector_unsigned_short;
1266       B : vector_unsigned_short) return vector_bool_short
1267    is
1268    begin
1269       return To_LL_VBS (vcmpequh (To_LL_VSS (A), To_LL_VSS (B)));
1270    end vec_cmpeq;
1271
1272    function vec_cmpeq
1273      (A : vector_signed_int;
1274       B : vector_signed_int) return vector_bool_int
1275    is
1276    begin
1277       return To_LL_VBI (vcmpequw (To_LL_VSI (A), To_LL_VSI (B)));
1278    end vec_cmpeq;
1279
1280    function vec_cmpeq
1281      (A : vector_unsigned_int;
1282       B : vector_unsigned_int) return vector_bool_int
1283    is
1284    begin
1285       return To_LL_VBI (vcmpequw (To_LL_VSI (A), To_LL_VSI (B)));
1286    end vec_cmpeq;
1287
1288    function vec_cmpeq
1289      (A : vector_float;
1290       B : vector_float) return vector_bool_int
1291    is
1292    begin
1293       return To_LL_VBI (vcmpeqfp (To_LL_VF  (A), To_LL_VF  (B)));
1294    end vec_cmpeq;
1295
1296    -- vec_vcmpeqfp --
1297
1298    function vec_vcmpeqfp
1299      (A : vector_float;
1300       B : vector_float) return vector_bool_int
1301    is
1302    begin
1303       return To_LL_VBI (vcmpeqfp (To_LL_VF  (A), To_LL_VF  (B)));
1304    end vec_vcmpeqfp;
1305
1306    -- vec_vcmpequw --
1307
1308    function vec_vcmpequw
1309      (A : vector_signed_int;
1310       B : vector_signed_int) return vector_bool_int
1311    is
1312    begin
1313       return To_LL_VBI (vcmpequw (To_LL_VSI (A), To_LL_VSI (B)));
1314    end vec_vcmpequw;
1315
1316    function vec_vcmpequw
1317      (A : vector_unsigned_int;
1318       B : vector_unsigned_int) return vector_bool_int
1319    is
1320    begin
1321       return To_LL_VBI (vcmpequw (To_LL_VSI (A), To_LL_VSI (B)));
1322    end vec_vcmpequw;
1323
1324    -- vec_vcmpequh --
1325
1326    function vec_vcmpequh
1327      (A : vector_signed_short;
1328       B : vector_signed_short) return vector_bool_short
1329    is
1330    begin
1331       return To_LL_VBS (vcmpequh (To_LL_VSS (A), To_LL_VSS (B)));
1332    end vec_vcmpequh;
1333
1334    function vec_vcmpequh
1335      (A : vector_unsigned_short;
1336       B : vector_unsigned_short) return vector_bool_short
1337    is
1338    begin
1339       return To_LL_VBS (vcmpequh (To_LL_VSS (A), To_LL_VSS (B)));
1340    end vec_vcmpequh;
1341
1342    -- vec_vcmpequb --
1343
1344    function vec_vcmpequb
1345      (A : vector_signed_char;
1346       B : vector_signed_char) return vector_bool_char
1347    is
1348    begin
1349       return To_LL_VBC (vcmpequb (To_LL_VSC (A), To_LL_VSC (B)));
1350    end vec_vcmpequb;
1351
1352    function vec_vcmpequb
1353      (A : vector_unsigned_char;
1354       B : vector_unsigned_char) return vector_bool_char
1355    is
1356    begin
1357       return To_LL_VBC (vcmpequb (To_LL_VSC (A), To_LL_VSC (B)));
1358    end vec_vcmpequb;
1359
1360    -- vec_cmpge --
1361
1362    function vec_cmpge
1363      (A : vector_float;
1364       B : vector_float) return vector_bool_int
1365    is
1366    begin
1367       return To_LL_VBI (vcmpgefp (To_LL_VF  (A), To_LL_VF  (B)));
1368    end vec_cmpge;
1369
1370    -- vec_cmpgt --
1371
1372    function vec_cmpgt
1373      (A : vector_unsigned_char;
1374       B : vector_unsigned_char) return vector_bool_char
1375    is
1376    begin
1377       return To_LL_VBC (vcmpgtub (To_LL_VSC (A), To_LL_VSC (B)));
1378    end vec_cmpgt;
1379
1380    function vec_cmpgt
1381      (A : vector_signed_char;
1382       B : vector_signed_char) return vector_bool_char
1383    is
1384    begin
1385       return To_LL_VBC (vcmpgtsb (To_LL_VSC (A), To_LL_VSC (B)));
1386    end vec_cmpgt;
1387
1388    function vec_cmpgt
1389      (A : vector_unsigned_short;
1390       B : vector_unsigned_short) return vector_bool_short
1391    is
1392    begin
1393       return To_LL_VBS (vcmpgtuh (To_LL_VSS (A), To_LL_VSS (B)));
1394    end vec_cmpgt;
1395
1396    function vec_cmpgt
1397      (A : vector_signed_short;
1398       B : vector_signed_short) return vector_bool_short
1399    is
1400    begin
1401       return To_LL_VBS (vcmpgtsh (To_LL_VSS (A), To_LL_VSS (B)));
1402    end vec_cmpgt;
1403
1404    function vec_cmpgt
1405      (A : vector_unsigned_int;
1406       B : vector_unsigned_int) return vector_bool_int
1407    is
1408    begin
1409       return To_LL_VBI (vcmpgtuw (To_LL_VSI (A), To_LL_VSI (B)));
1410    end vec_cmpgt;
1411
1412    function vec_cmpgt
1413      (A : vector_signed_int;
1414       B : vector_signed_int) return vector_bool_int
1415    is
1416    begin
1417       return To_LL_VBI (vcmpgtsw (To_LL_VSI (A), To_LL_VSI (B)));
1418    end vec_cmpgt;
1419
1420    function vec_cmpgt
1421      (A : vector_float;
1422       B : vector_float) return vector_bool_int
1423    is
1424    begin
1425       return To_LL_VBI (vcmpgtfp (To_LL_VF  (A), To_LL_VF  (B)));
1426    end vec_cmpgt;
1427
1428    -- vec_vcmpgtfp --
1429
1430    function vec_vcmpgtfp
1431      (A : vector_float;
1432       B : vector_float) return vector_bool_int
1433    is
1434    begin
1435       return To_LL_VBI (vcmpgtfp (To_LL_VF  (A), To_LL_VF  (B)));
1436    end vec_vcmpgtfp;
1437
1438    -- vec_vcmpgtsw --
1439
1440    function vec_vcmpgtsw
1441      (A : vector_signed_int;
1442       B : vector_signed_int) return vector_bool_int
1443    is
1444    begin
1445       return To_LL_VBI (vcmpgtsw (To_LL_VSI (A), To_LL_VSI (B)));
1446    end vec_vcmpgtsw;
1447
1448    -- vec_vcmpgtuw --
1449
1450    function vec_vcmpgtuw
1451      (A : vector_unsigned_int;
1452       B : vector_unsigned_int) return vector_bool_int
1453    is
1454    begin
1455       return To_LL_VBI (vcmpgtuw (To_LL_VSI (A), To_LL_VSI (B)));
1456    end vec_vcmpgtuw;
1457
1458    -- vec_vcmpgtsh --
1459
1460    function vec_vcmpgtsh
1461      (A : vector_signed_short;
1462       B : vector_signed_short) return vector_bool_short
1463    is
1464    begin
1465       return To_LL_VBS (vcmpgtsh (To_LL_VSS (A), To_LL_VSS (B)));
1466    end vec_vcmpgtsh;
1467
1468    -- vec_vcmpgtuh --
1469
1470    function vec_vcmpgtuh
1471      (A : vector_unsigned_short;
1472       B : vector_unsigned_short) return vector_bool_short
1473    is
1474    begin
1475       return To_LL_VBS (vcmpgtuh (To_LL_VSS (A), To_LL_VSS (B)));
1476    end vec_vcmpgtuh;
1477
1478    -- vec_vcmpgtsb --
1479
1480    function vec_vcmpgtsb
1481      (A : vector_signed_char;
1482       B : vector_signed_char) return vector_bool_char
1483    is
1484    begin
1485       return To_LL_VBC (vcmpgtsb (To_LL_VSC (A), To_LL_VSC (B)));
1486    end vec_vcmpgtsb;
1487
1488    -- vec_vcmpgtub --
1489
1490    function vec_vcmpgtub
1491      (A : vector_unsigned_char;
1492       B : vector_unsigned_char) return vector_bool_char
1493    is
1494    begin
1495       return To_LL_VBC (vcmpgtub (To_LL_VSC (A), To_LL_VSC (B)));
1496    end vec_vcmpgtub;
1497
1498    -- vec_cmple --
1499
1500    function vec_cmple
1501      (A : vector_float;
1502       B : vector_float) return vector_bool_int
1503    is
1504    begin
1505       return To_LL_VBI (vcmpgefp (To_LL_VF  (B), To_LL_VF  (A)));
1506    end vec_cmple;
1507
1508    -- vec_cmplt --
1509
1510    function vec_cmplt
1511      (A : vector_unsigned_char;
1512       B : vector_unsigned_char) return vector_bool_char
1513    is
1514    begin
1515       return To_LL_VBC (vcmpgtub (To_LL_VSC (B), To_LL_VSC (A)));
1516    end vec_cmplt;
1517
1518    function vec_cmplt
1519      (A : vector_signed_char;
1520       B : vector_signed_char) return vector_bool_char
1521    is
1522    begin
1523       return To_LL_VBC (vcmpgtsb (To_LL_VSC (B), To_LL_VSC (A)));
1524    end vec_cmplt;
1525
1526    function vec_cmplt
1527      (A : vector_unsigned_short;
1528       B : vector_unsigned_short) return vector_bool_short
1529    is
1530    begin
1531       return To_LL_VBS (vcmpgtuh (To_LL_VSS (B), To_LL_VSS (A)));
1532    end vec_cmplt;
1533
1534    function vec_cmplt
1535      (A : vector_signed_short;
1536       B : vector_signed_short) return vector_bool_short
1537    is
1538    begin
1539       return To_LL_VBS (vcmpgtsh (To_LL_VSS (B), To_LL_VSS (A)));
1540    end vec_cmplt;
1541
1542    function vec_cmplt
1543      (A : vector_unsigned_int;
1544       B : vector_unsigned_int) return vector_bool_int
1545    is
1546    begin
1547       return To_LL_VBI (vcmpgtuw (To_LL_VSI (B), To_LL_VSI (A)));
1548    end vec_cmplt;
1549
1550    function vec_cmplt
1551      (A : vector_signed_int;
1552       B : vector_signed_int) return vector_bool_int
1553    is
1554    begin
1555       return To_LL_VBI (vcmpgtsw (To_LL_VSI (B), To_LL_VSI (A)));
1556    end vec_cmplt;
1557
1558    function vec_cmplt
1559      (A : vector_float;
1560       B : vector_float) return vector_bool_int
1561    is
1562    begin
1563       return To_LL_VBI (vcmpgtfp (To_LL_VF  (B), To_LL_VF  (A)));
1564    end vec_cmplt;
1565
1566    -- vec_expte --
1567
1568    function vec_expte
1569      (A : vector_float) return vector_float
1570    is
1571    begin
1572       return To_LL_VF (vexptefp (To_LL_VF (A)));
1573    end vec_expte;
1574
1575    -- vec_floor --
1576
1577    function vec_floor
1578      (A : vector_float) return vector_float
1579    is
1580    begin
1581       return To_LL_VF (vrfim (To_LL_VF (A)));
1582    end vec_floor;
1583
1584    -- vec_ld --
1585
1586    function vec_ld
1587      (A : c_long;
1588       B : const_vector_float_ptr) return vector_float
1589    is
1590    begin
1591       return To_LL_VF (lvx (A, To_PTR (B)));
1592    end vec_ld;
1593
1594    function vec_ld
1595      (A : c_long;
1596       B : const_float_ptr) return vector_float
1597    is
1598    begin
1599       return To_LL_VF (lvx (A, To_PTR (B)));
1600    end vec_ld;
1601
1602    function vec_ld
1603      (A : c_long;
1604       B : const_vector_bool_int_ptr) return vector_bool_int
1605    is
1606    begin
1607       return To_LL_VBI (lvx (A, To_PTR (B)));
1608    end vec_ld;
1609
1610    function vec_ld
1611      (A : c_long;
1612       B : const_vector_signed_int_ptr) return vector_signed_int
1613    is
1614    begin
1615       return To_LL_VSI (lvx (A, To_PTR (B)));
1616    end vec_ld;
1617
1618    function vec_ld
1619      (A : c_long;
1620       B : const_int_ptr) return vector_signed_int
1621    is
1622    begin
1623       return To_LL_VSI (lvx (A, To_PTR (B)));
1624    end vec_ld;
1625
1626    function vec_ld
1627      (A : c_long;
1628       B : const_long_ptr) return vector_signed_int
1629    is
1630    begin
1631       return To_LL_VSI (lvx (A, To_PTR (B)));
1632    end vec_ld;
1633
1634    function vec_ld
1635      (A : c_long;
1636       B : const_vector_unsigned_int_ptr) return vector_unsigned_int
1637    is
1638    begin
1639       return To_LL_VUI (lvx (A, To_PTR (B)));
1640    end vec_ld;
1641
1642    function vec_ld
1643      (A : c_long;
1644       B : const_unsigned_int_ptr) return vector_unsigned_int
1645    is
1646    begin
1647       return To_LL_VUI (lvx (A, To_PTR (B)));
1648    end vec_ld;
1649
1650    function vec_ld
1651      (A : c_long;
1652       B : const_unsigned_long_ptr) return vector_unsigned_int
1653    is
1654    begin
1655       return To_LL_VUI (lvx (A, To_PTR (B)));
1656    end vec_ld;
1657
1658    function vec_ld
1659      (A : c_long;
1660       B : const_vector_bool_short_ptr) return vector_bool_short
1661    is
1662    begin
1663       return To_LL_VBS (lvx (A, To_PTR (B)));
1664    end vec_ld;
1665
1666    function vec_ld
1667      (A : c_long;
1668       B : const_vector_pixel_ptr) return vector_pixel
1669    is
1670    begin
1671       return To_LL_VP (lvx (A, To_PTR (B)));
1672    end vec_ld;
1673
1674    function vec_ld
1675      (A : c_long;
1676       B : const_vector_signed_short_ptr) return vector_signed_short
1677    is
1678    begin
1679       return To_LL_VSS (lvx (A, To_PTR (B)));
1680    end vec_ld;
1681
1682    function vec_ld
1683      (A : c_long;
1684       B : const_short_ptr) return vector_signed_short
1685    is
1686    begin
1687       return To_LL_VSS (lvx (A, To_PTR (B)));
1688    end vec_ld;
1689
1690    function vec_ld
1691      (A : c_long;
1692       B : const_vector_unsigned_short_ptr) return vector_unsigned_short
1693    is
1694    begin
1695       return To_LL_VUS (lvx (A, To_PTR (B)));
1696    end vec_ld;
1697
1698    function vec_ld
1699      (A : c_long;
1700       B : const_unsigned_short_ptr) return vector_unsigned_short
1701    is
1702    begin
1703       return To_LL_VUS (lvx (A, To_PTR (B)));
1704    end vec_ld;
1705
1706    function vec_ld
1707      (A : c_long;
1708       B : const_vector_bool_char_ptr) return vector_bool_char
1709    is
1710    begin
1711       return To_LL_VBC (lvx (A, To_PTR (B)));
1712    end vec_ld;
1713
1714    function vec_ld
1715      (A : c_long;
1716       B : const_vector_signed_char_ptr) return vector_signed_char
1717    is
1718    begin
1719       return To_LL_VSC (lvx (A, To_PTR (B)));
1720    end vec_ld;
1721
1722    function vec_ld
1723      (A : c_long;
1724       B : const_signed_char_ptr) return vector_signed_char
1725    is
1726    begin
1727       return To_LL_VSC (lvx (A, To_PTR (B)));
1728    end vec_ld;
1729
1730    function vec_ld
1731      (A : c_long;
1732       B : const_vector_unsigned_char_ptr) return vector_unsigned_char
1733    is
1734    begin
1735       return To_LL_VUC (lvx (A, To_PTR (B)));
1736    end vec_ld;
1737
1738    function vec_ld
1739      (A : c_long;
1740       B : const_unsigned_char_ptr) return vector_unsigned_char
1741    is
1742    begin
1743       return To_LL_VUC (lvx (A, To_PTR (B)));
1744    end vec_ld;
1745
1746    -- vec_lde --
1747
1748    function vec_lde
1749      (A : c_long;
1750       B : const_signed_char_ptr) return vector_signed_char
1751    is
1752    begin
1753       return To_LL_VSC (lvebx (A, To_PTR (B)));
1754    end vec_lde;
1755
1756    function vec_lde
1757      (A : c_long;
1758       B : const_unsigned_char_ptr) return vector_unsigned_char
1759    is
1760    begin
1761       return To_LL_VUC (lvebx (A, To_PTR (B)));
1762    end vec_lde;
1763
1764    function vec_lde
1765      (A : c_long;
1766       B : const_short_ptr) return vector_signed_short
1767    is
1768    begin
1769       return To_LL_VSS (lvehx (A, To_PTR (B)));
1770    end vec_lde;
1771
1772    function vec_lde
1773      (A : c_long;
1774       B : const_unsigned_short_ptr) return vector_unsigned_short
1775    is
1776    begin
1777       return To_LL_VUS (lvehx (A, To_PTR (B)));
1778    end vec_lde;
1779
1780    function vec_lde
1781      (A : c_long;
1782       B : const_float_ptr) return vector_float
1783    is
1784    begin
1785       return To_LL_VF (lvewx (A, To_PTR (B)));
1786    end vec_lde;
1787
1788    function vec_lde
1789      (A : c_long;
1790       B : const_int_ptr) return vector_signed_int
1791    is
1792    begin
1793       return To_LL_VSI (lvewx (A, To_PTR (B)));
1794    end vec_lde;
1795
1796    function vec_lde
1797      (A : c_long;
1798       B : const_unsigned_int_ptr) return vector_unsigned_int
1799    is
1800    begin
1801       return To_LL_VUI (lvewx (A, To_PTR (B)));
1802    end vec_lde;
1803
1804    function vec_lde
1805      (A : c_long;
1806       B : const_long_ptr) return vector_signed_int
1807    is
1808    begin
1809       return To_LL_VSI (lvewx (A, To_PTR (B)));
1810    end vec_lde;
1811
1812    function vec_lde
1813      (A : c_long;
1814       B : const_unsigned_long_ptr) return vector_unsigned_int
1815    is
1816    begin
1817       return To_LL_VUI (lvewx (A, To_PTR (B)));
1818    end vec_lde;
1819
1820    -- vec_lvewx --
1821
1822    function vec_lvewx
1823      (A : c_long;
1824       B : float_ptr) return vector_float
1825    is
1826    begin
1827       return To_LL_VF (lvewx (A, To_PTR (B)));
1828    end vec_lvewx;
1829
1830    function vec_lvewx
1831      (A : c_long;
1832       B : int_ptr) return vector_signed_int
1833    is
1834    begin
1835       return To_LL_VSI (lvewx (A, To_PTR (B)));
1836    end vec_lvewx;
1837
1838    function vec_lvewx
1839      (A : c_long;
1840       B : unsigned_int_ptr) return vector_unsigned_int
1841    is
1842    begin
1843       return To_LL_VUI (lvewx (A, To_PTR (B)));
1844    end vec_lvewx;
1845
1846    function vec_lvewx
1847      (A : c_long;
1848       B : long_ptr) return vector_signed_int
1849    is
1850    begin
1851       return To_LL_VSI (lvewx (A, To_PTR (B)));
1852    end vec_lvewx;
1853
1854    function vec_lvewx
1855      (A : c_long;
1856       B : unsigned_long_ptr) return vector_unsigned_int
1857    is
1858    begin
1859       return To_LL_VUI (lvewx (A, To_PTR (B)));
1860    end vec_lvewx;
1861
1862    -- vec_lvehx --
1863
1864    function vec_lvehx
1865      (A : c_long;
1866       B : short_ptr) return vector_signed_short
1867    is
1868    begin
1869       return To_LL_VSS (lvehx (A, To_PTR (B)));
1870    end vec_lvehx;
1871
1872    function vec_lvehx
1873      (A : c_long;
1874       B : unsigned_short_ptr) return vector_unsigned_short
1875    is
1876    begin
1877       return To_LL_VUS (lvehx (A, To_PTR (B)));
1878    end vec_lvehx;
1879
1880    -- vec_lvebx --
1881
1882    function vec_lvebx
1883      (A : c_long;
1884       B : signed_char_ptr) return vector_signed_char
1885    is
1886    begin
1887       return To_LL_VSC (lvebx (A, To_PTR (B)));
1888    end vec_lvebx;
1889
1890    function vec_lvebx
1891      (A : c_long;
1892       B : unsigned_char_ptr) return vector_unsigned_char
1893    is
1894    begin
1895       return To_LL_VUC (lvebx (A, To_PTR (B)));
1896    end vec_lvebx;
1897
1898    -- vec_ldl --
1899
1900    function vec_ldl
1901      (A : c_long;
1902       B : const_vector_float_ptr) return vector_float
1903    is
1904    begin
1905       return To_LL_VF (lvxl (A, To_PTR (B)));
1906    end vec_ldl;
1907
1908    function vec_ldl
1909      (A : c_long;
1910       B : const_float_ptr) return vector_float
1911    is
1912    begin
1913       return To_LL_VF (lvxl (A, To_PTR (B)));
1914    end vec_ldl;
1915
1916    function vec_ldl
1917      (A : c_long;
1918       B : const_vector_bool_int_ptr) return vector_bool_int
1919    is
1920    begin
1921       return To_LL_VBI (lvxl (A, To_PTR (B)));
1922    end vec_ldl;
1923
1924    function vec_ldl
1925      (A : c_long;
1926       B : const_vector_signed_int_ptr) return vector_signed_int
1927    is
1928    begin
1929       return To_LL_VSI (lvxl (A, To_PTR (B)));
1930    end vec_ldl;
1931
1932    function vec_ldl
1933      (A : c_long;
1934       B : const_int_ptr) return vector_signed_int
1935    is
1936    begin
1937       return To_LL_VSI (lvxl (A, To_PTR (B)));
1938    end vec_ldl;
1939
1940    function vec_ldl
1941      (A : c_long;
1942       B : const_long_ptr) return vector_signed_int
1943    is
1944    begin
1945       return To_LL_VSI (lvxl (A, To_PTR (B)));
1946    end vec_ldl;
1947
1948    function vec_ldl
1949      (A : c_long;
1950       B : const_vector_unsigned_int_ptr) return vector_unsigned_int
1951    is
1952    begin
1953       return To_LL_VUI (lvxl (A, To_PTR (B)));
1954    end vec_ldl;
1955
1956    function vec_ldl
1957      (A : c_long;
1958       B : const_unsigned_int_ptr) return vector_unsigned_int
1959    is
1960    begin
1961       return To_LL_VUI (lvxl (A, To_PTR (B)));
1962    end vec_ldl;
1963
1964    function vec_ldl
1965      (A : c_long;
1966       B : const_unsigned_long_ptr) return vector_unsigned_int
1967    is
1968    begin
1969       return To_LL_VUI (lvxl (A, To_PTR (B)));
1970    end vec_ldl;
1971
1972    function vec_ldl
1973      (A : c_long;
1974       B : const_vector_bool_short_ptr) return vector_bool_short
1975    is
1976    begin
1977       return To_LL_VBS (lvxl (A, To_PTR (B)));
1978    end vec_ldl;
1979
1980    function vec_ldl
1981      (A : c_long;
1982       B : const_vector_pixel_ptr) return vector_pixel
1983    is
1984    begin
1985       return To_LL_VP (lvxl (A, To_PTR (B)));
1986    end vec_ldl;
1987
1988    function vec_ldl
1989      (A : c_long;
1990       B : const_vector_signed_short_ptr) return vector_signed_short
1991    is
1992    begin
1993       return To_LL_VSS (lvxl (A, To_PTR (B)));
1994    end vec_ldl;
1995
1996    function vec_ldl
1997      (A : c_long;
1998       B : const_short_ptr) return vector_signed_short
1999    is
2000    begin
2001       return To_LL_VSS (lvxl (A, To_PTR (B)));
2002    end vec_ldl;
2003
2004    function vec_ldl
2005      (A : c_long;
2006       B : const_vector_unsigned_short_ptr) return vector_unsigned_short
2007    is
2008    begin
2009       return To_LL_VUS (lvxl (A, To_PTR (B)));
2010    end vec_ldl;
2011
2012    function vec_ldl
2013      (A : c_long;
2014       B : const_unsigned_short_ptr) return vector_unsigned_short
2015    is
2016    begin
2017       return To_LL_VUS (lvxl (A, To_PTR (B)));
2018    end vec_ldl;
2019
2020    function vec_ldl
2021      (A : c_long;
2022       B : const_vector_bool_char_ptr) return vector_bool_char
2023    is
2024    begin
2025       return To_LL_VBC (lvxl (A, To_PTR (B)));
2026    end vec_ldl;
2027
2028    function vec_ldl
2029      (A : c_long;
2030       B : const_vector_signed_char_ptr) return vector_signed_char
2031    is
2032    begin
2033       return To_LL_VSC (lvxl (A, To_PTR (B)));
2034    end vec_ldl;
2035
2036    function vec_ldl
2037      (A : c_long;
2038       B : const_signed_char_ptr) return vector_signed_char
2039    is
2040    begin
2041       return To_LL_VSC (lvxl (A, To_PTR (B)));
2042    end vec_ldl;
2043
2044    function vec_ldl
2045      (A : c_long;
2046       B : const_vector_unsigned_char_ptr) return vector_unsigned_char
2047    is
2048    begin
2049       return To_LL_VUC (lvxl (A, To_PTR (B)));
2050    end vec_ldl;
2051
2052    function vec_ldl
2053      (A : c_long;
2054       B : const_unsigned_char_ptr) return vector_unsigned_char
2055    is
2056    begin
2057       return To_LL_VUC (lvxl (A, To_PTR (B)));
2058    end vec_ldl;
2059
2060    -- vec_loge --
2061
2062    function vec_loge
2063      (A : vector_float) return vector_float
2064    is
2065    begin
2066       return To_LL_VF (vlogefp (To_LL_VF (A)));
2067    end vec_loge;
2068
2069    -- vec_lvsl --
2070
2071    function vec_lvsl
2072      (A : c_long;
2073       B : constv_unsigned_char_ptr) return vector_unsigned_char
2074    is
2075    begin
2076       return To_LL_VUC (lvsl (A, To_PTR (B)));
2077    end vec_lvsl;
2078
2079    function vec_lvsl
2080      (A : c_long;
2081       B : constv_signed_char_ptr) return vector_unsigned_char
2082    is
2083    begin
2084       return To_LL_VUC (lvsl (A, To_PTR (B)));
2085    end vec_lvsl;
2086
2087    function vec_lvsl
2088      (A : c_long;
2089       B : constv_unsigned_short_ptr) return vector_unsigned_char
2090    is
2091    begin
2092       return To_LL_VUC (lvsl (A, To_PTR (B)));
2093    end vec_lvsl;
2094
2095    function vec_lvsl
2096      (A : c_long;
2097       B : constv_short_ptr) return vector_unsigned_char
2098    is
2099    begin
2100       return To_LL_VUC (lvsl (A, To_PTR (B)));
2101    end vec_lvsl;
2102
2103    function vec_lvsl
2104      (A : c_long;
2105       B : constv_unsigned_int_ptr) return vector_unsigned_char
2106    is
2107    begin
2108       return To_LL_VUC (lvsl (A, To_PTR (B)));
2109    end vec_lvsl;
2110
2111    function vec_lvsl
2112      (A : c_long;
2113       B : constv_int_ptr) return vector_unsigned_char
2114    is
2115    begin
2116       return To_LL_VUC (lvsl (A, To_PTR (B)));
2117    end vec_lvsl;
2118
2119    function vec_lvsl
2120      (A : c_long;
2121       B : constv_unsigned_long_ptr) return vector_unsigned_char
2122    is
2123    begin
2124       return To_LL_VUC (lvsl (A, To_PTR (B)));
2125    end vec_lvsl;
2126
2127    function vec_lvsl
2128      (A : c_long;
2129       B : constv_long_ptr) return vector_unsigned_char
2130    is
2131    begin
2132       return To_LL_VUC (lvsl (A, To_PTR (B)));
2133    end vec_lvsl;
2134
2135    function vec_lvsl
2136      (A : c_long;
2137       B : constv_float_ptr) return vector_unsigned_char
2138    is
2139    begin
2140       return To_LL_VUC (lvsl (A, To_PTR (B)));
2141    end vec_lvsl;
2142
2143    -- vec_lvsr --
2144
2145    function vec_lvsr
2146      (A : c_long;
2147       B : constv_unsigned_char_ptr) return vector_unsigned_char
2148    is
2149    begin
2150       return To_LL_VUC (lvsr (A, To_PTR (B)));
2151    end vec_lvsr;
2152
2153    function vec_lvsr
2154      (A : c_long;
2155       B : constv_signed_char_ptr) return vector_unsigned_char
2156    is
2157    begin
2158       return To_LL_VUC (lvsr (A, To_PTR (B)));
2159    end vec_lvsr;
2160
2161    function vec_lvsr
2162      (A : c_long;
2163       B : constv_unsigned_short_ptr) return vector_unsigned_char
2164    is
2165    begin
2166       return To_LL_VUC (lvsr (A, To_PTR (B)));
2167    end vec_lvsr;
2168
2169    function vec_lvsr
2170      (A : c_long;
2171       B : constv_short_ptr) return vector_unsigned_char
2172    is
2173    begin
2174       return To_LL_VUC (lvsr (A, To_PTR (B)));
2175    end vec_lvsr;
2176
2177    function vec_lvsr
2178      (A : c_long;
2179       B : constv_unsigned_int_ptr) return vector_unsigned_char
2180    is
2181    begin
2182       return To_LL_VUC (lvsr (A, To_PTR (B)));
2183    end vec_lvsr;
2184
2185    function vec_lvsr
2186      (A : c_long;
2187       B : constv_int_ptr) return vector_unsigned_char
2188    is
2189    begin
2190       return To_LL_VUC (lvsr (A, To_PTR (B)));
2191    end vec_lvsr;
2192
2193    function vec_lvsr
2194      (A : c_long;
2195       B : constv_unsigned_long_ptr) return vector_unsigned_char
2196    is
2197    begin
2198       return To_LL_VUC (lvsr (A, To_PTR (B)));
2199    end vec_lvsr;
2200
2201    function vec_lvsr
2202      (A : c_long;
2203       B : constv_long_ptr) return vector_unsigned_char
2204    is
2205    begin
2206       return To_LL_VUC (lvsr (A, To_PTR (B)));
2207    end vec_lvsr;
2208
2209    function vec_lvsr
2210      (A : c_long;
2211       B : constv_float_ptr) return vector_unsigned_char
2212    is
2213    begin
2214       return To_LL_VUC (lvsr (A, To_PTR (B)));
2215    end vec_lvsr;
2216
2217    -- vec_madd --
2218
2219    function vec_madd
2220      (A : vector_float;
2221       B : vector_float;
2222       C : vector_float) return vector_float
2223    is
2224    begin
2225       return vmaddfp (A, B, C);
2226    end vec_madd;
2227
2228    -- vec_madds --
2229
2230    function vec_madds
2231      (A : vector_signed_short;
2232       B : vector_signed_short;
2233       C : vector_signed_short) return vector_signed_short
2234    is
2235    begin
2236       return vmhaddshs (A, B, C);
2237    end vec_madds;
2238
2239    -- vec_max --
2240
2241    function vec_max
2242      (A : vector_bool_char;
2243       B : vector_unsigned_char) return vector_unsigned_char
2244    is
2245    begin
2246       return To_LL_VUC (vmaxub (To_LL_VSC (A), To_LL_VSC (B)));
2247    end vec_max;
2248
2249    function vec_max
2250      (A : vector_unsigned_char;
2251       B : vector_bool_char) return vector_unsigned_char
2252    is
2253    begin
2254       return To_LL_VUC (vmaxub (To_LL_VSC (A), To_LL_VSC (B)));
2255    end vec_max;
2256
2257    function vec_max
2258      (A : vector_unsigned_char;
2259       B : vector_unsigned_char) return vector_unsigned_char
2260    is
2261    begin
2262       return To_LL_VUC (vmaxub (To_LL_VSC (A), To_LL_VSC (B)));
2263    end vec_max;
2264
2265    function vec_max
2266      (A : vector_bool_char;
2267       B : vector_signed_char) return vector_signed_char
2268    is
2269    begin
2270       return To_LL_VSC (vmaxsb (To_LL_VSC (A), To_LL_VSC (B)));
2271    end vec_max;
2272
2273    function vec_max
2274      (A : vector_signed_char;
2275       B : vector_bool_char) return vector_signed_char
2276    is
2277    begin
2278       return To_LL_VSC (vmaxsb (To_LL_VSC (A), To_LL_VSC (B)));
2279    end vec_max;
2280
2281    function vec_max
2282      (A : vector_signed_char;
2283       B : vector_signed_char) return vector_signed_char
2284    is
2285    begin
2286       return To_LL_VSC (vmaxsb (To_LL_VSC (A), To_LL_VSC (B)));
2287    end vec_max;
2288
2289    function vec_max
2290      (A : vector_bool_short;
2291       B : vector_unsigned_short) return vector_unsigned_short
2292    is
2293    begin
2294       return To_LL_VUS (vmaxuh (To_LL_VSS (A), To_LL_VSS (B)));
2295    end vec_max;
2296
2297    function vec_max
2298      (A : vector_unsigned_short;
2299       B : vector_bool_short) return vector_unsigned_short
2300    is
2301    begin
2302       return To_LL_VUS (vmaxuh (To_LL_VSS (A), To_LL_VSS (B)));
2303    end vec_max;
2304
2305    function vec_max
2306      (A : vector_unsigned_short;
2307       B : vector_unsigned_short) return vector_unsigned_short
2308    is
2309    begin
2310       return To_LL_VUS (vmaxuh (To_LL_VSS (A), To_LL_VSS (B)));
2311    end vec_max;
2312
2313    function vec_max
2314      (A : vector_bool_short;
2315       B : vector_signed_short) return vector_signed_short
2316    is
2317    begin
2318       return To_LL_VSS (vmaxsh (To_LL_VSS (A), To_LL_VSS (B)));
2319    end vec_max;
2320
2321    function vec_max
2322      (A : vector_signed_short;
2323       B : vector_bool_short) return vector_signed_short
2324    is
2325    begin
2326       return To_LL_VSS (vmaxsh (To_LL_VSS (A), To_LL_VSS (B)));
2327    end vec_max;
2328
2329    function vec_max
2330      (A : vector_signed_short;
2331       B : vector_signed_short) return vector_signed_short
2332    is
2333    begin
2334       return To_LL_VSS (vmaxsh (To_LL_VSS (A), To_LL_VSS (B)));
2335    end vec_max;
2336
2337    function vec_max
2338      (A : vector_bool_int;
2339       B : vector_unsigned_int) return vector_unsigned_int
2340    is
2341    begin
2342       return To_LL_VUI (vmaxuw (To_LL_VSI (A), To_LL_VSI (B)));
2343    end vec_max;
2344
2345    function vec_max
2346      (A : vector_unsigned_int;
2347       B : vector_bool_int) return vector_unsigned_int
2348    is
2349    begin
2350       return To_LL_VUI (vmaxuw (To_LL_VSI (A), To_LL_VSI (B)));
2351    end vec_max;
2352
2353    function vec_max
2354      (A : vector_unsigned_int;
2355       B : vector_unsigned_int) return vector_unsigned_int
2356    is
2357    begin
2358       return To_LL_VUI (vmaxuw (To_LL_VSI (A), To_LL_VSI (B)));
2359    end vec_max;
2360
2361    function vec_max
2362      (A : vector_bool_int;
2363       B : vector_signed_int) return vector_signed_int
2364    is
2365    begin
2366       return To_LL_VSI (vmaxsw (To_LL_VSI (A), To_LL_VSI (B)));
2367    end vec_max;
2368
2369    function vec_max
2370      (A : vector_signed_int;
2371       B : vector_bool_int) return vector_signed_int
2372    is
2373    begin
2374       return To_LL_VSI (vmaxsw (To_LL_VSI (A), To_LL_VSI (B)));
2375    end vec_max;
2376
2377    function vec_max
2378      (A : vector_signed_int;
2379       B : vector_signed_int) return vector_signed_int
2380    is
2381    begin
2382       return To_LL_VSI (vmaxsw (To_LL_VSI (A), To_LL_VSI (B)));
2383    end vec_max;
2384
2385    function vec_max
2386      (A : vector_float;
2387       B : vector_float) return vector_float
2388    is
2389    begin
2390       return To_LL_VF (vmaxfp (To_LL_VF (A), To_LL_VF (B)));
2391    end vec_max;
2392
2393    -- vec_vmaxfp --
2394
2395    function vec_vmaxfp
2396      (A : vector_float;
2397       B : vector_float) return vector_float
2398    is
2399    begin
2400       return To_LL_VF (vmaxfp (To_LL_VF (A), To_LL_VF (B)));
2401    end vec_vmaxfp;
2402
2403    -- vec_vmaxsw --
2404
2405    function vec_vmaxsw
2406      (A : vector_bool_int;
2407       B : vector_signed_int) return vector_signed_int
2408    is
2409    begin
2410       return To_LL_VSI (vmaxsw (To_LL_VSI (A), To_LL_VSI (B)));
2411    end vec_vmaxsw;
2412
2413    function vec_vmaxsw
2414      (A : vector_signed_int;
2415       B : vector_bool_int) return vector_signed_int
2416    is
2417    begin
2418       return To_LL_VSI (vmaxsw (To_LL_VSI (A), To_LL_VSI (B)));
2419    end vec_vmaxsw;
2420
2421    function vec_vmaxsw
2422      (A : vector_signed_int;
2423       B : vector_signed_int) return vector_signed_int
2424    is
2425    begin
2426       return To_LL_VSI (vmaxsw (To_LL_VSI (A), To_LL_VSI (B)));
2427    end vec_vmaxsw;
2428
2429    -- vec_vmaxuw --
2430
2431    function vec_vmaxuw
2432      (A : vector_bool_int;
2433       B : vector_unsigned_int) return vector_unsigned_int
2434    is
2435    begin
2436       return To_LL_VUI (vmaxuw (To_LL_VSI (A), To_LL_VSI (B)));
2437    end vec_vmaxuw;
2438
2439    function vec_vmaxuw
2440      (A : vector_unsigned_int;
2441       B : vector_bool_int) return vector_unsigned_int
2442    is
2443    begin
2444       return To_LL_VUI (vmaxuw (To_LL_VSI (A), To_LL_VSI (B)));
2445    end vec_vmaxuw;
2446
2447    function vec_vmaxuw
2448      (A : vector_unsigned_int;
2449       B : vector_unsigned_int) return vector_unsigned_int
2450    is
2451    begin
2452       return To_LL_VUI (vmaxuw (To_LL_VSI (A), To_LL_VSI (B)));
2453    end vec_vmaxuw;
2454
2455    -- vec_vmaxsh --
2456
2457    function vec_vmaxsh
2458      (A : vector_bool_short;
2459       B : vector_signed_short) return vector_signed_short
2460    is
2461    begin
2462       return To_LL_VSS (vmaxsh (To_LL_VSS (A), To_LL_VSS (B)));
2463    end vec_vmaxsh;
2464
2465    function vec_vmaxsh
2466      (A : vector_signed_short;
2467       B : vector_bool_short) return vector_signed_short
2468    is
2469    begin
2470       return To_LL_VSS (vmaxsh (To_LL_VSS (A), To_LL_VSS (B)));
2471    end vec_vmaxsh;
2472
2473    function vec_vmaxsh
2474      (A : vector_signed_short;
2475       B : vector_signed_short) return vector_signed_short
2476    is
2477    begin
2478       return To_LL_VSS (vmaxsh (To_LL_VSS (A), To_LL_VSS (B)));
2479    end vec_vmaxsh;
2480
2481    -- vec_vmaxuh --
2482
2483    function vec_vmaxuh
2484      (A : vector_bool_short;
2485       B : vector_unsigned_short) return vector_unsigned_short
2486    is
2487    begin
2488       return To_LL_VUS (vmaxuh (To_LL_VSS (A), To_LL_VSS (B)));
2489    end vec_vmaxuh;
2490
2491    function vec_vmaxuh
2492      (A : vector_unsigned_short;
2493       B : vector_bool_short) return vector_unsigned_short
2494    is
2495    begin
2496       return To_LL_VUS (vmaxuh (To_LL_VSS (A), To_LL_VSS (B)));
2497    end vec_vmaxuh;
2498
2499    function vec_vmaxuh
2500      (A : vector_unsigned_short;
2501       B : vector_unsigned_short) return vector_unsigned_short
2502    is
2503    begin
2504       return To_LL_VUS (vmaxuh (To_LL_VSS (A), To_LL_VSS (B)));
2505    end vec_vmaxuh;
2506
2507    -- vec_vmaxsb --
2508
2509    function vec_vmaxsb
2510      (A : vector_bool_char;
2511       B : vector_signed_char) return vector_signed_char
2512    is
2513    begin
2514       return To_LL_VSC (vmaxsb (To_LL_VSC (A), To_LL_VSC (B)));
2515    end vec_vmaxsb;
2516
2517    function vec_vmaxsb
2518      (A : vector_signed_char;
2519       B : vector_bool_char) return vector_signed_char
2520    is
2521    begin
2522       return To_LL_VSC (vmaxsb (To_LL_VSC (A), To_LL_VSC (B)));
2523    end vec_vmaxsb;
2524
2525    function vec_vmaxsb
2526      (A : vector_signed_char;
2527       B : vector_signed_char) return vector_signed_char
2528    is
2529    begin
2530       return To_LL_VSC (vmaxsb (To_LL_VSC (A), To_LL_VSC (B)));
2531    end vec_vmaxsb;
2532
2533    -- vec_vmaxub --
2534
2535    function vec_vmaxub
2536      (A : vector_bool_char;
2537       B : vector_unsigned_char) return vector_unsigned_char
2538    is
2539    begin
2540       return To_LL_VUC (vmaxub (To_LL_VSC (A), To_LL_VSC (B)));
2541    end vec_vmaxub;
2542
2543    function vec_vmaxub
2544      (A : vector_unsigned_char;
2545       B : vector_bool_char) return vector_unsigned_char
2546    is
2547    begin
2548       return To_LL_VUC (vmaxub (To_LL_VSC (A), To_LL_VSC (B)));
2549    end vec_vmaxub;
2550
2551    function vec_vmaxub
2552      (A : vector_unsigned_char;
2553       B : vector_unsigned_char) return vector_unsigned_char
2554    is
2555    begin
2556       return To_LL_VUC (vmaxub (To_LL_VSC (A), To_LL_VSC (B)));
2557    end vec_vmaxub;
2558
2559    -- vec_mergeh --
2560
2561    function vec_mergeh
2562      (A : vector_bool_char;
2563       B : vector_bool_char) return vector_bool_char
2564    is
2565    begin
2566       return To_LL_VBC (vmrghb (To_LL_VSC (A), To_LL_VSC (B)));
2567    end vec_mergeh;
2568
2569    function vec_mergeh
2570      (A : vector_signed_char;
2571       B : vector_signed_char) return vector_signed_char
2572    is
2573    begin
2574       return To_LL_VSC (vmrghb (To_LL_VSC (A), To_LL_VSC (B)));
2575    end vec_mergeh;
2576
2577    function vec_mergeh
2578      (A : vector_unsigned_char;
2579       B : vector_unsigned_char) return vector_unsigned_char
2580    is
2581    begin
2582       return To_LL_VUC (vmrghb (To_LL_VSC (A), To_LL_VSC (B)));
2583    end vec_mergeh;
2584
2585    function vec_mergeh
2586      (A : vector_bool_short;
2587       B : vector_bool_short) return vector_bool_short
2588    is
2589    begin
2590       return To_LL_VBS (vmrghh (To_LL_VSS (A), To_LL_VSS (B)));
2591    end vec_mergeh;
2592
2593    function vec_mergeh
2594      (A : vector_pixel;
2595       B : vector_pixel) return vector_pixel
2596    is
2597    begin
2598       return To_LL_VP (vmrghh (To_LL_VSS (A), To_LL_VSS (B)));
2599    end vec_mergeh;
2600
2601    function vec_mergeh
2602      (A : vector_signed_short;
2603       B : vector_signed_short) return vector_signed_short
2604    is
2605    begin
2606       return To_LL_VSS (vmrghh (To_LL_VSS (A), To_LL_VSS (B)));
2607    end vec_mergeh;
2608
2609    function vec_mergeh
2610      (A : vector_unsigned_short;
2611       B : vector_unsigned_short) return vector_unsigned_short
2612    is
2613    begin
2614       return To_LL_VUS (vmrghh (To_LL_VSS (A), To_LL_VSS (B)));
2615    end vec_mergeh;
2616
2617    function vec_mergeh
2618      (A : vector_float;
2619       B : vector_float) return vector_float
2620    is
2621    begin
2622       return To_LL_VF (vmrghw (To_LL_VSI (A), To_LL_VSI (B)));
2623    end vec_mergeh;
2624
2625    function vec_mergeh
2626      (A : vector_bool_int;
2627       B : vector_bool_int) return vector_bool_int
2628    is
2629    begin
2630       return To_LL_VBI (vmrghw (To_LL_VSI (A), To_LL_VSI (B)));
2631    end vec_mergeh;
2632
2633    function vec_mergeh
2634      (A : vector_signed_int;
2635       B : vector_signed_int) return vector_signed_int
2636    is
2637    begin
2638       return To_LL_VSI (vmrghw (To_LL_VSI (A), To_LL_VSI (B)));
2639    end vec_mergeh;
2640
2641    function vec_mergeh
2642      (A : vector_unsigned_int;
2643       B : vector_unsigned_int) return vector_unsigned_int
2644    is
2645    begin
2646       return To_LL_VUI (vmrghw (To_LL_VSI (A), To_LL_VSI (B)));
2647    end vec_mergeh;
2648
2649    -- vec_vmrghw --
2650
2651    function vec_vmrghw
2652      (A : vector_float;
2653       B : vector_float) return vector_float
2654    is
2655    begin
2656       return To_LL_VF (vmrghw (To_LL_VSI (A), To_LL_VSI (B)));
2657    end vec_vmrghw;
2658
2659    function vec_vmrghw
2660      (A : vector_bool_int;
2661       B : vector_bool_int) return vector_bool_int
2662    is
2663    begin
2664       return To_LL_VBI (vmrghw (To_LL_VSI (A), To_LL_VSI (B)));
2665    end vec_vmrghw;
2666
2667    function vec_vmrghw
2668      (A : vector_signed_int;
2669       B : vector_signed_int) return vector_signed_int
2670    is
2671    begin
2672       return To_LL_VSI (vmrghw (To_LL_VSI (A), To_LL_VSI (B)));
2673    end vec_vmrghw;
2674
2675    function vec_vmrghw
2676      (A : vector_unsigned_int;
2677       B : vector_unsigned_int) return vector_unsigned_int
2678    is
2679    begin
2680       return To_LL_VUI (vmrghw (To_LL_VSI (A), To_LL_VSI (B)));
2681    end vec_vmrghw;
2682
2683    -- vec_vmrghh --
2684
2685    function vec_vmrghh
2686      (A : vector_bool_short;
2687       B : vector_bool_short) return vector_bool_short
2688    is
2689    begin
2690       return To_LL_VBS (vmrghh (To_LL_VSS (A), To_LL_VSS (B)));
2691    end vec_vmrghh;
2692
2693    function vec_vmrghh
2694      (A : vector_signed_short;
2695       B : vector_signed_short) return vector_signed_short
2696    is
2697    begin
2698       return To_LL_VSS (vmrghh (To_LL_VSS (A), To_LL_VSS (B)));
2699    end vec_vmrghh;
2700
2701    function vec_vmrghh
2702      (A : vector_unsigned_short;
2703       B : vector_unsigned_short) return vector_unsigned_short
2704    is
2705    begin
2706       return To_LL_VUS (vmrghh (To_LL_VSS (A), To_LL_VSS (B)));
2707    end vec_vmrghh;
2708
2709    function vec_vmrghh
2710      (A : vector_pixel;
2711       B : vector_pixel) return vector_pixel
2712    is
2713    begin
2714       return To_LL_VP (vmrghh (To_LL_VSS (A), To_LL_VSS (B)));
2715    end vec_vmrghh;
2716
2717    -- vec_vmrghb --
2718
2719    function vec_vmrghb
2720      (A : vector_bool_char;
2721       B : vector_bool_char) return vector_bool_char
2722    is
2723    begin
2724       return To_LL_VBC (vmrghb (To_LL_VSC (A), To_LL_VSC (B)));
2725    end vec_vmrghb;
2726
2727    function vec_vmrghb
2728      (A : vector_signed_char;
2729       B : vector_signed_char) return vector_signed_char
2730    is
2731    begin
2732       return To_LL_VSC (vmrghb (To_LL_VSC (A), To_LL_VSC (B)));
2733    end vec_vmrghb;
2734
2735    function vec_vmrghb
2736      (A : vector_unsigned_char;
2737       B : vector_unsigned_char) return vector_unsigned_char
2738    is
2739    begin
2740       return To_LL_VUC (vmrghb (To_LL_VSC (A), To_LL_VSC (B)));
2741    end vec_vmrghb;
2742
2743    -- vec_mergel --
2744
2745    function vec_mergel
2746      (A : vector_bool_char;
2747       B : vector_bool_char) return vector_bool_char
2748    is
2749    begin
2750       return To_LL_VBC (vmrglb (To_LL_VSC (A), To_LL_VSC (B)));
2751    end vec_mergel;
2752
2753    function vec_mergel
2754      (A : vector_signed_char;
2755       B : vector_signed_char) return vector_signed_char
2756    is
2757    begin
2758       return To_LL_VSC (vmrglb (To_LL_VSC (A), To_LL_VSC (B)));
2759    end vec_mergel;
2760
2761    function vec_mergel
2762      (A : vector_unsigned_char;
2763       B : vector_unsigned_char) return vector_unsigned_char
2764    is
2765    begin
2766       return To_LL_VUC (vmrglb (To_LL_VSC (A), To_LL_VSC (B)));
2767    end vec_mergel;
2768
2769    function vec_mergel
2770      (A : vector_bool_short;
2771       B : vector_bool_short) return vector_bool_short
2772    is
2773    begin
2774       return To_LL_VBS (vmrglh (To_LL_VSS (A), To_LL_VSS (B)));
2775    end vec_mergel;
2776
2777    function vec_mergel
2778      (A : vector_pixel;
2779       B : vector_pixel) return vector_pixel
2780    is
2781    begin
2782       return To_LL_VP (vmrglh (To_LL_VSS (A), To_LL_VSS (B)));
2783    end vec_mergel;
2784
2785    function vec_mergel
2786      (A : vector_signed_short;
2787       B : vector_signed_short) return vector_signed_short
2788    is
2789    begin
2790       return To_LL_VSS (vmrglh (To_LL_VSS (A), To_LL_VSS (B)));
2791    end vec_mergel;
2792
2793    function vec_mergel
2794      (A : vector_unsigned_short;
2795       B : vector_unsigned_short) return vector_unsigned_short
2796    is
2797    begin
2798       return To_LL_VUS (vmrglh (To_LL_VSS (A), To_LL_VSS (B)));
2799    end vec_mergel;
2800
2801    function vec_mergel
2802      (A : vector_float;
2803       B : vector_float) return vector_float
2804    is
2805    begin
2806       return To_LL_VF (vmrglw (To_LL_VSI (A), To_LL_VSI (B)));
2807    end vec_mergel;
2808
2809    function vec_mergel
2810      (A : vector_bool_int;
2811       B : vector_bool_int) return vector_bool_int
2812    is
2813    begin
2814       return To_LL_VBI (vmrglw (To_LL_VSI (A), To_LL_VSI (B)));
2815    end vec_mergel;
2816
2817    function vec_mergel
2818      (A : vector_signed_int;
2819       B : vector_signed_int) return vector_signed_int
2820    is
2821    begin
2822       return To_LL_VSI (vmrglw (To_LL_VSI (A), To_LL_VSI (B)));
2823    end vec_mergel;
2824
2825    function vec_mergel
2826      (A : vector_unsigned_int;
2827       B : vector_unsigned_int) return vector_unsigned_int
2828    is
2829    begin
2830       return To_LL_VUI (vmrglw (To_LL_VSI (A), To_LL_VSI (B)));
2831    end vec_mergel;
2832
2833    -- vec_vmrglw --
2834
2835    function vec_vmrglw
2836      (A : vector_float;
2837       B : vector_float) return vector_float
2838    is
2839    begin
2840       return To_LL_VF (vmrglw (To_LL_VSI (A), To_LL_VSI (B)));
2841    end vec_vmrglw;
2842
2843    function vec_vmrglw
2844      (A : vector_signed_int;
2845       B : vector_signed_int) return vector_signed_int
2846    is
2847    begin
2848       return To_LL_VSI (vmrglw (To_LL_VSI (A), To_LL_VSI (B)));
2849    end vec_vmrglw;
2850
2851    function vec_vmrglw
2852      (A : vector_unsigned_int;
2853       B : vector_unsigned_int) return vector_unsigned_int
2854    is
2855    begin
2856       return To_LL_VUI (vmrglw (To_LL_VSI (A), To_LL_VSI (B)));
2857    end vec_vmrglw;
2858
2859    function vec_vmrglw
2860      (A : vector_bool_int;
2861       B : vector_bool_int) return vector_bool_int
2862    is
2863    begin
2864       return To_LL_VBI (vmrglw (To_LL_VSI (A), To_LL_VSI (B)));
2865    end vec_vmrglw;
2866
2867    -- vec_vmrglh --
2868
2869    function vec_vmrglh
2870      (A : vector_bool_short;
2871       B : vector_bool_short) return vector_bool_short
2872    is
2873    begin
2874       return To_LL_VBS (vmrglh (To_LL_VSS (A), To_LL_VSS (B)));
2875    end vec_vmrglh;
2876
2877    function vec_vmrglh
2878      (A : vector_signed_short;
2879       B : vector_signed_short) return vector_signed_short
2880    is
2881    begin
2882       return To_LL_VSS (vmrglh (To_LL_VSS (A), To_LL_VSS (B)));
2883    end vec_vmrglh;
2884
2885    function vec_vmrglh
2886      (A : vector_unsigned_short;
2887       B : vector_unsigned_short) return vector_unsigned_short
2888    is
2889    begin
2890       return To_LL_VUS (vmrglh (To_LL_VSS (A), To_LL_VSS (B)));
2891    end vec_vmrglh;
2892
2893    function vec_vmrglh
2894      (A : vector_pixel;
2895       B : vector_pixel) return vector_pixel
2896    is
2897    begin
2898       return To_LL_VP (vmrglh (To_LL_VSS (A), To_LL_VSS (B)));
2899    end vec_vmrglh;
2900
2901    -- vec_vmrglb --
2902
2903    function vec_vmrglb
2904      (A : vector_bool_char;
2905       B : vector_bool_char) return vector_bool_char
2906    is
2907    begin
2908       return To_LL_VBC (vmrglb (To_LL_VSC (A), To_LL_VSC (B)));
2909    end vec_vmrglb;
2910
2911    function vec_vmrglb
2912      (A : vector_signed_char;
2913       B : vector_signed_char) return vector_signed_char
2914    is
2915    begin
2916       return To_LL_VSC (vmrglb (To_LL_VSC (A), To_LL_VSC (B)));
2917    end vec_vmrglb;
2918
2919    function vec_vmrglb
2920      (A : vector_unsigned_char;
2921       B : vector_unsigned_char) return vector_unsigned_char
2922    is
2923    begin
2924       return To_LL_VUC (vmrglb (To_LL_VSC (A), To_LL_VSC (B)));
2925    end vec_vmrglb;
2926
2927    -- vec_mfvscr --
2928
2929    function vec_mfvscr return vector_unsigned_short
2930    is
2931    begin
2932       return To_LL_VUS (mfvscr);
2933    end vec_mfvscr;
2934
2935    -- vec_min --
2936
2937    function vec_min
2938      (A : vector_bool_char;
2939       B : vector_unsigned_char) return vector_unsigned_char
2940    is
2941    begin
2942       return To_LL_VUC (vminub (To_LL_VSC (A), To_LL_VSC (B)));
2943    end vec_min;
2944
2945    function vec_min
2946      (A : vector_unsigned_char;
2947       B : vector_bool_char) return vector_unsigned_char
2948    is
2949    begin
2950       return To_LL_VUC (vminub (To_LL_VSC (A), To_LL_VSC (B)));
2951    end vec_min;
2952
2953    function vec_min
2954      (A : vector_unsigned_char;
2955       B : vector_unsigned_char) return vector_unsigned_char
2956    is
2957    begin
2958       return To_LL_VUC (vminub (To_LL_VSC (A), To_LL_VSC (B)));
2959    end vec_min;
2960
2961    function vec_min
2962      (A : vector_bool_char;
2963       B : vector_signed_char) return vector_signed_char
2964    is
2965    begin
2966       return To_LL_VSC (vminsb (To_LL_VSC (A), To_LL_VSC (B)));
2967    end vec_min;
2968
2969    function vec_min
2970      (A : vector_signed_char;
2971       B : vector_bool_char) return vector_signed_char
2972    is
2973    begin
2974       return To_LL_VSC (vminsb (To_LL_VSC (A), To_LL_VSC (B)));
2975    end vec_min;
2976
2977    function vec_min
2978      (A : vector_signed_char;
2979       B : vector_signed_char) return vector_signed_char
2980    is
2981    begin
2982       return To_LL_VSC (vminsb (To_LL_VSC (A), To_LL_VSC (B)));
2983    end vec_min;
2984
2985    function vec_min
2986      (A : vector_bool_short;
2987       B : vector_unsigned_short) return vector_unsigned_short
2988    is
2989    begin
2990       return To_LL_VUS (vminuh (To_LL_VSS (A), To_LL_VSS (B)));
2991    end vec_min;
2992
2993    function vec_min
2994      (A : vector_unsigned_short;
2995       B : vector_bool_short) return vector_unsigned_short
2996    is
2997    begin
2998       return To_LL_VUS (vminuh (To_LL_VSS (A), To_LL_VSS (B)));
2999    end vec_min;
3000
3001    function vec_min
3002      (A : vector_unsigned_short;
3003       B : vector_unsigned_short) return vector_unsigned_short
3004    is
3005    begin
3006       return To_LL_VUS (vminuh (To_LL_VSS (A), To_LL_VSS (B)));
3007    end vec_min;
3008
3009    function vec_min
3010      (A : vector_bool_short;
3011       B : vector_signed_short) return vector_signed_short
3012    is
3013    begin
3014       return To_LL_VSS (vminsh (To_LL_VSS (A), To_LL_VSS (B)));
3015    end vec_min;
3016
3017    function vec_min
3018      (A : vector_signed_short;
3019       B : vector_bool_short) return vector_signed_short
3020    is
3021    begin
3022       return To_LL_VSS (vminsh (To_LL_VSS (A), To_LL_VSS (B)));
3023    end vec_min;
3024
3025    function vec_min
3026      (A : vector_signed_short;
3027       B : vector_signed_short) return vector_signed_short
3028    is
3029    begin
3030       return To_LL_VSS (vminsh (To_LL_VSS (A), To_LL_VSS (B)));
3031    end vec_min;
3032
3033    function vec_min
3034      (A : vector_bool_int;
3035       B : vector_unsigned_int) return vector_unsigned_int
3036    is
3037    begin
3038       return To_LL_VUI (vminuw (To_LL_VSI (A), To_LL_VSI (B)));
3039    end vec_min;
3040
3041    function vec_min
3042      (A : vector_unsigned_int;
3043       B : vector_bool_int) return vector_unsigned_int
3044    is
3045    begin
3046       return To_LL_VUI (vminuw (To_LL_VSI (A), To_LL_VSI (B)));
3047    end vec_min;
3048
3049    function vec_min
3050      (A : vector_unsigned_int;
3051       B : vector_unsigned_int) return vector_unsigned_int
3052    is
3053    begin
3054       return To_LL_VUI (vminuw (To_LL_VSI (A), To_LL_VSI (B)));
3055    end vec_min;
3056
3057    function vec_min
3058      (A : vector_bool_int;
3059       B : vector_signed_int) return vector_signed_int
3060    is
3061    begin
3062       return To_LL_VSI (vminsw (To_LL_VSI (A), To_LL_VSI (B)));
3063    end vec_min;
3064
3065    function vec_min
3066      (A : vector_signed_int;
3067       B : vector_bool_int) return vector_signed_int
3068    is
3069    begin
3070       return To_LL_VSI (vminsw (To_LL_VSI (A), To_LL_VSI (B)));
3071    end vec_min;
3072
3073    function vec_min
3074      (A : vector_signed_int;
3075       B : vector_signed_int) return vector_signed_int
3076    is
3077    begin
3078       return To_LL_VSI (vminsw (To_LL_VSI (A), To_LL_VSI (B)));
3079    end vec_min;
3080
3081    function vec_min
3082      (A : vector_float;
3083       B : vector_float) return vector_float
3084    is
3085    begin
3086       return To_LL_VF (vminfp (To_LL_VF (A), To_LL_VF (B)));
3087    end vec_min;
3088
3089    -- vec_vminfp --
3090
3091    function vec_vminfp
3092      (A : vector_float;
3093       B : vector_float) return vector_float
3094    is
3095    begin
3096       return To_LL_VF (vminfp (To_LL_VF (A), To_LL_VF (B)));
3097    end vec_vminfp;
3098
3099    -- vec_vminsw --
3100
3101    function vec_vminsw
3102      (A : vector_bool_int;
3103       B : vector_signed_int) return vector_signed_int
3104    is
3105    begin
3106       return To_LL_VSI (vminsw (To_LL_VSI (A), To_LL_VSI (B)));
3107    end vec_vminsw;
3108
3109    function vec_vminsw
3110      (A : vector_signed_int;
3111       B : vector_bool_int) return vector_signed_int
3112    is
3113    begin
3114       return To_LL_VSI (vminsw (To_LL_VSI (A), To_LL_VSI (B)));
3115    end vec_vminsw;
3116
3117    function vec_vminsw
3118      (A : vector_signed_int;
3119       B : vector_signed_int) return vector_signed_int
3120    is
3121    begin
3122       return To_LL_VSI (vminsw (To_LL_VSI (A), To_LL_VSI (B)));
3123    end vec_vminsw;
3124
3125    -- vec_vminuw --
3126
3127    function vec_vminuw
3128      (A : vector_bool_int;
3129       B : vector_unsigned_int) return vector_unsigned_int
3130    is
3131    begin
3132       return To_LL_VUI (vminuw (To_LL_VSI (A), To_LL_VSI (B)));
3133    end vec_vminuw;
3134
3135    function vec_vminuw
3136      (A : vector_unsigned_int;
3137       B : vector_bool_int) return vector_unsigned_int
3138    is
3139    begin
3140       return To_LL_VUI (vminuw (To_LL_VSI (A), To_LL_VSI (B)));
3141    end vec_vminuw;
3142
3143    function vec_vminuw
3144      (A : vector_unsigned_int;
3145       B : vector_unsigned_int) return vector_unsigned_int
3146    is
3147    begin
3148       return To_LL_VUI (vminuw (To_LL_VSI (A), To_LL_VSI (B)));
3149    end vec_vminuw;
3150
3151    -- vec_vminsh --
3152
3153    function vec_vminsh
3154      (A : vector_bool_short;
3155       B : vector_signed_short) return vector_signed_short
3156    is
3157    begin
3158       return To_LL_VSS (vminsh (To_LL_VSS (A), To_LL_VSS (B)));
3159    end vec_vminsh;
3160
3161    function vec_vminsh
3162      (A : vector_signed_short;
3163       B : vector_bool_short) return vector_signed_short
3164    is
3165    begin
3166       return To_LL_VSS (vminsh (To_LL_VSS (A), To_LL_VSS (B)));
3167    end vec_vminsh;
3168
3169    function vec_vminsh
3170      (A : vector_signed_short;
3171       B : vector_signed_short) return vector_signed_short
3172    is
3173    begin
3174       return To_LL_VSS (vminsh (To_LL_VSS (A), To_LL_VSS (B)));
3175    end vec_vminsh;
3176
3177    -- vec_vminuh --
3178
3179    function vec_vminuh
3180      (A : vector_bool_short;
3181       B : vector_unsigned_short) return vector_unsigned_short
3182    is
3183    begin
3184       return To_LL_VUS (vminuh (To_LL_VSS (A), To_LL_VSS (B)));
3185    end vec_vminuh;
3186
3187    function vec_vminuh
3188      (A : vector_unsigned_short;
3189       B : vector_bool_short) return vector_unsigned_short
3190    is
3191    begin
3192       return To_LL_VUS (vminuh (To_LL_VSS (A), To_LL_VSS (B)));
3193    end vec_vminuh;
3194
3195    function vec_vminuh
3196      (A : vector_unsigned_short;
3197       B : vector_unsigned_short) return vector_unsigned_short
3198    is
3199    begin
3200       return To_LL_VUS (vminuh (To_LL_VSS (A), To_LL_VSS (B)));
3201    end vec_vminuh;
3202
3203    -- vec_vminsb --
3204
3205    function vec_vminsb
3206      (A : vector_bool_char;
3207       B : vector_signed_char) return vector_signed_char
3208    is
3209    begin
3210       return To_LL_VSC (vminsb (To_LL_VSC (A), To_LL_VSC (B)));
3211    end vec_vminsb;
3212
3213    function vec_vminsb
3214      (A : vector_signed_char;
3215       B : vector_bool_char) return vector_signed_char
3216    is
3217    begin
3218       return To_LL_VSC (vminsb (To_LL_VSC (A), To_LL_VSC (B)));
3219    end vec_vminsb;
3220
3221    function vec_vminsb
3222      (A : vector_signed_char;
3223       B : vector_signed_char) return vector_signed_char
3224    is
3225    begin
3226       return To_LL_VSC (vminsb (To_LL_VSC (A), To_LL_VSC (B)));
3227    end vec_vminsb;
3228
3229    -- vec_vminub --
3230
3231    function vec_vminub
3232      (A : vector_bool_char;
3233       B : vector_unsigned_char) return vector_unsigned_char
3234    is
3235    begin
3236       return To_LL_VUC (vminub (To_LL_VSC (A), To_LL_VSC (B)));
3237    end vec_vminub;
3238
3239    function vec_vminub
3240      (A : vector_unsigned_char;
3241       B : vector_bool_char) return vector_unsigned_char
3242    is
3243    begin
3244       return To_LL_VUC (vminub (To_LL_VSC (A), To_LL_VSC (B)));
3245    end vec_vminub;
3246
3247    function vec_vminub
3248      (A : vector_unsigned_char;
3249       B : vector_unsigned_char) return vector_unsigned_char
3250    is
3251    begin
3252       return To_LL_VUC (vminub (To_LL_VSC (A), To_LL_VSC (B)));
3253    end vec_vminub;
3254
3255    -- vec_mladd --
3256
3257    function vec_mladd
3258      (A : vector_signed_short;
3259       B : vector_signed_short;
3260       C : vector_signed_short) return vector_signed_short
3261    is
3262    begin
3263       return vmladduhm (A, B, C);
3264    end vec_mladd;
3265
3266    function vec_mladd
3267      (A : vector_signed_short;
3268       B : vector_unsigned_short;
3269       C : vector_unsigned_short) return vector_signed_short
3270    is
3271    begin
3272       return vmladduhm (A, To_LL_VSS (B), To_LL_VSS (C));
3273    end vec_mladd;
3274
3275    function vec_mladd
3276      (A : vector_unsigned_short;
3277       B : vector_signed_short;
3278       C : vector_signed_short) return vector_signed_short
3279    is
3280    begin
3281       return vmladduhm (To_LL_VSS (A), B, C);
3282    end vec_mladd;
3283
3284    function vec_mladd
3285      (A : vector_unsigned_short;
3286       B : vector_unsigned_short;
3287       C : vector_unsigned_short) return vector_unsigned_short
3288    is
3289    begin
3290       return
3291         To_LL_VUS (vmladduhm (To_LL_VSS (A), To_LL_VSS (B), To_LL_VSS (C)));
3292    end vec_mladd;
3293
3294    -- vec_mradds --
3295
3296    function vec_mradds
3297      (A : vector_signed_short;
3298       B : vector_signed_short;
3299       C : vector_signed_short) return vector_signed_short
3300    is
3301    begin
3302       return vmhraddshs (A, B, C);
3303    end vec_mradds;
3304
3305    -- vec_msum --
3306
3307    function vec_msum
3308      (A : vector_unsigned_char;
3309       B : vector_unsigned_char;
3310       C : vector_unsigned_int) return vector_unsigned_int
3311    is
3312    begin
3313       return
3314         To_LL_VUI (vmsumubm (To_LL_VSC (A), To_LL_VSC (B), To_LL_VSI (C)));
3315    end vec_msum;
3316
3317    function vec_msum
3318      (A : vector_signed_char;
3319       B : vector_unsigned_char;
3320       C : vector_signed_int) return vector_signed_int
3321    is
3322    begin
3323       return
3324         To_LL_VSI (vmsummbm (To_LL_VSC (A), To_LL_VSC (B), To_LL_VSI (C)));
3325    end vec_msum;
3326
3327    function vec_msum
3328      (A : vector_unsigned_short;
3329       B : vector_unsigned_short;
3330       C : vector_unsigned_int) return vector_unsigned_int
3331    is
3332    begin
3333       return
3334         To_LL_VUI (vmsumuhm (To_LL_VSS (A), To_LL_VSS (B), To_LL_VSI (C)));
3335    end vec_msum;
3336
3337    function vec_msum
3338      (A : vector_signed_short;
3339       B : vector_signed_short;
3340       C : vector_signed_int) return vector_signed_int
3341    is
3342    begin
3343       return
3344         To_LL_VSI (vmsumshm (To_LL_VSS (A), To_LL_VSS (B), To_LL_VSI (C)));
3345    end vec_msum;
3346
3347    -- vec_vmsumshm --
3348
3349    function vec_vmsumshm
3350      (A : vector_signed_short;
3351       B : vector_signed_short;
3352       C : vector_signed_int) return vector_signed_int
3353    is
3354    begin
3355       return
3356         To_LL_VSI (vmsumshm (To_LL_VSS (A), To_LL_VSS (B), To_LL_VSI (C)));
3357    end vec_vmsumshm;
3358
3359    -- vec_vmsumuhm --
3360
3361    function vec_vmsumuhm
3362      (A : vector_unsigned_short;
3363       B : vector_unsigned_short;
3364       C : vector_unsigned_int) return vector_unsigned_int
3365    is
3366    begin
3367       return
3368         To_LL_VUI (vmsumuhm (To_LL_VSS (A), To_LL_VSS (B), To_LL_VSI (C)));
3369    end vec_vmsumuhm;
3370
3371    -- vec_vmsummbm --
3372
3373    function vec_vmsummbm
3374      (A : vector_signed_char;
3375       B : vector_unsigned_char;
3376       C : vector_signed_int) return vector_signed_int
3377    is
3378    begin
3379       return
3380         To_LL_VSI (vmsummbm (To_LL_VSC (A), To_LL_VSC (B), To_LL_VSI (C)));
3381    end vec_vmsummbm;
3382
3383    -- vec_vmsumubm --
3384
3385    function vec_vmsumubm
3386      (A : vector_unsigned_char;
3387       B : vector_unsigned_char;
3388       C : vector_unsigned_int) return vector_unsigned_int
3389    is
3390    begin
3391       return
3392         To_LL_VUI (vmsumubm (To_LL_VSC (A), To_LL_VSC (B), To_LL_VSI (C)));
3393    end vec_vmsumubm;
3394
3395    -- vec_msums --
3396
3397    function vec_msums
3398      (A : vector_unsigned_short;
3399       B : vector_unsigned_short;
3400       C : vector_unsigned_int) return vector_unsigned_int
3401    is
3402    begin
3403       return
3404         To_LL_VUI (vmsumuhs (To_LL_VSS (A), To_LL_VSS (B), To_LL_VSI (C)));
3405    end vec_msums;
3406
3407    function vec_msums
3408      (A : vector_signed_short;
3409       B : vector_signed_short;
3410       C : vector_signed_int) return vector_signed_int
3411    is
3412    begin
3413       return
3414         To_LL_VSI (vmsumshs (To_LL_VSS (A), To_LL_VSS (B), To_LL_VSI (C)));
3415    end vec_msums;
3416
3417    -- vec_vmsumshs --
3418
3419    function vec_vmsumshs
3420      (A : vector_signed_short;
3421       B : vector_signed_short;
3422       C : vector_signed_int) return vector_signed_int
3423    is
3424    begin
3425       return
3426         To_LL_VSI (vmsumshs (To_LL_VSS (A), To_LL_VSS (B), To_LL_VSI (C)));
3427    end vec_vmsumshs;
3428
3429    -- vec_vmsumuhs --
3430
3431    function vec_vmsumuhs
3432      (A : vector_unsigned_short;
3433       B : vector_unsigned_short;
3434       C : vector_unsigned_int) return vector_unsigned_int
3435    is
3436    begin
3437       return
3438         To_LL_VUI (vmsumuhs (To_LL_VSS (A), To_LL_VSS (B), To_LL_VSI (C)));
3439    end vec_vmsumuhs;
3440
3441    -- vec_mtvscr --
3442
3443    procedure vec_mtvscr
3444      (A : vector_signed_int)
3445    is
3446    begin
3447       mtvscr (To_LL_VSI (A));
3448    end vec_mtvscr;
3449
3450    procedure vec_mtvscr
3451      (A : vector_unsigned_int)
3452    is
3453    begin
3454       mtvscr (To_LL_VSI (A));
3455    end vec_mtvscr;
3456
3457    procedure vec_mtvscr
3458      (A : vector_bool_int)
3459    is
3460    begin
3461       mtvscr (To_LL_VSI (A));
3462    end vec_mtvscr;
3463
3464    procedure vec_mtvscr
3465      (A : vector_signed_short)
3466    is
3467    begin
3468       mtvscr (To_LL_VSI (A));
3469    end vec_mtvscr;
3470
3471    procedure vec_mtvscr
3472      (A : vector_unsigned_short)
3473    is
3474    begin
3475       mtvscr (To_LL_VSI (A));
3476    end vec_mtvscr;
3477
3478    procedure vec_mtvscr
3479      (A : vector_bool_short)
3480    is
3481    begin
3482       mtvscr (To_LL_VSI (A));
3483    end vec_mtvscr;
3484
3485    procedure vec_mtvscr
3486      (A : vector_pixel)
3487    is
3488    begin
3489       mtvscr (To_LL_VSI (A));
3490    end vec_mtvscr;
3491
3492    procedure vec_mtvscr
3493      (A : vector_signed_char)
3494    is
3495    begin
3496       mtvscr (To_LL_VSI (A));
3497    end vec_mtvscr;
3498
3499    procedure vec_mtvscr
3500      (A : vector_unsigned_char)
3501    is
3502    begin
3503       mtvscr (To_LL_VSI (A));
3504    end vec_mtvscr;
3505
3506    procedure vec_mtvscr
3507      (A : vector_bool_char)
3508    is
3509    begin
3510       mtvscr (To_LL_VSI (A));
3511    end vec_mtvscr;
3512
3513    -- vec_mule --
3514
3515    function vec_mule
3516      (A : vector_unsigned_char;
3517       B : vector_unsigned_char) return vector_unsigned_short
3518    is
3519    begin
3520       return To_LL_VUS (vmuleub (To_LL_VSC (A), To_LL_VSC (B)));
3521    end vec_mule;
3522
3523    function vec_mule
3524      (A : vector_signed_char;
3525       B : vector_signed_char) return vector_signed_short
3526    is
3527    begin
3528       return To_LL_VSS (vmulesb (To_LL_VSC (A), To_LL_VSC (B)));
3529    end vec_mule;
3530
3531    function vec_mule
3532      (A : vector_unsigned_short;
3533       B : vector_unsigned_short) return vector_unsigned_int
3534    is
3535    begin
3536       return To_LL_VUI (vmuleuh (To_LL_VSS (A), To_LL_VSS (B)));
3537    end vec_mule;
3538
3539    function vec_mule
3540      (A : vector_signed_short;
3541       B : vector_signed_short) return vector_signed_int
3542    is
3543    begin
3544       return To_LL_VSI (vmulesh (To_LL_VSS (A), To_LL_VSS (B)));
3545    end vec_mule;
3546
3547    -- vec_vmulesh --
3548
3549    function vec_vmulesh
3550      (A : vector_signed_short;
3551       B : vector_signed_short) return vector_signed_int
3552    is
3553    begin
3554       return To_LL_VSI (vmulesh (To_LL_VSS (A), To_LL_VSS (B)));
3555    end vec_vmulesh;
3556
3557    -- vec_vmuleuh --
3558
3559    function vec_vmuleuh
3560      (A : vector_unsigned_short;
3561       B : vector_unsigned_short) return vector_unsigned_int
3562    is
3563    begin
3564       return To_LL_VUI (vmuleuh (To_LL_VSS (A), To_LL_VSS (B)));
3565    end vec_vmuleuh;
3566
3567    -- vec_vmulesb --
3568
3569    function vec_vmulesb
3570      (A : vector_signed_char;
3571       B : vector_signed_char) return vector_signed_short
3572    is
3573    begin
3574       return To_LL_VSS (vmuleub (To_LL_VSC (A), To_LL_VSC (B)));
3575    end vec_vmulesb;
3576
3577    -- vec_vmuleub --
3578
3579    function vec_vmuleub
3580      (A : vector_unsigned_char;
3581       B : vector_unsigned_char) return vector_unsigned_short
3582    is
3583    begin
3584       return To_LL_VUS (vmuleub (To_LL_VSC (A), To_LL_VSC (B)));
3585    end vec_vmuleub;
3586
3587    -- vec_mulo --
3588
3589    function vec_mulo
3590      (A : vector_unsigned_char;
3591       B : vector_unsigned_char) return vector_unsigned_short
3592    is
3593    begin
3594       return To_LL_VUS (vmuloub (To_LL_VSC (A), To_LL_VSC (B)));
3595    end vec_mulo;
3596
3597    function vec_mulo
3598      (A : vector_signed_char;
3599       B : vector_signed_char) return vector_signed_short
3600    is
3601    begin
3602       return To_LL_VSS (vmulosb (To_LL_VSC (A), To_LL_VSC (B)));
3603    end vec_mulo;
3604
3605    function vec_mulo
3606      (A : vector_unsigned_short;
3607       B : vector_unsigned_short) return vector_unsigned_int
3608    is
3609    begin
3610       return To_LL_VUI (vmulouh (To_LL_VSS (A), To_LL_VSS (B)));
3611    end vec_mulo;
3612
3613    function vec_mulo
3614      (A : vector_signed_short;
3615       B : vector_signed_short) return vector_signed_int
3616    is
3617    begin
3618       return To_LL_VSI (vmulosh (To_LL_VSS (A), To_LL_VSS (B)));
3619    end vec_mulo;
3620
3621    -- vec_vmulosh --
3622
3623    function vec_vmulosh
3624      (A : vector_signed_short;
3625       B : vector_signed_short) return vector_signed_int
3626    is
3627    begin
3628       return To_LL_VSI (vmulosh (To_LL_VSS (A), To_LL_VSS (B)));
3629    end vec_vmulosh;
3630
3631    -- vec_vmulouh --
3632
3633    function vec_vmulouh
3634      (A : vector_unsigned_short;
3635       B : vector_unsigned_short) return vector_unsigned_int
3636    is
3637    begin
3638       return To_LL_VUI (vmulouh (To_LL_VSS (A), To_LL_VSS (B)));
3639    end vec_vmulouh;
3640
3641    -- vec_vmulosb --
3642
3643    function vec_vmulosb
3644      (A : vector_signed_char;
3645       B : vector_signed_char) return vector_signed_short
3646    is
3647    begin
3648       return To_LL_VSS (vmulosb (To_LL_VSC (A), To_LL_VSC (B)));
3649    end vec_vmulosb;
3650
3651    -- vec_vmuloub --
3652
3653    function vec_vmuloub
3654      (A : vector_unsigned_char;
3655       B : vector_unsigned_char) return vector_unsigned_short
3656    is
3657    begin
3658       return To_LL_VUS (vmuloub (To_LL_VSC (A), To_LL_VSC (B)));
3659    end vec_vmuloub;
3660
3661    -- vec_nmsub --
3662
3663    function vec_nmsub
3664      (A : vector_float;
3665       B : vector_float;
3666       C : vector_float) return vector_float
3667    is
3668    begin
3669       return To_LL_VF (vnmsubfp (To_LL_VF (A), To_LL_VF (B), To_LL_VF (C)));
3670    end vec_nmsub;
3671
3672    -- vec_nor --
3673
3674    function vec_nor
3675      (A : vector_float;
3676       B : vector_float) return vector_float
3677    is
3678    begin
3679       return To_LL_VF (vnor (To_LL_VSI (A), To_LL_VSI (B)));
3680    end vec_nor;
3681
3682    function vec_nor
3683      (A : vector_signed_int;
3684       B : vector_signed_int) return vector_signed_int
3685    is
3686    begin
3687       return To_LL_VSI (vnor (To_LL_VSI (A), To_LL_VSI (B)));
3688    end vec_nor;
3689
3690    function vec_nor
3691      (A : vector_unsigned_int;
3692       B : vector_unsigned_int) return vector_unsigned_int
3693    is
3694    begin
3695       return To_LL_VUI (vnor (To_LL_VSI (A), To_LL_VSI (B)));
3696    end vec_nor;
3697
3698    function vec_nor
3699      (A : vector_bool_int;
3700       B : vector_bool_int) return vector_bool_int
3701    is
3702    begin
3703       return To_LL_VBI (vnor (To_LL_VSI (A), To_LL_VSI (B)));
3704    end vec_nor;
3705
3706    function vec_nor
3707      (A : vector_signed_short;
3708       B : vector_signed_short) return vector_signed_short
3709    is
3710    begin
3711       return To_LL_VSS (vnor (To_LL_VSI (A), To_LL_VSI (B)));
3712    end vec_nor;
3713
3714    function vec_nor
3715      (A : vector_unsigned_short;
3716       B : vector_unsigned_short) return vector_unsigned_short
3717    is
3718    begin
3719       return To_LL_VUS (vnor (To_LL_VSI (A), To_LL_VSI (B)));
3720    end vec_nor;
3721
3722    function vec_nor
3723      (A : vector_bool_short;
3724       B : vector_bool_short) return vector_bool_short
3725    is
3726    begin
3727       return To_LL_VBS (vnor (To_LL_VSI (A), To_LL_VSI (B)));
3728    end vec_nor;
3729
3730    function vec_nor
3731      (A : vector_signed_char;
3732       B : vector_signed_char) return vector_signed_char
3733    is
3734    begin
3735       return To_LL_VSC (vnor (To_LL_VSI (A), To_LL_VSI (B)));
3736    end vec_nor;
3737
3738    function vec_nor
3739      (A : vector_unsigned_char;
3740       B : vector_unsigned_char) return vector_unsigned_char
3741    is
3742    begin
3743       return To_LL_VUC (vnor (To_LL_VSI (A), To_LL_VSI (B)));
3744    end vec_nor;
3745
3746    function vec_nor
3747      (A : vector_bool_char;
3748       B : vector_bool_char) return vector_bool_char
3749    is
3750    begin
3751       return To_LL_VBC (vnor (To_LL_VSI (A), To_LL_VSI (B)));
3752    end vec_nor;
3753
3754    -- vec_or --
3755
3756    function vec_or
3757      (A : vector_float;
3758       B : vector_float) return vector_float
3759    is
3760    begin
3761       return To_LL_VF (vor (To_LL_VSI (A), To_LL_VSI (B)));
3762    end vec_or;
3763
3764    function vec_or
3765      (A : vector_float;
3766       B : vector_bool_int) return vector_float
3767    is
3768    begin
3769       return To_LL_VF (vor (To_LL_VSI (A), To_LL_VSI (B)));
3770    end vec_or;
3771
3772    function vec_or
3773      (A : vector_bool_int;
3774       B : vector_float) return vector_float
3775    is
3776    begin
3777       return To_LL_VF (vor (To_LL_VSI (A), To_LL_VSI (B)));
3778    end vec_or;
3779
3780    function vec_or
3781      (A : vector_bool_int;
3782       B : vector_bool_int) return vector_bool_int
3783    is
3784    begin
3785       return To_LL_VBI (vor (To_LL_VSI (A), To_LL_VSI (B)));
3786    end vec_or;
3787
3788    function vec_or
3789      (A : vector_bool_int;
3790       B : vector_signed_int) return vector_signed_int
3791    is
3792    begin
3793       return To_LL_VSI (vor (To_LL_VSI (A), To_LL_VSI (B)));
3794    end vec_or;
3795
3796    function vec_or
3797      (A : vector_signed_int;
3798       B : vector_bool_int) return vector_signed_int
3799    is
3800    begin
3801       return To_LL_VSI (vor (To_LL_VSI (A), To_LL_VSI (B)));
3802    end vec_or;
3803
3804    function vec_or
3805      (A : vector_signed_int;
3806       B : vector_signed_int) return vector_signed_int
3807    is
3808    begin
3809       return To_LL_VSI (vor (To_LL_VSI (A), To_LL_VSI (B)));
3810    end vec_or;
3811
3812    function vec_or
3813      (A : vector_bool_int;
3814       B : vector_unsigned_int) return vector_unsigned_int
3815    is
3816    begin
3817       return To_LL_VUI (vor (To_LL_VSI (A), To_LL_VSI (B)));
3818    end vec_or;
3819
3820    function vec_or
3821      (A : vector_unsigned_int;
3822       B : vector_bool_int) return vector_unsigned_int
3823    is
3824    begin
3825       return To_LL_VUI (vor (To_LL_VSI (A), To_LL_VSI (B)));
3826    end vec_or;
3827
3828    function vec_or
3829      (A : vector_unsigned_int;
3830       B : vector_unsigned_int) return vector_unsigned_int
3831    is
3832    begin
3833       return To_LL_VUI (vor (To_LL_VSI (A), To_LL_VSI (B)));
3834    end vec_or;
3835
3836    function vec_or
3837      (A : vector_bool_short;
3838       B : vector_bool_short) return vector_bool_short
3839    is
3840    begin
3841       return To_LL_VBS (vor (To_LL_VSI (A), To_LL_VSI (B)));
3842    end vec_or;
3843
3844    function vec_or
3845      (A : vector_bool_short;
3846       B : vector_signed_short) return vector_signed_short
3847    is
3848    begin
3849       return To_LL_VSS (vor (To_LL_VSI (A), To_LL_VSI (B)));
3850    end vec_or;
3851
3852    function vec_or
3853      (A : vector_signed_short;
3854       B : vector_bool_short) return vector_signed_short
3855    is
3856    begin
3857       return To_LL_VSS (vor (To_LL_VSI (A), To_LL_VSI (B)));
3858    end vec_or;
3859
3860    function vec_or
3861      (A : vector_signed_short;
3862       B : vector_signed_short) return vector_signed_short
3863    is
3864    begin
3865       return To_LL_VSS (vor (To_LL_VSI (A), To_LL_VSI (B)));
3866    end vec_or;
3867
3868    function vec_or
3869      (A : vector_bool_short;
3870       B : vector_unsigned_short) return vector_unsigned_short
3871    is
3872    begin
3873       return To_LL_VUS (vor (To_LL_VSI (A), To_LL_VSI (B)));
3874    end vec_or;
3875
3876    function vec_or
3877      (A : vector_unsigned_short;
3878       B : vector_bool_short) return vector_unsigned_short
3879    is
3880    begin
3881       return To_LL_VUS (vor (To_LL_VSI (A), To_LL_VSI (B)));
3882    end vec_or;
3883
3884    function vec_or
3885      (A : vector_unsigned_short;
3886       B : vector_unsigned_short) return vector_unsigned_short
3887    is
3888    begin
3889       return To_LL_VUS (vor (To_LL_VSI (A), To_LL_VSI (B)));
3890    end vec_or;
3891
3892    function vec_or
3893      (A : vector_bool_char;
3894       B : vector_signed_char) return vector_signed_char
3895    is
3896    begin
3897       return To_LL_VSC (vor (To_LL_VSI (A), To_LL_VSI (B)));
3898    end vec_or;
3899
3900    function vec_or
3901      (A : vector_bool_char;
3902       B : vector_bool_char) return vector_bool_char
3903    is
3904    begin
3905       return To_LL_VBC (vor (To_LL_VSI (A), To_LL_VSI (B)));
3906    end vec_or;
3907
3908    function vec_or
3909      (A : vector_signed_char;
3910       B : vector_bool_char) return vector_signed_char
3911    is
3912    begin
3913       return To_LL_VSC (vor (To_LL_VSI (A), To_LL_VSI (B)));
3914    end vec_or;
3915
3916    function vec_or
3917      (A : vector_signed_char;
3918       B : vector_signed_char) return vector_signed_char
3919    is
3920    begin
3921       return To_LL_VSC (vor (To_LL_VSI (A), To_LL_VSI (B)));
3922    end vec_or;
3923
3924    function vec_or
3925      (A : vector_bool_char;
3926       B : vector_unsigned_char) return vector_unsigned_char
3927    is
3928    begin
3929       return To_LL_VUC (vor (To_LL_VSI (A), To_LL_VSI (B)));
3930    end vec_or;
3931
3932    function vec_or
3933      (A : vector_unsigned_char;
3934       B : vector_bool_char) return vector_unsigned_char
3935    is
3936    begin
3937       return To_LL_VUC (vor (To_LL_VSI (A), To_LL_VSI (B)));
3938    end vec_or;
3939
3940    function vec_or
3941      (A : vector_unsigned_char;
3942       B : vector_unsigned_char) return vector_unsigned_char
3943    is
3944    begin
3945       return To_LL_VUC (vor (To_LL_VSI (A), To_LL_VSI (B)));
3946    end vec_or;
3947
3948    -- vec_pack --
3949
3950    function vec_pack
3951      (A : vector_signed_short;
3952       B : vector_signed_short) return vector_signed_char
3953    is
3954    begin
3955       return To_LL_VSC (vpkuhum (To_LL_VSS (A), To_LL_VSS (B)));
3956    end vec_pack;
3957
3958    function vec_pack
3959      (A : vector_unsigned_short;
3960       B : vector_unsigned_short) return vector_unsigned_char
3961    is
3962    begin
3963       return To_LL_VUC (vpkuhum (To_LL_VSS (A), To_LL_VSS (B)));
3964    end vec_pack;
3965
3966    function vec_pack
3967      (A : vector_bool_short;
3968       B : vector_bool_short) return vector_bool_char
3969    is
3970    begin
3971       return To_LL_VBC (vpkuhum (To_LL_VSS (A), To_LL_VSS (B)));
3972    end vec_pack;
3973
3974    function vec_pack
3975      (A : vector_signed_int;
3976       B : vector_signed_int) return vector_signed_short
3977    is
3978    begin
3979       return To_LL_VSS (vpkuwum (To_LL_VSI (A), To_LL_VSI (B)));
3980    end vec_pack;
3981
3982    function vec_pack
3983      (A : vector_unsigned_int;
3984       B : vector_unsigned_int) return vector_unsigned_short
3985    is
3986    begin
3987       return To_LL_VUS (vpkuwum (To_LL_VSI (A), To_LL_VSI (B)));
3988    end vec_pack;
3989
3990    function vec_pack
3991      (A : vector_bool_int;
3992       B : vector_bool_int) return vector_bool_short
3993    is
3994    begin
3995       return To_LL_VBS (vpkuwum (To_LL_VSI (A), To_LL_VSI (B)));
3996    end vec_pack;
3997
3998    -- vec_vpkuwum --
3999
4000    function vec_vpkuwum
4001      (A : vector_bool_int;
4002       B : vector_bool_int) return vector_bool_short
4003    is
4004    begin
4005       return To_LL_VBS (vpkuwum (To_LL_VSI (A), To_LL_VSI (B)));
4006    end vec_vpkuwum;
4007
4008    function vec_vpkuwum
4009      (A : vector_signed_int;
4010       B : vector_signed_int) return vector_signed_short
4011    is
4012    begin
4013       return To_LL_VSS (vpkuwum (To_LL_VSI (A), To_LL_VSI (B)));
4014    end vec_vpkuwum;
4015
4016    function vec_vpkuwum
4017      (A : vector_unsigned_int;
4018       B : vector_unsigned_int) return vector_unsigned_short
4019    is
4020    begin
4021       return To_LL_VUS (vpkuwum (To_LL_VSI (A), To_LL_VSI (B)));
4022    end vec_vpkuwum;
4023
4024    -- vec_vpkuhum --
4025
4026    function vec_vpkuhum
4027      (A : vector_bool_short;
4028       B : vector_bool_short) return vector_bool_char
4029    is
4030    begin
4031       return To_LL_VBC (vpkuhum (To_LL_VSS (A), To_LL_VSS (B)));
4032    end vec_vpkuhum;
4033
4034    function vec_vpkuhum
4035      (A : vector_signed_short;
4036       B : vector_signed_short) return vector_signed_char
4037    is
4038    begin
4039       return To_LL_VSC (vpkuhum (To_LL_VSS (A), To_LL_VSS (B)));
4040    end vec_vpkuhum;
4041
4042    function vec_vpkuhum
4043      (A : vector_unsigned_short;
4044       B : vector_unsigned_short) return vector_unsigned_char
4045    is
4046    begin
4047       return To_LL_VUC (vpkuhum (To_LL_VSS (A), To_LL_VSS (B)));
4048    end vec_vpkuhum;
4049
4050    -- vec_packpx --
4051
4052    function vec_packpx
4053      (A : vector_unsigned_int;
4054       B : vector_unsigned_int) return vector_pixel
4055    is
4056    begin
4057       return To_LL_VP (vpkpx (To_LL_VSI (A), To_LL_VSI (B)));
4058    end vec_packpx;
4059
4060    -- vec_packs --
4061
4062    function vec_packs
4063      (A : vector_unsigned_short;
4064       B : vector_unsigned_short) return vector_unsigned_char
4065    is
4066    begin
4067       return To_LL_VUC (vpkuhus (To_LL_VSS (A), To_LL_VSS (B)));
4068    end vec_packs;
4069
4070    function vec_packs
4071      (A : vector_signed_short;
4072       B : vector_signed_short) return vector_signed_char
4073    is
4074    begin
4075       return To_LL_VSC (vpkshss (To_LL_VSS (A), To_LL_VSS (B)));
4076    end vec_packs;
4077
4078    function vec_packs
4079      (A : vector_unsigned_int;
4080       B : vector_unsigned_int) return vector_unsigned_short
4081    is
4082    begin
4083       return To_LL_VUS (vpkuwus (To_LL_VSI (A), To_LL_VSI (B)));
4084    end vec_packs;
4085
4086    function vec_packs
4087      (A : vector_signed_int;
4088       B : vector_signed_int) return vector_signed_short
4089    is
4090    begin
4091       return To_LL_VSS (vpkswss (To_LL_VSI (A), To_LL_VSI (B)));
4092    end vec_packs;
4093
4094    -- vec_vpkswss --
4095
4096    function vec_vpkswss
4097      (A : vector_signed_int;
4098       B : vector_signed_int) return vector_signed_short
4099    is
4100    begin
4101       return To_LL_VSS (vpkswss (To_LL_VSI (A), To_LL_VSI (B)));
4102    end vec_vpkswss;
4103
4104    -- vec_vpkuwus --
4105
4106    function vec_vpkuwus
4107      (A : vector_unsigned_int;
4108       B : vector_unsigned_int) return vector_unsigned_short
4109    is
4110    begin
4111       return To_LL_VUS (vpkuwus (To_LL_VSI (A), To_LL_VSI (B)));
4112    end vec_vpkuwus;
4113
4114    -- vec_vpkshss --
4115
4116    function vec_vpkshss
4117      (A : vector_signed_short;
4118       B : vector_signed_short) return vector_signed_char
4119    is
4120    begin
4121       return To_LL_VSC (vpkshss (To_LL_VSS (A), To_LL_VSS (B)));
4122    end vec_vpkshss;
4123
4124    -- vec_vpkuhus --
4125
4126    function vec_vpkuhus
4127      (A : vector_unsigned_short;
4128       B : vector_unsigned_short) return vector_unsigned_char
4129    is
4130    begin
4131       return To_LL_VUC (vpkuhus (To_LL_VSS (A), To_LL_VSS (B)));
4132    end vec_vpkuhus;
4133
4134    -- vec_packsu --
4135
4136    function vec_packsu
4137      (A : vector_unsigned_short;
4138       B : vector_unsigned_short) return vector_unsigned_char
4139    is
4140    begin
4141       return To_LL_VUC (vpkuhus (To_LL_VSS (A), To_LL_VSS (B)));
4142    end vec_packsu;
4143
4144    function vec_packsu
4145      (A : vector_signed_short;
4146       B : vector_signed_short) return vector_unsigned_char
4147    is
4148    begin
4149       return To_LL_VUC (vpkshus (To_LL_VSS (A), To_LL_VSS (B)));
4150    end vec_packsu;
4151
4152    function vec_packsu
4153      (A : vector_unsigned_int;
4154       B : vector_unsigned_int) return vector_unsigned_short
4155    is
4156    begin
4157       return To_LL_VUS (vpkuwus (To_LL_VSI (A), To_LL_VSI (B)));
4158    end vec_packsu;
4159
4160    function vec_packsu
4161      (A : vector_signed_int;
4162       B : vector_signed_int) return vector_unsigned_short
4163    is
4164    begin
4165       return To_LL_VUS (vpkswus (To_LL_VSI (A), To_LL_VSI (B)));
4166    end vec_packsu;
4167
4168    -- vec_vpkswus --
4169
4170    function vec_vpkswus
4171      (A : vector_signed_int;
4172       B : vector_signed_int) return vector_unsigned_short
4173    is
4174    begin
4175       return To_LL_VUS (vpkswus (To_LL_VSI (A), To_LL_VSI (B)));
4176    end vec_vpkswus;
4177
4178    -- vec_vpkshus --
4179
4180    function vec_vpkshus
4181      (A : vector_signed_short;
4182       B : vector_signed_short) return vector_unsigned_char
4183    is
4184    begin
4185       return To_LL_VUC (vpkshus (To_LL_VSS (A), To_LL_VSS (B)));
4186    end vec_vpkshus;
4187
4188    -- vec_perm --
4189
4190    function vec_perm
4191      (A : vector_float;
4192       B : vector_float;
4193       C : vector_unsigned_char) return vector_float
4194    is
4195    begin
4196       return
4197         To_LL_VF (vperm_4si (To_LL_VSI (A), To_LL_VSI (B), To_LL_VSC (C)));
4198    end vec_perm;
4199
4200    function vec_perm
4201      (A : vector_signed_int;
4202       B : vector_signed_int;
4203       C : vector_unsigned_char) return vector_signed_int
4204    is
4205    begin
4206       return
4207         To_LL_VSI (vperm_4si (To_LL_VSI (A), To_LL_VSI (B), To_LL_VSC (C)));
4208    end vec_perm;
4209
4210    function vec_perm
4211      (A : vector_unsigned_int;
4212       B : vector_unsigned_int;
4213       C : vector_unsigned_char) return vector_unsigned_int
4214    is
4215    begin
4216       return
4217         To_LL_VUI (vperm_4si (To_LL_VSI (A), To_LL_VSI (B), To_LL_VSC (C)));
4218    end vec_perm;
4219
4220    function vec_perm
4221      (A : vector_bool_int;
4222       B : vector_bool_int;
4223       C : vector_unsigned_char) return vector_bool_int
4224    is
4225    begin
4226       return
4227         To_LL_VBI (vperm_4si (To_LL_VSI (A), To_LL_VSI (B), To_LL_VSC (C)));
4228    end vec_perm;
4229
4230    function vec_perm
4231      (A : vector_signed_short;
4232       B : vector_signed_short;
4233       C : vector_unsigned_char) return vector_signed_short
4234    is
4235    begin
4236       return
4237         To_LL_VSS (vperm_4si (To_LL_VSI (A), To_LL_VSI (B), To_LL_VSC (C)));
4238    end vec_perm;
4239
4240    function vec_perm
4241      (A : vector_unsigned_short;
4242       B : vector_unsigned_short;
4243       C : vector_unsigned_char) return vector_unsigned_short
4244    is
4245    begin
4246       return
4247         To_LL_VUS (vperm_4si (To_LL_VSI (A), To_LL_VSI (B), To_LL_VSC (C)));
4248    end vec_perm;
4249
4250    function vec_perm
4251      (A : vector_bool_short;
4252       B : vector_bool_short;
4253       C : vector_unsigned_char) return vector_bool_short
4254    is
4255    begin
4256       return
4257         To_LL_VBS (vperm_4si (To_LL_VSI (A), To_LL_VSI (B), To_LL_VSC (C)));
4258    end vec_perm;
4259
4260    function vec_perm
4261      (A : vector_pixel;
4262       B : vector_pixel;
4263       C : vector_unsigned_char) return vector_pixel
4264    is
4265    begin
4266       return To_LL_VP
4267         (vperm_4si (To_LL_VSI (A), To_LL_VSI (B), To_LL_VSC (C)));
4268    end vec_perm;
4269
4270    function vec_perm
4271      (A : vector_signed_char;
4272       B : vector_signed_char;
4273       C : vector_unsigned_char) return vector_signed_char
4274    is
4275    begin
4276       return To_LL_VSC
4277         (vperm_4si (To_LL_VSI (A), To_LL_VSI (B), To_LL_VSC (C)));
4278    end vec_perm;
4279
4280    function vec_perm
4281      (A : vector_unsigned_char;
4282       B : vector_unsigned_char;
4283       C : vector_unsigned_char) return vector_unsigned_char
4284    is
4285    begin
4286       return
4287         To_LL_VUC (vperm_4si (To_LL_VSI (A), To_LL_VSI (B), To_LL_VSC (C)));
4288    end vec_perm;
4289
4290    function vec_perm
4291      (A : vector_bool_char;
4292       B : vector_bool_char;
4293       C : vector_unsigned_char) return vector_bool_char
4294    is
4295    begin
4296       return
4297         To_LL_VBC (vperm_4si (To_LL_VSI (A), To_LL_VSI (B), To_LL_VSC (C)));
4298    end vec_perm;
4299
4300    -- vec_re --
4301
4302    function vec_re
4303      (A : vector_float) return vector_float
4304    is
4305    begin
4306       return To_LL_VF (vrefp (To_LL_VF (A)));
4307    end vec_re;
4308
4309    -- vec_rl --
4310
4311    function vec_rl
4312      (A : vector_signed_char;
4313       B : vector_unsigned_char) return vector_signed_char
4314    is
4315    begin
4316       return To_LL_VSC (vrlb (To_LL_VSC (A), To_LL_VSC (B)));
4317    end vec_rl;
4318
4319    function vec_rl
4320      (A : vector_unsigned_char;
4321       B : vector_unsigned_char) return vector_unsigned_char
4322    is
4323    begin
4324       return To_LL_VUC (vrlb (To_LL_VSC (A), To_LL_VSC (B)));
4325    end vec_rl;
4326
4327    function vec_rl
4328      (A : vector_signed_short;
4329       B : vector_unsigned_short) return vector_signed_short
4330    is
4331    begin
4332       return To_LL_VSS (vrlh (To_LL_VSS (A), To_LL_VSS (B)));
4333    end vec_rl;
4334
4335    function vec_rl
4336      (A : vector_unsigned_short;
4337       B : vector_unsigned_short) return vector_unsigned_short
4338    is
4339    begin
4340       return To_LL_VUS (vrlh (To_LL_VSS (A), To_LL_VSS (B)));
4341    end vec_rl;
4342
4343    function vec_rl
4344      (A : vector_signed_int;
4345       B : vector_unsigned_int) return vector_signed_int
4346    is
4347    begin
4348       return To_LL_VSI (vrlw (To_LL_VSI (A), To_LL_VSI (B)));
4349    end vec_rl;
4350
4351    function vec_rl
4352      (A : vector_unsigned_int;
4353       B : vector_unsigned_int) return vector_unsigned_int
4354    is
4355    begin
4356       return To_LL_VUI (vrlw (To_LL_VSI (A), To_LL_VSI (B)));
4357    end vec_rl;
4358
4359    -- vec_vrlw --
4360
4361    function vec_vrlw
4362      (A : vector_signed_int;
4363       B : vector_unsigned_int) return vector_signed_int
4364    is
4365    begin
4366       return To_LL_VSI (vrlw (To_LL_VSI (A), To_LL_VSI (B)));
4367    end vec_vrlw;
4368
4369    function vec_vrlw
4370      (A : vector_unsigned_int;
4371       B : vector_unsigned_int) return vector_unsigned_int
4372    is
4373    begin
4374       return To_LL_VUI (vrlw (To_LL_VSI (A), To_LL_VSI (B)));
4375    end vec_vrlw;
4376
4377    -- vec_vrlh --
4378
4379    function vec_vrlh
4380      (A : vector_signed_short;
4381       B : vector_unsigned_short) return vector_signed_short
4382    is
4383    begin
4384       return To_LL_VSS (vrlh (To_LL_VSS (A), To_LL_VSS (B)));
4385    end vec_vrlh;
4386
4387    function vec_vrlh
4388      (A : vector_unsigned_short;
4389       B : vector_unsigned_short) return vector_unsigned_short
4390    is
4391    begin
4392       return To_LL_VUS (vrlh (To_LL_VSS (A), To_LL_VSS (B)));
4393    end vec_vrlh;
4394
4395    -- vec_vrlb --
4396
4397    function vec_vrlb
4398      (A : vector_signed_char;
4399       B : vector_unsigned_char) return vector_signed_char
4400    is
4401    begin
4402       return To_LL_VSC (vrlb (To_LL_VSC (A), To_LL_VSC (B)));
4403    end vec_vrlb;
4404
4405    function vec_vrlb
4406      (A : vector_unsigned_char;
4407       B : vector_unsigned_char) return vector_unsigned_char
4408    is
4409    begin
4410       return To_LL_VUC (vrlb (To_LL_VSC (A), To_LL_VSC (B)));
4411    end vec_vrlb;
4412
4413    -- vec_round --
4414
4415    function vec_round
4416      (A : vector_float) return vector_float
4417    is
4418    begin
4419       return To_LL_VF (vrfin (To_LL_VF (A)));
4420    end vec_round;
4421
4422    -- vec_rsqrte --
4423
4424    function vec_rsqrte
4425      (A : vector_float) return vector_float
4426    is
4427    begin
4428       return To_LL_VF (vrsqrtefp (To_LL_VF (A)));
4429    end vec_rsqrte;
4430
4431    -- vec_sel --
4432
4433    function vec_sel
4434      (A : vector_float;
4435       B : vector_float;
4436       C : vector_bool_int) return vector_float
4437    is
4438    begin
4439       return To_LL_VF (vsel_4si (To_LL_VSI (A), To_LL_VSI (B), To_LL_VSI (C)));
4440    end vec_sel;
4441
4442    function vec_sel
4443      (A : vector_float;
4444       B : vector_float;
4445       C : vector_unsigned_int) return vector_float
4446    is
4447    begin
4448       return To_LL_VF (vsel_4si (To_LL_VSI (A), To_LL_VSI (B), To_LL_VSI (C)));
4449    end vec_sel;
4450
4451    function vec_sel
4452      (A : vector_signed_int;
4453       B : vector_signed_int;
4454       C : vector_bool_int) return vector_signed_int
4455    is
4456    begin
4457       return
4458         To_LL_VSI (vsel_4si (To_LL_VSI (A), To_LL_VSI (B), To_LL_VSI (C)));
4459    end vec_sel;
4460
4461    function vec_sel
4462      (A : vector_signed_int;
4463       B : vector_signed_int;
4464       C : vector_unsigned_int) return vector_signed_int
4465    is
4466    begin
4467       return
4468         To_LL_VSI (vsel_4si (To_LL_VSI (A), To_LL_VSI (B), To_LL_VSI (C)));
4469    end vec_sel;
4470
4471    function vec_sel
4472      (A : vector_unsigned_int;
4473       B : vector_unsigned_int;
4474       C : vector_bool_int) return vector_unsigned_int
4475    is
4476    begin
4477       return
4478         To_LL_VUI (vsel_4si (To_LL_VSI (A), To_LL_VSI (B), To_LL_VSI (C)));
4479    end vec_sel;
4480
4481    function vec_sel
4482      (A : vector_unsigned_int;
4483       B : vector_unsigned_int;
4484       C : vector_unsigned_int) return vector_unsigned_int
4485    is
4486    begin
4487       return
4488         To_LL_VUI (vsel_4si (To_LL_VSI (A), To_LL_VSI (B), To_LL_VSI (C)));
4489    end vec_sel;
4490
4491    function vec_sel
4492      (A : vector_bool_int;
4493       B : vector_bool_int;
4494       C : vector_bool_int) return vector_bool_int
4495    is
4496    begin
4497       return
4498         To_LL_VBI (vsel_4si (To_LL_VSI (A), To_LL_VSI (B), To_LL_VSI (C)));
4499    end vec_sel;
4500
4501    function vec_sel
4502      (A : vector_bool_int;
4503       B : vector_bool_int;
4504       C : vector_unsigned_int) return vector_bool_int
4505    is
4506    begin
4507       return
4508         To_LL_VBI (vsel_4si (To_LL_VSI (A), To_LL_VSI (B), To_LL_VSI (C)));
4509    end vec_sel;
4510
4511    function vec_sel
4512      (A : vector_signed_short;
4513       B : vector_signed_short;
4514       C : vector_bool_short) return vector_signed_short
4515    is
4516    begin
4517       return
4518         To_LL_VSS (vsel_4si (To_LL_VSI (A), To_LL_VSI (B), To_LL_VSI (C)));
4519    end vec_sel;
4520
4521    function vec_sel
4522      (A : vector_signed_short;
4523       B : vector_signed_short;
4524       C : vector_unsigned_short) return vector_signed_short
4525    is
4526    begin
4527       return
4528         To_LL_VSS (vsel_4si (To_LL_VSI (A), To_LL_VSI (B), To_LL_VSI (C)));
4529    end vec_sel;
4530
4531    function vec_sel
4532      (A : vector_unsigned_short;
4533       B : vector_unsigned_short;
4534       C : vector_bool_short) return vector_unsigned_short
4535    is
4536    begin
4537       return
4538         To_LL_VUS (vsel_4si (To_LL_VSI (A), To_LL_VSI (B), To_LL_VSI (C)));
4539    end vec_sel;
4540
4541    function vec_sel
4542      (A : vector_unsigned_short;
4543       B : vector_unsigned_short;
4544       C : vector_unsigned_short) return vector_unsigned_short
4545    is
4546    begin
4547       return
4548         To_LL_VUS (vsel_4si (To_LL_VSI (A), To_LL_VSI (B), To_LL_VSI (C)));
4549    end vec_sel;
4550
4551    function vec_sel
4552      (A : vector_bool_short;
4553       B : vector_bool_short;
4554       C : vector_bool_short) return vector_bool_short
4555    is
4556    begin
4557       return
4558         To_LL_VBS (vsel_4si (To_LL_VSI (A), To_LL_VSI (B), To_LL_VSI (C)));
4559    end vec_sel;
4560
4561    function vec_sel
4562      (A : vector_bool_short;
4563       B : vector_bool_short;
4564       C : vector_unsigned_short) return vector_bool_short
4565    is
4566    begin
4567       return
4568         To_LL_VBS (vsel_4si (To_LL_VSI (A), To_LL_VSI (B), To_LL_VSI (C)));
4569    end vec_sel;
4570
4571    function vec_sel
4572      (A : vector_signed_char;
4573       B : vector_signed_char;
4574       C : vector_bool_char) return vector_signed_char
4575    is
4576    begin
4577       return
4578         To_LL_VSC (vsel_4si (To_LL_VSI (A), To_LL_VSI (B), To_LL_VSI (C)));
4579    end vec_sel;
4580
4581    function vec_sel
4582      (A : vector_signed_char;
4583       B : vector_signed_char;
4584       C : vector_unsigned_char) return vector_signed_char
4585    is
4586    begin
4587       return
4588         To_LL_VSC (vsel_4si (To_LL_VSI (A), To_LL_VSI (B), To_LL_VSI (C)));
4589    end vec_sel;
4590
4591    function vec_sel
4592      (A : vector_unsigned_char;
4593       B : vector_unsigned_char;
4594       C : vector_bool_char) return vector_unsigned_char
4595    is
4596    begin
4597       return
4598         To_LL_VUC (vsel_4si (To_LL_VSI (A), To_LL_VSI (B), To_LL_VSI (C)));
4599    end vec_sel;
4600
4601    function vec_sel
4602      (A : vector_unsigned_char;
4603       B : vector_unsigned_char;
4604       C : vector_unsigned_char) return vector_unsigned_char
4605    is
4606    begin
4607       return
4608         To_LL_VUC (vsel_4si (To_LL_VSI (A), To_LL_VSI (B), To_LL_VSI (C)));
4609    end vec_sel;
4610
4611    function vec_sel
4612      (A : vector_bool_char;
4613       B : vector_bool_char;
4614       C : vector_bool_char) return vector_bool_char
4615    is
4616    begin
4617       return
4618         To_LL_VBC (vsel_4si (To_LL_VSI (A), To_LL_VSI (B), To_LL_VSI (C)));
4619    end vec_sel;
4620
4621    function vec_sel
4622      (A : vector_bool_char;
4623       B : vector_bool_char;
4624       C : vector_unsigned_char) return vector_bool_char
4625    is
4626    begin
4627       return
4628         To_LL_VBC (vsel_4si (To_LL_VSI (A), To_LL_VSI (B), To_LL_VSI (C)));
4629    end vec_sel;
4630
4631    -- vec_sl --
4632
4633    function vec_sl
4634      (A : vector_signed_char;
4635       B : vector_unsigned_char) return vector_signed_char
4636    is
4637    begin
4638       return To_LL_VSC (vslb (To_LL_VSC (A), To_LL_VSC (B)));
4639    end vec_sl;
4640
4641    function vec_sl
4642      (A : vector_unsigned_char;
4643       B : vector_unsigned_char) return vector_unsigned_char
4644    is
4645    begin
4646       return To_LL_VUC (vslb (To_LL_VSC (A), To_LL_VSC (B)));
4647    end vec_sl;
4648
4649    function vec_sl
4650      (A : vector_signed_short;
4651       B : vector_unsigned_short) return vector_signed_short
4652    is
4653    begin
4654       return To_LL_VSS (vslh (To_LL_VSS (A), To_LL_VSS (B)));
4655    end vec_sl;
4656
4657    function vec_sl
4658      (A : vector_unsigned_short;
4659       B : vector_unsigned_short) return vector_unsigned_short
4660    is
4661    begin
4662       return To_LL_VUS (vslh (To_LL_VSS (A), To_LL_VSS (B)));
4663    end vec_sl;
4664
4665    function vec_sl
4666      (A : vector_signed_int;
4667       B : vector_unsigned_int) return vector_signed_int
4668    is
4669    begin
4670       return To_LL_VSI (vslw (To_LL_VSI (A), To_LL_VSI (B)));
4671    end vec_sl;
4672
4673    function vec_sl
4674      (A : vector_unsigned_int;
4675       B : vector_unsigned_int) return vector_unsigned_int
4676    is
4677    begin
4678       return To_LL_VUI (vslw (To_LL_VSI (A), To_LL_VSI (B)));
4679    end vec_sl;
4680
4681    -- vec_vslw --
4682
4683    function vec_vslw
4684      (A : vector_signed_int;
4685       B : vector_unsigned_int) return vector_signed_int
4686    is
4687    begin
4688       return To_LL_VSI (vslw (To_LL_VSI (A), To_LL_VSI (B)));
4689    end vec_vslw;
4690
4691    function vec_vslw
4692      (A : vector_unsigned_int;
4693       B : vector_unsigned_int) return vector_unsigned_int
4694    is
4695    begin
4696       return To_LL_VUI (vslw (To_LL_VSI (A), To_LL_VSI (B)));
4697    end vec_vslw;
4698
4699    -- vec_vslh --
4700
4701    function vec_vslh
4702      (A : vector_signed_short;
4703       B : vector_unsigned_short) return vector_signed_short
4704    is
4705    begin
4706       return To_LL_VSS (vslh (To_LL_VSS (A), To_LL_VSS (B)));
4707    end vec_vslh;
4708
4709    function vec_vslh
4710      (A : vector_unsigned_short;
4711       B : vector_unsigned_short) return vector_unsigned_short
4712    is
4713    begin
4714       return To_LL_VUS (vslh (To_LL_VSS (A), To_LL_VSS (B)));
4715    end vec_vslh;
4716
4717    -- vec_vslb --
4718
4719    function vec_vslb
4720      (A : vector_signed_char;
4721       B : vector_unsigned_char) return vector_signed_char
4722    is
4723    begin
4724       return To_LL_VSC (vslb (To_LL_VSC (A), To_LL_VSC (B)));
4725    end vec_vslb;
4726
4727    function vec_vslb
4728      (A : vector_unsigned_char;
4729       B : vector_unsigned_char) return vector_unsigned_char
4730    is
4731    begin
4732       return To_LL_VUC (vslb (To_LL_VSC (A), To_LL_VSC (B)));
4733    end vec_vslb;
4734
4735    -- vec_sll --
4736
4737    function vec_sll
4738      (A : vector_signed_int;
4739       B : vector_unsigned_int) return vector_signed_int
4740    is
4741    begin
4742       return To_LL_VSI (vsl (To_LL_VSI (A), To_LL_VSI (B)));
4743    end vec_sll;
4744
4745    function vec_sll
4746      (A : vector_signed_int;
4747       B : vector_unsigned_short) return vector_signed_int
4748    is
4749    begin
4750       return To_LL_VSI (vsl (To_LL_VSI (A), To_LL_VSI (B)));
4751    end vec_sll;
4752
4753    function vec_sll
4754      (A : vector_signed_int;
4755       B : vector_unsigned_char) return vector_signed_int
4756    is
4757    begin
4758       return To_LL_VSI (vsl (To_LL_VSI (A), To_LL_VSI (B)));
4759    end vec_sll;
4760
4761    function vec_sll
4762      (A : vector_unsigned_int;
4763       B : vector_unsigned_int) return vector_unsigned_int
4764    is
4765    begin
4766       return To_LL_VUI (vsl (To_LL_VSI (A), To_LL_VSI (B)));
4767    end vec_sll;
4768
4769    function vec_sll
4770      (A : vector_unsigned_int;
4771       B : vector_unsigned_short) return vector_unsigned_int
4772    is
4773    begin
4774       return To_LL_VUI (vsl (To_LL_VSI (A), To_LL_VSI (B)));
4775    end vec_sll;
4776
4777    function vec_sll
4778      (A : vector_unsigned_int;
4779       B : vector_unsigned_char) return vector_unsigned_int
4780    is
4781    begin
4782       return To_LL_VUI (vsl (To_LL_VSI (A), To_LL_VSI (B)));
4783    end vec_sll;
4784
4785    function vec_sll
4786      (A : vector_bool_int;
4787       B : vector_unsigned_int) return vector_bool_int
4788    is
4789    begin
4790       return To_LL_VBI (vsl (To_LL_VSI (A), To_LL_VSI (B)));
4791    end vec_sll;
4792
4793    function vec_sll
4794      (A : vector_bool_int;
4795       B : vector_unsigned_short) return vector_bool_int
4796    is
4797    begin
4798       return To_LL_VBI (vsl (To_LL_VSI (A), To_LL_VSI (B)));
4799    end vec_sll;
4800
4801    function vec_sll
4802      (A : vector_bool_int;
4803       B : vector_unsigned_char) return vector_bool_int
4804    is
4805    begin
4806       return To_LL_VBI (vsl (To_LL_VSI (A), To_LL_VSI (B)));
4807    end vec_sll;
4808
4809    function vec_sll
4810      (A : vector_signed_short;
4811       B : vector_unsigned_int) return vector_signed_short
4812    is
4813    begin
4814       return To_LL_VSS (vsl (To_LL_VSI (A), To_LL_VSI (B)));
4815    end vec_sll;
4816
4817    function vec_sll
4818      (A : vector_signed_short;
4819       B : vector_unsigned_short) return vector_signed_short
4820    is
4821    begin
4822       return To_LL_VSS (vsl (To_LL_VSI (A), To_LL_VSI (B)));
4823    end vec_sll;
4824
4825    function vec_sll
4826      (A : vector_signed_short;
4827       B : vector_unsigned_char) return vector_signed_short
4828    is
4829    begin
4830       return To_LL_VSS (vsl (To_LL_VSI (A), To_LL_VSI (B)));
4831    end vec_sll;
4832
4833    function vec_sll
4834      (A : vector_unsigned_short;
4835       B : vector_unsigned_int) return vector_unsigned_short
4836    is
4837    begin
4838       return To_LL_VUS (vsl (To_LL_VSI (A), To_LL_VSI (B)));
4839    end vec_sll;
4840
4841    function vec_sll
4842      (A : vector_unsigned_short;
4843       B : vector_unsigned_short) return vector_unsigned_short
4844    is
4845    begin
4846       return To_LL_VUS (vsl (To_LL_VSI (A), To_LL_VSI (B)));
4847    end vec_sll;
4848
4849    function vec_sll
4850      (A : vector_unsigned_short;
4851       B : vector_unsigned_char) return vector_unsigned_short
4852    is
4853    begin
4854       return To_LL_VUS (vsl (To_LL_VSI (A), To_LL_VSI (B)));
4855    end vec_sll;
4856
4857    function vec_sll
4858      (A : vector_bool_short;
4859       B : vector_unsigned_int) return vector_bool_short
4860    is
4861    begin
4862       return To_LL_VBS (vsl (To_LL_VSI (A), To_LL_VSI (B)));
4863    end vec_sll;
4864
4865    function vec_sll
4866      (A : vector_bool_short;
4867       B : vector_unsigned_short) return vector_bool_short
4868    is
4869    begin
4870       return To_LL_VBS (vsl (To_LL_VSI (A), To_LL_VSI (B)));
4871    end vec_sll;
4872
4873    function vec_sll
4874      (A : vector_bool_short;
4875       B : vector_unsigned_char) return vector_bool_short
4876    is
4877    begin
4878       return To_LL_VBS (vsl (To_LL_VSI (A), To_LL_VSI (B)));
4879    end vec_sll;
4880
4881    function vec_sll
4882      (A : vector_pixel;
4883       B : vector_unsigned_int) return vector_pixel
4884    is
4885    begin
4886       return To_LL_VP (vsl (To_LL_VSI (A), To_LL_VSI (B)));
4887    end vec_sll;
4888
4889    function vec_sll
4890      (A : vector_pixel;
4891       B : vector_unsigned_short) return vector_pixel
4892    is
4893    begin
4894       return To_LL_VP (vsl (To_LL_VSI (A), To_LL_VSI (B)));
4895    end vec_sll;
4896
4897    function vec_sll
4898      (A : vector_pixel;
4899       B : vector_unsigned_char) return vector_pixel
4900    is
4901    begin
4902       return To_LL_VP (vsl (To_LL_VSI (A), To_LL_VSI (B)));
4903    end vec_sll;
4904
4905    function vec_sll
4906      (A : vector_signed_char;
4907       B : vector_unsigned_int) return vector_signed_char
4908    is
4909    begin
4910       return To_LL_VSC (vsl (To_LL_VSI (A), To_LL_VSI (B)));
4911    end vec_sll;
4912
4913    function vec_sll
4914      (A : vector_signed_char;
4915       B : vector_unsigned_short) return vector_signed_char
4916    is
4917    begin
4918       return To_LL_VSC (vsl (To_LL_VSI (A), To_LL_VSI (B)));
4919    end vec_sll;
4920
4921    function vec_sll
4922      (A : vector_signed_char;
4923       B : vector_unsigned_char) return vector_signed_char
4924    is
4925    begin
4926       return To_LL_VSC (vsl (To_LL_VSI (A), To_LL_VSI (B)));
4927    end vec_sll;
4928
4929    function vec_sll
4930      (A : vector_unsigned_char;
4931       B : vector_unsigned_int) return vector_unsigned_char
4932    is
4933    begin
4934       return To_LL_VUC (vsl (To_LL_VSI (A), To_LL_VSI (B)));
4935    end vec_sll;
4936
4937    function vec_sll
4938      (A : vector_unsigned_char;
4939       B : vector_unsigned_short) return vector_unsigned_char
4940    is
4941    begin
4942       return To_LL_VUC (vsl (To_LL_VSI (A), To_LL_VSI (B)));
4943    end vec_sll;
4944
4945    function vec_sll
4946      (A : vector_unsigned_char;
4947       B : vector_unsigned_char) return vector_unsigned_char
4948    is
4949    begin
4950       return To_LL_VUC (vsl (To_LL_VSI (A), To_LL_VSI (B)));
4951    end vec_sll;
4952
4953    function vec_sll
4954      (A : vector_bool_char;
4955       B : vector_unsigned_int) return vector_bool_char
4956    is
4957    begin
4958       return To_LL_VBC (vsl (To_LL_VSI (A), To_LL_VSI (B)));
4959    end vec_sll;
4960
4961    function vec_sll
4962      (A : vector_bool_char;
4963       B : vector_unsigned_short) return vector_bool_char
4964    is
4965    begin
4966       return To_LL_VBC (vsl (To_LL_VSI (A), To_LL_VSI (B)));
4967    end vec_sll;
4968
4969    function vec_sll
4970      (A : vector_bool_char;
4971       B : vector_unsigned_char) return vector_bool_char
4972    is
4973    begin
4974       return To_LL_VBC (vsl (To_LL_VSI (A), To_LL_VSI (B)));
4975    end vec_sll;
4976
4977    -- vec_slo --
4978
4979    function vec_slo
4980      (A : vector_float;
4981       B : vector_signed_char) return vector_float
4982    is
4983    begin
4984       return To_LL_VF (vslo (To_LL_VSI (A), To_LL_VSI (B)));
4985    end vec_slo;
4986
4987    function vec_slo
4988      (A : vector_float;
4989       B : vector_unsigned_char) return vector_float
4990    is
4991    begin
4992       return To_LL_VF (vslo (To_LL_VSI (A), To_LL_VSI (B)));
4993    end vec_slo;
4994
4995    function vec_slo
4996      (A : vector_signed_int;
4997       B : vector_signed_char) return vector_signed_int
4998    is
4999    begin
5000       return To_LL_VSI (vslo (To_LL_VSI (A), To_LL_VSI (B)));
5001    end vec_slo;
5002
5003    function vec_slo
5004      (A : vector_signed_int;
5005       B : vector_unsigned_char) return vector_signed_int
5006    is
5007    begin
5008       return To_LL_VSI (vslo (To_LL_VSI (A), To_LL_VSI (B)));
5009    end vec_slo;
5010
5011    function vec_slo
5012      (A : vector_unsigned_int;
5013       B : vector_signed_char) return vector_unsigned_int
5014    is
5015    begin
5016       return To_LL_VUI (vslo (To_LL_VSI (A), To_LL_VSI (B)));
5017    end vec_slo;
5018
5019    function vec_slo
5020      (A : vector_unsigned_int;
5021       B : vector_unsigned_char) return vector_unsigned_int
5022    is
5023    begin
5024       return To_LL_VUI (vslo (To_LL_VSI (A), To_LL_VSI (B)));
5025    end vec_slo;
5026
5027    function vec_slo
5028      (A : vector_signed_short;
5029       B : vector_signed_char) return vector_signed_short
5030    is
5031    begin
5032       return To_LL_VSS (vslo (To_LL_VSI (A), To_LL_VSI (B)));
5033    end vec_slo;
5034
5035    function vec_slo
5036      (A : vector_signed_short;
5037       B : vector_unsigned_char) return vector_signed_short
5038    is
5039    begin
5040       return To_LL_VSS (vslo (To_LL_VSI (A), To_LL_VSI (B)));
5041    end vec_slo;
5042
5043    function vec_slo
5044      (A : vector_unsigned_short;
5045       B : vector_signed_char) return vector_unsigned_short
5046    is
5047    begin
5048       return To_LL_VUS (vslo (To_LL_VSI (A), To_LL_VSI (B)));
5049    end vec_slo;
5050
5051    function vec_slo
5052      (A : vector_unsigned_short;
5053       B : vector_unsigned_char) return vector_unsigned_short
5054    is
5055    begin
5056       return To_LL_VUS (vslo (To_LL_VSI (A), To_LL_VSI (B)));
5057    end vec_slo;
5058
5059    function vec_slo
5060      (A : vector_pixel;
5061       B : vector_signed_char) return vector_pixel
5062    is
5063    begin
5064       return To_LL_VP (vslo (To_LL_VSI (A), To_LL_VSI (B)));
5065    end vec_slo;
5066
5067    function vec_slo
5068      (A : vector_pixel;
5069       B : vector_unsigned_char) return vector_pixel
5070    is
5071    begin
5072       return To_LL_VP (vslo (To_LL_VSI (A), To_LL_VSI (B)));
5073    end vec_slo;
5074
5075    function vec_slo
5076      (A : vector_signed_char;
5077       B : vector_signed_char) return vector_signed_char
5078    is
5079    begin
5080       return To_LL_VSC (vslo (To_LL_VSI (A), To_LL_VSI (B)));
5081    end vec_slo;
5082
5083    function vec_slo
5084      (A : vector_signed_char;
5085       B : vector_unsigned_char) return vector_signed_char
5086    is
5087    begin
5088       return To_LL_VSC (vslo (To_LL_VSI (A), To_LL_VSI (B)));
5089    end vec_slo;
5090
5091    function vec_slo
5092      (A : vector_unsigned_char;
5093       B : vector_signed_char) return vector_unsigned_char
5094    is
5095    begin
5096       return To_LL_VUC (vslo (To_LL_VSI (A), To_LL_VSI (B)));
5097    end vec_slo;
5098
5099    function vec_slo
5100      (A : vector_unsigned_char;
5101       B : vector_unsigned_char) return vector_unsigned_char
5102    is
5103    begin
5104       return To_LL_VUC (vslo (To_LL_VSI (A), To_LL_VSI (B)));
5105    end vec_slo;
5106
5107    -- vec_sr --
5108
5109    function vec_sr
5110      (A : vector_signed_char;
5111       B : vector_unsigned_char) return vector_signed_char
5112    is
5113    begin
5114       return To_LL_VSC (vsrb (To_LL_VSC (A), To_LL_VSC (B)));
5115    end vec_sr;
5116
5117    function vec_sr
5118      (A : vector_unsigned_char;
5119       B : vector_unsigned_char) return vector_unsigned_char
5120    is
5121    begin
5122       return To_LL_VUC (vsrb (To_LL_VSC (A), To_LL_VSC (B)));
5123    end vec_sr;
5124
5125    function vec_sr
5126      (A : vector_signed_short;
5127       B : vector_unsigned_short) return vector_signed_short
5128    is
5129    begin
5130       return To_LL_VSS (vsrh (To_LL_VSS (A), To_LL_VSS (B)));
5131    end vec_sr;
5132
5133    function vec_sr
5134      (A : vector_unsigned_short;
5135       B : vector_unsigned_short) return vector_unsigned_short
5136    is
5137    begin
5138       return To_LL_VUS (vsrh (To_LL_VSS (A), To_LL_VSS (B)));
5139    end vec_sr;
5140
5141    function vec_sr
5142      (A : vector_signed_int;
5143       B : vector_unsigned_int) return vector_signed_int
5144    is
5145    begin
5146       return To_LL_VSI (vsrw (To_LL_VSI (A), To_LL_VSI (B)));
5147    end vec_sr;
5148
5149    function vec_sr
5150      (A : vector_unsigned_int;
5151       B : vector_unsigned_int) return vector_unsigned_int
5152    is
5153    begin
5154       return To_LL_VUI (vsrw (To_LL_VSI (A), To_LL_VSI (B)));
5155    end vec_sr;
5156
5157    -- vec_vsrw --
5158
5159    function vec_vsrw
5160      (A : vector_signed_int;
5161       B : vector_unsigned_int) return vector_signed_int
5162    is
5163    begin
5164       return To_LL_VSI (vsrw (To_LL_VSI (A), To_LL_VSI (B)));
5165    end vec_vsrw;
5166
5167    function vec_vsrw
5168      (A : vector_unsigned_int;
5169       B : vector_unsigned_int) return vector_unsigned_int
5170    is
5171    begin
5172       return To_LL_VUI (vsrw (To_LL_VSI (A), To_LL_VSI (B)));
5173    end vec_vsrw;
5174
5175    -- vec_vsrh --
5176
5177    function vec_vsrh
5178      (A : vector_signed_short;
5179       B : vector_unsigned_short) return vector_signed_short
5180    is
5181    begin
5182       return To_LL_VSS (vsrh (To_LL_VSS (A), To_LL_VSS (B)));
5183    end vec_vsrh;
5184
5185    function vec_vsrh
5186      (A : vector_unsigned_short;
5187       B : vector_unsigned_short) return vector_unsigned_short
5188    is
5189    begin
5190       return To_LL_VUS (vsrh (To_LL_VSS (A), To_LL_VSS (B)));
5191    end vec_vsrh;
5192
5193    -- vec_vsrb --
5194
5195    function vec_vsrb
5196      (A : vector_signed_char;
5197       B : vector_unsigned_char) return vector_signed_char
5198    is
5199    begin
5200       return To_LL_VSC (vsrb (To_LL_VSC (A), To_LL_VSC (B)));
5201    end vec_vsrb;
5202
5203    function vec_vsrb
5204      (A : vector_unsigned_char;
5205       B : vector_unsigned_char) return vector_unsigned_char
5206    is
5207    begin
5208       return To_LL_VUC (vsrb (To_LL_VSC (A), To_LL_VSC (B)));
5209    end vec_vsrb;
5210
5211    -- vec_sra --
5212
5213    function vec_sra
5214      (A : vector_signed_char;
5215       B : vector_unsigned_char) return vector_signed_char
5216    is
5217    begin
5218       return To_LL_VSC (vsrab (To_LL_VSC (A), To_LL_VSC (B)));
5219    end vec_sra;
5220
5221    function vec_sra
5222      (A : vector_unsigned_char;
5223       B : vector_unsigned_char) return vector_unsigned_char
5224    is
5225    begin
5226       return To_LL_VUC (vsrab (To_LL_VSC (A), To_LL_VSC (B)));
5227    end vec_sra;
5228
5229    function vec_sra
5230      (A : vector_signed_short;
5231       B : vector_unsigned_short) return vector_signed_short
5232    is
5233    begin
5234       return To_LL_VSS (vsrah (To_LL_VSS (A), To_LL_VSS (B)));
5235    end vec_sra;
5236
5237    function vec_sra
5238      (A : vector_unsigned_short;
5239       B : vector_unsigned_short) return vector_unsigned_short
5240    is
5241    begin
5242       return To_LL_VUS (vsrah (To_LL_VSS (A), To_LL_VSS (B)));
5243    end vec_sra;
5244
5245    function vec_sra
5246      (A : vector_signed_int;
5247       B : vector_unsigned_int) return vector_signed_int
5248    is
5249    begin
5250       return To_LL_VSI (vsraw (To_LL_VSI (A), To_LL_VSI (B)));
5251    end vec_sra;
5252
5253    function vec_sra
5254      (A : vector_unsigned_int;
5255       B : vector_unsigned_int) return vector_unsigned_int
5256    is
5257    begin
5258       return To_LL_VUI (vsraw (To_LL_VSI (A), To_LL_VSI (B)));
5259    end vec_sra;
5260
5261    -- vec_vsraw --
5262
5263    function vec_vsraw
5264      (A : vector_signed_int;
5265       B : vector_unsigned_int) return vector_signed_int
5266    is
5267    begin
5268       return To_LL_VSI (vsraw (To_LL_VSI (A), To_LL_VSI (B)));
5269    end vec_vsraw;
5270
5271    function vec_vsraw
5272      (A : vector_unsigned_int;
5273       B : vector_unsigned_int) return vector_unsigned_int
5274    is
5275    begin
5276       return To_LL_VUI (vsraw (To_LL_VSI (A), To_LL_VSI (B)));
5277    end vec_vsraw;
5278
5279    -- vec_vsrah --
5280
5281    function vec_vsrah
5282      (A : vector_signed_short;
5283       B : vector_unsigned_short) return vector_signed_short
5284    is
5285    begin
5286       return To_LL_VSS (vsrah (To_LL_VSS (A), To_LL_VSS (B)));
5287    end vec_vsrah;
5288
5289    function vec_vsrah
5290      (A : vector_unsigned_short;
5291       B : vector_unsigned_short) return vector_unsigned_short
5292    is
5293    begin
5294       return To_LL_VUS (vsrah (To_LL_VSS (A), To_LL_VSS (B)));
5295    end vec_vsrah;
5296
5297    -- vec_vsrab --
5298
5299    function vec_vsrab
5300      (A : vector_signed_char;
5301       B : vector_unsigned_char) return vector_signed_char
5302    is
5303    begin
5304       return To_LL_VSC (vsrab (To_LL_VSC (A), To_LL_VSC (B)));
5305    end vec_vsrab;
5306
5307    function vec_vsrab
5308      (A : vector_unsigned_char;
5309       B : vector_unsigned_char) return vector_unsigned_char
5310    is
5311    begin
5312       return To_LL_VUC (vsrab (To_LL_VSC (A), To_LL_VSC (B)));
5313    end vec_vsrab;
5314
5315    -- vec_srl --
5316
5317    function vec_srl
5318      (A : vector_signed_int;
5319       B : vector_unsigned_int) return vector_signed_int
5320    is
5321    begin
5322       return To_LL_VSI (vsr (To_LL_VSI (A), To_LL_VSI (B)));
5323    end vec_srl;
5324
5325    function vec_srl
5326      (A : vector_signed_int;
5327       B : vector_unsigned_short) return vector_signed_int
5328    is
5329    begin
5330       return To_LL_VSI (vsr (To_LL_VSI (A), To_LL_VSI (B)));
5331    end vec_srl;
5332
5333    function vec_srl
5334      (A : vector_signed_int;
5335       B : vector_unsigned_char) return vector_signed_int
5336    is
5337    begin
5338       return To_LL_VSI (vsr (To_LL_VSI (A), To_LL_VSI (B)));
5339    end vec_srl;
5340
5341    function vec_srl
5342      (A : vector_unsigned_int;
5343       B : vector_unsigned_int) return vector_unsigned_int
5344    is
5345    begin
5346       return To_LL_VUI (vsr (To_LL_VSI (A), To_LL_VSI (B)));
5347    end vec_srl;
5348
5349    function vec_srl
5350      (A : vector_unsigned_int;
5351       B : vector_unsigned_short) return vector_unsigned_int
5352    is
5353    begin
5354       return To_LL_VUI (vsr (To_LL_VSI (A), To_LL_VSI (B)));
5355    end vec_srl;
5356
5357    function vec_srl
5358      (A : vector_unsigned_int;
5359       B : vector_unsigned_char) return vector_unsigned_int
5360    is
5361    begin
5362       return To_LL_VUI (vsr (To_LL_VSI (A), To_LL_VSI (B)));
5363    end vec_srl;
5364
5365    function vec_srl
5366      (A : vector_bool_int;
5367       B : vector_unsigned_int) return vector_bool_int
5368    is
5369    begin
5370       return To_LL_VBI (vsr (To_LL_VSI (A), To_LL_VSI (B)));
5371    end vec_srl;
5372
5373    function vec_srl
5374      (A : vector_bool_int;
5375       B : vector_unsigned_short) return vector_bool_int
5376    is
5377    begin
5378       return To_LL_VBI (vsr (To_LL_VSI (A), To_LL_VSI (B)));
5379    end vec_srl;
5380
5381    function vec_srl
5382      (A : vector_bool_int;
5383       B : vector_unsigned_char) return vector_bool_int
5384    is
5385    begin
5386       return To_LL_VBI (vsr (To_LL_VSI (A), To_LL_VSI (B)));
5387    end vec_srl;
5388
5389    function vec_srl
5390      (A : vector_signed_short;
5391       B : vector_unsigned_int) return vector_signed_short
5392    is
5393    begin
5394       return To_LL_VSS (vsr (To_LL_VSI (A), To_LL_VSI (B)));
5395    end vec_srl;
5396
5397    function vec_srl
5398      (A : vector_signed_short;
5399       B : vector_unsigned_short) return vector_signed_short
5400    is
5401    begin
5402       return To_LL_VSS (vsr (To_LL_VSI (A), To_LL_VSI (B)));
5403    end vec_srl;
5404
5405    function vec_srl
5406      (A : vector_signed_short;
5407       B : vector_unsigned_char) return vector_signed_short
5408    is
5409    begin
5410       return To_LL_VSS (vsr (To_LL_VSI (A), To_LL_VSI (B)));
5411    end vec_srl;
5412
5413    function vec_srl
5414      (A : vector_unsigned_short;
5415       B : vector_unsigned_int) return vector_unsigned_short
5416    is
5417    begin
5418       return To_LL_VUS (vsr (To_LL_VSI (A), To_LL_VSI (B)));
5419    end vec_srl;
5420
5421    function vec_srl
5422      (A : vector_unsigned_short;
5423       B : vector_unsigned_short) return vector_unsigned_short
5424    is
5425    begin
5426       return To_LL_VUS (vsr (To_LL_VSI (A), To_LL_VSI (B)));
5427    end vec_srl;
5428
5429    function vec_srl
5430      (A : vector_unsigned_short;
5431       B : vector_unsigned_char) return vector_unsigned_short
5432    is
5433    begin
5434       return To_LL_VUS (vsr (To_LL_VSI (A), To_LL_VSI (B)));
5435    end vec_srl;
5436
5437    function vec_srl
5438      (A : vector_bool_short;
5439       B : vector_unsigned_int) return vector_bool_short
5440    is
5441    begin
5442       return To_LL_VBS (vsr (To_LL_VSI (A), To_LL_VSI (B)));
5443    end vec_srl;
5444
5445    function vec_srl
5446      (A : vector_bool_short;
5447       B : vector_unsigned_short) return vector_bool_short
5448    is
5449    begin
5450       return To_LL_VBS (vsr (To_LL_VSI (A), To_LL_VSI (B)));
5451    end vec_srl;
5452
5453    function vec_srl
5454      (A : vector_bool_short;
5455       B : vector_unsigned_char) return vector_bool_short
5456    is
5457    begin
5458       return To_LL_VBS (vsr (To_LL_VSI (A), To_LL_VSI (B)));
5459    end vec_srl;
5460
5461    function vec_srl
5462      (A : vector_pixel;
5463       B : vector_unsigned_int) return vector_pixel
5464    is
5465    begin
5466       return To_LL_VP (vsr (To_LL_VSI (A), To_LL_VSI (B)));
5467    end vec_srl;
5468
5469    function vec_srl
5470      (A : vector_pixel;
5471       B : vector_unsigned_short) return vector_pixel
5472    is
5473    begin
5474       return To_LL_VP (vsr (To_LL_VSI (A), To_LL_VSI (B)));
5475    end vec_srl;
5476
5477    function vec_srl
5478      (A : vector_pixel;
5479       B : vector_unsigned_char) return vector_pixel
5480    is
5481    begin
5482       return To_LL_VP (vsr (To_LL_VSI (A), To_LL_VSI (B)));
5483    end vec_srl;
5484
5485    function vec_srl
5486      (A : vector_signed_char;
5487       B : vector_unsigned_int) return vector_signed_char
5488    is
5489    begin
5490       return To_LL_VSC (vsr (To_LL_VSI (A), To_LL_VSI (B)));
5491    end vec_srl;
5492
5493    function vec_srl
5494      (A : vector_signed_char;
5495       B : vector_unsigned_short) return vector_signed_char
5496    is
5497    begin
5498       return To_LL_VSC (vsr (To_LL_VSI (A), To_LL_VSI (B)));
5499    end vec_srl;
5500
5501    function vec_srl
5502      (A : vector_signed_char;
5503       B : vector_unsigned_char) return vector_signed_char
5504    is
5505    begin
5506       return To_LL_VSC (vsr (To_LL_VSI (A), To_LL_VSI (B)));
5507    end vec_srl;
5508
5509    function vec_srl
5510      (A : vector_unsigned_char;
5511       B : vector_unsigned_int) return vector_unsigned_char
5512    is
5513    begin
5514       return To_LL_VUC (vsr (To_LL_VSI (A), To_LL_VSI (B)));
5515    end vec_srl;
5516
5517    function vec_srl
5518      (A : vector_unsigned_char;
5519       B : vector_unsigned_short) return vector_unsigned_char
5520    is
5521    begin
5522       return To_LL_VUC (vsr (To_LL_VSI (A), To_LL_VSI (B)));
5523    end vec_srl;
5524
5525    function vec_srl
5526      (A : vector_unsigned_char;
5527       B : vector_unsigned_char) return vector_unsigned_char
5528    is
5529    begin
5530       return To_LL_VUC (vsr (To_LL_VSI (A), To_LL_VSI (B)));
5531    end vec_srl;
5532
5533    function vec_srl
5534      (A : vector_bool_char;
5535       B : vector_unsigned_int) return vector_bool_char
5536    is
5537    begin
5538       return To_LL_VBC (vsr (To_LL_VSI (A), To_LL_VSI (B)));
5539    end vec_srl;
5540
5541    function vec_srl
5542      (A : vector_bool_char;
5543       B : vector_unsigned_short) return vector_bool_char
5544    is
5545    begin
5546       return To_LL_VBC (vsr (To_LL_VSI (A), To_LL_VSI (B)));
5547    end vec_srl;
5548
5549    function vec_srl
5550      (A : vector_bool_char;
5551       B : vector_unsigned_char) return vector_bool_char
5552    is
5553    begin
5554       return To_LL_VBC (vsr (To_LL_VSI (A), To_LL_VSI (B)));
5555    end vec_srl;
5556
5557    -- vec_sro --
5558
5559    function vec_sro
5560      (A : vector_float;
5561       B : vector_signed_char) return vector_float
5562    is
5563    begin
5564       return To_LL_VF (vsro (To_LL_VSI (A), To_LL_VSI (B)));
5565    end vec_sro;
5566
5567    function vec_sro
5568      (A : vector_float;
5569       B : vector_unsigned_char) return vector_float
5570    is
5571    begin
5572       return To_LL_VF (vsro (To_LL_VSI (A), To_LL_VSI (B)));
5573    end vec_sro;
5574
5575    function vec_sro
5576      (A : vector_signed_int;
5577       B : vector_signed_char) return vector_signed_int
5578    is
5579    begin
5580       return To_LL_VSI (vsro (To_LL_VSI (A), To_LL_VSI (B)));
5581    end vec_sro;
5582
5583    function vec_sro
5584      (A : vector_signed_int;
5585       B : vector_unsigned_char) return vector_signed_int
5586    is
5587    begin
5588       return To_LL_VSI (vsro (To_LL_VSI (A), To_LL_VSI (B)));
5589    end vec_sro;
5590
5591    function vec_sro
5592      (A : vector_unsigned_int;
5593       B : vector_signed_char) return vector_unsigned_int
5594    is
5595    begin
5596       return To_LL_VUI (vsro (To_LL_VSI (A), To_LL_VSI (B)));
5597    end vec_sro;
5598
5599    function vec_sro
5600      (A : vector_unsigned_int;
5601       B : vector_unsigned_char) return vector_unsigned_int
5602    is
5603    begin
5604       return To_LL_VUI (vsro (To_LL_VSI (A), To_LL_VSI (B)));
5605    end vec_sro;
5606
5607    function vec_sro
5608      (A : vector_signed_short;
5609       B : vector_signed_char) return vector_signed_short
5610    is
5611    begin
5612       return To_LL_VSS (vsro (To_LL_VSI (A), To_LL_VSI (B)));
5613    end vec_sro;
5614
5615    function vec_sro
5616      (A : vector_signed_short;
5617       B : vector_unsigned_char) return vector_signed_short
5618    is
5619    begin
5620       return To_LL_VSS (vsro (To_LL_VSI (A), To_LL_VSI (B)));
5621    end vec_sro;
5622
5623    function vec_sro
5624      (A : vector_unsigned_short;
5625       B : vector_signed_char) return vector_unsigned_short
5626    is
5627    begin
5628       return To_LL_VUS (vsro (To_LL_VSI (A), To_LL_VSI (B)));
5629    end vec_sro;
5630
5631    function vec_sro
5632      (A : vector_unsigned_short;
5633       B : vector_unsigned_char) return vector_unsigned_short
5634    is
5635    begin
5636       return To_LL_VUS (vsro (To_LL_VSI (A), To_LL_VSI (B)));
5637    end vec_sro;
5638
5639    function vec_sro
5640      (A : vector_pixel;
5641       B : vector_signed_char) return vector_pixel
5642    is
5643    begin
5644       return To_LL_VP (vsro (To_LL_VSI (A), To_LL_VSI (B)));
5645    end vec_sro;
5646
5647    function vec_sro
5648      (A : vector_pixel;
5649       B : vector_unsigned_char) return vector_pixel
5650    is
5651    begin
5652       return To_LL_VP (vsro (To_LL_VSI (A), To_LL_VSI (B)));
5653    end vec_sro;
5654
5655    function vec_sro
5656      (A : vector_signed_char;
5657       B : vector_signed_char) return vector_signed_char
5658    is
5659    begin
5660       return To_LL_VSC (vsro (To_LL_VSI (A), To_LL_VSI (B)));
5661    end vec_sro;
5662
5663    function vec_sro
5664      (A : vector_signed_char;
5665       B : vector_unsigned_char) return vector_signed_char
5666    is
5667    begin
5668       return To_LL_VSC (vsro (To_LL_VSI (A), To_LL_VSI (B)));
5669    end vec_sro;
5670
5671    function vec_sro
5672      (A : vector_unsigned_char;
5673       B : vector_signed_char) return vector_unsigned_char
5674    is
5675    begin
5676       return To_LL_VUC (vsro (To_LL_VSI (A), To_LL_VSI (B)));
5677    end vec_sro;
5678
5679    function vec_sro
5680      (A : vector_unsigned_char;
5681       B : vector_unsigned_char) return vector_unsigned_char
5682    is
5683    begin
5684       return To_LL_VUC (vsro (To_LL_VSI (A), To_LL_VSI (B)));
5685    end vec_sro;
5686
5687    -- vec_st --
5688
5689    procedure vec_st
5690      (A : vector_float;
5691       B : c_int;
5692       C : vector_float_ptr)
5693    is
5694    begin
5695       stvx (To_LL_VSI (A), B, To_PTR (C));
5696    end vec_st;
5697
5698    procedure vec_st
5699      (A : vector_float;
5700       B : c_int;
5701       C : float_ptr)
5702    is
5703    begin
5704       stvx (To_LL_VSI (A), B, To_PTR (C));
5705    end vec_st;
5706
5707    procedure vec_st
5708      (A : vector_signed_int;
5709       B : c_int;
5710       C : vector_signed_int_ptr)
5711    is
5712    begin
5713       stvx (To_LL_VSI (A), B, To_PTR (C));
5714    end vec_st;
5715
5716    procedure vec_st
5717      (A : vector_signed_int;
5718       B : c_int;
5719       C : int_ptr)
5720    is
5721    begin
5722       stvx (To_LL_VSI (A), B, To_PTR (C));
5723    end vec_st;
5724
5725    procedure vec_st
5726      (A : vector_unsigned_int;
5727       B : c_int;
5728       C : vector_unsigned_int_ptr)
5729    is
5730    begin
5731       stvx (To_LL_VSI (A), B, To_PTR (C));
5732    end vec_st;
5733
5734    procedure vec_st
5735      (A : vector_unsigned_int;
5736       B : c_int;
5737       C : unsigned_int_ptr)
5738    is
5739    begin
5740       stvx (To_LL_VSI (A), B, To_PTR (C));
5741    end vec_st;
5742
5743    procedure vec_st
5744      (A : vector_bool_int;
5745       B : c_int;
5746       C : vector_bool_int_ptr)
5747    is
5748    begin
5749       stvx (To_LL_VSI (A), B, To_PTR (C));
5750    end vec_st;
5751
5752    procedure vec_st
5753      (A : vector_bool_int;
5754       B : c_int;
5755       C : unsigned_int_ptr)
5756    is
5757    begin
5758       stvx (To_LL_VSI (A), B, To_PTR (C));
5759    end vec_st;
5760
5761    procedure vec_st
5762      (A : vector_bool_int;
5763       B : c_int;
5764       C : int_ptr)
5765    is
5766    begin
5767       stvx (To_LL_VSI (A), B, To_PTR (C));
5768    end vec_st;
5769
5770    procedure vec_st
5771      (A : vector_signed_short;
5772       B : c_int;
5773       C : vector_signed_short_ptr)
5774    is
5775    begin
5776       stvx (To_LL_VSI (A), B, To_PTR (C));
5777    end vec_st;
5778
5779    procedure vec_st
5780      (A : vector_signed_short;
5781       B : c_int;
5782       C : short_ptr)
5783    is
5784    begin
5785       stvx (To_LL_VSI (A), B, To_PTR (C));
5786    end vec_st;
5787
5788    procedure vec_st
5789      (A : vector_unsigned_short;
5790       B : c_int;
5791       C : vector_unsigned_short_ptr)
5792    is
5793    begin
5794       stvx (To_LL_VSI (A), B, To_PTR (C));
5795    end vec_st;
5796
5797    procedure vec_st
5798      (A : vector_unsigned_short;
5799       B : c_int;
5800       C : unsigned_short_ptr)
5801    is
5802    begin
5803       stvx (To_LL_VSI (A), B, To_PTR (C));
5804    end vec_st;
5805
5806    procedure vec_st
5807      (A : vector_bool_short;
5808       B : c_int;
5809       C : vector_bool_short_ptr)
5810    is
5811    begin
5812       stvx (To_LL_VSI (A), B, To_PTR (C));
5813    end vec_st;
5814
5815    procedure vec_st
5816      (A : vector_bool_short;
5817       B : c_int;
5818       C : unsigned_short_ptr)
5819    is
5820    begin
5821       stvx (To_LL_VSI (A), B, To_PTR (C));
5822    end vec_st;
5823
5824    procedure vec_st
5825      (A : vector_pixel;
5826       B : c_int;
5827       C : vector_pixel_ptr)
5828    is
5829    begin
5830       stvx (To_LL_VSI (A), B, To_PTR (C));
5831    end vec_st;
5832
5833    procedure vec_st
5834      (A : vector_pixel;
5835       B : c_int;
5836       C : unsigned_short_ptr)
5837    is
5838    begin
5839       stvx (To_LL_VSI (A), B, To_PTR (C));
5840    end vec_st;
5841
5842    procedure vec_st
5843      (A : vector_pixel;
5844       B : c_int;
5845       C : short_ptr)
5846    is
5847    begin
5848       stvx (To_LL_VSI (A), B, To_PTR (C));
5849    end vec_st;
5850
5851    procedure vec_st
5852      (A : vector_bool_short;
5853       B : c_int;
5854       C : short_ptr)
5855    is
5856    begin
5857       stvx (To_LL_VSI (A), B, To_PTR (C));
5858    end vec_st;
5859
5860    procedure vec_st
5861      (A : vector_signed_char;
5862       B : c_int;
5863       C : vector_signed_char_ptr)
5864    is
5865    begin
5866       stvx (To_LL_VSI (A), B, To_PTR (C));
5867    end vec_st;
5868
5869    procedure vec_st
5870      (A : vector_signed_char;
5871       B : c_int;
5872       C : signed_char_ptr)
5873    is
5874    begin
5875       stvx (To_LL_VSI (A), B, To_PTR (C));
5876    end vec_st;
5877
5878    procedure vec_st
5879      (A : vector_unsigned_char;
5880       B : c_int;
5881       C : vector_unsigned_char_ptr)
5882    is
5883    begin
5884       stvx (To_LL_VSI (A), B, To_PTR (C));
5885    end vec_st;
5886
5887    procedure vec_st
5888      (A : vector_unsigned_char;
5889       B : c_int;
5890       C : unsigned_char_ptr)
5891    is
5892    begin
5893       stvx (To_LL_VSI (A), B, To_PTR (C));
5894    end vec_st;
5895
5896    procedure vec_st
5897      (A : vector_bool_char;
5898       B : c_int;
5899       C : vector_bool_char_ptr)
5900    is
5901    begin
5902       stvx (To_LL_VSI (A), B, To_PTR (C));
5903    end vec_st;
5904
5905    procedure vec_st
5906      (A : vector_bool_char;
5907       B : c_int;
5908       C : unsigned_char_ptr)
5909    is
5910    begin
5911       stvx (To_LL_VSI (A), B, To_PTR (C));
5912    end vec_st;
5913
5914    procedure vec_st
5915      (A : vector_bool_char;
5916       B : c_int;
5917       C : signed_char_ptr)
5918    is
5919    begin
5920       stvx (To_LL_VSI (A), B, To_PTR (C));
5921    end vec_st;
5922
5923    -- vec_ste --
5924
5925    procedure vec_ste
5926      (A : vector_signed_char;
5927       B : c_int;
5928       C : signed_char_ptr)
5929    is
5930    begin
5931       stvebx (To_LL_VSC (A), B, To_PTR (C));
5932    end vec_ste;
5933
5934    procedure vec_ste
5935      (A : vector_unsigned_char;
5936       B : c_int;
5937       C : unsigned_char_ptr)
5938    is
5939    begin
5940       stvebx (To_LL_VSC (A), B, To_PTR (C));
5941    end vec_ste;
5942
5943    procedure vec_ste
5944      (A : vector_bool_char;
5945       B : c_int;
5946       C : signed_char_ptr)
5947    is
5948    begin
5949       stvebx (To_LL_VSC (A), B, To_PTR (C));
5950    end vec_ste;
5951
5952    procedure vec_ste
5953      (A : vector_bool_char;
5954       B : c_int;
5955       C : unsigned_char_ptr)
5956    is
5957    begin
5958       stvebx (To_LL_VSC (A), B, To_PTR (C));
5959    end vec_ste;
5960
5961    procedure vec_ste
5962      (A : vector_signed_short;
5963       B : c_int;
5964       C : short_ptr)
5965    is
5966    begin
5967       stvehx (To_LL_VSS (A), B, To_PTR (C));
5968    end vec_ste;
5969
5970    procedure vec_ste
5971      (A : vector_unsigned_short;
5972       B : c_int;
5973       C : unsigned_short_ptr)
5974    is
5975    begin
5976       stvehx (To_LL_VSS (A), B, To_PTR (C));
5977    end vec_ste;
5978
5979    procedure vec_ste
5980      (A : vector_bool_short;
5981       B : c_int;
5982       C : short_ptr)
5983    is
5984    begin
5985       stvehx (To_LL_VSS (A), B, To_PTR (C));
5986    end vec_ste;
5987
5988    procedure vec_ste
5989      (A : vector_bool_short;
5990       B : c_int;
5991       C : unsigned_short_ptr)
5992    is
5993    begin
5994       stvehx (To_LL_VSS (A), B, To_PTR (C));
5995    end vec_ste;
5996
5997    procedure vec_ste
5998      (A : vector_pixel;
5999       B : c_int;
6000       C : short_ptr)
6001    is
6002    begin
6003       stvehx (To_LL_VSS (A), B, To_PTR (C));
6004    end vec_ste;
6005
6006    procedure vec_ste
6007      (A : vector_pixel;
6008       B : c_int;
6009       C : unsigned_short_ptr)
6010    is
6011    begin
6012       stvehx (To_LL_VSS (A), B, To_PTR (C));
6013    end vec_ste;
6014
6015    procedure vec_ste
6016      (A : vector_float;
6017       B : c_int;
6018       C : float_ptr)
6019    is
6020    begin
6021       stvewx (To_LL_VSI (A), B, To_PTR (C));
6022    end vec_ste;
6023
6024    procedure vec_ste
6025      (A : vector_signed_int;
6026       B : c_int;
6027       C : int_ptr)
6028    is
6029    begin
6030       stvewx (To_LL_VSI (A), B, To_PTR (C));
6031    end vec_ste;
6032
6033    procedure vec_ste
6034      (A : vector_unsigned_int;
6035       B : c_int;
6036       C : unsigned_int_ptr)
6037    is
6038    begin
6039       stvewx (To_LL_VSI (A), B, To_PTR (C));
6040    end vec_ste;
6041
6042    procedure vec_ste
6043      (A : vector_bool_int;
6044       B : c_int;
6045       C : int_ptr)
6046    is
6047    begin
6048       stvewx (To_LL_VSI (A), B, To_PTR (C));
6049    end vec_ste;
6050
6051    procedure vec_ste
6052      (A : vector_bool_int;
6053       B : c_int;
6054       C : unsigned_int_ptr)
6055    is
6056    begin
6057       stvewx (To_LL_VSI (A), B, To_PTR (C));
6058    end vec_ste;
6059
6060    -- vec_stvewx --
6061
6062    procedure vec_stvewx
6063      (A : vector_float;
6064       B : c_int;
6065       C : float_ptr)
6066    is
6067    begin
6068       stvewx (To_LL_VSI (A), B, To_PTR (C));
6069    end vec_stvewx;
6070
6071    procedure vec_stvewx
6072      (A : vector_signed_int;
6073       B : c_int;
6074       C : int_ptr)
6075    is
6076    begin
6077       stvewx (To_LL_VSI (A), B, To_PTR (C));
6078    end vec_stvewx;
6079
6080    procedure vec_stvewx
6081      (A : vector_unsigned_int;
6082       B : c_int;
6083       C : unsigned_int_ptr)
6084    is
6085    begin
6086       stvewx (To_LL_VSI (A), B, To_PTR (C));
6087    end vec_stvewx;
6088
6089    procedure vec_stvewx
6090      (A : vector_bool_int;
6091       B : c_int;
6092       C : int_ptr)
6093    is
6094    begin
6095       stvewx (To_LL_VSI (A), B, To_PTR (C));
6096    end vec_stvewx;
6097
6098    procedure vec_stvewx
6099      (A : vector_bool_int;
6100       B : c_int;
6101       C : unsigned_int_ptr)
6102    is
6103    begin
6104       stvewx (To_LL_VSI (A), B, To_PTR (C));
6105    end vec_stvewx;
6106
6107    -- vec_stvehx --
6108
6109    procedure vec_stvehx
6110      (A : vector_signed_short;
6111       B : c_int;
6112       C : short_ptr)
6113    is
6114    begin
6115       stvehx (To_LL_VSS (A), B, To_PTR (C));
6116    end vec_stvehx;
6117
6118    procedure vec_stvehx
6119      (A : vector_unsigned_short;
6120       B : c_int;
6121       C : unsigned_short_ptr)
6122    is
6123    begin
6124       stvehx (To_LL_VSS (A), B, To_PTR (C));
6125    end vec_stvehx;
6126
6127    procedure vec_stvehx
6128      (A : vector_bool_short;
6129       B : c_int;
6130       C : short_ptr)
6131    is
6132    begin
6133       stvehx (To_LL_VSS (A), B, To_PTR (C));
6134    end vec_stvehx;
6135
6136    procedure vec_stvehx
6137      (A : vector_bool_short;
6138       B : c_int;
6139       C : unsigned_short_ptr)
6140    is
6141    begin
6142       stvehx (To_LL_VSS (A), B, To_PTR (C));
6143    end vec_stvehx;
6144
6145    procedure vec_stvehx
6146      (A : vector_pixel;
6147       B : c_int;
6148       C : short_ptr)
6149    is
6150    begin
6151       stvehx (To_LL_VSS (A), B, To_PTR (C));
6152    end vec_stvehx;
6153
6154    procedure vec_stvehx
6155      (A : vector_pixel;
6156       B : c_int;
6157       C : unsigned_short_ptr)
6158    is
6159    begin
6160       stvehx (To_LL_VSS (A), B, To_PTR (C));
6161    end vec_stvehx;
6162
6163    -- vec_stvebx --
6164
6165    procedure vec_stvebx
6166      (A : vector_signed_char;
6167       B : c_int;
6168       C : signed_char_ptr)
6169    is
6170    begin
6171       stvebx (To_LL_VSC (A), B, To_PTR (C));
6172    end vec_stvebx;
6173
6174    procedure vec_stvebx
6175      (A : vector_unsigned_char;
6176       B : c_int;
6177       C : unsigned_char_ptr)
6178    is
6179    begin
6180       stvebx (To_LL_VSC (A), B, To_PTR (C));
6181    end vec_stvebx;
6182
6183    procedure vec_stvebx
6184      (A : vector_bool_char;
6185       B : c_int;
6186       C : signed_char_ptr)
6187    is
6188    begin
6189       stvebx (To_LL_VSC (A), B, To_PTR (C));
6190    end vec_stvebx;
6191
6192    procedure vec_stvebx
6193      (A : vector_bool_char;
6194       B : c_int;
6195       C : unsigned_char_ptr)
6196    is
6197    begin
6198       stvebx (To_LL_VSC (A), B, To_PTR (C));
6199    end vec_stvebx;
6200
6201    -- vec_stl --
6202
6203    procedure vec_stl
6204      (A : vector_float;
6205       B : c_int;
6206       C : vector_float_ptr)
6207    is
6208    begin
6209       stvxl (To_LL_VSI (A), B, To_PTR (C));
6210    end vec_stl;
6211
6212    procedure vec_stl
6213      (A : vector_float;
6214       B : c_int;
6215       C : float_ptr)
6216    is
6217    begin
6218       stvxl (To_LL_VSI (A), B, To_PTR (C));
6219    end vec_stl;
6220
6221    procedure vec_stl
6222      (A : vector_signed_int;
6223       B : c_int;
6224       C : vector_signed_int_ptr)
6225    is
6226    begin
6227       stvxl (To_LL_VSI (A), B, To_PTR (C));
6228    end vec_stl;
6229
6230    procedure vec_stl
6231      (A : vector_signed_int;
6232       B : c_int;
6233       C : int_ptr)
6234    is
6235    begin
6236       stvxl (To_LL_VSI (A), B, To_PTR (C));
6237    end vec_stl;
6238
6239    procedure vec_stl
6240      (A : vector_unsigned_int;
6241       B : c_int;
6242       C : vector_unsigned_int_ptr)
6243    is
6244    begin
6245       stvxl (To_LL_VSI (A), B, To_PTR (C));
6246    end vec_stl;
6247
6248    procedure vec_stl
6249      (A : vector_unsigned_int;
6250       B : c_int;
6251       C : unsigned_int_ptr)
6252    is
6253    begin
6254       stvxl (To_LL_VSI (A), B, To_PTR (C));
6255    end vec_stl;
6256
6257    procedure vec_stl
6258      (A : vector_bool_int;
6259       B : c_int;
6260       C : vector_bool_int_ptr)
6261    is
6262    begin
6263       stvxl (To_LL_VSI (A), B, To_PTR (C));
6264    end vec_stl;
6265
6266    procedure vec_stl
6267      (A : vector_bool_int;
6268       B : c_int;
6269       C : unsigned_int_ptr)
6270    is
6271    begin
6272       stvxl (To_LL_VSI (A), B, To_PTR (C));
6273    end vec_stl;
6274
6275    procedure vec_stl
6276      (A : vector_bool_int;
6277       B : c_int;
6278       C : int_ptr)
6279    is
6280    begin
6281       stvxl (To_LL_VSI (A), B, To_PTR (C));
6282    end vec_stl;
6283
6284    procedure vec_stl
6285      (A : vector_signed_short;
6286       B : c_int;
6287       C : vector_signed_short_ptr)
6288    is
6289    begin
6290       stvxl (To_LL_VSI (A), B, To_PTR (C));
6291    end vec_stl;
6292
6293    procedure vec_stl
6294      (A : vector_signed_short;
6295       B : c_int;
6296       C : short_ptr)
6297    is
6298    begin
6299       stvxl (To_LL_VSI (A), B, To_PTR (C));
6300    end vec_stl;
6301
6302    procedure vec_stl
6303      (A : vector_unsigned_short;
6304       B : c_int;
6305       C : vector_unsigned_short_ptr)
6306    is
6307    begin
6308       stvxl (To_LL_VSI (A), B, To_PTR (C));
6309    end vec_stl;
6310
6311    procedure vec_stl
6312      (A : vector_unsigned_short;
6313       B : c_int;
6314       C : unsigned_short_ptr)
6315    is
6316    begin
6317       stvxl (To_LL_VSI (A), B, To_PTR (C));
6318    end vec_stl;
6319
6320    procedure vec_stl
6321      (A : vector_bool_short;
6322       B : c_int;
6323       C : vector_bool_short_ptr)
6324    is
6325    begin
6326       stvxl (To_LL_VSI (A), B, To_PTR (C));
6327    end vec_stl;
6328
6329    procedure vec_stl
6330      (A : vector_bool_short;
6331       B : c_int;
6332       C : unsigned_short_ptr)
6333    is
6334    begin
6335       stvxl (To_LL_VSI (A), B, To_PTR (C));
6336    end vec_stl;
6337
6338    procedure vec_stl
6339      (A : vector_bool_short;
6340       B : c_int;
6341       C : short_ptr)
6342    is
6343    begin
6344       stvxl (To_LL_VSI (A), B, To_PTR (C));
6345    end vec_stl;
6346
6347    procedure vec_stl
6348      (A : vector_pixel;
6349       B : c_int;
6350       C : vector_pixel_ptr)
6351    is
6352    begin
6353       stvxl (To_LL_VSI (A), B, To_PTR (C));
6354    end vec_stl;
6355
6356    procedure vec_stl
6357      (A : vector_pixel;
6358       B : c_int;
6359       C : unsigned_short_ptr)
6360    is
6361    begin
6362       stvxl (To_LL_VSI (A), B, To_PTR (C));
6363    end vec_stl;
6364
6365    procedure vec_stl
6366      (A : vector_pixel;
6367       B : c_int;
6368       C : short_ptr)
6369    is
6370    begin
6371       stvxl (To_LL_VSI (A), B, To_PTR (C));
6372    end vec_stl;
6373
6374    procedure vec_stl
6375      (A : vector_signed_char;
6376       B : c_int;
6377       C : vector_signed_char_ptr)
6378    is
6379    begin
6380       stvxl (To_LL_VSI (A), B, To_PTR (C));
6381    end vec_stl;
6382
6383    procedure vec_stl
6384      (A : vector_signed_char;
6385       B : c_int;
6386       C : signed_char_ptr)
6387    is
6388    begin
6389       stvxl (To_LL_VSI (A), B, To_PTR (C));
6390    end vec_stl;
6391
6392    procedure vec_stl
6393      (A : vector_unsigned_char;
6394       B : c_int;
6395       C : vector_unsigned_char_ptr)
6396    is
6397    begin
6398       stvxl (To_LL_VSI (A), B, To_PTR (C));
6399    end vec_stl;
6400
6401    procedure vec_stl
6402      (A : vector_unsigned_char;
6403       B : c_int;
6404       C : unsigned_char_ptr)
6405    is
6406    begin
6407       stvxl (To_LL_VSI (A), B, To_PTR (C));
6408    end vec_stl;
6409
6410    procedure vec_stl
6411      (A : vector_bool_char;
6412       B : c_int;
6413       C : vector_bool_char_ptr)
6414    is
6415    begin
6416       stvxl (To_LL_VSI (A), B, To_PTR (C));
6417    end vec_stl;
6418
6419    procedure vec_stl
6420      (A : vector_bool_char;
6421       B : c_int;
6422       C : unsigned_char_ptr)
6423    is
6424    begin
6425       stvxl (To_LL_VSI (A), B, To_PTR (C));
6426    end vec_stl;
6427
6428    procedure vec_stl
6429      (A : vector_bool_char;
6430       B : c_int;
6431       C : signed_char_ptr)
6432    is
6433    begin
6434       stvxl (To_LL_VSI (A), B, To_PTR (C));
6435    end vec_stl;
6436
6437    -- vec_sub --
6438
6439    function vec_sub
6440      (A : vector_bool_char;
6441       B : vector_signed_char) return vector_signed_char
6442    is
6443    begin
6444       return To_LL_VSC (vsububm (To_LL_VSC (A), To_LL_VSC (B)));
6445    end vec_sub;
6446
6447    function vec_sub
6448      (A : vector_signed_char;
6449       B : vector_bool_char) return vector_signed_char
6450    is
6451    begin
6452       return To_LL_VSC (vsububm (To_LL_VSC (A), To_LL_VSC (B)));
6453    end vec_sub;
6454
6455    function vec_sub
6456      (A : vector_signed_char;
6457       B : vector_signed_char) return vector_signed_char
6458    is
6459    begin
6460       return To_LL_VSC (vsububm (To_LL_VSC (A), To_LL_VSC (B)));
6461    end vec_sub;
6462
6463    function vec_sub
6464      (A : vector_bool_char;
6465       B : vector_unsigned_char) return vector_unsigned_char
6466    is
6467    begin
6468       return To_LL_VUC (vsububm (To_LL_VSC (A), To_LL_VSC (B)));
6469    end vec_sub;
6470
6471    function vec_sub
6472      (A : vector_unsigned_char;
6473       B : vector_bool_char) return vector_unsigned_char
6474    is
6475    begin
6476       return To_LL_VUC (vsububm (To_LL_VSC (A), To_LL_VSC (B)));
6477    end vec_sub;
6478
6479    function vec_sub
6480      (A : vector_unsigned_char;
6481       B : vector_unsigned_char) return vector_unsigned_char
6482    is
6483    begin
6484       return To_LL_VUC (vsububm (To_LL_VSC (A), To_LL_VSC (B)));
6485    end vec_sub;
6486
6487    function vec_sub
6488      (A : vector_bool_short;
6489       B : vector_signed_short) return vector_signed_short
6490    is
6491    begin
6492       return To_LL_VSS (vsubuhm (To_LL_VSS (A), To_LL_VSS (B)));
6493    end vec_sub;
6494
6495    function vec_sub
6496      (A : vector_signed_short;
6497       B : vector_bool_short) return vector_signed_short
6498    is
6499    begin
6500       return To_LL_VSS (vsubuhm (To_LL_VSS (A), To_LL_VSS (B)));
6501    end vec_sub;
6502
6503    function vec_sub
6504      (A : vector_signed_short;
6505       B : vector_signed_short) return vector_signed_short
6506    is
6507    begin
6508       return To_LL_VSS (vsubuhm (To_LL_VSS (A), To_LL_VSS (B)));
6509    end vec_sub;
6510
6511    function vec_sub
6512      (A : vector_bool_short;
6513       B : vector_unsigned_short) return vector_unsigned_short
6514    is
6515    begin
6516       return To_LL_VUS (vsubuhm (To_LL_VSS (A), To_LL_VSS (B)));
6517    end vec_sub;
6518
6519    function vec_sub
6520      (A : vector_unsigned_short;
6521       B : vector_bool_short) return vector_unsigned_short
6522    is
6523    begin
6524       return To_LL_VUS (vsubuhm (To_LL_VSS (A), To_LL_VSS (B)));
6525    end vec_sub;
6526
6527    function vec_sub
6528      (A : vector_unsigned_short;
6529       B : vector_unsigned_short) return vector_unsigned_short
6530    is
6531    begin
6532       return To_LL_VUS (vsubuhm (To_LL_VSS (A), To_LL_VSS (B)));
6533    end vec_sub;
6534
6535    function vec_sub
6536      (A : vector_bool_int;
6537       B : vector_signed_int) return vector_signed_int
6538    is
6539    begin
6540       return To_LL_VSI (vsubuwm (To_LL_VSI (A), To_LL_VSI (B)));
6541    end vec_sub;
6542
6543    function vec_sub
6544      (A : vector_signed_int;
6545       B : vector_bool_int) return vector_signed_int
6546    is
6547    begin
6548       return To_LL_VSI (vsubuwm (To_LL_VSI (A), To_LL_VSI (B)));
6549    end vec_sub;
6550
6551    function vec_sub
6552      (A : vector_signed_int;
6553       B : vector_signed_int) return vector_signed_int
6554    is
6555    begin
6556       return To_LL_VSI (vsubuwm (To_LL_VSI (A), To_LL_VSI (B)));
6557    end vec_sub;
6558
6559    function vec_sub
6560      (A : vector_bool_int;
6561       B : vector_unsigned_int) return vector_unsigned_int
6562    is
6563    begin
6564       return To_LL_VUI (vsubuwm (To_LL_VSI (A), To_LL_VSI (B)));
6565    end vec_sub;
6566
6567    function vec_sub
6568      (A : vector_unsigned_int;
6569       B : vector_bool_int) return vector_unsigned_int
6570    is
6571    begin
6572       return To_LL_VUI (vsubuwm (To_LL_VSI (A), To_LL_VSI (B)));
6573    end vec_sub;
6574
6575    function vec_sub
6576      (A : vector_unsigned_int;
6577       B : vector_unsigned_int) return vector_unsigned_int
6578    is
6579    begin
6580       return To_LL_VUI (vsubuwm (To_LL_VSI (A), To_LL_VSI (B)));
6581    end vec_sub;
6582
6583    function vec_sub
6584      (A : vector_float;
6585       B : vector_float) return vector_float
6586    is
6587    begin
6588       return To_LL_VF (vsubfp (To_LL_VF (A), To_LL_VF (B)));
6589    end vec_sub;
6590
6591    -- vec_vsubfp --
6592
6593    function vec_vsubfp
6594      (A : vector_float;
6595       B : vector_float) return vector_float
6596    is
6597    begin
6598       return To_LL_VF (vsubfp (To_LL_VF (A), To_LL_VF (B)));
6599    end vec_vsubfp;
6600
6601    -- vec_vsubuwm --
6602
6603    function vec_vsubuwm
6604      (A : vector_bool_int;
6605       B : vector_signed_int) return vector_signed_int
6606    is
6607    begin
6608       return To_LL_VSI (vsubuwm (To_LL_VSI (A), To_LL_VSI (B)));
6609    end vec_vsubuwm;
6610
6611    function vec_vsubuwm
6612      (A : vector_signed_int;
6613       B : vector_bool_int) return vector_signed_int
6614    is
6615    begin
6616       return To_LL_VSI (vsubuwm (To_LL_VSI (A), To_LL_VSI (B)));
6617    end vec_vsubuwm;
6618
6619    function vec_vsubuwm
6620      (A : vector_signed_int;
6621       B : vector_signed_int) return vector_signed_int
6622    is
6623    begin
6624       return To_LL_VSI (vsubuwm (To_LL_VSI (A), To_LL_VSI (B)));
6625    end vec_vsubuwm;
6626
6627    function vec_vsubuwm
6628      (A : vector_bool_int;
6629       B : vector_unsigned_int) return vector_unsigned_int
6630    is
6631    begin
6632       return To_LL_VUI (vsubuwm (To_LL_VSI (A), To_LL_VSI (B)));
6633    end vec_vsubuwm;
6634
6635    function vec_vsubuwm
6636      (A : vector_unsigned_int;
6637       B : vector_bool_int) return vector_unsigned_int
6638    is
6639    begin
6640       return To_LL_VUI (vsubuwm (To_LL_VSI (A), To_LL_VSI (B)));
6641    end vec_vsubuwm;
6642
6643    function vec_vsubuwm
6644      (A : vector_unsigned_int;
6645       B : vector_unsigned_int) return vector_unsigned_int
6646    is
6647    begin
6648       return To_LL_VUI (vsubuwm (To_LL_VSI (A), To_LL_VSI (B)));
6649    end vec_vsubuwm;
6650
6651    -- vec_vsubuhm --
6652
6653    function vec_vsubuhm
6654      (A : vector_bool_short;
6655       B : vector_signed_short) return vector_signed_short
6656    is
6657    begin
6658       return To_LL_VSS (vsubuhm (To_LL_VSS (A), To_LL_VSS (B)));
6659    end vec_vsubuhm;
6660
6661    function vec_vsubuhm
6662      (A : vector_signed_short;
6663       B : vector_bool_short) return vector_signed_short
6664    is
6665    begin
6666       return To_LL_VSS (vsubuhm (To_LL_VSS (A), To_LL_VSS (B)));
6667    end vec_vsubuhm;
6668
6669    function vec_vsubuhm
6670      (A : vector_signed_short;
6671       B : vector_signed_short) return vector_signed_short
6672    is
6673    begin
6674       return To_LL_VSS (vsubuhm (To_LL_VSS (A), To_LL_VSS (B)));
6675    end vec_vsubuhm;
6676
6677    function vec_vsubuhm
6678      (A : vector_bool_short;
6679       B : vector_unsigned_short) return vector_unsigned_short
6680    is
6681    begin
6682       return To_LL_VUS (vsubuhm (To_LL_VSS (A), To_LL_VSS (B)));
6683    end vec_vsubuhm;
6684
6685    function vec_vsubuhm
6686      (A : vector_unsigned_short;
6687       B : vector_bool_short) return vector_unsigned_short
6688    is
6689    begin
6690       return To_LL_VUS (vsubuhm (To_LL_VSS (A), To_LL_VSS (B)));
6691    end vec_vsubuhm;
6692
6693    function vec_vsubuhm
6694      (A : vector_unsigned_short;
6695       B : vector_unsigned_short) return vector_unsigned_short
6696    is
6697    begin
6698       return To_LL_VUS (vsubuhm (To_LL_VSS (A), To_LL_VSS (B)));
6699    end vec_vsubuhm;
6700
6701    -- vec_vsububm --
6702
6703    function vec_vsububm
6704      (A : vector_bool_char;
6705       B : vector_signed_char) return vector_signed_char
6706    is
6707    begin
6708       return To_LL_VSC (vsububm (To_LL_VSC (A), To_LL_VSC (B)));
6709    end vec_vsububm;
6710
6711    function vec_vsububm
6712      (A : vector_signed_char;
6713       B : vector_bool_char) return vector_signed_char
6714    is
6715    begin
6716       return To_LL_VSC (vsububm (To_LL_VSC (A), To_LL_VSC (B)));
6717    end vec_vsububm;
6718
6719    function vec_vsububm
6720      (A : vector_signed_char;
6721       B : vector_signed_char) return vector_signed_char
6722    is
6723    begin
6724       return To_LL_VSC (vsububm (To_LL_VSC (A), To_LL_VSC (B)));
6725    end vec_vsububm;
6726
6727    function vec_vsububm
6728      (A : vector_bool_char;
6729       B : vector_unsigned_char) return vector_unsigned_char
6730    is
6731    begin
6732       return To_LL_VUC (vsububm (To_LL_VSC (A), To_LL_VSC (B)));
6733    end vec_vsububm;
6734
6735    function vec_vsububm
6736      (A : vector_unsigned_char;
6737       B : vector_bool_char) return vector_unsigned_char
6738    is
6739    begin
6740       return To_LL_VUC (vsububm (To_LL_VSC (A), To_LL_VSC (B)));
6741    end vec_vsububm;
6742
6743    function vec_vsububm
6744      (A : vector_unsigned_char;
6745       B : vector_unsigned_char) return vector_unsigned_char
6746    is
6747    begin
6748       return To_LL_VUC (vsububm (To_LL_VSC (A), To_LL_VSC (B)));
6749    end vec_vsububm;
6750
6751    -- vec_subc --
6752
6753    function vec_subc
6754      (A : vector_unsigned_int;
6755       B : vector_unsigned_int) return vector_unsigned_int
6756    is
6757    begin
6758       return To_LL_VUI (vsubcuw (To_LL_VSI (A), To_LL_VSI (B)));
6759    end vec_subc;
6760
6761    -- vec_subs --
6762
6763    function vec_subs
6764      (A : vector_bool_char;
6765       B : vector_unsigned_char) return vector_unsigned_char
6766    is
6767    begin
6768       return To_LL_VUC (vsububs (To_LL_VSC (A), To_LL_VSC (B)));
6769    end vec_subs;
6770
6771    function vec_subs
6772      (A : vector_unsigned_char;
6773       B : vector_bool_char) return vector_unsigned_char
6774    is
6775    begin
6776       return To_LL_VUC (vsububs (To_LL_VSC (A), To_LL_VSC (B)));
6777    end vec_subs;
6778
6779    function vec_subs
6780      (A : vector_unsigned_char;
6781       B : vector_unsigned_char) return vector_unsigned_char
6782    is
6783    begin
6784       return To_LL_VUC (vsububs (To_LL_VSC (A), To_LL_VSC (B)));
6785    end vec_subs;
6786
6787    function vec_subs
6788      (A : vector_bool_char;
6789       B : vector_signed_char) return vector_signed_char
6790    is
6791    begin
6792       return To_LL_VSC (vsubsbs (To_LL_VSC (A), To_LL_VSC (B)));
6793    end vec_subs;
6794
6795    function vec_subs
6796      (A : vector_signed_char;
6797       B : vector_bool_char) return vector_signed_char
6798    is
6799    begin
6800       return To_LL_VSC (vsubsbs (To_LL_VSC (A), To_LL_VSC (B)));
6801    end vec_subs;
6802
6803    function vec_subs
6804      (A : vector_signed_char;
6805       B : vector_signed_char) return vector_signed_char
6806    is
6807    begin
6808       return To_LL_VSC (vsubsbs (To_LL_VSC (A), To_LL_VSC (B)));
6809    end vec_subs;
6810
6811    function vec_subs
6812      (A : vector_bool_short;
6813       B : vector_unsigned_short) return vector_unsigned_short
6814    is
6815    begin
6816       return To_LL_VUS (vsubuhs (To_LL_VSS (A), To_LL_VSS (B)));
6817    end vec_subs;
6818
6819    function vec_subs
6820      (A : vector_unsigned_short;
6821       B : vector_bool_short) return vector_unsigned_short
6822    is
6823    begin
6824       return To_LL_VUS (vsubuhs (To_LL_VSS (A), To_LL_VSS (B)));
6825    end vec_subs;
6826
6827    function vec_subs
6828      (A : vector_unsigned_short;
6829       B : vector_unsigned_short) return vector_unsigned_short
6830    is
6831    begin
6832       return To_LL_VUS (vsubuhs (To_LL_VSS (A), To_LL_VSS (B)));
6833    end vec_subs;
6834
6835    function vec_subs
6836      (A : vector_bool_short;
6837       B : vector_signed_short) return vector_signed_short
6838    is
6839    begin
6840       return To_LL_VSS (vsubshs (To_LL_VSS (A), To_LL_VSS (B)));
6841    end vec_subs;
6842
6843    function vec_subs
6844      (A : vector_signed_short;
6845       B : vector_bool_short) return vector_signed_short
6846    is
6847    begin
6848       return To_LL_VSS (vsubshs (To_LL_VSS (A), To_LL_VSS (B)));
6849    end vec_subs;
6850
6851    function vec_subs
6852      (A : vector_signed_short;
6853       B : vector_signed_short) return vector_signed_short
6854    is
6855    begin
6856       return To_LL_VSS (vsubshs (To_LL_VSS (A), To_LL_VSS (B)));
6857    end vec_subs;
6858
6859    function vec_subs
6860      (A : vector_bool_int;
6861       B : vector_unsigned_int) return vector_unsigned_int
6862    is
6863    begin
6864       return To_LL_VUI (vsubuws (To_LL_VSI (A), To_LL_VSI (B)));
6865    end vec_subs;
6866
6867    function vec_subs
6868      (A : vector_unsigned_int;
6869       B : vector_bool_int) return vector_unsigned_int
6870    is
6871    begin
6872       return To_LL_VUI (vsubuws (To_LL_VSI (A), To_LL_VSI (B)));
6873    end vec_subs;
6874
6875    function vec_subs
6876      (A : vector_unsigned_int;
6877       B : vector_unsigned_int) return vector_unsigned_int
6878    is
6879    begin
6880       return To_LL_VUI (vsubuws (To_LL_VSI (A), To_LL_VSI (B)));
6881    end vec_subs;
6882
6883    function vec_subs
6884      (A : vector_bool_int;
6885       B : vector_signed_int) return vector_signed_int
6886    is
6887    begin
6888       return To_LL_VSI (vsubsws (To_LL_VSI (A), To_LL_VSI (B)));
6889    end vec_subs;
6890
6891    function vec_subs
6892      (A : vector_signed_int;
6893       B : vector_bool_int) return vector_signed_int
6894    is
6895    begin
6896       return To_LL_VSI (vsubsws (To_LL_VSI (A), To_LL_VSI (B)));
6897    end vec_subs;
6898
6899    function vec_subs
6900      (A : vector_signed_int;
6901       B : vector_signed_int) return vector_signed_int
6902    is
6903    begin
6904       return To_LL_VSI (vsubsws (To_LL_VSI (A), To_LL_VSI (B)));
6905    end vec_subs;
6906
6907    -- vec_vsubsws --
6908
6909    function vec_vsubsws
6910      (A : vector_bool_int;
6911       B : vector_signed_int) return vector_signed_int
6912    is
6913    begin
6914       return To_LL_VSI (vsubsws (To_LL_VSI (A), To_LL_VSI (B)));
6915    end vec_vsubsws;
6916
6917    function vec_vsubsws
6918      (A : vector_signed_int;
6919       B : vector_bool_int) return vector_signed_int
6920    is
6921    begin
6922       return To_LL_VSI (vsubsws (To_LL_VSI (A), To_LL_VSI (B)));
6923    end vec_vsubsws;
6924
6925    function vec_vsubsws
6926      (A : vector_signed_int;
6927       B : vector_signed_int) return vector_signed_int
6928    is
6929    begin
6930       return To_LL_VSI (vsubsws (To_LL_VSI (A), To_LL_VSI (B)));
6931    end vec_vsubsws;
6932
6933    -- vec_vsubuws --
6934
6935    function vec_vsubuws
6936      (A : vector_bool_int;
6937       B : vector_unsigned_int) return vector_unsigned_int
6938    is
6939    begin
6940       return To_LL_VUI (vsubuws (To_LL_VSI (A), To_LL_VSI (B)));
6941    end vec_vsubuws;
6942
6943    function vec_vsubuws
6944      (A : vector_unsigned_int;
6945       B : vector_bool_int) return vector_unsigned_int
6946    is
6947    begin
6948       return To_LL_VUI (vsubuws (To_LL_VSI (A), To_LL_VSI (B)));
6949    end vec_vsubuws;
6950
6951    function vec_vsubuws
6952      (A : vector_unsigned_int;
6953       B : vector_unsigned_int) return vector_unsigned_int
6954    is
6955    begin
6956       return To_LL_VUI (vsubuws (To_LL_VSI (A), To_LL_VSI (B)));
6957    end vec_vsubuws;
6958
6959    -- vec_vsubshs --
6960
6961    function vec_vsubshs
6962      (A : vector_bool_short;
6963       B : vector_signed_short) return vector_signed_short
6964    is
6965    begin
6966       return To_LL_VSS (vsubshs (To_LL_VSS (A), To_LL_VSS (B)));
6967    end vec_vsubshs;
6968
6969    function vec_vsubshs
6970      (A : vector_signed_short;
6971       B : vector_bool_short) return vector_signed_short
6972    is
6973    begin
6974       return To_LL_VSS (vsubshs (To_LL_VSS (A), To_LL_VSS (B)));
6975    end vec_vsubshs;
6976
6977    function vec_vsubshs
6978      (A : vector_signed_short;
6979       B : vector_signed_short) return vector_signed_short
6980    is
6981    begin
6982       return To_LL_VSS (vsubshs (To_LL_VSS (A), To_LL_VSS (B)));
6983    end vec_vsubshs;
6984
6985    -- vec_vsubuhs --
6986
6987    function vec_vsubuhs
6988      (A : vector_bool_short;
6989       B : vector_unsigned_short) return vector_unsigned_short
6990    is
6991    begin
6992       return To_LL_VUS (vsubuhs (To_LL_VSS (A), To_LL_VSS (B)));
6993    end vec_vsubuhs;
6994
6995    function vec_vsubuhs
6996      (A : vector_unsigned_short;
6997       B : vector_bool_short) return vector_unsigned_short
6998    is
6999    begin
7000       return To_LL_VUS (vsubuhs (To_LL_VSS (A), To_LL_VSS (B)));
7001    end vec_vsubuhs;
7002
7003    function vec_vsubuhs
7004      (A : vector_unsigned_short;
7005       B : vector_unsigned_short) return vector_unsigned_short
7006    is
7007    begin
7008       return To_LL_VUS (vsubuhs (To_LL_VSS (A), To_LL_VSS (B)));
7009    end vec_vsubuhs;
7010
7011    -- vec_vsubsbs --
7012
7013    function vec_vsubsbs
7014      (A : vector_bool_char;
7015       B : vector_signed_char) return vector_signed_char
7016    is
7017    begin
7018       return To_LL_VSC (vsubsbs (To_LL_VSC (A), To_LL_VSC (B)));
7019    end vec_vsubsbs;
7020
7021    function vec_vsubsbs
7022      (A : vector_signed_char;
7023       B : vector_bool_char) return vector_signed_char
7024    is
7025    begin
7026       return To_LL_VSC (vsubsbs (To_LL_VSC (A), To_LL_VSC (B)));
7027    end vec_vsubsbs;
7028
7029    function vec_vsubsbs
7030      (A : vector_signed_char;
7031       B : vector_signed_char) return vector_signed_char
7032    is
7033    begin
7034       return To_LL_VSC (vsubsbs (To_LL_VSC (A), To_LL_VSC (B)));
7035    end vec_vsubsbs;
7036
7037    -- vec_vsububs --
7038
7039    function vec_vsububs
7040      (A : vector_bool_char;
7041       B : vector_unsigned_char) return vector_unsigned_char
7042    is
7043    begin
7044       return To_LL_VUC (vsububs (To_LL_VSC (A), To_LL_VSC (B)));
7045    end vec_vsububs;
7046
7047    function vec_vsububs
7048      (A : vector_unsigned_char;
7049       B : vector_bool_char) return vector_unsigned_char
7050    is
7051    begin
7052       return To_LL_VUC (vsububs (To_LL_VSC (A), To_LL_VSC (B)));
7053    end vec_vsububs;
7054
7055    function vec_vsububs
7056      (A : vector_unsigned_char;
7057       B : vector_unsigned_char) return vector_unsigned_char
7058    is
7059    begin
7060       return To_LL_VUC (vsububs (To_LL_VSC (A), To_LL_VSC (B)));
7061    end vec_vsububs;
7062
7063    -- vec_sum4s --
7064
7065    function vec_sum4s
7066      (A : vector_unsigned_char;
7067       B : vector_unsigned_int) return vector_unsigned_int
7068    is
7069    begin
7070       return To_LL_VUI (vsum4ubs (To_LL_VSC (A), To_LL_VSI (B)));
7071    end vec_sum4s;
7072
7073    function vec_sum4s
7074      (A : vector_signed_char;
7075       B : vector_signed_int) return vector_signed_int
7076    is
7077    begin
7078       return To_LL_VSI (vsum4sbs (To_LL_VSC (A), To_LL_VSI (B)));
7079    end vec_sum4s;
7080
7081    function vec_sum4s
7082      (A : vector_signed_short;
7083       B : vector_signed_int) return vector_signed_int
7084    is
7085    begin
7086       return To_LL_VSI (vsum4shs (To_LL_VSS (A), To_LL_VSI (B)));
7087    end vec_sum4s;
7088
7089    -- vec_vsum4shs --
7090
7091    function vec_vsum4shs
7092      (A : vector_signed_short;
7093       B : vector_signed_int) return vector_signed_int
7094    is
7095    begin
7096       return To_LL_VSI (vsum4shs (To_LL_VSS (A), To_LL_VSI (B)));
7097    end vec_vsum4shs;
7098
7099    -- vec_vsum4sbs --
7100
7101    function vec_vsum4sbs
7102      (A : vector_signed_char;
7103       B : vector_signed_int) return vector_signed_int
7104    is
7105    begin
7106       return To_LL_VSI (vsum4sbs (To_LL_VSC (A), To_LL_VSI (B)));
7107    end vec_vsum4sbs;
7108
7109    -- vec_vsum4ubs --
7110
7111    function vec_vsum4ubs
7112      (A : vector_unsigned_char;
7113       B : vector_unsigned_int) return vector_unsigned_int
7114    is
7115    begin
7116       return To_LL_VUI (vsum4ubs (To_LL_VSC (A), To_LL_VSI (B)));
7117    end vec_vsum4ubs;
7118
7119    -- vec_sum2s --
7120
7121    function vec_sum2s
7122      (A : vector_signed_int;
7123       B : vector_signed_int) return vector_signed_int
7124    is
7125    begin
7126       return To_LL_VSI (vsum2sws (To_LL_VSI (A), To_LL_VSI (B)));
7127    end vec_sum2s;
7128
7129    -- vec_sums --
7130
7131    function vec_sums
7132      (A : vector_signed_int;
7133       B : vector_signed_int) return vector_signed_int
7134    is
7135    begin
7136       return To_LL_VSI (vsumsws (To_LL_VSI (A), To_LL_VSI (B)));
7137    end vec_sums;
7138
7139    -- vec_trunc --
7140
7141    function vec_trunc
7142      (A : vector_float) return vector_float
7143    is
7144    begin
7145       return To_LL_VF (vrfiz (To_LL_VF (A)));
7146    end vec_trunc;
7147
7148    -- vec_unpackh --
7149
7150    function vec_unpackh
7151      (A : vector_signed_char) return vector_signed_short
7152    is
7153    begin
7154       return To_LL_VSS (vupkhsb (To_LL_VSC (A)));
7155    end vec_unpackh;
7156
7157    function vec_unpackh
7158      (A : vector_bool_char) return vector_bool_short
7159    is
7160    begin
7161       return To_LL_VBS (vupkhsb (To_LL_VSC (A)));
7162    end vec_unpackh;
7163
7164    function vec_unpackh
7165      (A : vector_signed_short) return vector_signed_int
7166    is
7167    begin
7168       return To_LL_VSI (vupkhsh (To_LL_VSS (A)));
7169    end vec_unpackh;
7170
7171    function vec_unpackh
7172      (A : vector_bool_short) return vector_bool_int
7173    is
7174    begin
7175       return To_LL_VBI (vupkhsh (To_LL_VSS (A)));
7176    end vec_unpackh;
7177
7178    function vec_unpackh
7179      (A : vector_pixel) return vector_unsigned_int
7180    is
7181    begin
7182       return To_LL_VUI (vupkhpx (To_LL_VSS (A)));
7183    end vec_unpackh;
7184
7185    -- vec_vupkhsh --
7186
7187    function vec_vupkhsh
7188      (A : vector_bool_short) return vector_bool_int
7189    is
7190    begin
7191       return To_LL_VBI (vupkhsh (To_LL_VSS (A)));
7192    end vec_vupkhsh;
7193
7194    function vec_vupkhsh
7195      (A : vector_signed_short) return vector_signed_int
7196    is
7197    begin
7198       return To_LL_VSI (vupkhsh (To_LL_VSS (A)));
7199    end vec_vupkhsh;
7200
7201    -- vec_vupkhpx --
7202
7203    function vec_vupkhpx
7204      (A : vector_pixel) return vector_unsigned_int
7205    is
7206    begin
7207       return To_LL_VUI (vupkhpx (To_LL_VSS (A)));
7208    end vec_vupkhpx;
7209
7210    -- vec_vupkhsb --
7211
7212    function vec_vupkhsb
7213      (A : vector_bool_char) return vector_bool_short
7214    is
7215    begin
7216       return To_LL_VBS (vupkhsb (To_LL_VSC (A)));
7217    end vec_vupkhsb;
7218
7219    function vec_vupkhsb
7220      (A : vector_signed_char) return vector_signed_short
7221    is
7222    begin
7223       return To_LL_VSS (vupkhsb (To_LL_VSC (A)));
7224    end vec_vupkhsb;
7225
7226    -- vec_unpackl --
7227
7228    function vec_unpackl
7229      (A : vector_signed_char) return vector_signed_short
7230    is
7231    begin
7232       return To_LL_VSS (vupklsb (To_LL_VSC (A)));
7233    end vec_unpackl;
7234
7235    function vec_unpackl
7236      (A : vector_bool_char) return vector_bool_short
7237    is
7238    begin
7239       return To_LL_VBS (vupklsb (To_LL_VSC (A)));
7240    end vec_unpackl;
7241
7242    function vec_unpackl
7243      (A : vector_pixel) return vector_unsigned_int
7244    is
7245    begin
7246       return To_LL_VUI (vupklpx (To_LL_VSS (A)));
7247    end vec_unpackl;
7248
7249    function vec_unpackl
7250      (A : vector_signed_short) return vector_signed_int
7251    is
7252    begin
7253       return To_LL_VSI (vupklsh (To_LL_VSS (A)));
7254    end vec_unpackl;
7255
7256    function vec_unpackl
7257      (A : vector_bool_short) return vector_bool_int
7258    is
7259    begin
7260       return To_LL_VBI (vupklsh (To_LL_VSS (A)));
7261    end vec_unpackl;
7262
7263    -- vec_vupklpx --
7264
7265    function vec_vupklpx
7266      (A : vector_pixel) return vector_unsigned_int
7267    is
7268    begin
7269       return To_LL_VUI (vupklpx (To_LL_VSS (A)));
7270    end vec_vupklpx;
7271
7272    -- vec_upklsh --
7273
7274    function vec_vupklsh
7275      (A : vector_bool_short) return vector_bool_int
7276    is
7277    begin
7278       return To_LL_VBI (vupklsh (To_LL_VSS (A)));
7279    end vec_vupklsh;
7280
7281    function vec_vupklsh
7282      (A : vector_signed_short) return vector_signed_int
7283    is
7284    begin
7285       return To_LL_VSI (vupklsh (To_LL_VSS (A)));
7286    end vec_vupklsh;
7287
7288    -- vec_vupklsb --
7289
7290    function vec_vupklsb
7291      (A : vector_bool_char) return vector_bool_short
7292    is
7293    begin
7294       return To_LL_VBS (vupklsb (To_LL_VSC (A)));
7295    end vec_vupklsb;
7296
7297    function vec_vupklsb
7298      (A : vector_signed_char) return vector_signed_short
7299    is
7300    begin
7301       return To_LL_VSS (vupklsb (To_LL_VSC (A)));
7302    end vec_vupklsb;
7303
7304    -- vec_xor --
7305
7306    function vec_xor
7307      (A : vector_float;
7308       B : vector_float) return vector_float
7309    is
7310    begin
7311       return To_LL_VF (vxor (To_LL_VSI (A), To_LL_VSI (B)));
7312    end vec_xor;
7313
7314    function vec_xor
7315      (A : vector_float;
7316       B : vector_bool_int) return vector_float
7317    is
7318    begin
7319       return To_LL_VF (vxor (To_LL_VSI (A), To_LL_VSI (B)));
7320    end vec_xor;
7321
7322    function vec_xor
7323      (A : vector_bool_int;
7324       B : vector_float) return vector_float
7325    is
7326    begin
7327       return To_LL_VF (vxor (To_LL_VSI (A), To_LL_VSI (B)));
7328    end vec_xor;
7329
7330    function vec_xor
7331      (A : vector_bool_int;
7332       B : vector_bool_int) return vector_bool_int
7333    is
7334    begin
7335       return To_LL_VBI (vxor (To_LL_VSI (A), To_LL_VSI (B)));
7336    end vec_xor;
7337
7338    function vec_xor
7339      (A : vector_bool_int;
7340       B : vector_signed_int) return vector_signed_int
7341    is
7342    begin
7343       return To_LL_VSI (vxor (To_LL_VSI (A), To_LL_VSI (B)));
7344    end vec_xor;
7345
7346    function vec_xor
7347      (A : vector_signed_int;
7348       B : vector_bool_int) return vector_signed_int
7349    is
7350    begin
7351       return To_LL_VSI (vxor (To_LL_VSI (A), To_LL_VSI (B)));
7352    end vec_xor;
7353
7354    function vec_xor
7355      (A : vector_signed_int;
7356       B : vector_signed_int) return vector_signed_int
7357    is
7358    begin
7359       return To_LL_VSI (vxor (To_LL_VSI (A), To_LL_VSI (B)));
7360    end vec_xor;
7361
7362    function vec_xor
7363      (A : vector_bool_int;
7364       B : vector_unsigned_int) return vector_unsigned_int
7365    is
7366    begin
7367       return To_LL_VUI (vxor (To_LL_VSI (A), To_LL_VSI (B)));
7368    end vec_xor;
7369
7370    function vec_xor
7371      (A : vector_unsigned_int;
7372       B : vector_bool_int) return vector_unsigned_int
7373    is
7374    begin
7375       return To_LL_VUI (vxor (To_LL_VSI (A), To_LL_VSI (B)));
7376    end vec_xor;
7377
7378    function vec_xor
7379      (A : vector_unsigned_int;
7380       B : vector_unsigned_int) return vector_unsigned_int
7381    is
7382    begin
7383       return To_LL_VUI (vxor (To_LL_VSI (A), To_LL_VSI (B)));
7384    end vec_xor;
7385
7386    function vec_xor
7387      (A : vector_bool_short;
7388       B : vector_bool_short) return vector_bool_short
7389    is
7390    begin
7391       return To_LL_VBS (vxor (To_LL_VSI (A), To_LL_VSI (B)));
7392    end vec_xor;
7393
7394    function vec_xor
7395      (A : vector_bool_short;
7396       B : vector_signed_short) return vector_signed_short
7397    is
7398    begin
7399       return To_LL_VSS (vxor (To_LL_VSI (A), To_LL_VSI (B)));
7400    end vec_xor;
7401
7402    function vec_xor
7403      (A : vector_signed_short;
7404       B : vector_bool_short) return vector_signed_short
7405    is
7406    begin
7407       return To_LL_VSS (vxor (To_LL_VSI (A), To_LL_VSI (B)));
7408    end vec_xor;
7409
7410    function vec_xor
7411      (A : vector_signed_short;
7412       B : vector_signed_short) return vector_signed_short
7413    is
7414    begin
7415       return To_LL_VSS (vxor (To_LL_VSI (A), To_LL_VSI (B)));
7416    end vec_xor;
7417
7418    function vec_xor
7419      (A : vector_bool_short;
7420       B : vector_unsigned_short) return vector_unsigned_short
7421    is
7422    begin
7423       return To_LL_VUS (vxor (To_LL_VSI (A), To_LL_VSI (B)));
7424    end vec_xor;
7425
7426    function vec_xor
7427      (A : vector_unsigned_short;
7428       B : vector_bool_short) return vector_unsigned_short
7429    is
7430    begin
7431       return To_LL_VUS (vxor (To_LL_VSI (A), To_LL_VSI (B)));
7432    end vec_xor;
7433
7434    function vec_xor
7435      (A : vector_unsigned_short;
7436       B : vector_unsigned_short) return vector_unsigned_short
7437    is
7438    begin
7439       return To_LL_VUS (vxor (To_LL_VSI (A), To_LL_VSI (B)));
7440    end vec_xor;
7441
7442    function vec_xor
7443      (A : vector_bool_char;
7444       B : vector_signed_char) return vector_signed_char
7445    is
7446    begin
7447       return To_LL_VSC (vxor (To_LL_VSI (A), To_LL_VSI (B)));
7448    end vec_xor;
7449
7450    function vec_xor
7451      (A : vector_bool_char;
7452       B : vector_bool_char) return vector_bool_char
7453    is
7454    begin
7455       return To_LL_VBC (vxor (To_LL_VSI (A), To_LL_VSI (B)));
7456    end vec_xor;
7457
7458    function vec_xor
7459      (A : vector_signed_char;
7460       B : vector_bool_char) return vector_signed_char
7461    is
7462    begin
7463       return To_LL_VSC (vxor (To_LL_VSI (A), To_LL_VSI (B)));
7464    end vec_xor;
7465
7466    function vec_xor
7467      (A : vector_signed_char;
7468       B : vector_signed_char) return vector_signed_char
7469    is
7470    begin
7471       return To_LL_VSC (vxor (To_LL_VSI (A), To_LL_VSI (B)));
7472    end vec_xor;
7473
7474    function vec_xor
7475      (A : vector_bool_char;
7476       B : vector_unsigned_char) return vector_unsigned_char
7477    is
7478    begin
7479       return To_LL_VUC (vxor (To_LL_VSI (A), To_LL_VSI (B)));
7480    end vec_xor;
7481
7482    function vec_xor
7483      (A : vector_unsigned_char;
7484       B : vector_bool_char) return vector_unsigned_char
7485    is
7486    begin
7487       return To_LL_VUC (vxor (To_LL_VSI (A), To_LL_VSI (B)));
7488    end vec_xor;
7489
7490    function vec_xor
7491      (A : vector_unsigned_char;
7492       B : vector_unsigned_char) return vector_unsigned_char
7493    is
7494    begin
7495       return To_LL_VUC (vxor (To_LL_VSI (A), To_LL_VSI (B)));
7496    end vec_xor;
7497
7498    -----------------------------------
7499    -- Bodies for Altivec predicates --
7500    -----------------------------------
7501
7502    -- vec_all_eq --
7503
7504    function vec_all_eq
7505      (A : vector_signed_char;
7506       B : vector_bool_char) return c_int
7507    is
7508    begin
7509       return vcmpequb_p (CR6_LT, To_LL_VSC (A), To_LL_VSC (B));
7510    end vec_all_eq;
7511
7512    function vec_all_eq
7513      (A : vector_signed_char;
7514       B : vector_signed_char) return c_int
7515    is
7516    begin
7517       return vcmpequb_p (CR6_LT, To_LL_VSC (A), To_LL_VSC (B));
7518    end vec_all_eq;
7519
7520    function vec_all_eq
7521      (A : vector_unsigned_char;
7522       B : vector_bool_char) return c_int
7523    is
7524    begin
7525       return vcmpequb_p (CR6_LT, To_LL_VSC (A), To_LL_VSC (B));
7526    end vec_all_eq;
7527
7528    function vec_all_eq
7529      (A : vector_unsigned_char;
7530       B : vector_unsigned_char) return c_int
7531    is
7532    begin
7533       return vcmpequb_p (CR6_LT, To_LL_VSC (A), To_LL_VSC (B));
7534    end vec_all_eq;
7535
7536    function vec_all_eq
7537      (A : vector_bool_char;
7538       B : vector_bool_char) return c_int
7539    is
7540    begin
7541       return vcmpequb_p (CR6_LT, To_LL_VSC (A), To_LL_VSC (B));
7542    end vec_all_eq;
7543
7544    function vec_all_eq
7545      (A : vector_bool_char;
7546       B : vector_unsigned_char) return c_int
7547    is
7548    begin
7549       return vcmpequb_p (CR6_LT, To_LL_VSC (A), To_LL_VSC (B));
7550    end vec_all_eq;
7551
7552    function vec_all_eq
7553      (A : vector_bool_char;
7554       B : vector_signed_char) return c_int
7555    is
7556    begin
7557       return vcmpequb_p (CR6_LT, To_LL_VSC (A), To_LL_VSC (B));
7558    end vec_all_eq;
7559
7560    function vec_all_eq
7561      (A : vector_signed_short;
7562       B : vector_bool_short) return c_int
7563    is
7564    begin
7565       return vcmpequh_p (CR6_LT, To_LL_VSS (A), To_LL_VSS (B));
7566    end vec_all_eq;
7567
7568    function vec_all_eq
7569      (A : vector_signed_short;
7570       B : vector_signed_short) return c_int
7571    is
7572    begin
7573       return vcmpequh_p (CR6_LT, To_LL_VSS (A), To_LL_VSS (B));
7574    end vec_all_eq;
7575
7576    function vec_all_eq
7577      (A : vector_unsigned_short;
7578       B : vector_bool_short) return c_int
7579    is
7580    begin
7581       return vcmpequh_p (CR6_LT, To_LL_VSS (A), To_LL_VSS (B));
7582    end vec_all_eq;
7583
7584    function vec_all_eq
7585      (A : vector_unsigned_short;
7586       B : vector_unsigned_short) return c_int
7587    is
7588    begin
7589       return vcmpequh_p (CR6_LT, To_LL_VSS (A), To_LL_VSS (B));
7590    end vec_all_eq;
7591
7592    function vec_all_eq
7593      (A : vector_bool_short;
7594       B : vector_bool_short) return c_int
7595    is
7596    begin
7597       return vcmpequh_p (CR6_LT, To_LL_VSS (A), To_LL_VSS (B));
7598    end vec_all_eq;
7599
7600    function vec_all_eq
7601      (A : vector_bool_short;
7602       B : vector_unsigned_short) return c_int
7603    is
7604    begin
7605       return vcmpequh_p (CR6_LT, To_LL_VSS (A), To_LL_VSS (B));
7606    end vec_all_eq;
7607
7608    function vec_all_eq
7609      (A : vector_bool_short;
7610       B : vector_signed_short) return c_int
7611    is
7612    begin
7613       return vcmpequh_p (CR6_LT, To_LL_VSS (A), To_LL_VSS (B));
7614    end vec_all_eq;
7615
7616    function vec_all_eq
7617      (A : vector_pixel;
7618       B : vector_pixel) return c_int
7619    is
7620    begin
7621       return vcmpequh_p (CR6_LT, To_LL_VSS (A), To_LL_VSS (B));
7622    end vec_all_eq;
7623
7624    function vec_all_eq
7625      (A : vector_signed_int;
7626       B : vector_bool_int) return c_int
7627    is
7628    begin
7629       return vcmpequw_p (CR6_LT, To_LL_VSI (A), To_LL_VSI (B));
7630    end vec_all_eq;
7631
7632    function vec_all_eq
7633      (A : vector_signed_int;
7634       B : vector_signed_int) return c_int
7635    is
7636    begin
7637       return vcmpequw_p (CR6_LT, To_LL_VSI (A), To_LL_VSI (B));
7638    end vec_all_eq;
7639
7640    function vec_all_eq
7641      (A : vector_unsigned_int;
7642       B : vector_bool_int) return c_int
7643    is
7644    begin
7645       return vcmpequw_p (CR6_LT, To_LL_VSI (A), To_LL_VSI (B));
7646    end vec_all_eq;
7647
7648    function vec_all_eq
7649      (A : vector_unsigned_int;
7650       B : vector_unsigned_int) return c_int
7651    is
7652    begin
7653       return vcmpequw_p (CR6_LT, To_LL_VSI (A), To_LL_VSI (B));
7654    end vec_all_eq;
7655
7656    function vec_all_eq
7657      (A : vector_bool_int;
7658       B : vector_bool_int) return c_int
7659    is
7660    begin
7661       return vcmpequw_p (CR6_LT, To_LL_VSI (A), To_LL_VSI (B));
7662    end vec_all_eq;
7663
7664    function vec_all_eq
7665      (A : vector_bool_int;
7666       B : vector_unsigned_int) return c_int
7667    is
7668    begin
7669       return vcmpequw_p (CR6_LT, To_LL_VSI (A), To_LL_VSI (B));
7670    end vec_all_eq;
7671
7672    function vec_all_eq
7673      (A : vector_bool_int;
7674       B : vector_signed_int) return c_int
7675    is
7676    begin
7677       return vcmpequw_p (CR6_LT, To_LL_VSI (A), To_LL_VSI (B));
7678    end vec_all_eq;
7679
7680    function vec_all_eq
7681      (A : vector_float;
7682       B : vector_float) return c_int
7683    is
7684    begin
7685       return vcmpeqfp_p (CR6_LT, To_LL_VF (A), To_LL_VF (B));
7686    end vec_all_eq;
7687
7688    -- vec_all_ge --
7689
7690    function vec_all_ge
7691      (A : vector_bool_char;
7692       B : vector_unsigned_char) return c_int
7693    is
7694    begin
7695       return vcmpgtub_p (CR6_EQ, To_LL_VSC (B), To_LL_VSC (A));
7696    end vec_all_ge;
7697
7698    function vec_all_ge
7699      (A : vector_unsigned_char;
7700       B : vector_bool_char) return c_int
7701    is
7702    begin
7703       return vcmpgtub_p (CR6_EQ, To_LL_VSC (B), To_LL_VSC (A));
7704    end vec_all_ge;
7705
7706    function vec_all_ge
7707      (A : vector_unsigned_char;
7708       B : vector_unsigned_char) return c_int
7709    is
7710    begin
7711       return vcmpgtub_p (CR6_EQ, To_LL_VSC (B), To_LL_VSC (A));
7712    end vec_all_ge;
7713
7714    function vec_all_ge
7715      (A : vector_bool_char;
7716       B : vector_signed_char) return c_int
7717    is
7718    begin
7719       return vcmpgtsb_p (CR6_EQ, To_LL_VSC (B), To_LL_VSC (A));
7720    end vec_all_ge;
7721
7722    function vec_all_ge
7723      (A : vector_signed_char;
7724       B : vector_bool_char) return c_int
7725    is
7726    begin
7727       return vcmpgtsb_p (CR6_EQ, To_LL_VSC (B), To_LL_VSC (A));
7728    end vec_all_ge;
7729
7730    function vec_all_ge
7731      (A : vector_signed_char;
7732       B : vector_signed_char) return c_int
7733    is
7734    begin
7735       return vcmpgtsb_p (CR6_EQ, To_LL_VSC (B), To_LL_VSC (A));
7736    end vec_all_ge;
7737
7738    function vec_all_ge
7739      (A : vector_bool_short;
7740       B : vector_unsigned_short) return c_int
7741    is
7742    begin
7743       return vcmpgtuh_p (CR6_EQ, To_LL_VSS (B), To_LL_VSS (A));
7744    end vec_all_ge;
7745
7746    function vec_all_ge
7747      (A : vector_unsigned_short;
7748       B : vector_bool_short) return c_int
7749    is
7750    begin
7751       return vcmpgtuh_p (CR6_EQ, To_LL_VSS (B), To_LL_VSS (A));
7752    end vec_all_ge;
7753
7754    function vec_all_ge
7755      (A : vector_unsigned_short;
7756       B : vector_unsigned_short) return c_int
7757    is
7758    begin
7759       return vcmpgtuh_p (CR6_EQ, To_LL_VSS (B), To_LL_VSS (A));
7760    end vec_all_ge;
7761
7762    function vec_all_ge
7763      (A : vector_signed_short;
7764       B : vector_signed_short) return c_int
7765    is
7766    begin
7767       return vcmpgtsh_p (CR6_EQ, To_LL_VSS (B), To_LL_VSS (A));
7768    end vec_all_ge;
7769
7770    function vec_all_ge
7771      (A : vector_bool_short;
7772       B : vector_signed_short) return c_int
7773    is
7774    begin
7775       return vcmpgtsh_p (CR6_EQ, To_LL_VSS (B), To_LL_VSS (A));
7776    end vec_all_ge;
7777
7778    function vec_all_ge
7779      (A : vector_signed_short;
7780       B : vector_bool_short) return c_int
7781    is
7782    begin
7783       return vcmpgtsh_p (CR6_EQ, To_LL_VSS (B), To_LL_VSS (A));
7784    end vec_all_ge;
7785
7786    function vec_all_ge
7787      (A : vector_bool_int;
7788       B : vector_unsigned_int) return c_int
7789    is
7790    begin
7791       return vcmpgtuw_p (CR6_EQ, To_LL_VSI (B), To_LL_VSI (A));
7792    end vec_all_ge;
7793
7794    function vec_all_ge
7795      (A : vector_unsigned_int;
7796       B : vector_bool_int) return c_int
7797    is
7798    begin
7799       return vcmpgtuw_p (CR6_EQ, To_LL_VSI (B), To_LL_VSI (A));
7800    end vec_all_ge;
7801
7802    function vec_all_ge
7803      (A : vector_unsigned_int;
7804       B : vector_unsigned_int) return c_int
7805    is
7806    begin
7807       return vcmpgtuw_p (CR6_EQ, To_LL_VSI (B), To_LL_VSI (A));
7808    end vec_all_ge;
7809
7810    function vec_all_ge
7811      (A : vector_bool_int;
7812       B : vector_signed_int) return c_int
7813    is
7814    begin
7815       return vcmpgtsw_p (CR6_EQ, To_LL_VSI (B), To_LL_VSI (A));
7816    end vec_all_ge;
7817
7818    function vec_all_ge
7819      (A : vector_signed_int;
7820       B : vector_bool_int) return c_int
7821    is
7822    begin
7823       return vcmpgtsw_p (CR6_EQ, To_LL_VSI (B), To_LL_VSI (A));
7824    end vec_all_ge;
7825
7826    function vec_all_ge
7827      (A : vector_signed_int;
7828       B : vector_signed_int) return c_int
7829    is
7830    begin
7831       return vcmpgtsw_p (CR6_EQ, To_LL_VSI (B), To_LL_VSI (A));
7832    end vec_all_ge;
7833
7834    function vec_all_ge
7835      (A : vector_float;
7836       B : vector_float) return c_int
7837    is
7838    begin
7839       return vcmpgefp_p (CR6_LT, To_LL_VF (A), To_LL_VF (B));
7840    end vec_all_ge;
7841
7842    -- vec_all_gt --
7843
7844    function vec_all_gt
7845      (A : vector_bool_char;
7846       B : vector_unsigned_char) return c_int
7847    is
7848    begin
7849       return vcmpgtub_p (CR6_LT, To_LL_VSC (A), To_LL_VSC (B));
7850    end vec_all_gt;
7851
7852    function vec_all_gt
7853      (A : vector_unsigned_char;
7854       B : vector_bool_char) return c_int
7855    is
7856    begin
7857       return vcmpgtub_p (CR6_LT, To_LL_VSC (A), To_LL_VSC (B));
7858    end vec_all_gt;
7859
7860    function vec_all_gt
7861      (A : vector_unsigned_char;
7862       B : vector_unsigned_char) return c_int
7863    is
7864    begin
7865       return vcmpgtub_p (CR6_LT, To_LL_VSC (A), To_LL_VSC (B));
7866    end vec_all_gt;
7867
7868    function vec_all_gt
7869      (A : vector_bool_char;
7870       B : vector_signed_char) return c_int
7871    is
7872    begin
7873       return vcmpgtsb_p (CR6_LT, To_LL_VSC (A), To_LL_VSC (B));
7874    end vec_all_gt;
7875
7876    function vec_all_gt
7877      (A : vector_signed_char;
7878       B : vector_bool_char) return c_int
7879    is
7880    begin
7881       return vcmpgtsb_p (CR6_LT, To_LL_VSC (A), To_LL_VSC (B));
7882    end vec_all_gt;
7883
7884    function vec_all_gt
7885      (A : vector_signed_char;
7886       B : vector_signed_char) return c_int
7887    is
7888    begin
7889       return vcmpgtsb_p (CR6_LT, To_LL_VSC (A), To_LL_VSC (B));
7890    end vec_all_gt;
7891
7892    function vec_all_gt
7893      (A : vector_bool_short;
7894       B : vector_unsigned_short) return c_int
7895    is
7896    begin
7897       return vcmpgtuh_p (CR6_LT, To_LL_VSS (A), To_LL_VSS (B));
7898    end vec_all_gt;
7899
7900    function vec_all_gt
7901      (A : vector_unsigned_short;
7902       B : vector_bool_short) return c_int
7903    is
7904    begin
7905       return vcmpgtuh_p (CR6_LT, To_LL_VSS (A), To_LL_VSS (B));
7906    end vec_all_gt;
7907
7908    function vec_all_gt
7909      (A : vector_unsigned_short;
7910       B : vector_unsigned_short) return c_int
7911    is
7912    begin
7913       return vcmpgtuh_p (CR6_LT, To_LL_VSS (A), To_LL_VSS (B));
7914    end vec_all_gt;
7915
7916    function vec_all_gt
7917      (A : vector_bool_short;
7918       B : vector_signed_short) return c_int
7919    is
7920    begin
7921       return vcmpgtsh_p (CR6_LT, To_LL_VSS (A), To_LL_VSS (B));
7922    end vec_all_gt;
7923
7924    function vec_all_gt
7925      (A : vector_signed_short;
7926       B : vector_bool_short) return c_int
7927    is
7928    begin
7929       return vcmpgtsh_p (CR6_LT, To_LL_VSS (A), To_LL_VSS (B));
7930    end vec_all_gt;
7931
7932    function vec_all_gt
7933      (A : vector_signed_short;
7934       B : vector_signed_short) return c_int
7935    is
7936    begin
7937       return vcmpgtsh_p (CR6_LT, To_LL_VSS (A), To_LL_VSS (B));
7938    end vec_all_gt;
7939
7940    function vec_all_gt
7941      (A : vector_bool_int;
7942       B : vector_unsigned_int) return c_int
7943    is
7944    begin
7945       return vcmpgtuw_p (CR6_LT, To_LL_VSI (A), To_LL_VSI (B));
7946    end vec_all_gt;
7947
7948    function vec_all_gt
7949      (A : vector_unsigned_int;
7950       B : vector_bool_int) return c_int
7951    is
7952    begin
7953       return vcmpgtuw_p (CR6_LT, To_LL_VSI (A), To_LL_VSI (B));
7954    end vec_all_gt;
7955
7956    function vec_all_gt
7957      (A : vector_unsigned_int;
7958       B : vector_unsigned_int) return c_int
7959    is
7960    begin
7961       return vcmpgtuw_p (CR6_LT, To_LL_VSI (A), To_LL_VSI (B));
7962    end vec_all_gt;
7963
7964    function vec_all_gt
7965      (A : vector_bool_int;
7966       B : vector_signed_int) return c_int
7967    is
7968    begin
7969       return vcmpgtsw_p (CR6_LT, To_LL_VSI (A), To_LL_VSI (B));
7970    end vec_all_gt;
7971
7972    function vec_all_gt
7973      (A : vector_signed_int;
7974       B : vector_bool_int) return c_int
7975    is
7976    begin
7977       return vcmpgtsw_p (CR6_LT, To_LL_VSI (A), To_LL_VSI (B));
7978    end vec_all_gt;
7979
7980    function vec_all_gt
7981      (A : vector_signed_int;
7982       B : vector_signed_int) return c_int
7983    is
7984    begin
7985       return vcmpgtsw_p (CR6_LT, To_LL_VSI (A), To_LL_VSI (B));
7986    end vec_all_gt;
7987
7988    function vec_all_gt
7989      (A : vector_float;
7990       B : vector_float) return c_int
7991    is
7992    begin
7993       return vcmpgtfp_p (CR6_LT, To_LL_VF (A), To_LL_VF (B));
7994    end vec_all_gt;
7995
7996    -- vec_all_in --
7997
7998    function vec_all_in
7999      (A : vector_float;
8000       B : vector_float) return c_int
8001    is
8002    begin
8003       return vcmpbfp_p (CR6_EQ, To_LL_VF (A), To_LL_VF (B));
8004    end vec_all_in;
8005
8006    -- vec_all_le --
8007
8008    function vec_all_le
8009      (A : vector_bool_char;
8010       B : vector_unsigned_char) return c_int
8011    is
8012    begin
8013       return vcmpgtub_p (CR6_EQ, To_LL_VSC (A), To_LL_VSC (B));
8014    end vec_all_le;
8015
8016    function vec_all_le
8017      (A : vector_unsigned_char;
8018       B : vector_bool_char) return c_int
8019    is
8020    begin
8021       return vcmpgtub_p (CR6_EQ, To_LL_VSC (A), To_LL_VSC (B));
8022    end vec_all_le;
8023
8024    function vec_all_le
8025      (A : vector_unsigned_char;
8026       B : vector_unsigned_char) return c_int
8027    is
8028    begin
8029       return vcmpgtub_p (CR6_EQ, To_LL_VSC (A), To_LL_VSC (B));
8030    end vec_all_le;
8031
8032    function vec_all_le
8033      (A : vector_bool_char;
8034       B : vector_signed_char) return c_int
8035    is
8036    begin
8037       return vcmpgtsb_p (CR6_EQ, To_LL_VSC (A), To_LL_VSC (B));
8038    end vec_all_le;
8039
8040    function vec_all_le
8041      (A : vector_signed_char;
8042       B : vector_bool_char) return c_int
8043    is
8044    begin
8045       return vcmpgtsb_p (CR6_EQ, To_LL_VSC (A), To_LL_VSC (B));
8046    end vec_all_le;
8047
8048    function vec_all_le
8049      (A : vector_signed_char;
8050       B : vector_signed_char) return c_int
8051    is
8052    begin
8053       return vcmpgtsb_p (CR6_EQ, To_LL_VSC (A), To_LL_VSC (B));
8054    end vec_all_le;
8055
8056    function vec_all_le
8057      (A : vector_bool_short;
8058       B : vector_unsigned_short) return c_int
8059    is
8060    begin
8061       return vcmpgtuh_p (CR6_EQ, To_LL_VSS (A), To_LL_VSS (B));
8062    end vec_all_le;
8063
8064    function vec_all_le
8065      (A : vector_unsigned_short;
8066       B : vector_bool_short) return c_int
8067    is
8068    begin
8069       return vcmpgtuh_p (CR6_EQ, To_LL_VSS (A), To_LL_VSS (B));
8070    end vec_all_le;
8071
8072    function vec_all_le
8073      (A : vector_unsigned_short;
8074       B : vector_unsigned_short) return c_int
8075    is
8076    begin
8077       return vcmpgtuh_p (CR6_EQ, To_LL_VSS (A), To_LL_VSS (B));
8078    end vec_all_le;
8079
8080    function vec_all_le
8081      (A : vector_bool_short;
8082       B : vector_signed_short) return c_int
8083    is
8084    begin
8085       return vcmpgtsh_p (CR6_EQ, To_LL_VSS (A), To_LL_VSS (B));
8086    end vec_all_le;
8087
8088    function vec_all_le
8089      (A : vector_signed_short;
8090       B : vector_bool_short) return c_int
8091    is
8092    begin
8093       return vcmpgtsh_p (CR6_EQ, To_LL_VSS (A), To_LL_VSS (B));
8094    end vec_all_le;
8095
8096    function vec_all_le
8097      (A : vector_signed_short;
8098       B : vector_signed_short) return c_int
8099    is
8100    begin
8101       return vcmpgtsh_p (CR6_EQ, To_LL_VSS (A), To_LL_VSS (B));
8102    end vec_all_le;
8103
8104    function vec_all_le
8105      (A : vector_bool_int;
8106       B : vector_unsigned_int) return c_int
8107    is
8108    begin
8109       return vcmpgtuw_p (CR6_EQ, To_LL_VSI (A), To_LL_VSI (B));
8110    end vec_all_le;
8111
8112    function vec_all_le
8113      (A : vector_unsigned_int;
8114       B : vector_bool_int) return c_int
8115    is
8116    begin
8117       return vcmpgtuw_p (CR6_EQ, To_LL_VSI (A), To_LL_VSI (B));
8118    end vec_all_le;
8119
8120    function vec_all_le
8121      (A : vector_unsigned_int;
8122       B : vector_unsigned_int) return c_int
8123    is
8124    begin
8125       return vcmpgtuw_p (CR6_EQ, To_LL_VSI (A), To_LL_VSI (B));
8126    end vec_all_le;
8127
8128    function vec_all_le
8129      (A : vector_bool_int;
8130       B : vector_signed_int) return c_int
8131    is
8132    begin
8133       return vcmpgtsw_p (CR6_EQ, To_LL_VSI (A), To_LL_VSI (B));
8134    end vec_all_le;
8135
8136    function vec_all_le
8137      (A : vector_signed_int;
8138       B : vector_bool_int) return c_int
8139    is
8140    begin
8141       return vcmpgtsw_p (CR6_EQ, To_LL_VSI (A), To_LL_VSI (B));
8142    end vec_all_le;
8143
8144    function vec_all_le
8145      (A : vector_signed_int;
8146       B : vector_signed_int) return c_int
8147    is
8148    begin
8149       return vcmpgtsw_p (CR6_EQ, To_LL_VSI (A), To_LL_VSI (B));
8150    end vec_all_le;
8151
8152    function vec_all_le
8153      (A : vector_float;
8154       B : vector_float) return c_int
8155    is
8156    begin
8157       return vcmpgefp_p (CR6_LT, To_LL_VF (B), To_LL_VF (A));
8158    end vec_all_le;
8159
8160    -- vec_all_lt --
8161
8162    function vec_all_lt
8163      (A : vector_bool_char;
8164       B : vector_unsigned_char) return c_int
8165    is
8166    begin
8167       return vcmpgtub_p (CR6_LT, To_LL_VSC (B), To_LL_VSC (A));
8168    end vec_all_lt;
8169
8170    function vec_all_lt
8171      (A : vector_unsigned_char;
8172       B : vector_bool_char) return c_int
8173    is
8174    begin
8175       return vcmpgtub_p (CR6_LT, To_LL_VSC (B), To_LL_VSC (A));
8176    end vec_all_lt;
8177
8178    function vec_all_lt
8179      (A : vector_unsigned_char;
8180       B : vector_unsigned_char) return c_int
8181    is
8182    begin
8183       return vcmpgtub_p (CR6_LT, To_LL_VSC (B), To_LL_VSC (A));
8184    end vec_all_lt;
8185
8186    function vec_all_lt
8187      (A : vector_bool_char;
8188       B : vector_signed_char) return c_int
8189    is
8190    begin
8191       return vcmpgtsb_p (CR6_LT, To_LL_VSC (B), To_LL_VSC (A));
8192    end vec_all_lt;
8193
8194    function vec_all_lt
8195      (A : vector_signed_char;
8196       B : vector_bool_char) return c_int
8197    is
8198    begin
8199       return vcmpgtsb_p (CR6_LT, To_LL_VSC (B), To_LL_VSC (A));
8200    end vec_all_lt;
8201
8202    function vec_all_lt
8203      (A : vector_signed_char;
8204       B : vector_signed_char) return c_int
8205    is
8206    begin
8207       return vcmpgtsb_p (CR6_LT, To_LL_VSC (B), To_LL_VSC (A));
8208    end vec_all_lt;
8209
8210    function vec_all_lt
8211      (A : vector_bool_short;
8212       B : vector_unsigned_short) return c_int
8213    is
8214    begin
8215       return vcmpgtuh_p (CR6_LT, To_LL_VSS (B), To_LL_VSS (A));
8216    end vec_all_lt;
8217
8218    function vec_all_lt
8219      (A : vector_unsigned_short;
8220       B : vector_bool_short) return c_int
8221    is
8222    begin
8223       return vcmpgtuh_p (CR6_LT, To_LL_VSS (B), To_LL_VSS (A));
8224    end vec_all_lt;
8225
8226    function vec_all_lt
8227      (A : vector_unsigned_short;
8228       B : vector_unsigned_short) return c_int
8229    is
8230    begin
8231       return vcmpgtuh_p (CR6_LT, To_LL_VSS (B), To_LL_VSS (A));
8232    end vec_all_lt;
8233
8234    function vec_all_lt
8235      (A : vector_bool_short;
8236       B : vector_signed_short) return c_int
8237    is
8238    begin
8239       return vcmpgtsh_p (CR6_LT, To_LL_VSS (B), To_LL_VSS (A));
8240    end vec_all_lt;
8241
8242    function vec_all_lt
8243      (A : vector_signed_short;
8244       B : vector_bool_short) return c_int
8245    is
8246    begin
8247       return vcmpgtsh_p (CR6_LT, To_LL_VSS (B), To_LL_VSS (A));
8248    end vec_all_lt;
8249
8250    function vec_all_lt
8251      (A : vector_signed_short;
8252       B : vector_signed_short) return c_int
8253    is
8254    begin
8255       return vcmpgtsh_p (CR6_LT, To_LL_VSS (B), To_LL_VSS (A));
8256    end vec_all_lt;
8257
8258    function vec_all_lt
8259      (A : vector_bool_int;
8260       B : vector_unsigned_int) return c_int
8261    is
8262    begin
8263       return vcmpgtuw_p (CR6_LT, To_LL_VSI (B), To_LL_VSI (A));
8264    end vec_all_lt;
8265
8266    function vec_all_lt
8267      (A : vector_unsigned_int;
8268       B : vector_bool_int) return c_int
8269    is
8270    begin
8271       return vcmpgtuw_p (CR6_LT, To_LL_VSI (B), To_LL_VSI (A));
8272    end vec_all_lt;
8273
8274    function vec_all_lt
8275      (A : vector_unsigned_int;
8276       B : vector_unsigned_int) return c_int
8277    is
8278    begin
8279       return vcmpgtuw_p (CR6_LT, To_LL_VSI (B), To_LL_VSI (A));
8280    end vec_all_lt;
8281
8282    function vec_all_lt
8283      (A : vector_bool_int;
8284       B : vector_signed_int) return c_int
8285    is
8286    begin
8287       return vcmpgtsw_p (CR6_LT, To_LL_VSI (B), To_LL_VSI (A));
8288    end vec_all_lt;
8289
8290    function vec_all_lt
8291      (A : vector_signed_int;
8292       B : vector_bool_int) return c_int
8293    is
8294    begin
8295       return vcmpgtsw_p (CR6_LT, To_LL_VSI (B), To_LL_VSI (A));
8296    end vec_all_lt;
8297
8298    function vec_all_lt
8299      (A : vector_signed_int;
8300       B : vector_signed_int) return c_int
8301    is
8302    begin
8303       return vcmpgtsw_p (CR6_LT, To_LL_VSI (B), To_LL_VSI (A));
8304    end vec_all_lt;
8305
8306    function vec_all_lt
8307      (A : vector_float;
8308       B : vector_float) return c_int
8309    is
8310    begin
8311       return vcmpgtfp_p (CR6_LT, To_LL_VF (B), To_LL_VF (A));
8312    end vec_all_lt;
8313
8314    -- vec_all_nan --
8315
8316    function vec_all_nan
8317      (A : vector_float) return c_int
8318    is
8319    begin
8320       return vcmpeqfp_p (CR6_EQ, To_LL_VF (A), To_LL_VF (A));
8321    end vec_all_nan;
8322
8323    -- vec_all_ne --
8324
8325    function vec_all_ne
8326      (A : vector_signed_char;
8327       B : vector_bool_char) return c_int
8328    is
8329    begin
8330       return vcmpequb_p (CR6_EQ, To_LL_VSC (A), To_LL_VSC (B));
8331    end vec_all_ne;
8332
8333    function vec_all_ne
8334      (A : vector_signed_char;
8335       B : vector_signed_char) return c_int
8336    is
8337    begin
8338       return vcmpequb_p (CR6_EQ, To_LL_VSC (A), To_LL_VSC (B));
8339    end vec_all_ne;
8340
8341    function vec_all_ne
8342      (A : vector_unsigned_char;
8343       B : vector_bool_char) return c_int
8344    is
8345    begin
8346       return vcmpequb_p (CR6_EQ, To_LL_VSC (A), To_LL_VSC (B));
8347    end vec_all_ne;
8348
8349    function vec_all_ne
8350      (A : vector_unsigned_char;
8351       B : vector_unsigned_char) return c_int
8352    is
8353    begin
8354       return vcmpequb_p (CR6_EQ, To_LL_VSC (A), To_LL_VSC (B));
8355    end vec_all_ne;
8356
8357    function vec_all_ne
8358      (A : vector_bool_char;
8359       B : vector_bool_char) return c_int
8360    is
8361    begin
8362       return vcmpequb_p (CR6_EQ, To_LL_VSC (A), To_LL_VSC (B));
8363    end vec_all_ne;
8364
8365    function vec_all_ne
8366      (A : vector_bool_char;
8367       B : vector_unsigned_char) return c_int
8368    is
8369    begin
8370       return vcmpequb_p (CR6_EQ, To_LL_VSC (A), To_LL_VSC (B));
8371    end vec_all_ne;
8372
8373    function vec_all_ne
8374      (A : vector_bool_char;
8375       B : vector_signed_char) return c_int
8376    is
8377    begin
8378       return vcmpequb_p (CR6_EQ, To_LL_VSC (A), To_LL_VSC (B));
8379    end vec_all_ne;
8380
8381    function vec_all_ne
8382      (A : vector_signed_short;
8383       B : vector_bool_short) return c_int
8384    is
8385    begin
8386       return vcmpequh_p (CR6_EQ, To_LL_VSS (A), To_LL_VSS (B));
8387    end vec_all_ne;
8388
8389    function vec_all_ne
8390      (A : vector_signed_short;
8391       B : vector_signed_short) return c_int
8392    is
8393    begin
8394       return vcmpequh_p (CR6_EQ, To_LL_VSS (A), To_LL_VSS (B));
8395    end vec_all_ne;
8396
8397    function vec_all_ne
8398      (A : vector_unsigned_short;
8399       B : vector_bool_short) return c_int
8400    is
8401    begin
8402       return vcmpequh_p (CR6_EQ, To_LL_VSS (A), To_LL_VSS (B));
8403    end vec_all_ne;
8404
8405    function vec_all_ne
8406      (A : vector_unsigned_short;
8407       B : vector_unsigned_short) return c_int
8408    is
8409    begin
8410       return vcmpequh_p (CR6_EQ, To_LL_VSS (A), To_LL_VSS (B));
8411    end vec_all_ne;
8412
8413    function vec_all_ne
8414      (A : vector_bool_short;
8415       B : vector_bool_short) return c_int
8416    is
8417    begin
8418       return vcmpequh_p (CR6_EQ, To_LL_VSS (A), To_LL_VSS (B));
8419    end vec_all_ne;
8420
8421    function vec_all_ne
8422      (A : vector_bool_short;
8423       B : vector_unsigned_short) return c_int
8424    is
8425    begin
8426       return vcmpequh_p (CR6_EQ, To_LL_VSS (A), To_LL_VSS (B));
8427    end vec_all_ne;
8428
8429    function vec_all_ne
8430      (A : vector_bool_short;
8431       B : vector_signed_short) return c_int
8432    is
8433    begin
8434       return vcmpequh_p (CR6_EQ, To_LL_VSS (A), To_LL_VSS (B));
8435    end vec_all_ne;
8436
8437    function vec_all_ne
8438      (A : vector_pixel;
8439       B : vector_pixel) return c_int
8440    is
8441    begin
8442       return vcmpequh_p (CR6_EQ, To_LL_VSS (A), To_LL_VSS (B));
8443    end vec_all_ne;
8444
8445    function vec_all_ne
8446      (A : vector_signed_int;
8447       B : vector_bool_int) return c_int
8448    is
8449    begin
8450       return vcmpequw_p (CR6_EQ, To_LL_VSI (A), To_LL_VSI (B));
8451    end vec_all_ne;
8452
8453    function vec_all_ne
8454      (A : vector_signed_int;
8455       B : vector_signed_int) return c_int
8456    is
8457    begin
8458       return vcmpequw_p (CR6_EQ, To_LL_VSI (A), To_LL_VSI (B));
8459    end vec_all_ne;
8460
8461    function vec_all_ne
8462      (A : vector_unsigned_int;
8463       B : vector_bool_int) return c_int
8464    is
8465    begin
8466       return vcmpequw_p (CR6_EQ, To_LL_VSI (A), To_LL_VSI (B));
8467    end vec_all_ne;
8468
8469    function vec_all_ne
8470      (A : vector_unsigned_int;
8471       B : vector_unsigned_int) return c_int
8472    is
8473    begin
8474       return vcmpequw_p (CR6_EQ, To_LL_VSI (A), To_LL_VSI (B));
8475    end vec_all_ne;
8476
8477    function vec_all_ne
8478      (A : vector_bool_int;
8479       B : vector_bool_int) return c_int
8480    is
8481    begin
8482       return vcmpequw_p (CR6_EQ, To_LL_VSI (A), To_LL_VSI (B));
8483    end vec_all_ne;
8484
8485    function vec_all_ne
8486      (A : vector_bool_int;
8487       B : vector_unsigned_int) return c_int
8488    is
8489    begin
8490       return vcmpequw_p (CR6_EQ, To_LL_VSI (A), To_LL_VSI (B));
8491    end vec_all_ne;
8492
8493    function vec_all_ne
8494      (A : vector_bool_int;
8495       B : vector_signed_int) return c_int
8496    is
8497    begin
8498       return vcmpequw_p (CR6_EQ, To_LL_VSI (A), To_LL_VSI (B));
8499    end vec_all_ne;
8500
8501    function vec_all_ne
8502      (A : vector_float;
8503       B : vector_float) return c_int
8504    is
8505    begin
8506       return vcmpeqfp_p (CR6_EQ, To_LL_VF (A), To_LL_VF (B));
8507    end vec_all_ne;
8508
8509    -- vec_all_nge --
8510
8511    function vec_all_nge
8512      (A : vector_float;
8513       B : vector_float) return c_int
8514    is
8515    begin
8516       return vcmpgefp_p (CR6_EQ, To_LL_VF (A), To_LL_VF (B));
8517    end vec_all_nge;
8518
8519    -- vec_all_ngt --
8520
8521    function vec_all_ngt
8522      (A : vector_float;
8523       B : vector_float) return c_int
8524    is
8525    begin
8526       return vcmpgtfp_p (CR6_EQ, To_LL_VF (A), To_LL_VF (B));
8527    end vec_all_ngt;
8528
8529    -- vec_all_nle --
8530
8531    function vec_all_nle
8532      (A : vector_float;
8533       B : vector_float) return c_int
8534    is
8535    begin
8536       return vcmpgefp_p (CR6_EQ, To_LL_VF (B), To_LL_VF (A));
8537    end vec_all_nle;
8538
8539    -- vec_all_nlt --
8540
8541    function vec_all_nlt
8542      (A : vector_float;
8543       B : vector_float) return c_int
8544    is
8545    begin
8546       return vcmpgtfp_p (CR6_EQ, To_LL_VF (B), To_LL_VF (A));
8547    end vec_all_nlt;
8548
8549    -- vec_all_numeric --
8550
8551    function vec_all_numeric
8552      (A : vector_float) return c_int
8553    is
8554    begin
8555       return vcmpeqfp_p (CR6_LT, To_LL_VF (A), To_LL_VF (A));
8556    end vec_all_numeric;
8557
8558    -- vec_any_eq --
8559
8560    function vec_any_eq
8561      (A : vector_signed_char;
8562       B : vector_bool_char) return c_int
8563    is
8564    begin
8565       return vcmpequb_p (CR6_EQ_REV, To_LL_VSC (A), To_LL_VSC (B));
8566    end vec_any_eq;
8567
8568    function vec_any_eq
8569      (A : vector_signed_char;
8570       B : vector_signed_char) return c_int
8571    is
8572    begin
8573       return vcmpequb_p (CR6_EQ_REV, To_LL_VSC (A), To_LL_VSC (B));
8574    end vec_any_eq;
8575
8576    function vec_any_eq
8577      (A : vector_unsigned_char;
8578       B : vector_bool_char) return c_int
8579    is
8580    begin
8581       return vcmpequb_p (CR6_EQ_REV, To_LL_VSC (A), To_LL_VSC (B));
8582    end vec_any_eq;
8583
8584    function vec_any_eq
8585      (A : vector_unsigned_char;
8586       B : vector_unsigned_char) return c_int
8587    is
8588    begin
8589       return vcmpequb_p (CR6_EQ_REV, To_LL_VSC (A), To_LL_VSC (B));
8590    end vec_any_eq;
8591
8592    function vec_any_eq
8593      (A : vector_bool_char;
8594       B : vector_bool_char) return c_int
8595    is
8596    begin
8597       return vcmpequb_p (CR6_EQ_REV, To_LL_VSC (A), To_LL_VSC (B));
8598    end vec_any_eq;
8599
8600    function vec_any_eq
8601      (A : vector_bool_char;
8602       B : vector_unsigned_char) return c_int
8603    is
8604    begin
8605       return vcmpequb_p (CR6_EQ_REV, To_LL_VSC (A), To_LL_VSC (B));
8606    end vec_any_eq;
8607
8608    function vec_any_eq
8609      (A : vector_bool_char;
8610       B : vector_signed_char) return c_int
8611    is
8612    begin
8613       return vcmpequb_p (CR6_EQ_REV, To_LL_VSC (A), To_LL_VSC (B));
8614    end vec_any_eq;
8615
8616    function vec_any_eq
8617      (A : vector_signed_short;
8618       B : vector_bool_short) return c_int
8619    is
8620    begin
8621       return vcmpequh_p (CR6_EQ_REV, To_LL_VSS (A), To_LL_VSS (B));
8622    end vec_any_eq;
8623
8624    function vec_any_eq
8625      (A : vector_signed_short;
8626       B : vector_signed_short) return c_int
8627    is
8628    begin
8629       return vcmpequh_p (CR6_EQ_REV, To_LL_VSS (A), To_LL_VSS (B));
8630    end vec_any_eq;
8631
8632    function vec_any_eq
8633      (A : vector_unsigned_short;
8634       B : vector_bool_short) return c_int
8635    is
8636    begin
8637       return vcmpequh_p (CR6_EQ_REV, To_LL_VSS (A), To_LL_VSS (B));
8638    end vec_any_eq;
8639
8640    function vec_any_eq
8641      (A : vector_unsigned_short;
8642       B : vector_unsigned_short) return c_int
8643    is
8644    begin
8645       return vcmpequh_p (CR6_EQ_REV, To_LL_VSS (A), To_LL_VSS (B));
8646    end vec_any_eq;
8647
8648    function vec_any_eq
8649      (A : vector_bool_short;
8650       B : vector_bool_short) return c_int
8651    is
8652    begin
8653       return vcmpequh_p (CR6_EQ_REV, To_LL_VSS (A), To_LL_VSS (B));
8654    end vec_any_eq;
8655
8656    function vec_any_eq
8657      (A : vector_bool_short;
8658       B : vector_unsigned_short) return c_int
8659    is
8660    begin
8661       return vcmpequh_p (CR6_EQ_REV, To_LL_VSS (A), To_LL_VSS (B));
8662    end vec_any_eq;
8663
8664    function vec_any_eq
8665      (A : vector_bool_short;
8666       B : vector_signed_short) return c_int
8667    is
8668    begin
8669       return vcmpequh_p (CR6_EQ_REV, To_LL_VSS (A), To_LL_VSS (B));
8670    end vec_any_eq;
8671
8672    function vec_any_eq
8673      (A : vector_pixel;
8674       B : vector_pixel) return c_int
8675    is
8676    begin
8677       return vcmpequh_p (CR6_EQ_REV, To_LL_VSS (A), To_LL_VSS (B));
8678    end vec_any_eq;
8679
8680    function vec_any_eq
8681      (A : vector_signed_int;
8682       B : vector_bool_int) return c_int
8683    is
8684    begin
8685       return vcmpequw_p (CR6_EQ_REV, To_LL_VSI (A), To_LL_VSI (B));
8686    end vec_any_eq;
8687
8688    function vec_any_eq
8689      (A : vector_signed_int;
8690       B : vector_signed_int) return c_int
8691    is
8692    begin
8693       return vcmpequw_p (CR6_EQ_REV, To_LL_VSI (A), To_LL_VSI (B));
8694    end vec_any_eq;
8695
8696    function vec_any_eq
8697      (A : vector_unsigned_int;
8698       B : vector_bool_int) return c_int
8699    is
8700    begin
8701       return vcmpequw_p (CR6_EQ_REV, To_LL_VSI (A), To_LL_VSI (B));
8702    end vec_any_eq;
8703
8704    function vec_any_eq
8705      (A : vector_unsigned_int;
8706       B : vector_unsigned_int) return c_int
8707    is
8708    begin
8709       return vcmpequw_p (CR6_EQ_REV, To_LL_VSI (A), To_LL_VSI (B));
8710    end vec_any_eq;
8711
8712    function vec_any_eq
8713      (A : vector_bool_int;
8714       B : vector_bool_int) return c_int
8715    is
8716    begin
8717       return vcmpequw_p (CR6_EQ_REV, To_LL_VSI (A), To_LL_VSI (B));
8718    end vec_any_eq;
8719
8720    function vec_any_eq
8721      (A : vector_bool_int;
8722       B : vector_unsigned_int) return c_int
8723    is
8724    begin
8725       return vcmpequw_p (CR6_EQ_REV, To_LL_VSI (A), To_LL_VSI (B));
8726    end vec_any_eq;
8727
8728    function vec_any_eq
8729      (A : vector_bool_int;
8730       B : vector_signed_int) return c_int
8731    is
8732    begin
8733       return vcmpequw_p (CR6_EQ_REV, To_LL_VSI (A), To_LL_VSI (B));
8734    end vec_any_eq;
8735
8736    function vec_any_eq
8737      (A : vector_float;
8738       B : vector_float) return c_int
8739    is
8740    begin
8741       return vcmpeqfp_p (CR6_EQ_REV, To_LL_VF (A), To_LL_VF (B));
8742    end vec_any_eq;
8743
8744    -- vec_any_ge --
8745
8746    function vec_any_ge
8747      (A : vector_signed_char;
8748       B : vector_bool_char) return c_int
8749    is
8750    begin
8751       return vcmpgtub_p (CR6_LT_REV, To_LL_VSC (B), To_LL_VSC (A));
8752    end vec_any_ge;
8753
8754    function vec_any_ge
8755      (A : vector_unsigned_char;
8756       B : vector_bool_char) return c_int
8757    is
8758    begin
8759       return vcmpgtub_p (CR6_LT_REV, To_LL_VSC (B), To_LL_VSC (A));
8760    end vec_any_ge;
8761
8762    function vec_any_ge
8763      (A : vector_unsigned_char;
8764       B : vector_unsigned_char) return c_int
8765    is
8766    begin
8767       return vcmpgtub_p (CR6_LT_REV, To_LL_VSC (B), To_LL_VSC (A));
8768    end vec_any_ge;
8769
8770    function vec_any_ge
8771      (A : vector_signed_char;
8772       B : vector_signed_char) return c_int
8773    is
8774    begin
8775       return vcmpgtsb_p (CR6_LT_REV, To_LL_VSC (B), To_LL_VSC (A));
8776    end vec_any_ge;
8777
8778    function vec_any_ge
8779      (A : vector_bool_char;
8780       B : vector_unsigned_char) return c_int
8781    is
8782    begin
8783       return vcmpgtub_p (CR6_LT_REV, To_LL_VSC (B), To_LL_VSC (A));
8784    end vec_any_ge;
8785
8786    function vec_any_ge
8787      (A : vector_bool_char;
8788       B : vector_signed_char) return c_int
8789    is
8790    begin
8791       return vcmpgtub_p (CR6_LT_REV, To_LL_VSC (B), To_LL_VSC (A));
8792    end vec_any_ge;
8793
8794    function vec_any_ge
8795      (A : vector_unsigned_short;
8796       B : vector_bool_short) return c_int
8797    is
8798    begin
8799       return vcmpgtuh_p (CR6_LT_REV, To_LL_VSS (B), To_LL_VSS (A));
8800    end vec_any_ge;
8801
8802    function vec_any_ge
8803      (A : vector_unsigned_short;
8804       B : vector_unsigned_short) return c_int
8805    is
8806    begin
8807       return vcmpgtuh_p (CR6_LT_REV, To_LL_VSS (B), To_LL_VSS (A));
8808    end vec_any_ge;
8809
8810    function vec_any_ge
8811      (A : vector_signed_short;
8812       B : vector_signed_short) return c_int
8813    is
8814    begin
8815       return vcmpgtsh_p (CR6_LT_REV, To_LL_VSS (B), To_LL_VSS (A));
8816    end vec_any_ge;
8817
8818    function vec_any_ge
8819      (A : vector_signed_short;
8820       B : vector_bool_short) return c_int
8821    is
8822    begin
8823       return vcmpgtsh_p (CR6_LT_REV, To_LL_VSS (B), To_LL_VSS (A));
8824    end vec_any_ge;
8825
8826    function vec_any_ge
8827      (A : vector_bool_short;
8828       B : vector_unsigned_short) return c_int
8829    is
8830    begin
8831       return vcmpgtuh_p (CR6_LT_REV, To_LL_VSS (B), To_LL_VSS (A));
8832    end vec_any_ge;
8833
8834    function vec_any_ge
8835      (A : vector_bool_short;
8836       B : vector_signed_short) return c_int
8837    is
8838    begin
8839       return vcmpgtuh_p (CR6_LT_REV, To_LL_VSS (B), To_LL_VSS (A));
8840    end vec_any_ge;
8841
8842    function vec_any_ge
8843      (A : vector_signed_int;
8844       B : vector_bool_int) return c_int
8845    is
8846    begin
8847       return vcmpgtuw_p (CR6_LT_REV, To_LL_VSI (B), To_LL_VSI (A));
8848    end vec_any_ge;
8849
8850    function vec_any_ge
8851      (A : vector_unsigned_int;
8852       B : vector_bool_int) return c_int
8853    is
8854    begin
8855       return vcmpgtuw_p (CR6_LT_REV, To_LL_VSI (B), To_LL_VSI (A));
8856    end vec_any_ge;
8857
8858    function vec_any_ge
8859      (A : vector_unsigned_int;
8860       B : vector_unsigned_int) return c_int
8861    is
8862    begin
8863       return vcmpgtuw_p (CR6_LT_REV, To_LL_VSI (B), To_LL_VSI (A));
8864    end vec_any_ge;
8865
8866    function vec_any_ge
8867      (A : vector_signed_int;
8868       B : vector_signed_int) return c_int
8869    is
8870    begin
8871       return vcmpgtsw_p (CR6_LT_REV, To_LL_VSI (B), To_LL_VSI (A));
8872    end vec_any_ge;
8873
8874    function vec_any_ge
8875      (A : vector_bool_int;
8876       B : vector_unsigned_int) return c_int
8877    is
8878    begin
8879       return vcmpgtuw_p (CR6_LT_REV, To_LL_VSI (B), To_LL_VSI (A));
8880    end vec_any_ge;
8881
8882    function vec_any_ge
8883      (A : vector_bool_int;
8884       B : vector_signed_int) return c_int
8885    is
8886    begin
8887       return vcmpgtuw_p (CR6_LT_REV, To_LL_VSI (B), To_LL_VSI (A));
8888    end vec_any_ge;
8889
8890    function vec_any_ge
8891      (A : vector_float;
8892       B : vector_float) return c_int
8893    is
8894    begin
8895       return vcmpgefp_p (CR6_EQ_REV, To_LL_VF (A), To_LL_VF (B));
8896    end vec_any_ge;
8897
8898    -- vec_any_gt --
8899
8900    function vec_any_gt
8901      (A : vector_bool_char;
8902       B : vector_unsigned_char) return c_int
8903    is
8904    begin
8905       return vcmpgtub_p (CR6_EQ_REV, To_LL_VSC (A), To_LL_VSC (B));
8906    end vec_any_gt;
8907
8908    function vec_any_gt
8909      (A : vector_unsigned_char;
8910       B : vector_bool_char) return c_int
8911    is
8912    begin
8913       return vcmpgtub_p (CR6_EQ_REV, To_LL_VSC (A), To_LL_VSC (B));
8914    end vec_any_gt;
8915
8916    function vec_any_gt
8917      (A : vector_unsigned_char;
8918       B : vector_unsigned_char) return c_int
8919    is
8920    begin
8921       return vcmpgtub_p (CR6_EQ_REV, To_LL_VSC (A), To_LL_VSC (B));
8922    end vec_any_gt;
8923
8924    function vec_any_gt
8925      (A : vector_bool_char;
8926       B : vector_signed_char) return c_int
8927    is
8928    begin
8929       return vcmpgtsb_p (CR6_EQ_REV, To_LL_VSC (A), To_LL_VSC (B));
8930    end vec_any_gt;
8931
8932    function vec_any_gt
8933      (A : vector_signed_char;
8934       B : vector_bool_char) return c_int
8935    is
8936    begin
8937       return vcmpgtsb_p (CR6_EQ_REV, To_LL_VSC (A), To_LL_VSC (B));
8938    end vec_any_gt;
8939
8940    function vec_any_gt
8941      (A : vector_signed_char;
8942       B : vector_signed_char) return c_int
8943    is
8944    begin
8945       return vcmpgtsb_p (CR6_EQ_REV, To_LL_VSC (A), To_LL_VSC (B));
8946    end vec_any_gt;
8947
8948    function vec_any_gt
8949      (A : vector_bool_short;
8950       B : vector_unsigned_short) return c_int
8951    is
8952    begin
8953       return vcmpgtuh_p (CR6_EQ_REV, To_LL_VSS (A), To_LL_VSS (B));
8954    end vec_any_gt;
8955
8956    function vec_any_gt
8957      (A : vector_unsigned_short;
8958       B : vector_bool_short) return c_int
8959    is
8960    begin
8961       return vcmpgtuh_p (CR6_EQ_REV, To_LL_VSS (A), To_LL_VSS (B));
8962    end vec_any_gt;
8963
8964    function vec_any_gt
8965      (A : vector_unsigned_short;
8966       B : vector_unsigned_short) return c_int
8967    is
8968    begin
8969       return vcmpgtuh_p (CR6_EQ_REV, To_LL_VSS (A), To_LL_VSS (B));
8970    end vec_any_gt;
8971
8972    function vec_any_gt
8973      (A : vector_bool_short;
8974       B : vector_signed_short) return c_int
8975    is
8976    begin
8977       return vcmpgtsh_p (CR6_EQ_REV, To_LL_VSS (A), To_LL_VSS (B));
8978    end vec_any_gt;
8979
8980    function vec_any_gt
8981      (A : vector_signed_short;
8982       B : vector_bool_short) return c_int
8983    is
8984    begin
8985       return vcmpgtsh_p (CR6_EQ_REV, To_LL_VSS (A), To_LL_VSS (B));
8986    end vec_any_gt;
8987
8988    function vec_any_gt
8989      (A : vector_signed_short;
8990       B : vector_signed_short) return c_int
8991    is
8992    begin
8993       return vcmpgtsh_p (CR6_EQ_REV, To_LL_VSS (A), To_LL_VSS (B));
8994    end vec_any_gt;
8995
8996    function vec_any_gt
8997      (A : vector_bool_int;
8998       B : vector_unsigned_int) return c_int
8999    is
9000    begin
9001       return vcmpgtuw_p (CR6_EQ_REV, To_LL_VSI (A), To_LL_VSI (B));
9002    end vec_any_gt;
9003
9004    function vec_any_gt
9005      (A : vector_unsigned_int;
9006       B : vector_bool_int) return c_int
9007    is
9008    begin
9009       return vcmpgtuw_p (CR6_EQ_REV, To_LL_VSI (A), To_LL_VSI (B));
9010    end vec_any_gt;
9011
9012    function vec_any_gt
9013      (A : vector_unsigned_int;
9014       B : vector_unsigned_int) return c_int
9015    is
9016    begin
9017       return vcmpgtuw_p (CR6_EQ_REV, To_LL_VSI (A), To_LL_VSI (B));
9018    end vec_any_gt;
9019
9020    function vec_any_gt
9021      (A : vector_bool_int;
9022       B : vector_signed_int) return c_int
9023    is
9024    begin
9025       return vcmpgtsw_p (CR6_EQ_REV, To_LL_VSI (A), To_LL_VSI (B));
9026    end vec_any_gt;
9027
9028    function vec_any_gt
9029      (A : vector_signed_int;
9030       B : vector_bool_int) return c_int
9031    is
9032    begin
9033       return vcmpgtsw_p (CR6_EQ_REV, To_LL_VSI (A), To_LL_VSI (B));
9034    end vec_any_gt;
9035
9036    function vec_any_gt
9037      (A : vector_signed_int;
9038       B : vector_signed_int) return c_int
9039    is
9040    begin
9041       return vcmpgtsw_p (CR6_EQ_REV, To_LL_VSI (A), To_LL_VSI (B));
9042    end vec_any_gt;
9043
9044    function vec_any_gt
9045      (A : vector_float;
9046       B : vector_float) return c_int
9047    is
9048    begin
9049       return vcmpgtfp_p (CR6_EQ_REV, To_LL_VF (A), To_LL_VF (B));
9050    end vec_any_gt;
9051
9052    -- vec_any_le --
9053
9054    function vec_any_le
9055      (A : vector_bool_char;
9056       B : vector_unsigned_char) return c_int
9057    is
9058    begin
9059       return vcmpgtub_p (CR6_LT_REV, To_LL_VSC (A), To_LL_VSC (B));
9060    end vec_any_le;
9061
9062    function vec_any_le
9063      (A : vector_unsigned_char;
9064       B : vector_bool_char) return c_int
9065    is
9066    begin
9067       return vcmpgtub_p (CR6_LT_REV, To_LL_VSC (A), To_LL_VSC (B));
9068    end vec_any_le;
9069
9070    function vec_any_le
9071      (A : vector_unsigned_char;
9072       B : vector_unsigned_char) return c_int
9073    is
9074    begin
9075       return vcmpgtub_p (CR6_LT_REV, To_LL_VSC (A), To_LL_VSC (B));
9076    end vec_any_le;
9077
9078    function vec_any_le
9079      (A : vector_bool_char;
9080       B : vector_signed_char) return c_int
9081    is
9082    begin
9083       return vcmpgtsb_p (CR6_LT_REV, To_LL_VSC (A), To_LL_VSC (B));
9084    end vec_any_le;
9085
9086    function vec_any_le
9087      (A : vector_signed_char;
9088       B : vector_bool_char) return c_int
9089    is
9090    begin
9091       return vcmpgtsb_p (CR6_LT_REV, To_LL_VSC (A), To_LL_VSC (B));
9092    end vec_any_le;
9093
9094    function vec_any_le
9095      (A : vector_signed_char;
9096       B : vector_signed_char) return c_int
9097    is
9098    begin
9099       return vcmpgtsb_p (CR6_LT_REV, To_LL_VSC (A), To_LL_VSC (B));
9100    end vec_any_le;
9101
9102    function vec_any_le
9103      (A : vector_bool_short;
9104       B : vector_unsigned_short) return c_int
9105    is
9106    begin
9107       return vcmpgtuh_p (CR6_LT_REV, To_LL_VSS (A), To_LL_VSS (B));
9108    end vec_any_le;
9109
9110    function vec_any_le
9111      (A : vector_unsigned_short;
9112       B : vector_bool_short) return c_int
9113    is
9114    begin
9115       return vcmpgtuh_p (CR6_LT_REV, To_LL_VSS (A), To_LL_VSS (B));
9116    end vec_any_le;
9117
9118    function vec_any_le
9119      (A : vector_unsigned_short;
9120       B : vector_unsigned_short) return c_int
9121    is
9122    begin
9123       return vcmpgtuh_p (CR6_LT_REV, To_LL_VSS (A), To_LL_VSS (B));
9124    end vec_any_le;
9125
9126    function vec_any_le
9127      (A : vector_bool_short;
9128       B : vector_signed_short) return c_int
9129    is
9130    begin
9131       return vcmpgtsh_p (CR6_LT_REV, To_LL_VSS (A), To_LL_VSS (B));
9132    end vec_any_le;
9133
9134    function vec_any_le
9135      (A : vector_signed_short;
9136       B : vector_bool_short) return c_int
9137    is
9138    begin
9139       return vcmpgtsh_p (CR6_LT_REV, To_LL_VSS (A), To_LL_VSS (B));
9140    end vec_any_le;
9141
9142    function vec_any_le
9143      (A : vector_signed_short;
9144       B : vector_signed_short) return c_int
9145    is
9146    begin
9147       return vcmpgtsh_p (CR6_LT_REV, To_LL_VSS (A), To_LL_VSS (B));
9148    end vec_any_le;
9149
9150    function vec_any_le
9151      (A : vector_bool_int;
9152       B : vector_unsigned_int) return c_int
9153    is
9154    begin
9155       return vcmpgtuw_p (CR6_LT_REV, To_LL_VSI (A), To_LL_VSI (B));
9156    end vec_any_le;
9157
9158    function vec_any_le
9159      (A : vector_unsigned_int;
9160       B : vector_bool_int) return c_int
9161    is
9162    begin
9163       return vcmpgtuw_p (CR6_LT_REV, To_LL_VSI (A), To_LL_VSI (B));
9164    end vec_any_le;
9165
9166    function vec_any_le
9167      (A : vector_unsigned_int;
9168       B : vector_unsigned_int) return c_int
9169    is
9170    begin
9171       return vcmpgtuw_p (CR6_LT_REV, To_LL_VSI (A), To_LL_VSI (B));
9172    end vec_any_le;
9173
9174    function vec_any_le
9175      (A : vector_bool_int;
9176       B : vector_signed_int) return c_int
9177    is
9178    begin
9179       return vcmpgtsw_p (CR6_LT_REV, To_LL_VSI (A), To_LL_VSI (B));
9180    end vec_any_le;
9181
9182    function vec_any_le
9183      (A : vector_signed_int;
9184       B : vector_bool_int) return c_int
9185    is
9186    begin
9187       return vcmpgtsw_p (CR6_LT_REV, To_LL_VSI (A), To_LL_VSI (B));
9188    end vec_any_le;
9189
9190    function vec_any_le
9191      (A : vector_signed_int;
9192       B : vector_signed_int) return c_int
9193    is
9194    begin
9195       return vcmpgtsw_p (CR6_LT_REV, To_LL_VSI (A), To_LL_VSI (B));
9196    end vec_any_le;
9197
9198    function vec_any_le
9199      (A : vector_float;
9200       B : vector_float) return c_int
9201    is
9202    begin
9203       return vcmpgefp_p (CR6_EQ_REV, To_LL_VF (B), To_LL_VF (A));
9204    end vec_any_le;
9205
9206    -- vec_any_lt --
9207
9208    function vec_any_lt
9209      (A : vector_bool_char;
9210       B : vector_unsigned_char) return c_int
9211    is
9212    begin
9213       return vcmpgtub_p (CR6_EQ_REV, To_LL_VSC (B), To_LL_VSC (A));
9214    end vec_any_lt;
9215
9216    function vec_any_lt
9217      (A : vector_unsigned_char;
9218       B : vector_bool_char) return c_int
9219    is
9220    begin
9221       return vcmpgtub_p (CR6_EQ_REV, To_LL_VSC (B), To_LL_VSC (A));
9222    end vec_any_lt;
9223
9224    function vec_any_lt
9225      (A : vector_unsigned_char;
9226       B : vector_unsigned_char) return c_int
9227    is
9228    begin
9229       return vcmpgtub_p (CR6_EQ_REV, To_LL_VSC (B), To_LL_VSC (A));
9230    end vec_any_lt;
9231
9232    function vec_any_lt
9233      (A : vector_bool_char;
9234       B : vector_signed_char) return c_int
9235    is
9236    begin
9237       return vcmpgtsb_p (CR6_EQ_REV, To_LL_VSC (B), To_LL_VSC (A));
9238    end vec_any_lt;
9239
9240    function vec_any_lt
9241      (A : vector_signed_char;
9242       B : vector_bool_char) return c_int
9243    is
9244    begin
9245       return vcmpgtsb_p (CR6_EQ_REV, To_LL_VSC (B), To_LL_VSC (A));
9246    end vec_any_lt;
9247
9248    function vec_any_lt
9249      (A : vector_signed_char;
9250       B : vector_signed_char) return c_int
9251    is
9252    begin
9253       return vcmpgtsb_p (CR6_EQ_REV, To_LL_VSC (B), To_LL_VSC (A));
9254    end vec_any_lt;
9255
9256    function vec_any_lt
9257      (A : vector_bool_short;
9258       B : vector_unsigned_short) return c_int
9259    is
9260    begin
9261       return vcmpgtuh_p (CR6_EQ_REV, To_LL_VSS (B), To_LL_VSS (A));
9262    end vec_any_lt;
9263
9264    function vec_any_lt
9265      (A : vector_unsigned_short;
9266       B : vector_bool_short) return c_int
9267    is
9268    begin
9269       return vcmpgtuh_p (CR6_EQ_REV, To_LL_VSS (B), To_LL_VSS (A));
9270    end vec_any_lt;
9271
9272    function vec_any_lt
9273      (A : vector_unsigned_short;
9274       B : vector_unsigned_short) return c_int
9275    is
9276    begin
9277       return vcmpgtuh_p (CR6_EQ_REV, To_LL_VSS (B), To_LL_VSS (A));
9278    end vec_any_lt;
9279
9280    function vec_any_lt
9281      (A : vector_bool_short;
9282       B : vector_signed_short) return c_int
9283    is
9284    begin
9285       return vcmpgtsh_p (CR6_EQ_REV, To_LL_VSS (B), To_LL_VSS (A));
9286    end vec_any_lt;
9287
9288    function vec_any_lt
9289      (A : vector_signed_short;
9290       B : vector_bool_short) return c_int
9291    is
9292    begin
9293       return vcmpgtsh_p (CR6_EQ_REV, To_LL_VSS (B), To_LL_VSS (A));
9294    end vec_any_lt;
9295
9296    function vec_any_lt
9297      (A : vector_signed_short;
9298       B : vector_signed_short) return c_int
9299    is
9300    begin
9301       return vcmpgtsh_p (CR6_EQ_REV, To_LL_VSS (B), To_LL_VSS (A));
9302    end vec_any_lt;
9303
9304    function vec_any_lt
9305      (A : vector_bool_int;
9306       B : vector_unsigned_int) return c_int
9307    is
9308    begin
9309       return vcmpgtuw_p (CR6_EQ_REV, To_LL_VSI (B), To_LL_VSI (A));
9310    end vec_any_lt;
9311
9312    function vec_any_lt
9313      (A : vector_unsigned_int;
9314       B : vector_bool_int) return c_int
9315    is
9316    begin
9317       return vcmpgtuw_p (CR6_EQ_REV, To_LL_VSI (B), To_LL_VSI (A));
9318    end vec_any_lt;
9319
9320    function vec_any_lt
9321      (A : vector_unsigned_int;
9322       B : vector_unsigned_int) return c_int
9323    is
9324    begin
9325       return vcmpgtuw_p (CR6_EQ_REV, To_LL_VSI (B), To_LL_VSI (A));
9326    end vec_any_lt;
9327
9328    function vec_any_lt
9329      (A : vector_bool_int;
9330       B : vector_signed_int) return c_int
9331    is
9332    begin
9333       return vcmpgtsw_p (CR6_EQ_REV, To_LL_VSI (B), To_LL_VSI (A));
9334    end vec_any_lt;
9335
9336    function vec_any_lt
9337      (A : vector_signed_int;
9338       B : vector_bool_int) return c_int
9339    is
9340    begin
9341       return vcmpgtsw_p (CR6_EQ_REV, To_LL_VSI (B), To_LL_VSI (A));
9342    end vec_any_lt;
9343
9344    function vec_any_lt
9345      (A : vector_signed_int;
9346       B : vector_signed_int) return c_int
9347    is
9348    begin
9349       return vcmpgtsw_p (CR6_EQ_REV, To_LL_VSI (B), To_LL_VSI (A));
9350    end vec_any_lt;
9351
9352    function vec_any_lt
9353      (A : vector_float;
9354       B : vector_float) return c_int
9355    is
9356    begin
9357       return vcmpgtfp_p (CR6_EQ_REV, To_LL_VF (B), To_LL_VF (A));
9358    end vec_any_lt;
9359
9360    -- vec_any_nan --
9361
9362    function vec_any_nan
9363      (A : vector_float) return c_int
9364    is
9365    begin
9366       return vcmpeqfp_p (CR6_LT_REV, To_LL_VF (A), To_LL_VF (A));
9367    end vec_any_nan;
9368
9369    -- vec_any_ne --
9370
9371    function vec_any_ne
9372      (A : vector_signed_char;
9373       B : vector_bool_char) return c_int
9374    is
9375    begin
9376       return vcmpequb_p (CR6_LT_REV, To_LL_VSC (A), To_LL_VSC (B));
9377    end vec_any_ne;
9378
9379    function vec_any_ne
9380      (A : vector_signed_char;
9381       B : vector_signed_char) return c_int
9382    is
9383    begin
9384       return vcmpequb_p (CR6_LT_REV, To_LL_VSC (A), To_LL_VSC (B));
9385    end vec_any_ne;
9386
9387    function vec_any_ne
9388      (A : vector_unsigned_char;
9389       B : vector_bool_char) return c_int
9390    is
9391    begin
9392       return vcmpequb_p (CR6_LT_REV, To_LL_VSC (A), To_LL_VSC (B));
9393    end vec_any_ne;
9394
9395    function vec_any_ne
9396      (A : vector_unsigned_char;
9397       B : vector_unsigned_char) return c_int
9398    is
9399    begin
9400       return vcmpequb_p (CR6_LT_REV, To_LL_VSC (A), To_LL_VSC (B));
9401    end vec_any_ne;
9402
9403    function vec_any_ne
9404      (A : vector_bool_char;
9405       B : vector_bool_char) return c_int
9406    is
9407    begin
9408       return vcmpequb_p (CR6_LT_REV, To_LL_VSC (A), To_LL_VSC (B));
9409    end vec_any_ne;
9410
9411    function vec_any_ne
9412      (A : vector_bool_char;
9413       B : vector_unsigned_char) return c_int
9414    is
9415    begin
9416       return vcmpequb_p (CR6_LT_REV, To_LL_VSC (A), To_LL_VSC (B));
9417    end vec_any_ne;
9418
9419    function vec_any_ne
9420      (A : vector_bool_char;
9421       B : vector_signed_char) return c_int
9422    is
9423    begin
9424       return vcmpequb_p (CR6_LT_REV, To_LL_VSC (A), To_LL_VSC (B));
9425    end vec_any_ne;
9426
9427    function vec_any_ne
9428      (A : vector_signed_short;
9429       B : vector_bool_short) return c_int
9430    is
9431    begin
9432       return vcmpequh_p (CR6_LT_REV, To_LL_VSS (A), To_LL_VSS (B));
9433    end vec_any_ne;
9434
9435    function vec_any_ne
9436      (A : vector_signed_short;
9437       B : vector_signed_short) return c_int
9438    is
9439    begin
9440       return vcmpequh_p (CR6_LT_REV, To_LL_VSS (A), To_LL_VSS (B));
9441    end vec_any_ne;
9442
9443    function vec_any_ne
9444      (A : vector_unsigned_short;
9445       B : vector_bool_short) return c_int
9446    is
9447    begin
9448       return vcmpequh_p (CR6_LT_REV, To_LL_VSS (A), To_LL_VSS (B));
9449    end vec_any_ne;
9450
9451    function vec_any_ne
9452      (A : vector_unsigned_short;
9453       B : vector_unsigned_short) return c_int
9454    is
9455    begin
9456       return vcmpequh_p (CR6_LT_REV, To_LL_VSS (A), To_LL_VSS (B));
9457    end vec_any_ne;
9458
9459    function vec_any_ne
9460      (A : vector_bool_short;
9461       B : vector_bool_short) return c_int
9462    is
9463    begin
9464       return vcmpequh_p (CR6_LT_REV, To_LL_VSS (A), To_LL_VSS (B));
9465    end vec_any_ne;
9466
9467    function vec_any_ne
9468      (A : vector_bool_short;
9469       B : vector_unsigned_short) return c_int
9470    is
9471    begin
9472       return vcmpequh_p (CR6_LT_REV, To_LL_VSS (A), To_LL_VSS (B));
9473    end vec_any_ne;
9474
9475    function vec_any_ne
9476      (A : vector_bool_short;
9477       B : vector_signed_short) return c_int
9478    is
9479    begin
9480       return vcmpequh_p (CR6_LT_REV, To_LL_VSS (A), To_LL_VSS (B));
9481    end vec_any_ne;
9482
9483    function vec_any_ne
9484      (A : vector_pixel;
9485       B : vector_pixel) return c_int
9486    is
9487    begin
9488       return vcmpequh_p (CR6_LT_REV, To_LL_VSS (A), To_LL_VSS (B));
9489    end vec_any_ne;
9490
9491    function vec_any_ne
9492      (A : vector_signed_int;
9493       B : vector_bool_int) return c_int
9494    is
9495    begin
9496       return vcmpequw_p (CR6_LT_REV, To_LL_VSI (A), To_LL_VSI (B));
9497    end vec_any_ne;
9498
9499    function vec_any_ne
9500      (A : vector_signed_int;
9501       B : vector_signed_int) return c_int
9502    is
9503    begin
9504       return vcmpequw_p (CR6_LT_REV, To_LL_VSI (A), To_LL_VSI (B));
9505    end vec_any_ne;
9506
9507    function vec_any_ne
9508      (A : vector_unsigned_int;
9509       B : vector_bool_int) return c_int
9510    is
9511    begin
9512       return vcmpequw_p (CR6_LT_REV, To_LL_VSI (A), To_LL_VSI (B));
9513    end vec_any_ne;
9514
9515    function vec_any_ne
9516      (A : vector_unsigned_int;
9517       B : vector_unsigned_int) return c_int
9518    is
9519    begin
9520       return vcmpequw_p (CR6_LT_REV, To_LL_VSI (A), To_LL_VSI (B));
9521    end vec_any_ne;
9522
9523    function vec_any_ne
9524      (A : vector_bool_int;
9525       B : vector_bool_int) return c_int
9526    is
9527    begin
9528       return vcmpequw_p (CR6_LT_REV, To_LL_VSI (A), To_LL_VSI (B));
9529    end vec_any_ne;
9530
9531    function vec_any_ne
9532      (A : vector_bool_int;
9533       B : vector_unsigned_int) return c_int
9534    is
9535    begin
9536       return vcmpequw_p (CR6_LT_REV, To_LL_VSI (A), To_LL_VSI (B));
9537    end vec_any_ne;
9538
9539    function vec_any_ne
9540      (A : vector_bool_int;
9541       B : vector_signed_int) return c_int
9542    is
9543    begin
9544       return vcmpequw_p (CR6_LT_REV, To_LL_VSI (A), To_LL_VSI (B));
9545    end vec_any_ne;
9546
9547    function vec_any_ne
9548      (A : vector_float;
9549       B : vector_float) return c_int
9550    is
9551    begin
9552       return vcmpeqfp_p (CR6_LT_REV, To_LL_VF (A), To_LL_VF (B));
9553    end vec_any_ne;
9554
9555    -- vec_any_nge --
9556
9557    function vec_any_nge
9558      (A : vector_float;
9559       B : vector_float) return c_int
9560    is
9561    begin
9562       return vcmpgefp_p (CR6_LT_REV, To_LL_VF (A), To_LL_VF (B));
9563    end vec_any_nge;
9564
9565    -- vec_any_ngt --
9566
9567    function vec_any_ngt
9568      (A : vector_float;
9569       B : vector_float) return c_int
9570    is
9571    begin
9572       return vcmpgtfp_p (CR6_LT_REV, To_LL_VF (A), To_LL_VF (B));
9573    end vec_any_ngt;
9574
9575    -- vec_any_nle --
9576
9577    function vec_any_nle
9578      (A : vector_float;
9579       B : vector_float) return c_int
9580    is
9581    begin
9582       return vcmpgefp_p (CR6_LT_REV, To_LL_VF (B), To_LL_VF (A));
9583    end vec_any_nle;
9584
9585    -- vec_any_nlt --
9586
9587    function vec_any_nlt
9588      (A : vector_float;
9589       B : vector_float) return c_int
9590    is
9591    begin
9592       return vcmpgtfp_p (CR6_LT_REV, To_LL_VF (B), To_LL_VF (A));
9593    end vec_any_nlt;
9594
9595    -- vec_any_numeric --
9596
9597    function vec_any_numeric
9598      (A : vector_float) return c_int
9599    is
9600    begin
9601       return vcmpeqfp_p (CR6_EQ_REV, To_LL_VF (A), To_LL_VF (A));
9602    end vec_any_numeric;
9603
9604    -- vec_any_out --
9605
9606    function vec_any_out
9607      (A : vector_float;
9608       B : vector_float) return c_int
9609    is
9610    begin
9611       return vcmpbfp_p (CR6_EQ_REV, To_LL_VF (A), To_LL_VF (B));
9612    end vec_any_out;
9613
9614    -- vec_step --
9615
9616    function vec_step
9617      (V : vector_unsigned_char) return Integer
9618    is
9619       pragma Unreferenced (V);
9620    begin
9621       return 16;
9622    end vec_step;
9623
9624    function vec_step
9625      (V : vector_signed_char) return Integer
9626    is
9627       pragma Unreferenced (V);
9628    begin
9629       return 16;
9630    end vec_step;
9631
9632    function vec_step
9633      (V : vector_bool_char) return Integer
9634    is
9635       pragma Unreferenced (V);
9636    begin
9637       return 16;
9638    end vec_step;
9639
9640    function vec_step
9641      (V : vector_unsigned_short) return Integer
9642    is
9643       pragma Unreferenced (V);
9644    begin
9645       return 8;
9646    end vec_step;
9647
9648    function vec_step
9649      (V : vector_signed_short) return Integer
9650    is
9651       pragma Unreferenced (V);
9652    begin
9653       return 8;
9654    end vec_step;
9655
9656    function vec_step
9657      (V : vector_bool_short) return Integer
9658    is
9659       pragma Unreferenced (V);
9660    begin
9661       return 8;
9662    end vec_step;
9663
9664    function vec_step
9665      (V : vector_unsigned_int) return Integer
9666    is
9667       pragma Unreferenced (V);
9668    begin
9669       return 4;
9670    end vec_step;
9671
9672    function vec_step
9673      (V : vector_signed_int) return Integer
9674    is
9675       pragma Unreferenced (V);
9676    begin
9677       return 4;
9678    end vec_step;
9679
9680    function vec_step
9681      (V : vector_bool_int) return Integer
9682    is
9683       pragma Unreferenced (V);
9684    begin
9685       return 4;
9686    end vec_step;
9687
9688    function vec_step
9689      (V : vector_float) return Integer
9690    is
9691       pragma Unreferenced (V);
9692    begin
9693       return 4;
9694    end vec_step;
9695
9696    function vec_step
9697      (V : vector_pixel) return Integer
9698    is
9699       pragma Unreferenced (V);
9700    begin
9701       return 4;
9702    end vec_step;
9703
9704 end GNAT.Altivec.Vector_Operations;