Lines Matching refs:SSE
2 ; RUN: llc < %s -mtriple=x86_64-unknown-unknown | FileCheck %s --check-prefix=SSE --check-prefix=SS…
3 ; RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+sse4.1 | FileCheck %s --check-prefix=SSE --…
57 ; SSE-LABEL: mul16c:
58 ; SSE: # BB#0: # %entry
59 ; SSE-NEXT: pmullw {{.*}}(%rip), %xmm0
60 ; SSE-NEXT: retq
99 ; SSE-LABEL: b:
100 ; SSE: # BB#0: # %entry
101 ; SSE-NEXT: movdqa {{.*#+}} xmm1 = [117,117]
102 ; SSE-NEXT: movdqa %xmm0, %xmm2
103 ; SSE-NEXT: pmuludq %xmm1, %xmm2
104 ; SSE-NEXT: psrlq $32, %xmm0
105 ; SSE-NEXT: pmuludq %xmm1, %xmm0
106 ; SSE-NEXT: psllq $32, %xmm0
107 ; SSE-NEXT: paddq %xmm2, %xmm0
108 ; SSE-NEXT: retq
180 ; SSE-LABEL: mul16:
181 ; SSE: # BB#0: # %entry
182 ; SSE-NEXT: pmullw %xmm1, %xmm0
183 ; SSE-NEXT: retq
221 ; SSE-LABEL: d:
222 ; SSE: # BB#0: # %entry
223 ; SSE-NEXT: movdqa %xmm0, %xmm2
224 ; SSE-NEXT: pmuludq %xmm1, %xmm2
225 ; SSE-NEXT: movdqa %xmm1, %xmm3
226 ; SSE-NEXT: psrlq $32, %xmm3
227 ; SSE-NEXT: pmuludq %xmm0, %xmm3
228 ; SSE-NEXT: psllq $32, %xmm3
229 ; SSE-NEXT: paddq %xmm3, %xmm2
230 ; SSE-NEXT: psrlq $32, %xmm0
231 ; SSE-NEXT: pmuludq %xmm1, %xmm0
232 ; SSE-NEXT: psllq $32, %xmm0
233 ; SSE-NEXT: paddq %xmm2, %xmm0
234 ; SSE-NEXT: retq
303 ; SSE-LABEL: f:
304 ; SSE: # BB#0: # %entry
305 ; SSE-NEXT: subq $40, %rsp
306 ; SSE-NEXT: movaps %xmm1, {{[0-9]+}}(%rsp) # 16-byte Spill
307 ; SSE-NEXT: movaps %xmm0, (%rsp) # 16-byte Spill
308 ; SSE-NEXT: callq foo
309 ; SSE-NEXT: movdqa (%rsp), %xmm0 # 16-byte Reload
310 ; SSE-NEXT: movdqa %xmm0, %xmm2
311 ; SSE-NEXT: movdqa {{[0-9]+}}(%rsp), %xmm3 # 16-byte Reload
312 ; SSE-NEXT: pmuludq %xmm3, %xmm2
313 ; SSE-NEXT: movdqa %xmm3, %xmm1
314 ; SSE-NEXT: psrlq $32, %xmm1
315 ; SSE-NEXT: pmuludq %xmm0, %xmm1
316 ; SSE-NEXT: psllq $32, %xmm1
317 ; SSE-NEXT: paddq %xmm1, %xmm2
318 ; SSE-NEXT: psrlq $32, %xmm0
319 ; SSE-NEXT: pmuludq %xmm3, %xmm0
320 ; SSE-NEXT: psllq $32, %xmm0
321 ; SSE-NEXT: paddq %xmm2, %xmm0
322 ; SSE-NEXT: addq $40, %rsp
323 ; SSE-NEXT: retq
352 ; SSE-LABEL: b1:
353 ; SSE: # BB#0: # %entry
354 ; SSE-NEXT: movdqa {{.*#+}} xmm2 = [117,117]
355 ; SSE-NEXT: movdqa %xmm0, %xmm3
356 ; SSE-NEXT: pmuludq %xmm2, %xmm3
357 ; SSE-NEXT: psrlq $32, %xmm0
358 ; SSE-NEXT: pmuludq %xmm2, %xmm0
359 ; SSE-NEXT: psllq $32, %xmm0
360 ; SSE-NEXT: paddq %xmm3, %xmm0
361 ; SSE-NEXT: movdqa %xmm1, %xmm3
362 ; SSE-NEXT: pmuludq %xmm2, %xmm3
363 ; SSE-NEXT: psrlq $32, %xmm1
364 ; SSE-NEXT: pmuludq %xmm2, %xmm1
365 ; SSE-NEXT: psllq $32, %xmm1
366 ; SSE-NEXT: paddq %xmm3, %xmm1
367 ; SSE-NEXT: retq
384 ; SSE-LABEL: b2:
385 ; SSE: # BB#0: # %entry
386 ; SSE-NEXT: movdqa %xmm0, %xmm4
387 ; SSE-NEXT: pmuludq %xmm2, %xmm4
388 ; SSE-NEXT: movdqa %xmm2, %xmm5
389 ; SSE-NEXT: psrlq $32, %xmm5
390 ; SSE-NEXT: pmuludq %xmm0, %xmm5
391 ; SSE-NEXT: psllq $32, %xmm5
392 ; SSE-NEXT: paddq %xmm5, %xmm4
393 ; SSE-NEXT: psrlq $32, %xmm0
394 ; SSE-NEXT: pmuludq %xmm2, %xmm0
395 ; SSE-NEXT: psllq $32, %xmm0
396 ; SSE-NEXT: paddq %xmm4, %xmm0
397 ; SSE-NEXT: movdqa %xmm1, %xmm2
398 ; SSE-NEXT: pmuludq %xmm3, %xmm2
399 ; SSE-NEXT: movdqa %xmm3, %xmm4
400 ; SSE-NEXT: psrlq $32, %xmm4
401 ; SSE-NEXT: pmuludq %xmm1, %xmm4
402 ; SSE-NEXT: psllq $32, %xmm4
403 ; SSE-NEXT: paddq %xmm4, %xmm2
404 ; SSE-NEXT: psrlq $32, %xmm1
405 ; SSE-NEXT: pmuludq %xmm3, %xmm1
406 ; SSE-NEXT: psllq $32, %xmm1
407 ; SSE-NEXT: paddq %xmm2, %xmm1
408 ; SSE-NEXT: retq