1/* { dg-do compile } */ 2/* { dg-require-effective-target ilp32 } */ 3/* { dg-require-effective-target sse2 } */ 4/* { dg-options "-O2 -ffast-math -ftree-vectorize -msse2 -mfpmath=sse" } */ 5 6double a[256]; 7int b[256]; 8unsigned short c[256]; 9 10extern long lrint (double); 11 12void foo(void) 13{ 14 int i; 15 16 for (i=0; i<256; ++i) 17 b[i] = lrint (a[i]); 18} 19 20void bar(void) 21{ 22 int i; 23 24 for (i=0; i<256; ++i) 25 { 26 b[i] = lrint (a[i]); 27 c[i] += c[i]; 28 } 29} 30 31/* { dg-final { scan-assembler "cvtpd2dq" } } */ 32