re PR rtl-optimization/78241 (wrong code with -funroll-loops)
authorPat Haugen <pthaugen@us.ibm.com>
Fri, 3 Feb 2017 14:20:30 +0000 (14:20 +0000)
committerPat Haugen <pthaugen@gcc.gnu.org>
Fri, 3 Feb 2017 14:20:30 +0000 (14:20 +0000)
PR rtl-optimization/78241
* loop-unroll.c (unroll_loop_runtime_iterations): Don't adjust 'niter', but
emit initial peel copy if niter expr is not reliable.

From-SVN: r245152

gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/powerpc/pr70669.c

index ddcc87e86eb19f4cd4bdaea139c8b6fe72b3b12a..94aecd58c1e9ba03d2181be7ef28e82b0176b1b7 100644 (file)
@@ -1,3 +1,9 @@
+2017-02-03  Pat Haugen  <pthaugen@us.ibm.com>
+
+       PR target/79158
+       * gcc.target/powerpc/pr70669.c: Use 'r' in an expression to force back
+       to VSX reg.
+
 2017-02-02  Jan Hubicka  <hubicka@ucw.cz>
 
        * gcc.dg/tree-ssa/ssa-ifcombine-1.c: Check for no profile mismatches.
index 8054102ee50d21c467e3a9dbdc925c4aef56ba7d..8692d7f71efe84cc5efedbfe9aa6c4d6cd704956 100644 (file)
@@ -13,7 +13,7 @@ void foo (TYPE *p, TYPE *q)
 #ifndef NO_ASM
   __asm__ (" # %0" : "+r" (r));
 #endif
-  *p = r;
+  *p = r + r;
 }
 
 /* { dg-final { scan-assembler       "mfvsrd"    } } */