cfgrtl.c (try_redirect_by_replacing_jump): Fix typo, emit replacement jump after...
authorGraham Stott <grahams@redhat.com>
Thu, 22 Nov 2001 14:30:37 +0000 (14:30 +0000)
committerGraham Stott <grahams@gcc.gnu.org>
Thu, 22 Nov 2001 14:30:37 +0000 (14:30 +0000)
        * cfgrtl.c (try_redirect_by_replacing_jump): Fix typo, emit
        replacement jump after original jump.

        (verify_flow_info): Remove redundent initialisation.
        Handle reaching end of insn list before finding a BARRIER.
        Only issue one missing barrier diagnostic.

From-SVN: r47269

gcc/ChangeLog
gcc/cfgrtl.c

index 80a3f1c9bd875b9a192837f5ad36556f5157bc2b..29a4b9cce92f12279fd660cb23fcd508cea583e0 100644 (file)
@@ -1,3 +1,12 @@
+2001-11-22  Graham Stott  <grahams@redhat.com>
+
+       * cfgrtl.c (try_redirect_by_replacing_jump): Fix typo, emit
+       replacement jump after original jump.
+
+       (verify_flow_info): Remove redundent initialisation.
+       Handle reaching end of insn list before finding a BARRIER.
+       Only issue one missing barrier diagnostic.
+
 2001-11-22  Graham Stott  <grahams@redhat.com>
 
        * local-alloc.c (combine_regs): Handle SUBREG_REG being a MEM.
index 2687e73d358e1335b40f69f86f7dc128ec29d285..48d0e859217086c5e9b02f902510ea5e367b00cd 100644 (file)
@@ -710,7 +710,7 @@ try_redirect_by_replacing_jump (e, target)
       rtx target_label = block_label (target);
       rtx barrier;
 
-      emit_jump_insn_after (gen_jump (target_label), kill_from);
+      emit_jump_insn_after (gen_jump (target_label), insn);
       JUMP_LABEL (src->end) = target_label;
       LABEL_NUSES (target_label)++;
       if (rtl_dump_file)
@@ -1634,10 +1634,10 @@ verify_flow_info ()
        }
       if (!has_fallthru)
        {
-         rtx insn = bb->end;
+         rtx insn;
 
          /* Ensure existence of barrier in BB with no fallthru edges.  */
-         for (insn = bb->end; GET_CODE (insn) != BARRIER;
+         for (insn = bb->end; !insn || GET_CODE (insn) != BARRIER;
               insn = NEXT_INSN (insn))
            if (!insn
                || (GET_CODE (insn) == NOTE
@@ -1645,6 +1645,7 @@ verify_flow_info ()
                {
                  error ("Missing barrier after block %i", bb->index);
                  err = 1;
+                 break;
                }
        }