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

kargls at comcast dot net changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |kargls at comcast dot net

--- Comment #1 from kargls at comcast dot net ---
Looks like a wrong component was chosen.  I get nearly identical assembly with

#include <complex.h>
#include <math.h>

void
foo(double complex *a, double *b, int n)
{
  for (int i=0; i < n; i++)
     b[i] = cabs(a[i]) * cabs(a[i]);
}

~/work/bin/gcc      -S -mavx2 -mfma -Ofast -o zc.s a.c
~/work/bin/gfortran -S -mavx2 -mfma -Ofast -o zf.s -fno-underscore a.f90

Reply via email to