OSDN Git Service

gcc:
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gcc.target / i386 / vectorize3.c
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
6 float a[256];
7 int b[256];
8 unsigned short c[256];
9
10 extern long lrintf (float);
11
12 void foo(void)
13 {
14   int i;
15
16   for (i=0; i<256; ++i)
17     b[i] = lrintf (a[i]);
18 }
19
20 void bar(void)
21 {
22   int i;
23
24   for (i=0; i<256; ++i)
25     {
26       b[i] = lrintf (a[i]);
27       c[i] += c[i];
28     }
29 }
30
31 /* { dg-final { scan-assembler "cvtps2dq" } } */