https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91652
Jakub Jelinek <jakub at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution|--- |INVALID --- Comment #3 from Jakub Jelinek <jakub at gcc dot gnu.org> --- I don't believe this is a bug. If you look up the Intel CPU manuals, the FMA CPUID Feature Flag guards the VEX encoded VF{,N}M{ADD,SUB,ADDSUB}{132,213,231}{S,P}{S,D} instructions, but not the EVEX encoded ones, those are guarded just by AVX512F or AVX512F and AVX512VL CPUID Feature Flags. Thus, -mno-fma shouldn't affect them, -mno-avx512f should. And you can use -ffp-contract= to decide if code that isn't already using explicit fma should be converted to FMA or not if the instructions are available.