fix the scan-build urls
[polly-mirror.git] / www / experiments / matmul / matmul.polly.interchanged+tiled.s
blobf7ab7fdd59cca2b5ef1878d58839a6acd43108fa
1 .file "matmul.polly.interchanged+tiled.ll"
2 .section .rodata.cst8,"aM",@progbits,8
3 .align 8
4 .LCPI0_0:
5 .quad 4602678819172646912 # double 0.5
6 .text
7 .globl init_array
8 .align 16, 0x90
9 .type init_array,@function
10 init_array: # @init_array
11 .cfi_startproc
12 # BB#0: # %entry
13 pushq %rbp
14 .Ltmp2:
15 .cfi_def_cfa_offset 16
16 .Ltmp3:
17 .cfi_offset %rbp, -16
18 movq %rsp, %rbp
19 .Ltmp4:
20 .cfi_def_cfa_register %rbp
21 xorl %r8d, %r8d
22 vmovsd .LCPI0_0(%rip), %xmm0
23 .align 16, 0x90
24 .LBB0_1: # %polly.loop_preheader3
25 # =>This Loop Header: Depth=1
26 # Child Loop BB0_2 Depth 2
27 xorl %ecx, %ecx
28 .align 16, 0x90
29 .LBB0_2: # %polly.loop_header2
30 # Parent Loop BB0_1 Depth=1
31 # => This Inner Loop Header: Depth=2
32 movl %ecx, %edx
33 imull %r8d, %edx
34 movl %edx, %esi
35 sarl $31, %esi
36 shrl $22, %esi
37 addl %edx, %esi
38 andl $-1024, %esi # imm = 0xFFFFFFFFFFFFFC00
39 negl %esi
40 movq %r8, %rax
41 shlq $11, %rax
42 leal 1(%rdx,%rsi), %edi
43 leaq (%rax,%rax,2), %rsi
44 leaq 1(%rcx), %rdx
45 cmpq $1536, %rdx # imm = 0x600
46 vcvtsi2sdl %edi, %xmm0, %xmm1
47 vmulsd %xmm0, %xmm1, %xmm1
48 vcvtsd2ss %xmm1, %xmm1, %xmm1
49 vmovss %xmm1, A(%rsi,%rcx,4)
50 vmovss %xmm1, B(%rsi,%rcx,4)
51 movq %rdx, %rcx
52 jne .LBB0_2
53 # BB#3: # %polly.loop_exit4
54 # in Loop: Header=BB0_1 Depth=1
55 incq %r8
56 cmpq $1536, %r8 # imm = 0x600
57 jne .LBB0_1
58 # BB#4: # %polly.loop_exit
59 popq %rbp
60 ret
61 .Ltmp5:
62 .size init_array, .Ltmp5-init_array
63 .cfi_endproc
65 .globl print_array
66 .align 16, 0x90
67 .type print_array,@function
68 print_array: # @print_array
69 .cfi_startproc
70 # BB#0: # %entry
71 pushq %rbp
72 .Ltmp9:
73 .cfi_def_cfa_offset 16
74 .Ltmp10:
75 .cfi_offset %rbp, -16
76 movq %rsp, %rbp
77 .Ltmp11:
78 .cfi_def_cfa_register %rbp
79 pushq %r15
80 pushq %r14
81 pushq %r12
82 pushq %rbx
83 .Ltmp12:
84 .cfi_offset %rbx, -48
85 .Ltmp13:
86 .cfi_offset %r12, -40
87 .Ltmp14:
88 .cfi_offset %r14, -32
89 .Ltmp15:
90 .cfi_offset %r15, -24
91 xorl %r14d, %r14d
92 movl $C, %r15d
93 .align 16, 0x90
94 .LBB1_1: # %for.cond1.preheader
95 # =>This Loop Header: Depth=1
96 # Child Loop BB1_2 Depth 2
97 movq stdout(%rip), %rax
98 movq %r15, %r12
99 xorl %ebx, %ebx
100 .align 16, 0x90
101 .LBB1_2: # %for.body3
102 # Parent Loop BB1_1 Depth=1
103 # => This Inner Loop Header: Depth=2
104 vmovss (%r12), %xmm0
105 vcvtss2sd %xmm0, %xmm0, %xmm0
106 movq %rax, %rdi
107 movl $.L.str, %esi
108 movb $1, %al
109 callq fprintf
110 movslq %ebx, %rax
111 imulq $1717986919, %rax, %rcx # imm = 0x66666667
112 movq %rcx, %rdx
113 shrq $63, %rdx
114 sarq $37, %rcx
115 addl %edx, %ecx
116 imull $80, %ecx, %ecx
117 subl %ecx, %eax
118 cmpl $79, %eax
119 jne .LBB1_4
120 # BB#3: # %if.then
121 # in Loop: Header=BB1_2 Depth=2
122 movq stdout(%rip), %rsi
123 movl $10, %edi
124 callq fputc
125 .LBB1_4: # %for.inc
126 # in Loop: Header=BB1_2 Depth=2
127 addq $4, %r12
128 incq %rbx
129 movq stdout(%rip), %rax
130 cmpq $1536, %rbx # imm = 0x600
131 jne .LBB1_2
132 # BB#5: # %for.end
133 # in Loop: Header=BB1_1 Depth=1
134 movl $10, %edi
135 movq %rax, %rsi
136 callq fputc
137 addq $6144, %r15 # imm = 0x1800
138 incq %r14
139 cmpq $1536, %r14 # imm = 0x600
140 jne .LBB1_1
141 # BB#6: # %for.end12
142 popq %rbx
143 popq %r12
144 popq %r14
145 popq %r15
146 popq %rbp
148 .Ltmp16:
149 .size print_array, .Ltmp16-print_array
150 .cfi_endproc
152 .section .rodata.cst8,"aM",@progbits,8
153 .align 8
154 .LCPI2_0:
155 .quad 4602678819172646912 # double 0.5
156 .text
157 .globl main
158 .align 16, 0x90
159 .type main,@function
160 main: # @main
161 .cfi_startproc
162 # BB#0: # %entry
163 pushq %rbp
164 .Ltmp20:
165 .cfi_def_cfa_offset 16
166 .Ltmp21:
167 .cfi_offset %rbp, -16
168 movq %rsp, %rbp
169 .Ltmp22:
170 .cfi_def_cfa_register %rbp
171 pushq %r15
172 pushq %r14
173 pushq %r13
174 pushq %r12
175 pushq %rbx
176 subq $56, %rsp
177 .Ltmp23:
178 .cfi_offset %rbx, -56
179 .Ltmp24:
180 .cfi_offset %r12, -48
181 .Ltmp25:
182 .cfi_offset %r13, -40
183 .Ltmp26:
184 .cfi_offset %r14, -32
185 .Ltmp27:
186 .cfi_offset %r15, -24
187 xorl %ebx, %ebx
188 vmovsd .LCPI2_0(%rip), %xmm0
189 .align 16, 0x90
190 .LBB2_1: # %polly.loop_preheader3.i
191 # =>This Loop Header: Depth=1
192 # Child Loop BB2_2 Depth 2
193 xorl %ecx, %ecx
194 .align 16, 0x90
195 .LBB2_2: # %polly.loop_header2.i
196 # Parent Loop BB2_1 Depth=1
197 # => This Inner Loop Header: Depth=2
198 movl %ecx, %edx
199 imull %ebx, %edx
200 movl %edx, %esi
201 sarl $31, %esi
202 shrl $22, %esi
203 addl %edx, %esi
204 andl $-1024, %esi # imm = 0xFFFFFFFFFFFFFC00
205 negl %esi
206 movq %rbx, %rax
207 shlq $11, %rax
208 leal 1(%rdx,%rsi), %edi
209 leaq (%rax,%rax,2), %rsi
210 leaq 1(%rcx), %rdx
211 cmpq $1536, %rdx # imm = 0x600
212 vcvtsi2sdl %edi, %xmm0, %xmm1
213 vmulsd %xmm0, %xmm1, %xmm1
214 vcvtsd2ss %xmm1, %xmm1, %xmm1
215 vmovss %xmm1, A(%rsi,%rcx,4)
216 vmovss %xmm1, B(%rsi,%rcx,4)
217 movq %rdx, %rcx
218 jne .LBB2_2
219 # BB#3: # %polly.loop_exit4.i
220 # in Loop: Header=BB2_1 Depth=1
221 incq %rbx
222 cmpq $1536, %rbx # imm = 0x600
223 jne .LBB2_1
224 # BB#4: # %polly.loop_preheader3.preheader
225 movl $C, %ebx
226 movl $C, %edi
227 xorl %esi, %esi
228 movl $9437184, %edx # imm = 0x900000
229 callq memset
230 xorl %eax, %eax
231 .align 16, 0x90
232 .LBB2_5: # %polly.loop_preheader17
233 # =>This Loop Header: Depth=1
234 # Child Loop BB2_15 Depth 2
235 # Child Loop BB2_8 Depth 3
236 # Child Loop BB2_11 Depth 4
237 # Child Loop BB2_17 Depth 5
238 # Child Loop BB2_18 Depth 6
239 movq %rax, -56(%rbp) # 8-byte Spill
240 movq %rbx, -88(%rbp) # 8-byte Spill
241 movq %rax, %rcx
242 orq $63, %rcx
243 movq %rcx, -72(%rbp) # 8-byte Spill
244 leaq -1(%rcx), %rcx
245 movq %rcx, -48(%rbp) # 8-byte Spill
246 movq $-1, %r15
247 movl $B, %ecx
248 movq %rbx, -64(%rbp) # 8-byte Spill
249 xorl %r12d, %r12d
250 .align 16, 0x90
251 .LBB2_15: # %polly.loop_preheader24
252 # Parent Loop BB2_5 Depth=1
253 # => This Loop Header: Depth=2
254 # Child Loop BB2_8 Depth 3
255 # Child Loop BB2_11 Depth 4
256 # Child Loop BB2_17 Depth 5
257 # Child Loop BB2_18 Depth 6
258 movq %rcx, -80(%rbp) # 8-byte Spill
259 movq %r12, %r13
260 orq $63, %r13
261 leaq -1(%r13), %rbx
262 xorl %r9d, %r9d
263 movq %rcx, %rdx
264 .align 16, 0x90
265 .LBB2_8: # %polly.loop_header23
266 # Parent Loop BB2_5 Depth=1
267 # Parent Loop BB2_15 Depth=2
268 # => This Loop Header: Depth=3
269 # Child Loop BB2_11 Depth 4
270 # Child Loop BB2_17 Depth 5
271 # Child Loop BB2_18 Depth 6
272 cmpq -72(%rbp), %rax # 8-byte Folded Reload
273 jg .LBB2_13
274 # BB#9: # %polly.loop_header30.preheader
275 # in Loop: Header=BB2_8 Depth=3
276 movq %r9, %rax
277 orq $63, %rax
278 cmpq %rax, %r9
279 jg .LBB2_13
280 # BB#10: # in Loop: Header=BB2_8 Depth=3
281 decq %rax
282 movq -64(%rbp), %r10 # 8-byte Reload
283 movq -56(%rbp), %r11 # 8-byte Reload
284 .align 16, 0x90
285 .LBB2_11: # %polly.loop_header37.preheader
286 # Parent Loop BB2_5 Depth=1
287 # Parent Loop BB2_15 Depth=2
288 # Parent Loop BB2_8 Depth=3
289 # => This Loop Header: Depth=4
290 # Child Loop BB2_17 Depth 5
291 # Child Loop BB2_18 Depth 6
292 cmpq %r13, %r12
293 movq %rdx, %r14
294 movq %r9, %rcx
295 jg .LBB2_12
296 .align 16, 0x90
297 .LBB2_17: # %polly.loop_header46.preheader
298 # Parent Loop BB2_5 Depth=1
299 # Parent Loop BB2_15 Depth=2
300 # Parent Loop BB2_8 Depth=3
301 # Parent Loop BB2_11 Depth=4
302 # => This Loop Header: Depth=5
303 # Child Loop BB2_18 Depth 6
304 leaq (%r11,%r11,2), %rsi
305 shlq $11, %rsi
306 vmovss A(%rsi,%rcx,4), %xmm0
307 movq %r10, %rdi
308 movq %r14, %r8
309 movq %r15, %rsi
310 .LBB2_18: # %polly.loop_header46
311 # Parent Loop BB2_5 Depth=1
312 # Parent Loop BB2_15 Depth=2
313 # Parent Loop BB2_8 Depth=3
314 # Parent Loop BB2_11 Depth=4
315 # Parent Loop BB2_17 Depth=5
316 # => This Inner Loop Header: Depth=6
317 vmulss (%r8), %xmm0, %xmm1
318 vaddss (%rdi), %xmm1, %xmm1
319 vmovss %xmm1, (%rdi)
320 addq $4, %rdi
321 addq $4, %r8
322 incq %rsi
323 cmpq %rbx, %rsi
324 jle .LBB2_18
325 # BB#16: # %polly.loop_exit48
326 # in Loop: Header=BB2_17 Depth=5
327 addq $6144, %r14 # imm = 0x1800
328 cmpq %rax, %rcx
329 leaq 1(%rcx), %rcx
330 jle .LBB2_17
331 .align 16, 0x90
332 .LBB2_12: # %polly.loop_exit39
333 # in Loop: Header=BB2_11 Depth=4
334 addq $6144, %r10 # imm = 0x1800
335 cmpq -48(%rbp), %r11 # 8-byte Folded Reload
336 leaq 1(%r11), %r11
337 jle .LBB2_11
338 .align 16, 0x90
339 .LBB2_13: # %polly.loop_exit32
340 # in Loop: Header=BB2_8 Depth=3
341 addq $393216, %rdx # imm = 0x60000
342 cmpq $1472, %r9 # imm = 0x5C0
343 leaq 64(%r9), %r9
344 movq -56(%rbp), %rax # 8-byte Reload
345 jl .LBB2_8
346 # BB#14: # %polly.loop_exit25
347 # in Loop: Header=BB2_15 Depth=2
348 addq $256, -64(%rbp) # 8-byte Folded Spill
349 # imm = 0x100
350 movq -80(%rbp), %rcx # 8-byte Reload
351 addq $256, %rcx # imm = 0x100
352 addq $64, %r15
353 cmpq $1472, %r12 # imm = 0x5C0
354 leaq 64(%r12), %r12
355 jl .LBB2_15
356 # BB#6: # %polly.loop_exit18
357 # in Loop: Header=BB2_5 Depth=1
358 movq -88(%rbp), %rbx # 8-byte Reload
359 addq $393216, %rbx # imm = 0x60000
360 cmpq $1472, %rax # imm = 0x5C0
361 leaq 64(%rax), %rax
362 jl .LBB2_5
363 # BB#7: # %polly.loop_exit11
364 xorl %eax, %eax
365 addq $56, %rsp
366 popq %rbx
367 popq %r12
368 popq %r13
369 popq %r14
370 popq %r15
371 popq %rbp
373 .Ltmp28:
374 .size main, .Ltmp28-main
375 .cfi_endproc
377 .type A,@object # @A
378 .comm A,9437184,16
379 .type B,@object # @B
380 .comm B,9437184,16
381 .type .L.str,@object # @.str
382 .section .rodata.str1.1,"aMS",@progbits,1
383 .L.str:
384 .asciz "%lf "
385 .size .L.str, 5
387 .type C,@object # @C
388 .comm C,9437184,16
390 .section ".note.GNU-stack","",@progbits