http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55147
--- Comment #2 from Uros Bizjak <ubizjak at gmail dot com> 2012-10-31 15:47:46 UTC --- > can fix the reg overlap problem between address of operands[1] and high part > of > operands[0]. That said, I wonder what is the advantage of having bswapdi2 > patter on i?86 at all that the generic expand_doubleword_bswap can't handle. If generic code creates similar assembly, then I'm all for removing this pattern.