On 08/03/2017 03:32 AM, Jakub Jelinek wrote: > On Thu, Aug 03, 2017 at 10:58:07AM +0200, Richard Biener wrote: >>> The reason why we punt is the unexpected _4 != 1 condition, the code >>> is prepared to handle just _4 == 0 (or _4 != 0) where _4 == 0 is equivalent >>> to _4 != 1 for boolean type. >> >> Hmm, I thought we had code to canonicalize boolean compares (but I can't >> find that right now). Some is in > > I was looking for that too, but didn't find anything that would be done > always. I can recall looking for that kind of canonicalization as well, but not finding it. Furthermore instrumentation showed the different forms could show up in the IL, but forms such as != 1 were relatively rare.
Jeff