https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113576
--- Comment #38 from Hongtao Liu <liuhongt at gcc dot gnu.org> ---
> I think we should also mask off the upper bits of variable mask?
>
> notl %esi
> orl %esi, %edi
> notl %edi
> andl $15, %edi
> je .L3
with -mbmi, it's
andn %esi, %edi, %edi
andl $15, %edi
je .L3
