re PR tree-optimization/80520 (Performance regression from missing if-conversion)
authorJakub Jelinek <jakub@redhat.com>
Tue, 11 Dec 2018 20:28:35 +0000 (21:28 +0100)
committerJakub Jelinek <jakub@gcc.gnu.org>
Tue, 11 Dec 2018 20:28:35 +0000 (21:28 +0100)
PR tree-optimization/80520
* gcc.dg/tree-ssa/split-path-11.c (foo): Make the test ilp32 target
clean.

From-SVN: r267031

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

index c6730c234b6762ef8d5a010eb204fa052e4a1f27..36c4232bf2b8b28e78f0cc53c913fa38831e1305 100644 (file)
@@ -1,3 +1,9 @@
+2018-12-11  Jakub Jelinek  <jakub@redhat.com>
+
+       PR tree-optimization/80520
+       * gcc.dg/tree-ssa/split-path-11.c (foo): Make the test ilp32 target
+       clean.
+
 2018-12-11  Marek Polacek  <polacek@redhat.com>
 
        PR c++/86608 - reading constexpr volatile variable.
index f94f1a84e2cc865354e10ad04c87e32bcb136b5c..66f57d92edbdea053b086828c6a46d7f92a41d37 100644 (file)
@@ -1,13 +1,13 @@
 /* { dg-do compile } */
 /* { dg-options "-O2 -fsplit-paths -fdump-tree-split-paths-details -w" } */
 
-void foo(unsigned long *M)
+void foo(unsigned long long *M)
 {
-  for (unsigned long k = 0; k < 227; ++k)
+  for (unsigned long long k = 0; k < 227; ++k)
     {
-      unsigned long y =
-       ((M[k] & 0xffffffff80000000) | (M[k + 1] & 0x7fffffff));
-      M[k] = (M[k + 397] ^ (y >> 1) ^ ((y & 1) ? 2567483615 : 0));
+      unsigned long long y =
+       ((M[k] & 0xffffffff80000000ULL) | (M[k + 1] & 0x7fffffffULL));
+      M[k] = (M[k + 397] ^ (y >> 1) ^ ((y & 1) ? 2567483615ULL : 0));
     }
 }