re PR target/16445 (Gcc 3.4 ICE on valid code)
authorVladimir Makarov <vmakarov@redhat.com>
Mon, 12 Jul 2004 22:20:38 +0000 (22:20 +0000)
committerVladimir Makarov <vmakarov@gcc.gnu.org>
Mon, 12 Jul 2004 22:20:38 +0000 (22:20 +0000)
2004-07-12  Vladimir Makarov  <vmakarov@redhat.com>

PR target/16445
* config/ia64/ia64.c (bundling): Don't count ignored insns.

From-SVN: r84580

gcc/ChangeLog
gcc/config/ia64/ia64.c

index 54541ef236bcd9be37acfae24141be9129fd9b7f..226abd4b29b998c488c15949374b305e388d118b 100644 (file)
@@ -1,3 +1,8 @@
+2004-07-12  Vladimir Makarov  <vmakarov@redhat.com>
+
+       PR target/16445
+       * config/ia64/ia64.c (bundling): Don't count ignored insns.
+
 2004-07-12  Richard Henderson  <rth@redhat.com>
 
        * target.h (struct gcc_target): Move gimplify_va_arg_expr
index fdebfba19cd3f1e11ec172212af359cdc20b6094..88c50874b2d28ab39119688d7530e8f4587f1b8b 100644 (file)
@@ -7211,7 +7211,9 @@ bundling (FILE *dump, int verbose, rtx prev_head_insn, rtx tail)
                      = gen_bundle_selector (const2_rtx); /* -> MFI */
                  break;
                }
-             else if (recog_memoized (last) != CODE_FOR_insn_group_barrier)
+             else if (recog_memoized (last) != CODE_FOR_insn_group_barrier
+                      && (ia64_safe_itanium_class (last)
+                          != ITANIUM_CLASS_IGNORE))
                n++;
            /* Some check of correctness: the stop is not at the
               bundle start, there are no more 3 insns in the bundle,