https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69299

            Bug ID: 69299
           Summary: [6 Regression] -mavx performance degradation with
                    r232088
           Product: gcc
           Version: 6.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: jakub at gcc dot gnu.org
                CC: hjl.tools at gmail dot com, uros at gcc dot gnu.org,
                    vmakarov at gcc dot gnu.org
  Target Milestone: ---

Reduced testcase:

-Ofast -mavx -mno-avx2 -mtune=bdver2

float *a, *b;
int c, d, e, f;
void
foo (void)
{
  for (; c; c++)
    a[c] = 0;
  if (!d)
    for (; c < f; c++)
      b[c] = (double) e / b[c];
}

There are various differences of the kind:
-       vcvtps2pd       16(%rsp), %xmm3
+       vmovaps 16(%rsp), %xmm7
+       vcvtps2pd       %xmm7, %xmm3

Reply via email to