http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59990
--- Comment #9 from Richard Biener <rguenth at gcc dot gnu.org> --- Created attachment 31991 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=31991&action=edit patch Must resist turning this fn upside down ... Anyway, untested patch attached. We can surely do better selecting a type, but IIRC most targets have an integer mode that covers all other modes (even vector modes).