sh.c (barrier_align): Also recognize branch-around-a-jump-sequence from machine-deped...
authorJ"orn Rennecke <amylaar@redhat.com>
Thu, 21 Jun 2001 21:17:51 +0000 (21:17 +0000)
committerJoern Rennecke <amylaar@gcc.gnu.org>
Thu, 21 Jun 2001 21:17:51 +0000 (22:17 +0100)
* sh.c (barrier_align): Also recognize branch-around-a-jump-sequence
from machine-depedent_reorg for purposes of alignment supression
when no delay slot insn has been added.

From-SVN: r43493

gcc/ChangeLog
gcc/config/sh/sh.c

index 1227fefd1397ccf1a4c59ab8c8ea5b40e1f1767b..035775a52e863133d48ff9b8ded97d32fd3c050a 100644 (file)
@@ -1,3 +1,9 @@
+Thu Jun 21 22:15:10 2001  J"orn Rennecke <amylaar@redhat.com>
+
+       * sh.c (barrier_align): Also recognize branch-around-a-jump-sequence
+       from machine-depedent_reorg for purposes of alignment supression
+       when no delay slot insn has been added.
+
 2001-06-21  Neil Booth  <neil@cat.daikokuya.demon.co.uk>
 
        * cppmacro.c (make_string_token): Null terminate.
index 103a52434d609314eff289d0790f731ee6051db2..db7ec5f60e206ab07226513d4789eff7373a30bb 100644 (file)
@@ -2948,11 +2948,10 @@ barrier_align (barrier_or_label)
              /* There is no upper bound on redundant instructions that
                 might have been skipped, but we must not put an alignment
                 where none had been before.  */
-             || (NEXT_INSN (PREV_INSN (prev)) != prev
-                 && ((INSN_CODE (NEXT_INSN (NEXT_INSN (prev)))
-                      == CODE_FOR_block_branch_redirect)
-                     || (INSN_CODE (NEXT_INSN (NEXT_INSN (prev)))
-                         == CODE_FOR_indirect_jump_scratch)))))
+             || (INSN_CODE (NEXT_INSN (NEXT_INSN (PREV_INSN (prev))))
+                 == CODE_FOR_block_branch_redirect)
+             || (INSN_CODE (NEXT_INSN (NEXT_INSN (PREV_INSN (prev))))
+                 == CODE_FOR_indirect_jump_scratch)))
        {
          rtx pat = PATTERN (prev);
          if (GET_CODE (pat) == PARALLEL)