1 /* { dg-do compile } */
2 #include <altivec.h>
s16ss()3 vector signed short s16ss() { vector signed short a; return vec_subs(a,a); }
s16s()4 vector signed short s16s() { vector signed short a; return vec_sub(a,a); }
s16x()5 vector signed short s16x() { vector signed short a; return vec_xor(a,a); }
s16a()6 vector signed short s16a() { vector signed short a; return vec_andc(a,a); }
7 vector unsigned char u8;
8 vector signed short s16;
9 vector bool int b32;
10 vector float f32;
11 vector pixel p16;
x()12 void x()
13 {
14 u8 = ((vector unsigned char){3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3});
15 s16 = ((vector signed short){-7,-7,-7,-7,-7,-7,-7,-7});
16 b32 = ((vector bool int) {10,20,30,40});
17 f32 = ((vector float) {2,4,6,8});
18 p16 = ((vector pixel){23,23,23,23,23,23,23,23});
19 }
20 vector unsigned int a;
21 vector unsigned int b;
f(void)22 void f(void) {
23 a = ((vector unsigned int){1,1,1,1});
24 b = ((vector unsigned int){1,2,3,4});
25 }
26