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
      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
      21  main ()
      22  {
      23    foo (&y);
      24    return 0;
      25  }