http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59649
--- Comment #4 from Eric Botcazou <ebotcazou at gcc dot gnu.org> --- > So, IMHO either get_mode_bounds needs to special case BImode like > trunc_int_for_mode does and make the bounds of BImode include values of 0 > and STORE_FLAG_VALUE, or the BImode hunk in trunc_int_for_mode needs to be > dropped and everything analyzed for assumption that BImode true is CONST_INT > equal to STORE_FLAG_VALUE, or ia64 needs to use STORE_FLAG_VALUE -1 (there > is a comment about it in ia64.h that it should be investigated). Given that ia64 is barely maintained these days, the 3rd approach doesn't look very realistic and the 2nd one a little risky, so the 1st approach is very likely the way to go I'd think (e.g. if_then_else_cond also special-cases BImode).