* emit-rtl.c (try_split): Don't try to split non-instructions.
authorRichard Henderson <rth@cygnus.com>
Thu, 21 Jan 1999 21:54:47 +0000 (13:54 -0800)
committerRichard Henderson <rth@gcc.gnu.org>
Thu, 21 Jan 1999 21:54:47 +0000 (13:54 -0800)
From-SVN: r24813

gcc/ChangeLog
gcc/emit-rtl.c

index 99219f6..7aa9b30 100644 (file)
@@ -1,3 +1,7 @@
+Thu Jan 21 21:53:36 1999  Richard Henderson  <rth@cygnus.com>
+
+       * emit-rtl.c (try_split): Don't try to split non-instructions.
+
 Thu Jan 21 23:47:30 EST 1999  Andrew MacLeod  <amacleod@cygnus.com>
 
        * expr.c (emit_push_insn): Fix dumb typo.
index 22fdaf6..d58b895 100644 (file)
@@ -2265,12 +2265,11 @@ try_split (pat, trial, last)
             time control returns here that insn will be fully split, so
             set LAST and continue from the insn after the one returned.
             We can't use next_active_insn here since AFTER may be a note.
-            Ignore deleted insns, which can be occur if not optimizing,
-            and ignore BARRIERs which can occur if we split the insn
-            immediately before a BARRIER.  */
+            Ignore deleted insns, which can be occur if not optimizing.  */
          for (tem = NEXT_INSN (before); tem != after;
               tem = NEXT_INSN (tem))
-           if (! INSN_DELETED_P (tem) && GET_CODE (tem) != BARRIER)
+           if (! INSN_DELETED_P (tem)
+               && GET_RTX_CLASS (GET_CODE (tem)) == 'i')
              tem = try_split (PATTERN (tem), tem, 1);
        }
       /* Avoid infinite loop if the result matches the original pattern.  */