1 /* { dg-do compile } */
2 
3 typedef float __m128 __attribute__ ((__vector_size__ (16)));
4 __extension__ typedef __PTRDIFF_TYPE__ ptrdiff_t;
5 
6 extern void foo (__m128 *);
7 extern void abort (void);
8 
9 __m128 y = { 0.0, 1.0, 2.0, 3.0 };
10 
11 void
bar(__m128 * x,int align)12 bar (__m128 *x, int align)
13 {
14   if ((((ptrdiff_t) x) & (align - 1)) != 0)
15     abort ();
16   if (__builtin_memcmp (x, &y, sizeof (y)) != 0)
17     abort ();
18 }
19 
20 int
main()21 main ()
22 {
23   foo (&y);
24   return 0;
25 }
26