PR inline-asm/84742
[official-gcc.git] / gcc / testsuite / gcc.target / i386 / pr55845.c
blobdaf04e54a726714844297c1068b1355b4234346b
1 /* { dg-do run } */
2 /* { dg-require-effective-target avx } */
3 /* { dg-options "-O3 -ffast-math -fschedule-insns -mavx -mvzeroupper" } */
5 #include "avx-check.h"
7 #define N 100
9 double
10 __attribute__((noinline))
11 foo (int size, double *y, double *x)
13 double sum = 0.0;
14 int i;
16 for (i = 0; i < size; i++)
17 sum += y[i] * x[i];
19 return sum;
22 static void
23 __attribute__ ((noinline))
24 avx_test ()
26 double x[N], y[N];
27 double s;
28 int i;
30 for (i = 0; i < N; i++)
32 x[i] = i;
33 y[i] = i;
36 s = foo (N, y, x);
38 if (s != 328350.0)
39 abort ();