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.