Intel OneAPI 2023 has just arrived in my Ubuntu 22.10. One important change is that ifx is now supporting -corray:
ifx version 2023.0.0
- Intel Fortran Compiler, based on modern LLVM technology, now has up to Fortran 2018 full language standards support, including Coarrays eliminating the need for external APIs such as MPI or OpenMP. To easily express offload parallelism the compiler adds DO CONCURRENT GPU offload support.
…
The answer is given in the other thread on this topic. The reciprocal of the denominator is a denormal number, so you will get zero when the expression is evaluated as a reciprocal and multiplication sequence and when denormals are set to zero.
I would not call this a compiler bug. I would say this is a problem that the programmer should fix by scaling the numerator and denominator values appropriately.
Thank you for testing this. The problem occurs only if some vectorization is involved. It does not affect scalar divisions. See the other thread for detailed discussions.