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

Mark Wieczorek <mark.wieczorek at oca dot eu> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|WAITING                     |RESOLVED
         Resolution|---                         |FIXED

--- Comment #4 from Mark Wieczorek <mark.wieczorek at oca dot eu> ---
Thanks for the help. After realizing that the fftw_execute call was in fact
suspicious I went to their web site and found that it had been updated
recently. They state that 

"we have had reports that this causes problems with some recent optimizing
Fortran compilers. The problem is, because the input/output arrays are not
passed as explicit arguments to dfftw_execute, the semantics of Fortran (unlike
C) allow the compiler to assume that the input/output arrays are not changed by
dfftw_execute. As a consequence, certain compilers end up optimizing out or
repositioning the call to dfftw_execute, assuming incorrectly that it does
nothing."

They then suggest using new convenience functions that are like

call fftw_execute(plan, coef, grid)

where the coef and grid variable are just placeholders so that optimizer
understands the dependencies. 

I am going to consider this closed. Thanks again!

Reply via email to