| /* PR tree-optimization/56962 */ | |
| extern void abort (void); | |
| long long v[144]; | |
| __attribute__((noinline, noclone)) void | |
| bar (long long *x) | |
| { | |
| if (x != &v[29]) | |
| abort (); | |
| } | |
| __attribute__((noinline, noclone)) void | |
| foo (long long *x, long y, long z) | |
| { | |
| long long a, b, c; | |
| a = x[z * 4 + y * 3]; | |
| b = x[z * 5 + y * 3]; | |
| c = x[z * 5 + y * 4]; | |
| x[y * 4] = a; | |
| bar (&x[z * 5 + y]); | |
| x[z * 5 + y * 5] = b + c; | |
| } | |
| int | |
| main () | |
| { | |
| foo (v, 24, 1); | |
| return 0; | |
| } |