view gcc/testsuite/gcc.dg/vect/pr85597.c @ 131:84e7813d76e9

gcc-8.2
author mir3636
date Thu, 25 Oct 2018 07:37:49 +0900
parents
children
line wrap: on
line source

/* { dg-do compile } */
/* { dg-options "-O3" } */
/* { dg-additional-options "-mfma" { target { x86_64-*-* i?86-*-* } } } */

extern double fma (double, double, double);

static inline void
bar (int i, double *D, double *S)
{
  while (i-- > 0)
    {
      D[0] = fma (1, S[0], D[0]);
      D[1] = fma (1, S[1], D[1]);
      D[2] = fma (1, S[2], D[2]);
      D[3] = fma (1, S[3], D[3]);
      D += 4;
      S += 4;
    }
}

void
foo (double *d, double *s)
{
  bar (10, d, s);
}