predcom-1.c (count_averages): Avoid overflow during addition if an int is only 16...
authorRask Ingemann Lambertsen <rask@sygehus.dk>
Wed, 25 Jul 2007 11:13:41 +0000 (13:13 +0200)
committerRask Ingemann Lambertsen <rask@gcc.gnu.org>
Wed, 25 Jul 2007 11:13:41 +0000 (11:13 +0000)
* gcc.dg/tree-ssa/predcom-1.c (count_averages): Avoid overflow
  during addition if an int is only 16 bits wide.
* gcc.dg/tree-ssa/predcom-2.c (fib): Avoid overflow of 16-bit int.

From-SVN: r126908

gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/tree-ssa/predcom-1.c
gcc/testsuite/gcc.dg/tree-ssa/predcom-2.c

index 057c0ca873c32029a61645a960625d6a2292a597..d7ab831b93478d2598c3ef2d6de9b11de4461bb7 100644 (file)
@@ -1,3 +1,9 @@
+2007-07-25  Rask Ingemann Lambertsen  <rask@sygehus.dk>
+
+       * gcc.dg/tree-ssa/predcom-1.c (count_averages): Avoid overflow
+         during addition if an int is only 16 bits wide.
+       * gcc.dg/tree-ssa/predcom-2.c (fib): Avoid overflow of 16-bit int.
+
 2007-07-25  Rask Ingemann Lambertsen  <rask@sygehus.dk>
 
        * gcc.dg/torture/pr29584.c: Only run test if pointers have the same
index 8e6e897199d8fe768751ef5e234d3a158c1eaedf..584f9eb0231e45a98d15e2b6750c188eec92d119 100644 (file)
@@ -23,7 +23,7 @@ void count_averages(int n)
   int i;
 
   for (i = 1; i < n; i++)
-    avg[i] = ((fib[i - 1] + fib[i] + fib[i + 1]) / 3) & 0xffff;
+    avg[i] = (((unsigned long) fib[i - 1] + fib[i] + fib[i + 1]) / 3) & 0xffff;
 }
 
 int main(void)
index b7088c5f83f441cbff34d9cd4259c116c946f2ac..3ad13eaeda03e4cd18a403ebe8f12e7f62028dac 100644 (file)
@@ -4,7 +4,7 @@
 
 void abort (void);
 
-int fib[1000];
+long int fib[1000];
 
 void count_fib(void)
 {