split-path-1.c: Fix the testcase to avoid undefined behaviour.
authorAjit Agarwal <ajitkum@xilinx.com>
Wed, 18 Nov 2015 16:54:16 +0000 (16:54 +0000)
committerJeff Law <law@gcc.gnu.org>
Wed, 18 Nov 2015 16:54:16 +0000 (09:54 -0700)
* gcc.dg/tree-ssa/split-path-1.c: Fix the testcase
to avoid undefined behaviour.

From-SVN: r230555

gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/tree-ssa/split-path-1.c

index 08f910427ac519c1034ddcc3f0dd58ecf57b3f44..50e410cc9ea293186986399101d38386a3bf2cf9 100644 (file)
@@ -1,3 +1,8 @@
+2015-11-18  Ajit Agarwal  <ajitkum@xilinx.com>
+
+       * gcc.dg/tree-ssa/split-path-1.c: Fix the testcase
+       to avoid undefined behaviour.
+
 2015-11-18  Jakub Jelinek  <jakub@redhat.com>
 
        PR tree-optimization/68157
index 12398924dbab33a93fcecd2809eb13239b00e04d..5c96241aa0ce1a3cbe9c5bc2561cc7c551c7d616 100644 (file)
@@ -3,16 +3,17 @@
 
 #include <stdio.h>
 #include <stdlib.h>
+#include <ctype.h>
 
-#define RGBMAX 255
+#define RGBMAX 255 
 
-int
+unsigned char
 test()
 {
   int i, Pels;
-  unsigned char sum = 0;
+  int sum = 0;
   unsigned char xr, xg, xb;
-  unsigned char xc, xm, xy, xk;
+  unsigned char xc, xm, xy, xk = 0;
   unsigned char *ReadPtr, *EritePtr;
 
   ReadPtr = ( unsigned char *) malloc (sizeof (unsigned char) * 100);
@@ -23,7 +24,7 @@ test()
        ReadPtr[i] = 100 - i;
      }
 
-  for (i = 0; i < 100; i++)
+  for (i = 0; i < 24; i++)
      {
        xr = *ReadPtr++;
        xg = *ReadPtr++;
@@ -50,7 +51,8 @@ test()
        *EritePtr++ = xm;
        *EritePtr++ = xy;
        *EritePtr++ = xk;
-       sum += *EritePtr;
+       sum += *(--EritePtr);
+       
     }
   return sum;
 }
@@ -58,7 +60,7 @@ test()
 int
 main()
 {
-  if (test() != 33)
+  if (test() != 196)
     abort();
 
   return 0;