re PR tree-optimization/33291 (a+=2; a+=2 not simplified to a+=4; with -O3 ...
[gcc.git] / gcc / testsuite / gcc.dg / tree-ssa / ltrans-2.c
1 /* { dg-do compile } */
2 /* { dg-options "-O2 -ftree-loop-linear -fdump-tree-ltrans-all" } */
3 /* { dg-require-effective-target size32plus } */
4
5 double u[1782225];
6 int foo(int N, int *res)
7 {
8 unsigned int i, j;
9 double sum = 0;
10
11 /* This loop should be converted to a perfect nest and
12 interchanged. */
13 for (i = 0; i < N; i++)
14 {
15 for (j = 0; j < N; j++)
16 {
17 sum = sum + u[i + 1335 * j];
18 if (j == N - 1)
19 u[1336 * i] *= 2;
20 }
21 }
22 *res = sum + N;
23 }
24 /* { dg-final { scan-tree-dump-times "transformed loop" 1 "ltrans"} {
25 xfail *-*-*} } */
26 /* { dg-final { cleanup-tree-dump "ltrans" } } */