1 /* PR target/13685 */ 2 /* { dg-do compile } */ 3 /* { dg-options "-Os -msse" } */ 4 5 typedef float __m128 __attribute__ ((vector_size (16))); 6 typedef int __m64 __attribute__ ((vector_size (8))); 7 8 int puts (const char *s); 9 void foo (__m128 *, __m64 *, int); 10 main(void)11int main (void) 12 { 13 foo (0, 0, 0); 14 return 0; 15 } 16 foo(__m128 * dst,__m64 * src,int n)17void foo (__m128 *dst, __m64 *src, int n) 18 { 19 __m128 xmm0 = { 0 }; 20 while (n > 64) 21 { 22 puts (""); 23 xmm0 = __builtin_ia32_cvtpi2ps (xmm0, *src); 24 *dst = xmm0; 25 n --; 26 } 27 } 28