diff options
Diffstat (limited to 'llvm/test/CodeGen/X86/vector-rotate-512.ll')
| -rw-r--r-- | llvm/test/CodeGen/X86/vector-rotate-512.ll | 20 | 
1 files changed, 6 insertions, 14 deletions
| diff --git a/llvm/test/CodeGen/X86/vector-rotate-512.ll b/llvm/test/CodeGen/X86/vector-rotate-512.ll index 5c2c6c68afc..99c1a831612 100644 --- a/llvm/test/CodeGen/X86/vector-rotate-512.ll +++ b/llvm/test/CodeGen/X86/vector-rotate-512.ll @@ -341,14 +341,10 @@ define <32 x i16> @splatvar_rotate_v32i16(<32 x i16> %a, <32 x i16> %b) nounwind  ; AVX512F-NEXT:    vpmovzxwq {{.*#+}} xmm2 = xmm2[0],zero,zero,zero,xmm2[1],zero,zero,zero  ; AVX512F-NEXT:    vpsllw %xmm2, %ymm1, %ymm4  ; AVX512F-NEXT:    vpsllw %xmm2, %ymm0, %ymm2 -; AVX512F-NEXT:    vpmovzxwd {{.*#+}} zmm3 = ymm3[0],zero,ymm3[1],zero,ymm3[2],zero,ymm3[3],zero,ymm3[4],zero,ymm3[5],zero,ymm3[6],zero,ymm3[7],zero,ymm3[8],zero,ymm3[9],zero,ymm3[10],zero,ymm3[11],zero,ymm3[12],zero,ymm3[13],zero,ymm3[14],zero,ymm3[15],zero -; AVX512F-NEXT:    vpmovzxwd {{.*#+}} zmm1 = ymm1[0],zero,ymm1[1],zero,ymm1[2],zero,ymm1[3],zero,ymm1[4],zero,ymm1[5],zero,ymm1[6],zero,ymm1[7],zero,ymm1[8],zero,ymm1[9],zero,ymm1[10],zero,ymm1[11],zero,ymm1[12],zero,ymm1[13],zero,ymm1[14],zero,ymm1[15],zero -; AVX512F-NEXT:    vpsrlvd %zmm3, %zmm1, %zmm1 -; AVX512F-NEXT:    vpmovdw %zmm1, %ymm1 +; AVX512F-NEXT:    vpmovzxwq {{.*#+}} xmm3 = xmm3[0],zero,zero,zero,xmm3[1],zero,zero,zero +; AVX512F-NEXT:    vpsrlw %xmm3, %ymm1, %ymm1  ; AVX512F-NEXT:    vpor %ymm1, %ymm4, %ymm1 -; AVX512F-NEXT:    vpmovzxwd {{.*#+}} zmm0 = ymm0[0],zero,ymm0[1],zero,ymm0[2],zero,ymm0[3],zero,ymm0[4],zero,ymm0[5],zero,ymm0[6],zero,ymm0[7],zero,ymm0[8],zero,ymm0[9],zero,ymm0[10],zero,ymm0[11],zero,ymm0[12],zero,ymm0[13],zero,ymm0[14],zero,ymm0[15],zero -; AVX512F-NEXT:    vpsrlvd %zmm3, %zmm0, %zmm0 -; AVX512F-NEXT:    vpmovdw %zmm0, %ymm0 +; AVX512F-NEXT:    vpsrlw %xmm3, %ymm0, %ymm0  ; AVX512F-NEXT:    vpor %ymm0, %ymm2, %ymm0  ; AVX512F-NEXT:    retq  ; @@ -360,13 +356,9 @@ define <32 x i16> @splatvar_rotate_v32i16(<32 x i16> %a, <32 x i16> %b) nounwind  ; AVX512VL-NEXT:    vpmovzxwq {{.*#+}} xmm2 = xmm2[0],zero,zero,zero,xmm2[1],zero,zero,zero  ; AVX512VL-NEXT:    vpsllw %xmm2, %ymm1, %ymm4  ; AVX512VL-NEXT:    vpsllw %xmm2, %ymm0, %ymm2 -; AVX512VL-NEXT:    vpmovzxwd {{.*#+}} zmm3 = ymm3[0],zero,ymm3[1],zero,ymm3[2],zero,ymm3[3],zero,ymm3[4],zero,ymm3[5],zero,ymm3[6],zero,ymm3[7],zero,ymm3[8],zero,ymm3[9],zero,ymm3[10],zero,ymm3[11],zero,ymm3[12],zero,ymm3[13],zero,ymm3[14],zero,ymm3[15],zero -; AVX512VL-NEXT:    vpmovzxwd {{.*#+}} zmm1 = ymm1[0],zero,ymm1[1],zero,ymm1[2],zero,ymm1[3],zero,ymm1[4],zero,ymm1[5],zero,ymm1[6],zero,ymm1[7],zero,ymm1[8],zero,ymm1[9],zero,ymm1[10],zero,ymm1[11],zero,ymm1[12],zero,ymm1[13],zero,ymm1[14],zero,ymm1[15],zero -; AVX512VL-NEXT:    vpsrlvd %zmm3, %zmm1, %zmm1 -; AVX512VL-NEXT:    vpmovdw %zmm1, %ymm1 -; AVX512VL-NEXT:    vpmovzxwd {{.*#+}} zmm0 = ymm0[0],zero,ymm0[1],zero,ymm0[2],zero,ymm0[3],zero,ymm0[4],zero,ymm0[5],zero,ymm0[6],zero,ymm0[7],zero,ymm0[8],zero,ymm0[9],zero,ymm0[10],zero,ymm0[11],zero,ymm0[12],zero,ymm0[13],zero,ymm0[14],zero,ymm0[15],zero -; AVX512VL-NEXT:    vpsrlvd %zmm3, %zmm0, %zmm0 -; AVX512VL-NEXT:    vpmovdw %zmm0, %ymm0 +; AVX512VL-NEXT:    vpmovzxwq {{.*#+}} xmm3 = xmm3[0],zero,zero,zero,xmm3[1],zero,zero,zero +; AVX512VL-NEXT:    vpsrlw %xmm3, %ymm1, %ymm1 +; AVX512VL-NEXT:    vpsrlw %xmm3, %ymm0, %ymm0  ; AVX512VL-NEXT:    vpor %ymm0, %ymm2, %ymm0  ; AVX512VL-NEXT:    vpor %ymm1, %ymm4, %ymm1  ; AVX512VL-NEXT:    retq | 

