Fix Polly
[polly-mirror.git] / test / ScheduleOptimizer / pattern-matching-based-opts_12.ll
bloba14ec10af834e36bc12f103f371bb72192b361f1
1 ; RUN: opt %loadPolly -polly-opt-isl -polly-pattern-matching-based-opts=true \
2 ; RUN: -polly-target-throughput-vector-fma=1 \
3 ; RUN: -polly-target-latency-vector-fma=8 \
4 ; RUN: -analyze -polly-ast -polly-target-1st-cache-level-associativity=8 \
5 ; RUN: -polly-target-2nd-cache-level-associativity=8 \
6 ; RUN: -polly-target-1st-cache-level-size=32768 \
7 ; RUN: -polly-target-vector-register-bitwidth=256 \
8 ; RUN: -polly-target-2nd-cache-level-size=262144 < %s \
9 ; RUN: | FileCheck %s
11 ; Test whether isolation works as expected.
13 ; CHECK:    // Inter iteration alias-free
14 ; CHECK-NEXT:    // 1st level tiling - Tiles
15 ; CHECK-NEXT:    for (int c1 = 0; c1 <= 1; c1 += 1) {
16 ; CHECK-NEXT:      for (int c3 = 0; c3 <= 1019; c3 += 1)
17 ; CHECK-NEXT:        for (int c4 = 512 * c1; c4 <= min(1019, 512 * c1 + 511); c4 += 1)
18 ; CHECK-NEXT:          CopyStmt_0(0, c3, c4);
19 ; CHECK-NEXT:      for (int c2 = 0; c2 <= 2; c2 += 1) {
20 ; CHECK-NEXT:        for (int c3 = 384 * c2; c3 <= min(1019, 384 * c2 + 383); c3 += 1)
21 ; CHECK-NEXT:          for (int c5 = 512 * c1; c5 <= min(1019, 512 * c1 + 511); c5 += 1)
22 ; CHECK-NEXT:            CopyStmt_1(c3, 0, c5);
23 ; CHECK-NEXT:        // 1st level tiling - Points
24 ; CHECK-NEXT:        // Register tiling - Tiles
25 ; CHECK-NEXT:        {
26 ; CHECK-NEXT:          for (int c3 = 0; c3 <= 30; c3 += 1) {
27 ; CHECK-NEXT:            for (int c4 = 0; c4 <= min(47, -48 * c2 + 126); c4 += 1)
28 ; CHECK-NEXT:              for (int c5 = 0; c5 <= min(511, -512 * c1 + 1019); c5 += 1) {
29 ; CHECK-NEXT:                // Loop Vectorizer Disabled
30 ; CHECK-NEXT:                // Register tiling - Points
31 ; CHECK-NEXT:                {
32 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4, 32 * c3, 512 * c1 + c5);
33 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4, 32 * c3 + 1, 512 * c1 + c5);
34 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4, 32 * c3 + 2, 512 * c1 + c5);
35 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4, 32 * c3 + 3, 512 * c1 + c5);
36 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4, 32 * c3 + 4, 512 * c1 + c5);
37 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4, 32 * c3 + 5, 512 * c1 + c5);
38 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4, 32 * c3 + 6, 512 * c1 + c5);
39 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4, 32 * c3 + 7, 512 * c1 + c5);
40 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4, 32 * c3 + 8, 512 * c1 + c5);
41 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4, 32 * c3 + 9, 512 * c1 + c5);
42 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4, 32 * c3 + 10, 512 * c1 + c5);
43 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4, 32 * c3 + 11, 512 * c1 + c5);
44 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4, 32 * c3 + 12, 512 * c1 + c5);
45 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4, 32 * c3 + 13, 512 * c1 + c5);
46 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4, 32 * c3 + 14, 512 * c1 + c5);
47 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4, 32 * c3 + 15, 512 * c1 + c5);
48 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4, 32 * c3 + 16, 512 * c1 + c5);
49 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4, 32 * c3 + 17, 512 * c1 + c5);
50 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4, 32 * c3 + 18, 512 * c1 + c5);
51 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4, 32 * c3 + 19, 512 * c1 + c5);
52 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4, 32 * c3 + 20, 512 * c1 + c5);
53 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4, 32 * c3 + 21, 512 * c1 + c5);
54 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4, 32 * c3 + 22, 512 * c1 + c5);
55 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4, 32 * c3 + 23, 512 * c1 + c5);
56 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4, 32 * c3 + 24, 512 * c1 + c5);
57 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4, 32 * c3 + 25, 512 * c1 + c5);
58 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4, 32 * c3 + 26, 512 * c1 + c5);
59 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4, 32 * c3 + 27, 512 * c1 + c5);
60 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4, 32 * c3 + 28, 512 * c1 + c5);
61 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4, 32 * c3 + 29, 512 * c1 + c5);
62 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4, 32 * c3 + 30, 512 * c1 + c5);
63 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4, 32 * c3 + 31, 512 * c1 + c5);
64 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 1, 32 * c3, 512 * c1 + c5);
65 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 1, 32 * c3 + 1, 512 * c1 + c5);
66 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 1, 32 * c3 + 2, 512 * c1 + c5);
67 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 1, 32 * c3 + 3, 512 * c1 + c5);
68 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 1, 32 * c3 + 4, 512 * c1 + c5);
69 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 1, 32 * c3 + 5, 512 * c1 + c5);
70 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 1, 32 * c3 + 6, 512 * c1 + c5);
71 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 1, 32 * c3 + 7, 512 * c1 + c5);
72 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 1, 32 * c3 + 8, 512 * c1 + c5);
73 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 1, 32 * c3 + 9, 512 * c1 + c5);
74 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 1, 32 * c3 + 10, 512 * c1 + c5);
75 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 1, 32 * c3 + 11, 512 * c1 + c5);
76 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 1, 32 * c3 + 12, 512 * c1 + c5);
77 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 1, 32 * c3 + 13, 512 * c1 + c5);
78 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 1, 32 * c3 + 14, 512 * c1 + c5);
79 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 1, 32 * c3 + 15, 512 * c1 + c5);
80 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 1, 32 * c3 + 16, 512 * c1 + c5);
81 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 1, 32 * c3 + 17, 512 * c1 + c5);
82 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 1, 32 * c3 + 18, 512 * c1 + c5);
83 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 1, 32 * c3 + 19, 512 * c1 + c5);
84 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 1, 32 * c3 + 20, 512 * c1 + c5);
85 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 1, 32 * c3 + 21, 512 * c1 + c5);
86 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 1, 32 * c3 + 22, 512 * c1 + c5);
87 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 1, 32 * c3 + 23, 512 * c1 + c5);
88 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 1, 32 * c3 + 24, 512 * c1 + c5);
89 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 1, 32 * c3 + 25, 512 * c1 + c5);
90 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 1, 32 * c3 + 26, 512 * c1 + c5);
91 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 1, 32 * c3 + 27, 512 * c1 + c5);
92 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 1, 32 * c3 + 28, 512 * c1 + c5);
93 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 1, 32 * c3 + 29, 512 * c1 + c5);
94 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 1, 32 * c3 + 30, 512 * c1 + c5);
95 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 1, 32 * c3 + 31, 512 * c1 + c5);
96 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 2, 32 * c3, 512 * c1 + c5);
97 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 2, 32 * c3 + 1, 512 * c1 + c5);
98 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 2, 32 * c3 + 2, 512 * c1 + c5);
99 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 2, 32 * c3 + 3, 512 * c1 + c5);
100 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 2, 32 * c3 + 4, 512 * c1 + c5);
101 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 2, 32 * c3 + 5, 512 * c1 + c5);
102 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 2, 32 * c3 + 6, 512 * c1 + c5);
103 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 2, 32 * c3 + 7, 512 * c1 + c5);
104 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 2, 32 * c3 + 8, 512 * c1 + c5);
105 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 2, 32 * c3 + 9, 512 * c1 + c5);
106 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 2, 32 * c3 + 10, 512 * c1 + c5);
107 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 2, 32 * c3 + 11, 512 * c1 + c5);
108 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 2, 32 * c3 + 12, 512 * c1 + c5);
109 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 2, 32 * c3 + 13, 512 * c1 + c5);
110 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 2, 32 * c3 + 14, 512 * c1 + c5);
111 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 2, 32 * c3 + 15, 512 * c1 + c5);
112 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 2, 32 * c3 + 16, 512 * c1 + c5);
113 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 2, 32 * c3 + 17, 512 * c1 + c5);
114 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 2, 32 * c3 + 18, 512 * c1 + c5);
115 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 2, 32 * c3 + 19, 512 * c1 + c5);
116 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 2, 32 * c3 + 20, 512 * c1 + c5);
117 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 2, 32 * c3 + 21, 512 * c1 + c5);
118 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 2, 32 * c3 + 22, 512 * c1 + c5);
119 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 2, 32 * c3 + 23, 512 * c1 + c5);
120 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 2, 32 * c3 + 24, 512 * c1 + c5);
121 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 2, 32 * c3 + 25, 512 * c1 + c5);
122 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 2, 32 * c3 + 26, 512 * c1 + c5);
123 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 2, 32 * c3 + 27, 512 * c1 + c5);
124 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 2, 32 * c3 + 28, 512 * c1 + c5);
125 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 2, 32 * c3 + 29, 512 * c1 + c5);
126 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 2, 32 * c3 + 30, 512 * c1 + c5);
127 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 2, 32 * c3 + 31, 512 * c1 + c5);
128 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 3, 32 * c3, 512 * c1 + c5);
129 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 3, 32 * c3 + 1, 512 * c1 + c5);
130 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 3, 32 * c3 + 2, 512 * c1 + c5);
131 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 3, 32 * c3 + 3, 512 * c1 + c5);
132 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 3, 32 * c3 + 4, 512 * c1 + c5);
133 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 3, 32 * c3 + 5, 512 * c1 + c5);
134 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 3, 32 * c3 + 6, 512 * c1 + c5);
135 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 3, 32 * c3 + 7, 512 * c1 + c5);
136 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 3, 32 * c3 + 8, 512 * c1 + c5);
137 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 3, 32 * c3 + 9, 512 * c1 + c5);
138 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 3, 32 * c3 + 10, 512 * c1 + c5);
139 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 3, 32 * c3 + 11, 512 * c1 + c5);
140 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 3, 32 * c3 + 12, 512 * c1 + c5);
141 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 3, 32 * c3 + 13, 512 * c1 + c5);
142 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 3, 32 * c3 + 14, 512 * c1 + c5);
143 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 3, 32 * c3 + 15, 512 * c1 + c5);
144 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 3, 32 * c3 + 16, 512 * c1 + c5);
145 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 3, 32 * c3 + 17, 512 * c1 + c5);
146 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 3, 32 * c3 + 18, 512 * c1 + c5);
147 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 3, 32 * c3 + 19, 512 * c1 + c5);
148 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 3, 32 * c3 + 20, 512 * c1 + c5);
149 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 3, 32 * c3 + 21, 512 * c1 + c5);
150 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 3, 32 * c3 + 22, 512 * c1 + c5);
151 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 3, 32 * c3 + 23, 512 * c1 + c5);
152 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 3, 32 * c3 + 24, 512 * c1 + c5);
153 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 3, 32 * c3 + 25, 512 * c1 + c5);
154 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 3, 32 * c3 + 26, 512 * c1 + c5);
155 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 3, 32 * c3 + 27, 512 * c1 + c5);
156 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 3, 32 * c3 + 28, 512 * c1 + c5);
157 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 3, 32 * c3 + 29, 512 * c1 + c5);
158 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 3, 32 * c3 + 30, 512 * c1 + c5);
159 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 3, 32 * c3 + 31, 512 * c1 + c5);
160 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 4, 32 * c3, 512 * c1 + c5);
161 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 4, 32 * c3 + 1, 512 * c1 + c5);
162 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 4, 32 * c3 + 2, 512 * c1 + c5);
163 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 4, 32 * c3 + 3, 512 * c1 + c5);
164 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 4, 32 * c3 + 4, 512 * c1 + c5);
165 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 4, 32 * c3 + 5, 512 * c1 + c5);
166 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 4, 32 * c3 + 6, 512 * c1 + c5);
167 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 4, 32 * c3 + 7, 512 * c1 + c5);
168 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 4, 32 * c3 + 8, 512 * c1 + c5);
169 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 4, 32 * c3 + 9, 512 * c1 + c5);
170 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 4, 32 * c3 + 10, 512 * c1 + c5);
171 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 4, 32 * c3 + 11, 512 * c1 + c5);
172 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 4, 32 * c3 + 12, 512 * c1 + c5);
173 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 4, 32 * c3 + 13, 512 * c1 + c5);
174 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 4, 32 * c3 + 14, 512 * c1 + c5);
175 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 4, 32 * c3 + 15, 512 * c1 + c5);
176 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 4, 32 * c3 + 16, 512 * c1 + c5);
177 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 4, 32 * c3 + 17, 512 * c1 + c5);
178 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 4, 32 * c3 + 18, 512 * c1 + c5);
179 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 4, 32 * c3 + 19, 512 * c1 + c5);
180 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 4, 32 * c3 + 20, 512 * c1 + c5);
181 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 4, 32 * c3 + 21, 512 * c1 + c5);
182 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 4, 32 * c3 + 22, 512 * c1 + c5);
183 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 4, 32 * c3 + 23, 512 * c1 + c5);
184 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 4, 32 * c3 + 24, 512 * c1 + c5);
185 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 4, 32 * c3 + 25, 512 * c1 + c5);
186 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 4, 32 * c3 + 26, 512 * c1 + c5);
187 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 4, 32 * c3 + 27, 512 * c1 + c5);
188 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 4, 32 * c3 + 28, 512 * c1 + c5);
189 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 4, 32 * c3 + 29, 512 * c1 + c5);
190 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 4, 32 * c3 + 30, 512 * c1 + c5);
191 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 4, 32 * c3 + 31, 512 * c1 + c5);
192 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 5, 32 * c3, 512 * c1 + c5);
193 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 5, 32 * c3 + 1, 512 * c1 + c5);
194 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 5, 32 * c3 + 2, 512 * c1 + c5);
195 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 5, 32 * c3 + 3, 512 * c1 + c5);
196 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 5, 32 * c3 + 4, 512 * c1 + c5);
197 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 5, 32 * c3 + 5, 512 * c1 + c5);
198 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 5, 32 * c3 + 6, 512 * c1 + c5);
199 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 5, 32 * c3 + 7, 512 * c1 + c5);
200 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 5, 32 * c3 + 8, 512 * c1 + c5);
201 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 5, 32 * c3 + 9, 512 * c1 + c5);
202 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 5, 32 * c3 + 10, 512 * c1 + c5);
203 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 5, 32 * c3 + 11, 512 * c1 + c5);
204 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 5, 32 * c3 + 12, 512 * c1 + c5);
205 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 5, 32 * c3 + 13, 512 * c1 + c5);
206 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 5, 32 * c3 + 14, 512 * c1 + c5);
207 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 5, 32 * c3 + 15, 512 * c1 + c5);
208 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 5, 32 * c3 + 16, 512 * c1 + c5);
209 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 5, 32 * c3 + 17, 512 * c1 + c5);
210 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 5, 32 * c3 + 18, 512 * c1 + c5);
211 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 5, 32 * c3 + 19, 512 * c1 + c5);
212 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 5, 32 * c3 + 20, 512 * c1 + c5);
213 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 5, 32 * c3 + 21, 512 * c1 + c5);
214 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 5, 32 * c3 + 22, 512 * c1 + c5);
215 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 5, 32 * c3 + 23, 512 * c1 + c5);
216 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 5, 32 * c3 + 24, 512 * c1 + c5);
217 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 5, 32 * c3 + 25, 512 * c1 + c5);
218 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 5, 32 * c3 + 26, 512 * c1 + c5);
219 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 5, 32 * c3 + 27, 512 * c1 + c5);
220 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 5, 32 * c3 + 28, 512 * c1 + c5);
221 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 5, 32 * c3 + 29, 512 * c1 + c5);
222 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 5, 32 * c3 + 30, 512 * c1 + c5);
223 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 5, 32 * c3 + 31, 512 * c1 + c5);
224 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 6, 32 * c3, 512 * c1 + c5);
225 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 6, 32 * c3 + 1, 512 * c1 + c5);
226 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 6, 32 * c3 + 2, 512 * c1 + c5);
227 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 6, 32 * c3 + 3, 512 * c1 + c5);
228 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 6, 32 * c3 + 4, 512 * c1 + c5);
229 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 6, 32 * c3 + 5, 512 * c1 + c5);
230 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 6, 32 * c3 + 6, 512 * c1 + c5);
231 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 6, 32 * c3 + 7, 512 * c1 + c5);
232 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 6, 32 * c3 + 8, 512 * c1 + c5);
233 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 6, 32 * c3 + 9, 512 * c1 + c5);
234 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 6, 32 * c3 + 10, 512 * c1 + c5);
235 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 6, 32 * c3 + 11, 512 * c1 + c5);
236 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 6, 32 * c3 + 12, 512 * c1 + c5);
237 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 6, 32 * c3 + 13, 512 * c1 + c5);
238 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 6, 32 * c3 + 14, 512 * c1 + c5);
239 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 6, 32 * c3 + 15, 512 * c1 + c5);
240 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 6, 32 * c3 + 16, 512 * c1 + c5);
241 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 6, 32 * c3 + 17, 512 * c1 + c5);
242 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 6, 32 * c3 + 18, 512 * c1 + c5);
243 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 6, 32 * c3 + 19, 512 * c1 + c5);
244 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 6, 32 * c3 + 20, 512 * c1 + c5);
245 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 6, 32 * c3 + 21, 512 * c1 + c5);
246 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 6, 32 * c3 + 22, 512 * c1 + c5);
247 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 6, 32 * c3 + 23, 512 * c1 + c5);
248 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 6, 32 * c3 + 24, 512 * c1 + c5);
249 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 6, 32 * c3 + 25, 512 * c1 + c5);
250 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 6, 32 * c3 + 26, 512 * c1 + c5);
251 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 6, 32 * c3 + 27, 512 * c1 + c5);
252 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 6, 32 * c3 + 28, 512 * c1 + c5);
253 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 6, 32 * c3 + 29, 512 * c1 + c5);
254 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 6, 32 * c3 + 30, 512 * c1 + c5);
255 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 6, 32 * c3 + 31, 512 * c1 + c5);
256 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 7, 32 * c3, 512 * c1 + c5);
257 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 7, 32 * c3 + 1, 512 * c1 + c5);
258 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 7, 32 * c3 + 2, 512 * c1 + c5);
259 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 7, 32 * c3 + 3, 512 * c1 + c5);
260 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 7, 32 * c3 + 4, 512 * c1 + c5);
261 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 7, 32 * c3 + 5, 512 * c1 + c5);
262 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 7, 32 * c3 + 6, 512 * c1 + c5);
263 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 7, 32 * c3 + 7, 512 * c1 + c5);
264 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 7, 32 * c3 + 8, 512 * c1 + c5);
265 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 7, 32 * c3 + 9, 512 * c1 + c5);
266 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 7, 32 * c3 + 10, 512 * c1 + c5);
267 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 7, 32 * c3 + 11, 512 * c1 + c5);
268 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 7, 32 * c3 + 12, 512 * c1 + c5);
269 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 7, 32 * c3 + 13, 512 * c1 + c5);
270 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 7, 32 * c3 + 14, 512 * c1 + c5);
271 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 7, 32 * c3 + 15, 512 * c1 + c5);
272 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 7, 32 * c3 + 16, 512 * c1 + c5);
273 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 7, 32 * c3 + 17, 512 * c1 + c5);
274 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 7, 32 * c3 + 18, 512 * c1 + c5);
275 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 7, 32 * c3 + 19, 512 * c1 + c5);
276 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 7, 32 * c3 + 20, 512 * c1 + c5);
277 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 7, 32 * c3 + 21, 512 * c1 + c5);
278 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 7, 32 * c3 + 22, 512 * c1 + c5);
279 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 7, 32 * c3 + 23, 512 * c1 + c5);
280 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 7, 32 * c3 + 24, 512 * c1 + c5);
281 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 7, 32 * c3 + 25, 512 * c1 + c5);
282 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 7, 32 * c3 + 26, 512 * c1 + c5);
283 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 7, 32 * c3 + 27, 512 * c1 + c5);
284 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 7, 32 * c3 + 28, 512 * c1 + c5);
285 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 7, 32 * c3 + 29, 512 * c1 + c5);
286 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 7, 32 * c3 + 30, 512 * c1 + c5);
287 ; CHECK-NEXT:                  Stmt_for_body6(384 * c2 + 8 * c4 + 7, 32 * c3 + 31, 512 * c1 + c5);
288 ; CHECK-NEXT:                }
289 ; CHECK-NEXT:              }
290 ; CHECK-NEXT:                if (c2 == 2)
291 ; CHECK-NEXT:                  for (int c5 = 0; c5 <= min(511, -512 * c1 + 1019); c5 += 1) {
292 ; CHECK-NEXT:                    // Loop Vectorizer Disabled
293 ; CHECK-NEXT:                    // Register tiling - Points
294 ; CHECK-NEXT:                    {
295 ; CHECK-NEXT:                      Stmt_for_body6(1016, 32 * c3, 512 * c1 + c5);
296 ; CHECK-NEXT:                      Stmt_for_body6(1016, 32 * c3 + 1, 512 * c1 + c5);
297 ; CHECK-NEXT:                      Stmt_for_body6(1016, 32 * c3 + 2, 512 * c1 + c5);
298 ; CHECK-NEXT:                      Stmt_for_body6(1016, 32 * c3 + 3, 512 * c1 + c5);
299 ; CHECK-NEXT:                      Stmt_for_body6(1016, 32 * c3 + 4, 512 * c1 + c5);
300 ; CHECK-NEXT:                      Stmt_for_body6(1016, 32 * c3 + 5, 512 * c1 + c5);
301 ; CHECK-NEXT:                      Stmt_for_body6(1016, 32 * c3 + 6, 512 * c1 + c5);
302 ; CHECK-NEXT:                      Stmt_for_body6(1016, 32 * c3 + 7, 512 * c1 + c5);
303 ; CHECK-NEXT:                      Stmt_for_body6(1016, 32 * c3 + 8, 512 * c1 + c5);
304 ; CHECK-NEXT:                      Stmt_for_body6(1016, 32 * c3 + 9, 512 * c1 + c5);
305 ; CHECK-NEXT:                      Stmt_for_body6(1016, 32 * c3 + 10, 512 * c1 + c5);
306 ; CHECK-NEXT:                      Stmt_for_body6(1016, 32 * c3 + 11, 512 * c1 + c5);
307 ; CHECK-NEXT:                      Stmt_for_body6(1016, 32 * c3 + 12, 512 * c1 + c5);
308 ; CHECK-NEXT:                      Stmt_for_body6(1016, 32 * c3 + 13, 512 * c1 + c5);
309 ; CHECK-NEXT:                      Stmt_for_body6(1016, 32 * c3 + 14, 512 * c1 + c5);
310 ; CHECK-NEXT:                      Stmt_for_body6(1016, 32 * c3 + 15, 512 * c1 + c5);
311 ; CHECK-NEXT:                      Stmt_for_body6(1016, 32 * c3 + 16, 512 * c1 + c5);
312 ; CHECK-NEXT:                      Stmt_for_body6(1016, 32 * c3 + 17, 512 * c1 + c5);
313 ; CHECK-NEXT:                      Stmt_for_body6(1016, 32 * c3 + 18, 512 * c1 + c5);
314 ; CHECK-NEXT:                      Stmt_for_body6(1016, 32 * c3 + 19, 512 * c1 + c5);
315 ; CHECK-NEXT:                      Stmt_for_body6(1016, 32 * c3 + 20, 512 * c1 + c5);
316 ; CHECK-NEXT:                      Stmt_for_body6(1016, 32 * c3 + 21, 512 * c1 + c5);
317 ; CHECK-NEXT:                      Stmt_for_body6(1016, 32 * c3 + 22, 512 * c1 + c5);
318 ; CHECK-NEXT:                      Stmt_for_body6(1016, 32 * c3 + 23, 512 * c1 + c5);
319 ; CHECK-NEXT:                      Stmt_for_body6(1016, 32 * c3 + 24, 512 * c1 + c5);
320 ; CHECK-NEXT:                      Stmt_for_body6(1016, 32 * c3 + 25, 512 * c1 + c5);
321 ; CHECK-NEXT:                      Stmt_for_body6(1016, 32 * c3 + 26, 512 * c1 + c5);
322 ; CHECK-NEXT:                      Stmt_for_body6(1016, 32 * c3 + 27, 512 * c1 + c5);
323 ; CHECK-NEXT:                      Stmt_for_body6(1016, 32 * c3 + 28, 512 * c1 + c5);
324 ; CHECK-NEXT:                      Stmt_for_body6(1016, 32 * c3 + 29, 512 * c1 + c5);
325 ; CHECK-NEXT:                      Stmt_for_body6(1016, 32 * c3 + 30, 512 * c1 + c5);
326 ; CHECK-NEXT:                      Stmt_for_body6(1016, 32 * c3 + 31, 512 * c1 + c5);
327 ; CHECK-NEXT:                      Stmt_for_body6(1017, 32 * c3, 512 * c1 + c5);
328 ; CHECK-NEXT:                      Stmt_for_body6(1017, 32 * c3 + 1, 512 * c1 + c5);
329 ; CHECK-NEXT:                      Stmt_for_body6(1017, 32 * c3 + 2, 512 * c1 + c5);
330 ; CHECK-NEXT:                      Stmt_for_body6(1017, 32 * c3 + 3, 512 * c1 + c5);
331 ; CHECK-NEXT:                      Stmt_for_body6(1017, 32 * c3 + 4, 512 * c1 + c5);
332 ; CHECK-NEXT:                      Stmt_for_body6(1017, 32 * c3 + 5, 512 * c1 + c5);
333 ; CHECK-NEXT:                      Stmt_for_body6(1017, 32 * c3 + 6, 512 * c1 + c5);
334 ; CHECK-NEXT:                      Stmt_for_body6(1017, 32 * c3 + 7, 512 * c1 + c5);
335 ; CHECK-NEXT:                      Stmt_for_body6(1017, 32 * c3 + 8, 512 * c1 + c5);
336 ; CHECK-NEXT:                      Stmt_for_body6(1017, 32 * c3 + 9, 512 * c1 + c5);
337 ; CHECK-NEXT:                      Stmt_for_body6(1017, 32 * c3 + 10, 512 * c1 + c5);
338 ; CHECK-NEXT:                      Stmt_for_body6(1017, 32 * c3 + 11, 512 * c1 + c5);
339 ; CHECK-NEXT:                      Stmt_for_body6(1017, 32 * c3 + 12, 512 * c1 + c5);
340 ; CHECK-NEXT:                      Stmt_for_body6(1017, 32 * c3 + 13, 512 * c1 + c5);
341 ; CHECK-NEXT:                      Stmt_for_body6(1017, 32 * c3 + 14, 512 * c1 + c5);
342 ; CHECK-NEXT:                      Stmt_for_body6(1017, 32 * c3 + 15, 512 * c1 + c5);
343 ; CHECK-NEXT:                      Stmt_for_body6(1017, 32 * c3 + 16, 512 * c1 + c5);
344 ; CHECK-NEXT:                      Stmt_for_body6(1017, 32 * c3 + 17, 512 * c1 + c5);
345 ; CHECK-NEXT:                      Stmt_for_body6(1017, 32 * c3 + 18, 512 * c1 + c5);
346 ; CHECK-NEXT:                      Stmt_for_body6(1017, 32 * c3 + 19, 512 * c1 + c5);
347 ; CHECK-NEXT:                      Stmt_for_body6(1017, 32 * c3 + 20, 512 * c1 + c5);
348 ; CHECK-NEXT:                      Stmt_for_body6(1017, 32 * c3 + 21, 512 * c1 + c5);
349 ; CHECK-NEXT:                      Stmt_for_body6(1017, 32 * c3 + 22, 512 * c1 + c5);
350 ; CHECK-NEXT:                      Stmt_for_body6(1017, 32 * c3 + 23, 512 * c1 + c5);
351 ; CHECK-NEXT:                      Stmt_for_body6(1017, 32 * c3 + 24, 512 * c1 + c5);
352 ; CHECK-NEXT:                      Stmt_for_body6(1017, 32 * c3 + 25, 512 * c1 + c5);
353 ; CHECK-NEXT:                      Stmt_for_body6(1017, 32 * c3 + 26, 512 * c1 + c5);
354 ; CHECK-NEXT:                      Stmt_for_body6(1017, 32 * c3 + 27, 512 * c1 + c5);
355 ; CHECK-NEXT:                      Stmt_for_body6(1017, 32 * c3 + 28, 512 * c1 + c5);
356 ; CHECK-NEXT:                      Stmt_for_body6(1017, 32 * c3 + 29, 512 * c1 + c5);
357 ; CHECK-NEXT:                      Stmt_for_body6(1017, 32 * c3 + 30, 512 * c1 + c5);
358 ; CHECK-NEXT:                      Stmt_for_body6(1017, 32 * c3 + 31, 512 * c1 + c5);
359 ; CHECK-NEXT:                      Stmt_for_body6(1018, 32 * c3, 512 * c1 + c5);
360 ; CHECK-NEXT:                      Stmt_for_body6(1018, 32 * c3 + 1, 512 * c1 + c5);
361 ; CHECK-NEXT:                      Stmt_for_body6(1018, 32 * c3 + 2, 512 * c1 + c5);
362 ; CHECK-NEXT:                      Stmt_for_body6(1018, 32 * c3 + 3, 512 * c1 + c5);
363 ; CHECK-NEXT:                      Stmt_for_body6(1018, 32 * c3 + 4, 512 * c1 + c5);
364 ; CHECK-NEXT:                      Stmt_for_body6(1018, 32 * c3 + 5, 512 * c1 + c5);
365 ; CHECK-NEXT:                      Stmt_for_body6(1018, 32 * c3 + 6, 512 * c1 + c5);
366 ; CHECK-NEXT:                      Stmt_for_body6(1018, 32 * c3 + 7, 512 * c1 + c5);
367 ; CHECK-NEXT:                      Stmt_for_body6(1018, 32 * c3 + 8, 512 * c1 + c5);
368 ; CHECK-NEXT:                      Stmt_for_body6(1018, 32 * c3 + 9, 512 * c1 + c5);
369 ; CHECK-NEXT:                      Stmt_for_body6(1018, 32 * c3 + 10, 512 * c1 + c5);
370 ; CHECK-NEXT:                      Stmt_for_body6(1018, 32 * c3 + 11, 512 * c1 + c5);
371 ; CHECK-NEXT:                      Stmt_for_body6(1018, 32 * c3 + 12, 512 * c1 + c5);
372 ; CHECK-NEXT:                      Stmt_for_body6(1018, 32 * c3 + 13, 512 * c1 + c5);
373 ; CHECK-NEXT:                      Stmt_for_body6(1018, 32 * c3 + 14, 512 * c1 + c5);
374 ; CHECK-NEXT:                      Stmt_for_body6(1018, 32 * c3 + 15, 512 * c1 + c5);
375 ; CHECK-NEXT:                      Stmt_for_body6(1018, 32 * c3 + 16, 512 * c1 + c5);
376 ; CHECK-NEXT:                      Stmt_for_body6(1018, 32 * c3 + 17, 512 * c1 + c5);
377 ; CHECK-NEXT:                      Stmt_for_body6(1018, 32 * c3 + 18, 512 * c1 + c5);
378 ; CHECK-NEXT:                      Stmt_for_body6(1018, 32 * c3 + 19, 512 * c1 + c5);
379 ; CHECK-NEXT:                      Stmt_for_body6(1018, 32 * c3 + 20, 512 * c1 + c5);
380 ; CHECK-NEXT:                      Stmt_for_body6(1018, 32 * c3 + 21, 512 * c1 + c5);
381 ; CHECK-NEXT:                      Stmt_for_body6(1018, 32 * c3 + 22, 512 * c1 + c5);
382 ; CHECK-NEXT:                      Stmt_for_body6(1018, 32 * c3 + 23, 512 * c1 + c5);
383 ; CHECK-NEXT:                      Stmt_for_body6(1018, 32 * c3 + 24, 512 * c1 + c5);
384 ; CHECK-NEXT:                      Stmt_for_body6(1018, 32 * c3 + 25, 512 * c1 + c5);
385 ; CHECK-NEXT:                      Stmt_for_body6(1018, 32 * c3 + 26, 512 * c1 + c5);
386 ; CHECK-NEXT:                      Stmt_for_body6(1018, 32 * c3 + 27, 512 * c1 + c5);
387 ; CHECK-NEXT:                      Stmt_for_body6(1018, 32 * c3 + 28, 512 * c1 + c5);
388 ; CHECK-NEXT:                      Stmt_for_body6(1018, 32 * c3 + 29, 512 * c1 + c5);
389 ; CHECK-NEXT:                      Stmt_for_body6(1018, 32 * c3 + 30, 512 * c1 + c5);
390 ; CHECK-NEXT:                      Stmt_for_body6(1018, 32 * c3 + 31, 512 * c1 + c5);
391 ; CHECK-NEXT:                      Stmt_for_body6(1019, 32 * c3, 512 * c1 + c5);
392 ; CHECK-NEXT:                      Stmt_for_body6(1019, 32 * c3 + 1, 512 * c1 + c5);
393 ; CHECK-NEXT:                      Stmt_for_body6(1019, 32 * c3 + 2, 512 * c1 + c5);
394 ; CHECK-NEXT:                      Stmt_for_body6(1019, 32 * c3 + 3, 512 * c1 + c5);
395 ; CHECK-NEXT:                      Stmt_for_body6(1019, 32 * c3 + 4, 512 * c1 + c5);
396 ; CHECK-NEXT:                      Stmt_for_body6(1019, 32 * c3 + 5, 512 * c1 + c5);
397 ; CHECK-NEXT:                      Stmt_for_body6(1019, 32 * c3 + 6, 512 * c1 + c5);
398 ; CHECK-NEXT:                      Stmt_for_body6(1019, 32 * c3 + 7, 512 * c1 + c5);
399 ; CHECK-NEXT:                      Stmt_for_body6(1019, 32 * c3 + 8, 512 * c1 + c5);
400 ; CHECK-NEXT:                      Stmt_for_body6(1019, 32 * c3 + 9, 512 * c1 + c5);
401 ; CHECK-NEXT:                      Stmt_for_body6(1019, 32 * c3 + 10, 512 * c1 + c5);
402 ; CHECK-NEXT:                      Stmt_for_body6(1019, 32 * c3 + 11, 512 * c1 + c5);
403 ; CHECK-NEXT:                      Stmt_for_body6(1019, 32 * c3 + 12, 512 * c1 + c5);
404 ; CHECK-NEXT:                      Stmt_for_body6(1019, 32 * c3 + 13, 512 * c1 + c5);
405 ; CHECK-NEXT:                      Stmt_for_body6(1019, 32 * c3 + 14, 512 * c1 + c5);
406 ; CHECK-NEXT:                      Stmt_for_body6(1019, 32 * c3 + 15, 512 * c1 + c5);
407 ; CHECK-NEXT:                      Stmt_for_body6(1019, 32 * c3 + 16, 512 * c1 + c5);
408 ; CHECK-NEXT:                      Stmt_for_body6(1019, 32 * c3 + 17, 512 * c1 + c5);
409 ; CHECK-NEXT:                      Stmt_for_body6(1019, 32 * c3 + 18, 512 * c1 + c5);
410 ; CHECK-NEXT:                      Stmt_for_body6(1019, 32 * c3 + 19, 512 * c1 + c5);
411 ; CHECK-NEXT:                      Stmt_for_body6(1019, 32 * c3 + 20, 512 * c1 + c5);
412 ; CHECK-NEXT:                      Stmt_for_body6(1019, 32 * c3 + 21, 512 * c1 + c5);
413 ; CHECK-NEXT:                      Stmt_for_body6(1019, 32 * c3 + 22, 512 * c1 + c5);
414 ; CHECK-NEXT:                      Stmt_for_body6(1019, 32 * c3 + 23, 512 * c1 + c5);
415 ; CHECK-NEXT:                      Stmt_for_body6(1019, 32 * c3 + 24, 512 * c1 + c5);
416 ; CHECK-NEXT:                      Stmt_for_body6(1019, 32 * c3 + 25, 512 * c1 + c5);
417 ; CHECK-NEXT:                      Stmt_for_body6(1019, 32 * c3 + 26, 512 * c1 + c5);
418 ; CHECK-NEXT:                      Stmt_for_body6(1019, 32 * c3 + 27, 512 * c1 + c5);
419 ; CHECK-NEXT:                      Stmt_for_body6(1019, 32 * c3 + 28, 512 * c1 + c5);
420 ; CHECK-NEXT:                      Stmt_for_body6(1019, 32 * c3 + 29, 512 * c1 + c5);
421 ; CHECK-NEXT:                      Stmt_for_body6(1019, 32 * c3 + 30, 512 * c1 + c5);
422 ; CHECK-NEXT:                      Stmt_for_body6(1019, 32 * c3 + 31, 512 * c1 + c5);
423 ; CHECK-NEXT:                    }
424 ; CHECK-NEXT:                  }
425 ; CHECK-NEXT:              }
426 ; CHECK-NEXT:              for (int c4 = 0; c4 <= min(47, -48 * c2 + 127); c4 += 1)
427 ; CHECK-NEXT:                for (int c5 = 0; c5 <= min(511, -512 * c1 + 1019); c5 += 1) {
428 ; CHECK-NEXT:                  // Loop Vectorizer Disabled
429 ; CHECK-NEXT:                  // Register tiling - Points
430 ; CHECK-NEXT:                  {
431 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4, 992, 512 * c1 + c5);
432 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4, 993, 512 * c1 + c5);
433 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4, 994, 512 * c1 + c5);
434 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4, 995, 512 * c1 + c5);
435 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4, 996, 512 * c1 + c5);
436 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4, 997, 512 * c1 + c5);
437 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4, 998, 512 * c1 + c5);
438 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4, 999, 512 * c1 + c5);
439 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4, 1000, 512 * c1 + c5);
440 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4, 1001, 512 * c1 + c5);
441 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4, 1002, 512 * c1 + c5);
442 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4, 1003, 512 * c1 + c5);
443 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4, 1004, 512 * c1 + c5);
444 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4, 1005, 512 * c1 + c5);
445 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4, 1006, 512 * c1 + c5);
446 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4, 1007, 512 * c1 + c5);
447 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4, 1008, 512 * c1 + c5);
448 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4, 1009, 512 * c1 + c5);
449 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4, 1010, 512 * c1 + c5);
450 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4, 1011, 512 * c1 + c5);
451 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4, 1012, 512 * c1 + c5);
452 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4, 1013, 512 * c1 + c5);
453 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4, 1014, 512 * c1 + c5);
454 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4, 1015, 512 * c1 + c5);
455 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4, 1016, 512 * c1 + c5);
456 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4, 1017, 512 * c1 + c5);
457 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4, 1018, 512 * c1 + c5);
458 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4, 1019, 512 * c1 + c5);
459 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 1, 992, 512 * c1 + c5);
460 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 1, 993, 512 * c1 + c5);
461 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 1, 994, 512 * c1 + c5);
462 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 1, 995, 512 * c1 + c5);
463 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 1, 996, 512 * c1 + c5);
464 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 1, 997, 512 * c1 + c5);
465 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 1, 998, 512 * c1 + c5);
466 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 1, 999, 512 * c1 + c5);
467 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 1, 1000, 512 * c1 + c5);
468 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 1, 1001, 512 * c1 + c5);
469 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 1, 1002, 512 * c1 + c5);
470 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 1, 1003, 512 * c1 + c5);
471 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 1, 1004, 512 * c1 + c5);
472 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 1, 1005, 512 * c1 + c5);
473 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 1, 1006, 512 * c1 + c5);
474 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 1, 1007, 512 * c1 + c5);
475 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 1, 1008, 512 * c1 + c5);
476 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 1, 1009, 512 * c1 + c5);
477 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 1, 1010, 512 * c1 + c5);
478 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 1, 1011, 512 * c1 + c5);
479 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 1, 1012, 512 * c1 + c5);
480 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 1, 1013, 512 * c1 + c5);
481 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 1, 1014, 512 * c1 + c5);
482 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 1, 1015, 512 * c1 + c5);
483 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 1, 1016, 512 * c1 + c5);
484 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 1, 1017, 512 * c1 + c5);
485 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 1, 1018, 512 * c1 + c5);
486 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 1, 1019, 512 * c1 + c5);
487 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 2, 992, 512 * c1 + c5);
488 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 2, 993, 512 * c1 + c5);
489 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 2, 994, 512 * c1 + c5);
490 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 2, 995, 512 * c1 + c5);
491 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 2, 996, 512 * c1 + c5);
492 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 2, 997, 512 * c1 + c5);
493 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 2, 998, 512 * c1 + c5);
494 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 2, 999, 512 * c1 + c5);
495 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 2, 1000, 512 * c1 + c5);
496 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 2, 1001, 512 * c1 + c5);
497 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 2, 1002, 512 * c1 + c5);
498 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 2, 1003, 512 * c1 + c5);
499 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 2, 1004, 512 * c1 + c5);
500 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 2, 1005, 512 * c1 + c5);
501 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 2, 1006, 512 * c1 + c5);
502 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 2, 1007, 512 * c1 + c5);
503 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 2, 1008, 512 * c1 + c5);
504 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 2, 1009, 512 * c1 + c5);
505 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 2, 1010, 512 * c1 + c5);
506 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 2, 1011, 512 * c1 + c5);
507 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 2, 1012, 512 * c1 + c5);
508 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 2, 1013, 512 * c1 + c5);
509 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 2, 1014, 512 * c1 + c5);
510 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 2, 1015, 512 * c1 + c5);
511 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 2, 1016, 512 * c1 + c5);
512 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 2, 1017, 512 * c1 + c5);
513 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 2, 1018, 512 * c1 + c5);
514 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 2, 1019, 512 * c1 + c5);
515 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 3, 992, 512 * c1 + c5);
516 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 3, 993, 512 * c1 + c5);
517 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 3, 994, 512 * c1 + c5);
518 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 3, 995, 512 * c1 + c5);
519 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 3, 996, 512 * c1 + c5);
520 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 3, 997, 512 * c1 + c5);
521 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 3, 998, 512 * c1 + c5);
522 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 3, 999, 512 * c1 + c5);
523 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 3, 1000, 512 * c1 + c5);
524 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 3, 1001, 512 * c1 + c5);
525 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 3, 1002, 512 * c1 + c5);
526 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 3, 1003, 512 * c1 + c5);
527 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 3, 1004, 512 * c1 + c5);
528 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 3, 1005, 512 * c1 + c5);
529 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 3, 1006, 512 * c1 + c5);
530 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 3, 1007, 512 * c1 + c5);
531 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 3, 1008, 512 * c1 + c5);
532 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 3, 1009, 512 * c1 + c5);
533 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 3, 1010, 512 * c1 + c5);
534 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 3, 1011, 512 * c1 + c5);
535 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 3, 1012, 512 * c1 + c5);
536 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 3, 1013, 512 * c1 + c5);
537 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 3, 1014, 512 * c1 + c5);
538 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 3, 1015, 512 * c1 + c5);
539 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 3, 1016, 512 * c1 + c5);
540 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 3, 1017, 512 * c1 + c5);
541 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 3, 1018, 512 * c1 + c5);
542 ; CHECK-NEXT:                    Stmt_for_body6(384 * c2 + 8 * c4 + 3, 1019, 512 * c1 + c5);
543 ; CHECK-NEXT:                    if (48 * c2 + c4 <= 126) {
544 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 4, 992, 512 * c1 + c5);
545 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 4, 993, 512 * c1 + c5);
546 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 4, 994, 512 * c1 + c5);
547 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 4, 995, 512 * c1 + c5);
548 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 4, 996, 512 * c1 + c5);
549 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 4, 997, 512 * c1 + c5);
550 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 4, 998, 512 * c1 + c5);
551 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 4, 999, 512 * c1 + c5);
552 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 4, 1000, 512 * c1 + c5);
553 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 4, 1001, 512 * c1 + c5);
554 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 4, 1002, 512 * c1 + c5);
555 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 4, 1003, 512 * c1 + c5);
556 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 4, 1004, 512 * c1 + c5);
557 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 4, 1005, 512 * c1 + c5);
558 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 4, 1006, 512 * c1 + c5);
559 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 4, 1007, 512 * c1 + c5);
560 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 4, 1008, 512 * c1 + c5);
561 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 4, 1009, 512 * c1 + c5);
562 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 4, 1010, 512 * c1 + c5);
563 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 4, 1011, 512 * c1 + c5);
564 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 4, 1012, 512 * c1 + c5);
565 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 4, 1013, 512 * c1 + c5);
566 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 4, 1014, 512 * c1 + c5);
567 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 4, 1015, 512 * c1 + c5);
568 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 4, 1016, 512 * c1 + c5);
569 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 4, 1017, 512 * c1 + c5);
570 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 4, 1018, 512 * c1 + c5);
571 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 4, 1019, 512 * c1 + c5);
572 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 5, 992, 512 * c1 + c5);
573 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 5, 993, 512 * c1 + c5);
574 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 5, 994, 512 * c1 + c5);
575 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 5, 995, 512 * c1 + c5);
576 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 5, 996, 512 * c1 + c5);
577 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 5, 997, 512 * c1 + c5);
578 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 5, 998, 512 * c1 + c5);
579 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 5, 999, 512 * c1 + c5);
580 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 5, 1000, 512 * c1 + c5);
581 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 5, 1001, 512 * c1 + c5);
582 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 5, 1002, 512 * c1 + c5);
583 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 5, 1003, 512 * c1 + c5);
584 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 5, 1004, 512 * c1 + c5);
585 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 5, 1005, 512 * c1 + c5);
586 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 5, 1006, 512 * c1 + c5);
587 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 5, 1007, 512 * c1 + c5);
588 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 5, 1008, 512 * c1 + c5);
589 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 5, 1009, 512 * c1 + c5);
590 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 5, 1010, 512 * c1 + c5);
591 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 5, 1011, 512 * c1 + c5);
592 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 5, 1012, 512 * c1 + c5);
593 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 5, 1013, 512 * c1 + c5);
594 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 5, 1014, 512 * c1 + c5);
595 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 5, 1015, 512 * c1 + c5);
596 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 5, 1016, 512 * c1 + c5);
597 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 5, 1017, 512 * c1 + c5);
598 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 5, 1018, 512 * c1 + c5);
599 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 5, 1019, 512 * c1 + c5);
600 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 6, 992, 512 * c1 + c5);
601 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 6, 993, 512 * c1 + c5);
602 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 6, 994, 512 * c1 + c5);
603 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 6, 995, 512 * c1 + c5);
604 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 6, 996, 512 * c1 + c5);
605 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 6, 997, 512 * c1 + c5);
606 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 6, 998, 512 * c1 + c5);
607 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 6, 999, 512 * c1 + c5);
608 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 6, 1000, 512 * c1 + c5);
609 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 6, 1001, 512 * c1 + c5);
610 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 6, 1002, 512 * c1 + c5);
611 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 6, 1003, 512 * c1 + c5);
612 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 6, 1004, 512 * c1 + c5);
613 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 6, 1005, 512 * c1 + c5);
614 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 6, 1006, 512 * c1 + c5);
615 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 6, 1007, 512 * c1 + c5);
616 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 6, 1008, 512 * c1 + c5);
617 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 6, 1009, 512 * c1 + c5);
618 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 6, 1010, 512 * c1 + c5);
619 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 6, 1011, 512 * c1 + c5);
620 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 6, 1012, 512 * c1 + c5);
621 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 6, 1013, 512 * c1 + c5);
622 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 6, 1014, 512 * c1 + c5);
623 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 6, 1015, 512 * c1 + c5);
624 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 6, 1016, 512 * c1 + c5);
625 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 6, 1017, 512 * c1 + c5);
626 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 6, 1018, 512 * c1 + c5);
627 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 6, 1019, 512 * c1 + c5);
628 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 7, 992, 512 * c1 + c5);
629 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 7, 993, 512 * c1 + c5);
630 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 7, 994, 512 * c1 + c5);
631 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 7, 995, 512 * c1 + c5);
632 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 7, 996, 512 * c1 + c5);
633 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 7, 997, 512 * c1 + c5);
634 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 7, 998, 512 * c1 + c5);
635 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 7, 999, 512 * c1 + c5);
636 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 7, 1000, 512 * c1 + c5);
637 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 7, 1001, 512 * c1 + c5);
638 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 7, 1002, 512 * c1 + c5);
639 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 7, 1003, 512 * c1 + c5);
640 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 7, 1004, 512 * c1 + c5);
641 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 7, 1005, 512 * c1 + c5);
642 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 7, 1006, 512 * c1 + c5);
643 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 7, 1007, 512 * c1 + c5);
644 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 7, 1008, 512 * c1 + c5);
645 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 7, 1009, 512 * c1 + c5);
646 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 7, 1010, 512 * c1 + c5);
647 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 7, 1011, 512 * c1 + c5);
648 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 7, 1012, 512 * c1 + c5);
649 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 7, 1013, 512 * c1 + c5);
650 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 7, 1014, 512 * c1 + c5);
651 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 7, 1015, 512 * c1 + c5);
652 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 7, 1016, 512 * c1 + c5);
653 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 7, 1017, 512 * c1 + c5);
654 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 7, 1018, 512 * c1 + c5);
655 ; CHECK-NEXT:                      Stmt_for_body6(384 * c2 + 8 * c4 + 7, 1019, 512 * c1 + c5);
656 ; CHECK-NEXT:                    }
657 ; CHECK-NEXT:                  }
658 ; CHECK-NEXT:                }
659 ; CHECK-NEXT:            }
660 ; CHECK-NEXT:          }
661 ; CHECK-NEXT:        }
663 target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
664 target triple = "x86_64-unknown-linux-gnu"
666 define internal void @kernel_gemm(i32 %ni, i32 %nj, i32 %nk, i8 signext %alpha, i8 signext %beta, [1020 x i8]* %C, [1020 x i8]* %A, [1020 x i8]* %B) {
667 entry:
668   br label %entry.split
670 entry.split:                                      ; preds = %entry
671   br label %for.body
673 for.body:                                         ; preds = %for.inc23, %entry.split
674   %indvars.iv45 = phi i64 [ 0, %entry.split ], [ %indvars.iv.next46, %for.inc23 ]
675   br label %for.body3
677 for.body3:                                        ; preds = %for.inc20, %for.body
678   %indvars.iv42 = phi i64 [ 0, %for.body ], [ %indvars.iv.next43, %for.inc20 ]
679   br label %for.body6
681 for.body6:                                        ; preds = %for.body6, %for.body3
682   %indvars.iv = phi i64 [ 0, %for.body3 ], [ %indvars.iv.next, %for.body6 ]
683   %arrayidx8 = getelementptr inbounds [1020 x i8], [1020 x i8]* %A, i64 %indvars.iv45, i64 %indvars.iv
684   %tmp = load i8, i8* %arrayidx8, align 1
685   %arrayidx12 = getelementptr inbounds [1020 x i8], [1020 x i8]* %B, i64 %indvars.iv, i64 %indvars.iv42
686   %tmp1 = load i8, i8* %arrayidx12, align 1
687   %mul = mul i8 %tmp1, %tmp
688   %arrayidx17 = getelementptr inbounds [1020 x i8], [1020 x i8]* %C, i64 %indvars.iv45, i64 %indvars.iv42
689   %tmp2 = load i8, i8* %arrayidx17, align 1
690   %add = add i8 %mul, %tmp2
691   store i8 %add, i8* %arrayidx17, align 1
692   %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1
693   %exitcond = icmp ne i64 %indvars.iv.next, 1020
694   br i1 %exitcond, label %for.body6, label %for.inc20
696 for.inc20:                                        ; preds = %for.body6
697   %indvars.iv.next43 = add nuw nsw i64 %indvars.iv42, 1
698   %exitcond44 = icmp ne i64 %indvars.iv.next43, 1020
699   br i1 %exitcond44, label %for.body3, label %for.inc23
701 for.inc23:                                        ; preds = %for.inc20
702   %indvars.iv.next46 = add nuw nsw i64 %indvars.iv45, 1
703   %exitcond47 = icmp ne i64 %indvars.iv.next46, 1020
704   br i1 %exitcond47, label %for.body, label %for.end25
706 for.end25:                                        ; preds = %for.inc23
707   ret void