Lines Matching refs:SSE42
3 … %s -mtriple=i686-unknown -mattr=+sse4.2 | FileCheck %s --check-prefix=X86 --check-prefix=X86-SSE42
5 …s -mtriple=x86_64-unknown -mattr=+sse4.2 | FileCheck %s --check-prefix=X64 --check-prefix=X64-SSE42
28 ; X86-SSE42-LABEL: convert_v7i16_v7f32:
29 ; X86-SSE42: # BB#0: # %entry
30 ; X86-SSE42-NEXT: movl {{[0-9]+}}(%esp), %eax
31 ; X86-SSE42-NEXT: pxor %xmm1, %xmm1
32 ; X86-SSE42-NEXT: pmovzxwd {{.*#+}} xmm2 = xmm0[0],zero,xmm0[1],zero,xmm0[2],zero,xmm0[3],zero
33 ; X86-SSE42-NEXT: punpckhwd {{.*#+}} xmm0 = xmm0[4],xmm1[4],xmm0[5],xmm1[5],xmm0[6],xmm1[6],xmm0…
34 ; X86-SSE42-NEXT: cvtdq2ps %xmm0, %xmm0
35 ; X86-SSE42-NEXT: cvtdq2ps %xmm2, %xmm1
36 ; X86-SSE42-NEXT: extractps $2, %xmm0, 24(%eax)
37 ; X86-SSE42-NEXT: extractps $1, %xmm0, 20(%eax)
38 ; X86-SSE42-NEXT: movups %xmm1, (%eax)
39 ; X86-SSE42-NEXT: movss %xmm0, 16(%eax)
40 ; X86-SSE42-NEXT: retl
56 ; X64-SSE42-LABEL: convert_v7i16_v7f32:
57 ; X64-SSE42: # BB#0: # %entry
58 ; X64-SSE42-NEXT: pxor %xmm1, %xmm1
59 ; X64-SSE42-NEXT: pmovzxwd {{.*#+}} xmm2 = xmm0[0],zero,xmm0[1],zero,xmm0[2],zero,xmm0[3],zero
60 ; X64-SSE42-NEXT: punpckhwd {{.*#+}} xmm0 = xmm0[4],xmm1[4],xmm0[5],xmm1[5],xmm0[6],xmm1[6],xmm0…
61 ; X64-SSE42-NEXT: cvtdq2ps %xmm0, %xmm0
62 ; X64-SSE42-NEXT: cvtdq2ps %xmm2, %xmm1
63 ; X64-SSE42-NEXT: extractps $2, %xmm0, 24(%rdi)
64 ; X64-SSE42-NEXT: movlps %xmm0, 16(%rdi)
65 ; X64-SSE42-NEXT: movups %xmm1, (%rdi)
66 ; X64-SSE42-NEXT: retq
112 ; X86-SSE42-LABEL: convert_v3i8_to_v3f32:
113 ; X86-SSE42: # BB#0: # %entry
114 ; X86-SSE42-NEXT: pushl %eax
115 ; X86-SSE42-NEXT: movl {{[0-9]+}}(%esp), %eax
116 ; X86-SSE42-NEXT: movl {{[0-9]+}}(%esp), %ecx
117 ; X86-SSE42-NEXT: movzbl 2(%ecx), %edx
118 ; X86-SSE42-NEXT: movzwl (%ecx), %ecx
119 ; X86-SSE42-NEXT: movd %ecx, %xmm0
120 ; X86-SSE42-NEXT: pmovzxbd {{.*#+}} xmm0 = xmm0[0],zero,zero,zero,xmm0[1],zero,zero,zero,xmm0[2]…
121 ; X86-SSE42-NEXT: pinsrd $2, %edx, %xmm0
122 ; X86-SSE42-NEXT: pand .LCPI1_0, %xmm0
123 ; X86-SSE42-NEXT: cvtdq2ps %xmm0, %xmm0
124 ; X86-SSE42-NEXT: extractps $2, %xmm0, 8(%eax)
125 ; X86-SSE42-NEXT: extractps $1, %xmm0, 4(%eax)
126 ; X86-SSE42-NEXT: movss %xmm0, (%eax)
127 ; X86-SSE42-NEXT: popl %eax
128 ; X86-SSE42-NEXT: retl
155 ; X64-SSE42-LABEL: convert_v3i8_to_v3f32:
156 ; X64-SSE42: # BB#0: # %entry
157 ; X64-SSE42-NEXT: movzbl 2(%rsi), %eax
158 ; X64-SSE42-NEXT: movzwl (%rsi), %ecx
159 ; X64-SSE42-NEXT: movd %rcx, %xmm0
160 ; X64-SSE42-NEXT: pshufd {{.*#+}} xmm0 = xmm0[0,2,2,3]
161 ; X64-SSE42-NEXT: pshuflw {{.*#+}} xmm0 = xmm0[0,2,2,3,4,5,6,7]
162 ; X64-SSE42-NEXT: pmovzxbd {{.*#+}} xmm0 = xmm0[0],zero,zero,zero,xmm0[1],zero,zero,zero,xmm0[2]…
163 ; X64-SSE42-NEXT: pinsrd $2, %eax, %xmm0
164 ; X64-SSE42-NEXT: pand {{.*}}(%rip), %xmm0
165 ; X64-SSE42-NEXT: cvtdq2ps %xmm0, %xmm0
166 ; X64-SSE42-NEXT: extractps $2, %xmm0, 8(%rdi)
167 ; X64-SSE42-NEXT: movlps %xmm0, (%rdi)
168 ; X64-SSE42-NEXT: retq