http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18501
--- Comment #68 from Manuel López-Ibáñez <manu at gcc dot gnu.org> --- (In reply to Manuel López-Ibáñez from comment #67) > *** Bug 59225 has been marked as a duplicate of this bug. *** PR 59225 gave me an idea. Wouldn't it be possible to keep a PHI node with just two operands, the constant and the undefined value? If further optimizations remove the undefined block as unexecutable, then the undefined operand will go away. Perhaps the problem is that other optimizations do not treat PHI<1,(D)> as simply 1 and this will result in worse code, although VRP seems to work just fine with PHI<1,2,(D)>. Richard, do you see it feasible?