http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31531
--- Comment #9 from Andrew Pinski <pinskia at gcc dot gnu.org> 2012-02-12 22:58:41 UTC --- (In reply to comment #8) > forwprop already handles: > int f(int a) > { > int b = ~a; > return b<0; > } > > It just needs to handle: > int f(unsigned a) > { > int b = ~a; > return b<0; > } forward_propagate_into_comparison only handles combing of two SSA_NAMEs, it could handle dealing with a conversion also.