https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82854
--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> --- (In reply to Andrew Pinski from comment #2) > /* 0 - (x & 0x80000000) -> x & 0x80000000 */ > LLVM does Actually RTL has done this since at least GCC 4.1.0, most likely before.