http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57623
--- Comment #7 from Jakub Jelinek <jakub at gcc dot gnu.org> --- Created attachment 30387 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=30387&action=edit gcc49-pr57623.patch BZHI has a similar problem, but due to the non-canonical order of AND arguments in the pattern I doubt you can actually reproduce the problem (because combine will never match it, so pretty much always will the insn use only register arguments). The attached patch should fix both of those issues.