1 /* PR target/61423 */
2 /* { dg-do run { target ia32 } } */
3 /* { dg-options "-O1 -ftree-vectorize -msse2 -mfpmath=387 -mtune=core2" } */
4 
5 #define N 1024
6 static unsigned int A[N];
7 
8 double
9 __attribute__((noinline))
func(void)10 func (void)
11 {
12   unsigned int sum = 0;
13   unsigned i;
14   double t;
15 
16   for (i = 0; i < N; i++)
17     sum += A[i];
18 
19   t = sum;
20   return t;
21 }
22 
23 int
main()24 main ()
25 {
26   unsigned i;
27   double d;
28 
29   for(i = 0; i < N; i++)
30     A[i] = 1;
31 
32   d = func();
33 
34   if (d != 1024.0)
35     __builtin_abort ();
36 
37   return 0;
38 }
39