* sh.c (find_barrier): Fix calculations for alignemnt increase.
authorJ"orn Rennecke <amylaar@cygnus.co.uk>
Fri, 27 Mar 1998 10:12:02 +0000 (10:12 +0000)
committerJoern Rennecke <amylaar@gcc.gnu.org>
Fri, 27 Mar 1998 10:12:02 +0000 (10:12 +0000)
From-SVN: r18853

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

index c4941f98d9350b579aa8583b7e0832c8ade199b9..a2b2d8c3abed1d6ce96f6b5eabf6966c4e2ce2cf 100644 (file)
@@ -1,3 +1,7 @@
+Fri Mar 27 18:08:21 1998  J"orn Rennecke <amylaar@cygnus.co.uk>
+
+       * sh.c (find_barrier): Fix calculations for alignemnt increase.
+
 Fri Mar 27 08:56:52 1998  Manfred Hollstein  <manfred@s-direktnet.de>
 
        * Makefile.in (stmp-fixinc): If we're actually fixing include
index 9be63a4e59b5dd5d0ed1911de0a87a853a070d84..a23990e9a21bbbc11eb92ee78122da6a73d33ab9 100644 (file)
@@ -2000,22 +2000,20 @@ find_barrier (num_mova, mova, from)
        {
          if (new_align > si_align)
            {
-             count_si = count_si + new_align - 1 & -si_align;
+             si_limit -= count_si - 1 & new_align - si_align;
              si_align = new_align;
            }
-         else
-           count_si = count_si + new_align - 1 & -new_align;
+         count_si = count_si + new_align - 1 & -new_align;
          count_si += inc;
        }
       if (found_hi)
        {
          if (new_align > hi_align)
            {
-             count_hi = count_hi + new_align - 1 & -hi_align;
+             hi_limit -= count_hi - 1 & new_align - hi_align;
              hi_align = new_align;
            }
-         else
-           count_hi = count_hi + new_align - 1 & -new_align;
+         count_hi = count_hi + new_align - 1 & -new_align;
          count_hi += inc;
        }
       from = NEXT_INSN (from);