1 /* { dg-do compile } */
2 /* { dg-require-effective-target ia32 } */
3 /* { dg-options "-O -march=i686" } */
5 #pragma GCC push_options
6 #pragma GCC target("sse2")
7 typedef int __v4si
__attribute__ ((__vector_size__ (16)));
8 typedef long long __m128i
__attribute__ ((__vector_size__ (16), __may_alias__
));
10 extern __inline __m128i
__attribute__((__gnu_inline__
, __always_inline__
, __artificial__
))
11 _mm_set_epi32 (int __q3
, int __q2
, int __q1
, int __q0
) /* { dg-error "target specific option mismatch" } */
13 return __extension__ (__m128i
)(__v4si
){ __q0
, __q1
, __q2
, __q3
};
15 #pragma GCC pop_options
20 { /* { dg-message "warning: SSE vector return without SSE enabled changes the ABI" } */
21 return _mm_set_epi32 (0, 0, 0, 0); /* { dg-message "called from here" } */