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

Message ID
State Committed
Commit 109f1b28fc94c93096506e3df0c25e331cef19d0
Series Revert "combine: Don't combine if I2 does not change" |


Context Check Description
linaro-tcwg-bot/tcwg_gcc_build--master-arm warning Patch is already merged
linaro-tcwg-bot/tcwg_gcc_build--master-aarch64 warning Patch is already merged

Commit Message

Richard Biener April 10, 2024, 5:59 a.m. UTC
  This reverts commit 839bc42772ba7af66af3bd16efed4a69511312ae.

I have now pushed the temporary reversion of this to resolve the
P1 regressions this caused.  I'll re-install it on trunk once 14.1
was released (which might be a week or two after stage1 opens).


 gcc/ | 11 -----------
 1 file changed, 11 deletions(-)


diff --git a/gcc/ b/gcc/
index 71c9abc145c..92b8d98e6c1 100644
--- a/gcc/
+++ b/gcc/
@@ -4196,17 +4196,6 @@  try_combine (rtx_insn *i3, rtx_insn *i2, rtx_insn *i1, rtx_insn *i0,
       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
      update the status of registers and LOG_LINKS.  */