1 /* { dg-do run { target { powerpc*-*-* && vmx_hw } } } */
2 /* { dg-do compile { target { powerpc*-*-* && { ! vmx_hw } } } } */
3 /* { dg-require-effective-target powerpc_altivec_ok } */
4 /* { dg-options "-maltivec" } */
5 
6 #include <altivec.h>
7 
8 extern void abort (void);
9 
10 typedef int v4si __attribute__ ((vector_size (16)));
11 
12 #define MAGIC_NUMBER 12345
13 
14 v4si my_vect;
15 int my_array[4] __attribute__ ((aligned (16)));
16 
initialize(int a)17 void initialize (int a)
18 {
19   my_vect = (v4si) {0, a, 2, 3};
20   vec_st (my_vect, 0, my_array);
21 }
22 
verify(void)23 int verify (void)
24 {
25   if (my_array[1] != MAGIC_NUMBER)
26     abort ();
27 }
28 
main(void)29 int main (void)
30 {
31   initialize (MAGIC_NUMBER);
32   verify ();
33   return 0;
34 }
35 
36