/* { dg-do run { target vect_simd_clones } } */ /* { dg-additional-options "-msse2" { target sse2_runtime } } */ /* { dg-additional-options "-mavx" { target avx_runtime } } */ #define N 100 #define EPS 0.0000000000000001 #include void init(double *a, double *a_ref, double *b, int n) { int i; for ( i=0; i EPS || b[i] - a[i] > EPS) abort (); } int main () { int i; double a[N], a_ref[N], b[N]; init(a, a_ref, b, N); work(a, b, N ); work_ref(a_ref, b, N ); check(a, a_ref); return 0; }