-
Notifications
You must be signed in to change notification settings - Fork 0
/
mvt_for.c.012t.ompexp.dot
301 lines (271 loc) · 11.5 KB
/
mvt_for.c.012t.ompexp.dot
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
digraph "mvt_for.c.012t.ompexp" {
overlap=false;
subgraph "cluster_init_array" {
style="dashed";
color="black";
label="init_array ()";
subgraph cluster_2_1 {
style="filled";
color="darkgreen";
fillcolor="grey88";
label="loop 1";
labeljust=l;
penwidth=2;
subgraph cluster_2_2 {
style="filled";
color="darkgreen";
fillcolor="grey77";
label="loop 2";
labeljust=l;
penwidth=2;
fn_2_basic_block_5 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 5\>:\l\
|if\ (j\ \<\ n)\l\
\ \ goto\ \<bb\ 4\>;\l\
else\l\
\ \ goto\ \<bb\ 6\>;\l\
}"];
fn_2_basic_block_4 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 4\>:\l\
|D.4873\ =\ (long\ unsigned\ int)\ i;\l\
|D.4874\ =\ D.4873\ *\ 64000;\l\
|D.4875\ =\ A\ +\ D.4874;\l\
|D.4876\ =\ (double)\ i;\l\
|D.4877\ =\ (double)\ j;\l\
|D.4878\ =\ D.4876\ *\ D.4877;\l\
|D.4879\ =\ D.4878\ /\ 8.0e+3;\l\
|*D.4875[j]\ =\ D.4879;\l\
|j\ =\ j\ +\ 1;\l\
}"];
}
fn_2_basic_block_7 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 7\>:\l\
|if\ (i\ \<\ n)\l\
\ \ goto\ \<bb\ 3\>;\l\
else\l\
\ \ goto\ \<bb\ 8\>;\l\
}"];
fn_2_basic_block_3 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 3\>:\l\
|D.4846\ =\ (long\ unsigned\ int)\ i;\l\
|D.4847\ =\ D.4846\ *\ 8;\l\
|D.4848\ =\ x1\ +\ D.4847;\l\
|D.4849\ =\ (double)\ i;\l\
|D.4850\ =\ (double)\ n;\l\
|D.4851\ =\ D.4849\ /\ D.4850;\l\
|*D.4848\ =\ D.4851;\l\
|D.4852\ =\ (long\ unsigned\ int)\ i;\l\
|D.4853\ =\ D.4852\ *\ 8;\l\
|D.4854\ =\ x2\ +\ D.4853;\l\
|D.4855\ =\ (double)\ i;\l\
|D.4856\ =\ D.4855\ +\ 1.0e+0;\l\
|D.4857\ =\ (double)\ n;\l\
|D.4858\ =\ D.4856\ /\ D.4857;\l\
|*D.4854\ =\ D.4858;\l\
|D.4859\ =\ (long\ unsigned\ int)\ i;\l\
|D.4860\ =\ D.4859\ *\ 8;\l\
|D.4861\ =\ y_1\ +\ D.4860;\l\
|D.4862\ =\ (double)\ i;\l\
|D.4863\ =\ D.4862\ +\ 3.0e+0;\l\
|D.4864\ =\ (double)\ n;\l\
|D.4865\ =\ D.4863\ /\ D.4864;\l\
|*D.4861\ =\ D.4865;\l\
|D.4866\ =\ (long\ unsigned\ int)\ i;\l\
|D.4867\ =\ D.4866\ *\ 8;\l\
|D.4868\ =\ y_2\ +\ D.4867;\l\
|D.4869\ =\ (double)\ i;\l\
|D.4870\ =\ D.4869\ +\ 4.0e+0;\l\
|D.4871\ =\ (double)\ n;\l\
|D.4872\ =\ D.4870\ /\ D.4871;\l\
|*D.4868\ =\ D.4872;\l\
|j\ =\ 0;\l\
goto\ \<bb\ 5\>;\l\
}"];
fn_2_basic_block_6 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 6\>:\l\
|i\ =\ i\ +\ 1;\l\
}"];
}
fn_2_basic_block_0 [shape=Mdiamond,style=filled,fillcolor=white,label="ENTRY"];
fn_2_basic_block_1 [shape=Mdiamond,style=filled,fillcolor=white,label="EXIT"];
fn_2_basic_block_2 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 2\>:\l\
|i\ =\ 0;\l\
goto\ \<bb\ 7\>;\l\
}"];
fn_2_basic_block_8 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 8\>:\l\
|return;\l\
}"];
fn_2_basic_block_0:s -> fn_2_basic_block_2:n [style="solid,bold",color=blue,weight=100,constraint=true, label="[0%]"];
fn_2_basic_block_2:s -> fn_2_basic_block_7:n [style="solid,bold",color=blue,weight=100,constraint=true, label="[0%]"];
fn_2_basic_block_3:s -> fn_2_basic_block_5:n [style="solid,bold",color=blue,weight=100,constraint=true, label="[0%]"];
fn_2_basic_block_4:s -> fn_2_basic_block_5:n [style="dotted,bold",color=blue,weight=10,constraint=false, label="[0%]"];
fn_2_basic_block_5:s -> fn_2_basic_block_4:n [style="solid,bold",color=black,weight=10,constraint=true, label="[0%]"];
fn_2_basic_block_5:s -> fn_2_basic_block_6:n [style="solid,bold",color=black,weight=10,constraint=true, label="[0%]"];
fn_2_basic_block_6:s -> fn_2_basic_block_7:n [style="dotted,bold",color=blue,weight=10,constraint=false, label="[0%]"];
fn_2_basic_block_7:s -> fn_2_basic_block_3:n [style="solid,bold",color=black,weight=10,constraint=true, label="[0%]"];
fn_2_basic_block_7:s -> fn_2_basic_block_8:n [style="solid,bold",color=black,weight=10,constraint=true, label="[0%]"];
fn_2_basic_block_8:s -> fn_2_basic_block_1:n [style="solid,bold",color=black,weight=10,constraint=true, label="[0%]"];
fn_2_basic_block_0:s -> fn_2_basic_block_1:n [style="invis",constraint=true];
}
subgraph "cluster_print_array" {
style="dashed";
color="black";
label="print_array ()";
subgraph cluster_3_1 {
style="filled";
color="darkgreen";
fillcolor="grey88";
label="loop 1";
labeljust=l;
penwidth=2;
fn_3_basic_block_6 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 6\>:\l\
|if\ (i\ \<\ n)\l\
\ \ goto\ \<bb\ 3\>;\l\
else\l\
\ \ goto\ \<bb\ 7\>;\l\
}"];
fn_3_basic_block_3 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 3\>:\l\
|D.4880\ =\ (long\ unsigned\ int)\ i;\l\
|D.4881\ =\ D.4880\ *\ 8;\l\
|D.4882\ =\ x1\ +\ D.4881;\l\
|D.4883\ =\ *D.4882;\l\
|stderr.0\ =\ stderr;\l\
|fprintf\ (stderr.0,\ \"%0.2lf\ \",\ D.4883);\l\
|D.4885\ =\ (long\ unsigned\ int)\ i;\l\
|D.4886\ =\ D.4885\ *\ 8;\l\
|D.4887\ =\ x2\ +\ D.4886;\l\
|D.4888\ =\ *D.4887;\l\
|stderr.1\ =\ stderr;\l\
|fprintf\ (stderr.1,\ \"%0.2lf\ \",\ D.4888);\l\
|D.4890\ =\ i\ %\ 20;\l\
|if\ (D.4890\ ==\ 0)\l\
\ \ goto\ \<bb\ 4\>;\l\
else\l\
\ \ goto\ \<bb\ 5\>;\l\
}"];
fn_3_basic_block_4 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 4\>:\l\
|stderr.2\ =\ stderr;\l\
|__builtin_fputc\ (10,\ stderr.2);\l\
}"];
fn_3_basic_block_5 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 5\>:\l\
|i\ =\ i\ +\ 1;\l\
}"];
}
fn_3_basic_block_0 [shape=Mdiamond,style=filled,fillcolor=white,label="ENTRY"];
fn_3_basic_block_1 [shape=Mdiamond,style=filled,fillcolor=white,label="EXIT"];
fn_3_basic_block_2 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 2\>:\l\
|i\ =\ 0;\l\
goto\ \<bb\ 6\>;\l\
}"];
fn_3_basic_block_7 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 7\>:\l\
|return;\l\
}"];
fn_3_basic_block_0:s -> fn_3_basic_block_2:n [style="solid,bold",color=blue,weight=100,constraint=true, label="[0%]"];
fn_3_basic_block_2:s -> fn_3_basic_block_6:n [style="solid,bold",color=blue,weight=100,constraint=true, label="[0%]"];
fn_3_basic_block_3:s -> fn_3_basic_block_4:n [style="solid,bold",color=black,weight=10,constraint=true, label="[0%]"];
fn_3_basic_block_3:s -> fn_3_basic_block_5:n [style="solid,bold",color=black,weight=10,constraint=true, label="[0%]"];
fn_3_basic_block_4:s -> fn_3_basic_block_5:n [style="solid,bold",color=blue,weight=100,constraint=true, label="[0%]"];
fn_3_basic_block_5:s -> fn_3_basic_block_6:n [style="dotted,bold",color=blue,weight=10,constraint=false, label="[0%]"];
fn_3_basic_block_6:s -> fn_3_basic_block_3:n [style="solid,bold",color=black,weight=10,constraint=true, label="[0%]"];
fn_3_basic_block_6:s -> fn_3_basic_block_7:n [style="solid,bold",color=black,weight=10,constraint=true, label="[0%]"];
fn_3_basic_block_7:s -> fn_3_basic_block_1:n [style="solid,bold",color=black,weight=10,constraint=true, label="[0%]"];
fn_3_basic_block_0:s -> fn_3_basic_block_1:n [style="invis",constraint=true];
}
subgraph "cluster_kernel_mvt" {
style="dashed";
color="black";
label="kernel_mvt ()";
fn_4_basic_block_0 [shape=Mdiamond,style=filled,fillcolor=white,label="ENTRY"];
fn_4_basic_block_1 [shape=Mdiamond,style=filled,fillcolor=white,label="EXIT"];
fn_4_basic_block_2 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 2\>:\l\
|threads.3\ =\ threads;\l\
|.omp_data_o.7.A\ =\ A;\l\
|.omp_data_o.7.y_2\ =\ y_2;\l\
|.omp_data_o.7.y_1\ =\ y_1;\l\
|.omp_data_o.7.x2\ =\ x2;\l\
|.omp_data_o.7.x1\ =\ x1;\l\
|.omp_data_o.7.n\ =\ n;\l\
|threads.16\ =\ (unsigned\ int)\ threads.3;\l\
|__builtin_GOMP_parallel\ (kernel_mvt._omp_fn.0,\ &.omp_data_o.7,\ threads.16,\ 0);\l\
|.omp_data_o.7\ =\ \{CLOBBER\};\l\
|return;\l\
}"];
fn_4_basic_block_0:s -> fn_4_basic_block_2:n [style="solid,bold",color=blue,weight=100,constraint=true, label="[0%]"];
fn_4_basic_block_2:s -> fn_4_basic_block_1:n [style="solid,bold",color=black,weight=10,constraint=true, label="[0%]"];
fn_4_basic_block_0:s -> fn_4_basic_block_1:n [style="invis",constraint=true];
}
subgraph "cluster_main" {
style="dashed";
color="black";
label="main ()";
fn_5_basic_block_0 [shape=Mdiamond,style=filled,fillcolor=white,label="ENTRY"];
fn_5_basic_block_1 [shape=Mdiamond,style=filled,fillcolor=white,label="EXIT"];
fn_5_basic_block_2 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 2\>:\l\
|if\ (argc\ \>\ 1)\l\
\ \ goto\ \<bb\ 3\>;\l\
else\l\
\ \ goto\ \<bb\ 5\>;\l\
}"];
fn_5_basic_block_3 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 3\>:\l\
|D.5037\ =\ argv\ +\ 8;\l\
|D.5038\ =\ *D.5037;\l\
|valor\ =\ atoi\ (D.5038);\l\
|if\ (valor\ \>\ 1)\l\
\ \ goto\ \<bb\ 4\>;\l\
else\l\
\ \ goto\ \<bb\ 5\>;\l\
}"];
fn_5_basic_block_4 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 4\>:\l\
|threads\ =\ valor;\l\
}"];
fn_5_basic_block_5 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 5\>:\l\
|n\ =\ 8000;\l\
|A\ =\ polybench_alloc_data\ (64000000,\ 8);\l\
|x1\ =\ polybench_alloc_data\ (8000,\ 8);\l\
|x2\ =\ polybench_alloc_data\ (8000,\ 8);\l\
|y_1\ =\ polybench_alloc_data\ (8000,\ 8);\l\
|y_2\ =\ polybench_alloc_data\ (8000,\ 8);\l\
|init_array\ (n,\ x1,\ x2,\ y_1,\ y_2,\ A);\l\
|polybench_timer_start\ ();\l\
|kernel_mvt\ (n,\ x1,\ x2,\ y_1,\ y_2,\ A);\l\
|polybench_timer_stop\ ();\l\
|polybench_timer_print\ ();\l\
|if\ (argc\ \>\ 42)\l\
\ \ goto\ \<bb\ 6\>;\l\
else\l\
\ \ goto\ \<bb\ 8\>;\l\
}"];
fn_5_basic_block_6 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 6\>:\l\
|D.5043\ =\ *argv;\l\
|D.5044\ =\ MEM[(const\ unsigned\ char\ *\ \{ref-all\})D.5043];\l\
|if\ (D.5044\ ==\ 0)\l\
\ \ goto\ \<bb\ 7\>;\l\
else\l\
\ \ goto\ \<bb\ 8\>;\l\
}"];
fn_5_basic_block_7 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 7\>:\l\
|print_array\ (n,\ x1,\ x2);\l\
}"];
fn_5_basic_block_8 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 8\>:\l\
|free\ (A);\l\
|free\ (x1);\l\
|free\ (x2);\l\
|free\ (y_1);\l\
|free\ (y_2);\l\
|D.5047\ =\ 0;\l\
}"];
fn_5_basic_block_9 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 9\>:\l\
|\<L8\>:\l\
|return\ D.5047;\l\
}"];
fn_5_basic_block_0:s -> fn_5_basic_block_2:n [style="solid,bold",color=blue,weight=100,constraint=true, label="[0%]"];
fn_5_basic_block_2:s -> fn_5_basic_block_3:n [style="solid,bold",color=black,weight=10,constraint=true, label="[0%]"];
fn_5_basic_block_2:s -> fn_5_basic_block_5:n [style="solid,bold",color=black,weight=10,constraint=true, label="[0%]"];
fn_5_basic_block_3:s -> fn_5_basic_block_4:n [style="solid,bold",color=black,weight=10,constraint=true, label="[0%]"];
fn_5_basic_block_3:s -> fn_5_basic_block_5:n [style="solid,bold",color=black,weight=10,constraint=true, label="[0%]"];
fn_5_basic_block_4:s -> fn_5_basic_block_5:n [style="solid,bold",color=blue,weight=100,constraint=true, label="[0%]"];
fn_5_basic_block_5:s -> fn_5_basic_block_6:n [style="solid,bold",color=black,weight=10,constraint=true, label="[0%]"];
fn_5_basic_block_5:s -> fn_5_basic_block_8:n [style="solid,bold",color=black,weight=10,constraint=true, label="[0%]"];
fn_5_basic_block_6:s -> fn_5_basic_block_7:n [style="solid,bold",color=black,weight=10,constraint=true, label="[0%]"];
fn_5_basic_block_6:s -> fn_5_basic_block_8:n [style="solid,bold",color=black,weight=10,constraint=true, label="[0%]"];
fn_5_basic_block_7:s -> fn_5_basic_block_8:n [style="solid,bold",color=blue,weight=100,constraint=true, label="[0%]"];
fn_5_basic_block_8:s -> fn_5_basic_block_9:n [style="solid,bold",color=blue,weight=100,constraint=true, label="[0%]"];
fn_5_basic_block_9:s -> fn_5_basic_block_1:n [style="solid,bold",color=black,weight=10,constraint=true, label="[0%]"];
fn_5_basic_block_0:s -> fn_5_basic_block_1:n [style="invis",constraint=true];
}
}