https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55157
--- Comment #5 from Aldy Hernandez <aldyh at gcc dot gnu.org> --- (In reply to Aldy Hernandez from comment #4) > + // Reflect the mask as a simple range. For example, a mask of > + // 0xff00 could be represented as [0,0][0x100, 0xffff]. > + if (TYPE_UNSIGNED (type ()) && prec > 1) Bonus points for making it work with signed. I'm not smart enough to do that :).