https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103192
Jeffrey A. Law <law at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |law at gcc dot gnu.org --- Comment #16 from Jeffrey A. Law <law at gcc dot gnu.org> --- Based in c#15 there must be an equivalence between outer_ctx_1389 and iftmp.2373_1515 that dominates the condition. The equivalence doesn't have to be a global equivalence though. I'd start by chasing that down to see if it makes sense. I'm going to hazard a guess it's a conditional equivalence and that there's a difference in the cost to compute those two objects (otherwise we'd ignore the conditional equivalence). Presumably the range on outer_ctx_1389 is global VARYING and iftmp.2373_1515 is global non-zero.