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!