blob: 55ea659fd81a2f206c9462fb3d80097d004262e3 [file] [log] [blame]
Devang Patel070c2152011-07-05 21:48:46 +00001// RUN: %clang_cc1 -triple x86_64-darwin-apple -Os -S -g -o - %s | FileCheck %s
2
3int calculate(int);
4static void test_indvars(int *Array1, int Array2[100][200]) {
5 unsigned i, j;
6 Array1[1] = Array2[3][6] = 12345;
7
8 for (i = 0; i < 100; i+=2)
9 Array1[i] = i; /* Step by non unit amount */
10
11 for (i = 3; i < 103; i++)
12 Array1[i] = i+4; /* Step with an offset */
13
14 for (i = 13; i < 100; i++)
15 for (j = 0; j < 100; j+=3) /* 2d array access */
16 Array2[i][j/3] = Array2[i][i];
17}
18
19
20int main() {
21 int Array[100][200], i, j;
22 double sum = 0.0;
23
24 for (i=0; i < 100; i+=2)
25 for (j=0; j < 200; j++)
26 Array[i][j] = 0;
27 test_indvars(Array[0], Array);
28
Devang Patel478b94b2011-07-18 22:18:04 +000029//CHECK: .loc 2 30 8
Devang Patel070c2152011-07-05 21:48:46 +000030 for (i=0; i < 100; i+=2)
31 for (j=0; j < 200; j++)
32 sum += Array[i][j];
33
34 return calculate(sum);
35}