https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110921
--- Comment #11 from Hongtao.liu <crazylht at gmail dot com> --- (In reply to 罗勇刚(Yonggang Luo) from comment #10) > (In reply to Hongtao.liu from comment #9) > > > > Without `-mbmi` option, gcc can not compile and all other three compiler > > > can compile. > > > > As long as it keeps semantics(respect zero input), I think this is > > acceptable. > > Yeap, it's acceptable, but consistence with Clang/MSVC/ICL would be better. > That would makes the cross-platform code easier, besides, GCC also works for > WIN32, that's needs GCC to be consistence with MSVC Sorry for confusion, I meant generating codes like f(int, int): # @f(int, int) test edi, edi je .LBB0_2 rep bsf eax, edi ret .LBB0_2: mov eax, 32 ret w/o mbmi is acceptable as long as it respect zero input.