1/* { dg-do compile } */
2#include <altivec.h>
3vector unsigned char u8a,  u8b,  u8c,  u8d, *u8ptr;
4vector signed short s16a, s16b, s16c, s16d;
5vector unsigned short u16a, u16b, u16c, u16d;
6vector unsigned int u32a, u32b, u32c, u32d;
7vector float f32a, f32b, f32c, f32d, f32e;
8int i, j, *p;
9
10void test()
11{
12  u8c  = vec_add(u8a, u8b);
13  f32c = vec_ceil(f32a);
14  f32d = vec_vcfux(u32a, 31U);
15  s16c = vec_splat_s16(-16);
16  u8d  = vec_vsldoi(u8a, u8b, 15);
17  f32e = vec_vmaddfp(f32a, f32b, f32c);
18  /* vec_dstst(u8ptr, i, 3U); */
19  vec_dss(3);
20  vec_dssall();
21  vec_mtvscr(u8a);
22  u16a = vec_mfvscr();
23}
24