1 /* PR middle-end/37010 */
2 /* { dg-do run { target { { i?86-*-* x86_64-*-* } && ia32 } } } */
3 /* { dg-additional-options "-mmmx -msse2 -mpreferred-stack-boundary=2" } */
4 /* { dg-require-effective-target sse2_runtime } */
8 typedef __PTRDIFF_TYPE__
ptrdiff_t;
9 typedef float __m128
__attribute__ ((__vector_size__ (16), __may_alias__
));
10 typedef int aligned
__attribute__((aligned(16)));
12 extern void abort (void);
17 __attribute__ ((noinline
))
18 check_int (int *i
, int align
)
21 if ((((ptrdiff_t) i
) & (align
- 1)) != 0)
29 __attribute__ ((noinline
))
30 foo (__m128 x
, __m128 y
,__m128 z
,__m128 a
, int size
)
34 if (size
!= 5 || check_int (&i
, __alignof__(i
)) != i
)
47 if (__builtin_memcmp (&r
, &x
, sizeof (r
)))