Revert "Revert "combine: Don't combine if I2 does not change""

This reverts commit 109f1b28fc.
This commit is contained in:
Richard Biener 2024-05-07 10:14:19 +02:00
parent cb478e0a6f
commit 9dbff9c055

View File

@ -4196,6 +4196,17 @@ try_combine (rtx_insn *i3, rtx_insn *i2, rtx_insn *i1, rtx_insn *i0,
adjust_for_new_dest (i3); adjust_for_new_dest (i3);
} }
/* If I2 didn't change, this is not a combination (but a simplification or
canonicalisation with context), which should not be done here. Doing
it here explodes the algorithm. Don't. */
if (rtx_equal_p (newi2pat, PATTERN (i2)))
{
if (dump_file)
fprintf (dump_file, "i2 didn't change, not doing this\n");
undo_all ();
return 0;
}
/* We now know that we can do this combination. Merge the insns and /* We now know that we can do this combination. Merge the insns and
update the status of registers and LOG_LINKS. */ update the status of registers and LOG_LINKS. */