https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111267

--- Comment #7 from Roger Sayle <roger at nextmovesoftware dot com> ---
Very many thanks to Jeff Law for pointing me to fwprop.  The following simple
patch also fixes this regression.

diff --git a/gcc/fwprop.cc b/gcc/fwprop.cc
index 0c588f8..cbba44e 100644
--- a/gcc/fwprop.cc
+++ b/gcc/fwprop.cc
@@ -449,15 +449,6 @@ try_fwprop_subst_pattern (obstack_watermark &attempt,
insn_
change &use_change,
   if (prop.num_replacements == 0)
     return false;

-  if (!prop.profitable_p ())
-    {
-      if (dump_file && (dump_flags & TDF_DETAILS))
-       fprintf (dump_file, "cannot propagate from insn %d into"
-                " insn %d: %s\n", def_insn->uid (), use_insn->uid (),
-                "would increase complexity of pattern");
-      return false;
-    }
-
   if (dump_file && (dump_flags & TDF_DETAILS))
     {
       fprintf (dump_file, "\npropagating insn %d into insn %d, replacing:\n",

Reply via email to