------- Additional Comments From dberlin at gcc dot gnu dot org 2005-08-29 15:23 ------- Subject: Re: Missed pre opportunity
> Disabling reassoc, it knows that p + q is antic over the backedge. > Which means it knows it *could* insert it. Okay, it determines it's not fully available in block 6, even though both predecessors of 6 generate it, because neither predecessor strictly dominates block 6, and nowhere else that generates the expression does. This is a partial partial case that i never bothered handling because it just doesn't happen often in practice, AFAICT. We can do it, and i know how, it just was never worth it. We'd have to generate a no-cost phi in block 6 to merge the two available values. Let me see if i can change compute_avail to do this for us so we don't have to worry about it later. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23619