https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101185
H.J. Lu <hjl.tools at gmail dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |hjl.tools at gmail dot com Keywords| |patch Ever confirmed|0 |1 Last reconfirmed| |2021-06-24 Status|UNCONFIRMED |NEW --- Comment #13 from H.J. Lu <hjl.tools at gmail dot com> --- (In reply to Richard Biener from comment #12) > (In reply to Hongtao.liu from comment #7) > > The key point here is cpuid check function should not be compiled with > > -mavx512vl or -mavx512bw, rely on cost model or alloca order is not > > all-inclusive. > > Yeah, it looks bogus to check for AVX512 in a function that has the ISA > already enabled ... This worked by accident, not by design. The cost of mask register is orthogonal to this CPUID issue. CPUID check should be compiled with __attribute__ ((target("general-regs-only"))): https://gcc.gnu.org/pipermail/gcc-patches/2021-June/573616.html