@@ -43,13 +43,11 @@ define void @v_test_canonicalize__half(half addrspace(1)* %out) nounwind {
4343;
4444; AVX512-LABEL: v_test_canonicalize__half:
4545; AVX512: # %bb.0: # %entry
46- ; AVX512-NEXT: movzwl (%rdi), %eax
47- ; AVX512-NEXT: movzwl {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %ecx
48- ; AVX512-NEXT: vmovd %ecx, %xmm0
46+ ; AVX512-NEXT: vpinsrw $0, (%rdi), %xmm0, %xmm0
47+ ; AVX512-NEXT: vpmovzxwq {{.*#+}} xmm0 = xmm0[0],zero,zero,zero,xmm0[1],zero,zero,zero
4948; AVX512-NEXT: vcvtph2ps %xmm0, %xmm0
50- ; AVX512-NEXT: vmovd %eax, %xmm1
51- ; AVX512-NEXT: vcvtph2ps %xmm1, %xmm1
52- ; AVX512-NEXT: vmulss %xmm0, %xmm1, %xmm0
49+ ; AVX512-NEXT: vcvtph2ps {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm1
50+ ; AVX512-NEXT: vmulss %xmm1, %xmm0, %xmm0
5351; AVX512-NEXT: vxorps %xmm1, %xmm1, %xmm1
5452; AVX512-NEXT: vblendps {{.*#+}} xmm0 = xmm0[0],xmm1[1,2,3]
5553; AVX512-NEXT: vcvtps2ph $4, %xmm0, %xmm0
@@ -144,9 +142,7 @@ define half @complex_canonicalize_fmul_half(half %a, half %b) nounwind {
144142; AVX512-NEXT: vcvtps2ph $4, %xmm0, %xmm0
145143; AVX512-NEXT: vpmovzxwq {{.*#+}} xmm0 = xmm0[0],zero,zero,zero,xmm0[1],zero,zero,zero
146144; AVX512-NEXT: vcvtph2ps %xmm0, %xmm0
147- ; AVX512-NEXT: movzwl {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %eax
148- ; AVX512-NEXT: vmovd %eax, %xmm2
149- ; AVX512-NEXT: vcvtph2ps %xmm2, %xmm2
145+ ; AVX512-NEXT: vcvtph2ps {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm2
150146; AVX512-NEXT: vmulss %xmm2, %xmm0, %xmm0
151147; AVX512-NEXT: vxorps %xmm2, %xmm2, %xmm2
152148; AVX512-NEXT: vblendps {{.*#+}} xmm0 = xmm0[0],xmm2[1,2,3]
@@ -228,9 +224,7 @@ define void @v_test_canonicalize_v2half(<2 x half> addrspace(1)* %out) nounwind
228224; AVX512-LABEL: v_test_canonicalize_v2half:
229225; AVX512: # %bb.0: # %entry
230226; AVX512-NEXT: vmovd {{.*#+}} xmm0 = mem[0],zero,zero,zero
231- ; AVX512-NEXT: movzwl {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %eax
232- ; AVX512-NEXT: vmovd %eax, %xmm1
233- ; AVX512-NEXT: vcvtph2ps %xmm1, %xmm1
227+ ; AVX512-NEXT: vcvtph2ps {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm1
234228; AVX512-NEXT: vpshufb {{.*#+}} xmm2 = xmm0[2,3],zero,zero,zero,zero,zero,zero,xmm0[u,u,u,u,u,u,u,u]
235229; AVX512-NEXT: vcvtph2ps %xmm2, %xmm2
236230; AVX512-NEXT: vmulss %xmm1, %xmm2, %xmm2
0 commit comments