diff options
| author | Craig Topper <craig.topper@intel.com> | 2018-11-30 08:32:05 +0000 |
|---|---|---|
| committer | Craig Topper <craig.topper@intel.com> | 2018-11-30 08:32:05 +0000 |
| commit | a2133061c01506cace7a365f29e373bae8769639 (patch) | |
| tree | 75591eea9713c0a6dd14a21bbc370851b85856af /llvm/test | |
| parent | 6e4b266a0d0aae8084908be011d1d696fc35c89d (diff) | |
| download | bcm5719-llvm-a2133061c01506cace7a365f29e373bae8769639.tar.gz bcm5719-llvm-a2133061c01506cace7a365f29e373bae8769639.zip | |
[X86] Emit PACKUS directly from the v16i8 LowerMULH code instead of using a shuffle.
llvm-svn: 347967
Diffstat (limited to 'llvm/test')
| -rw-r--r-- | llvm/test/CodeGen/X86/combine-sdiv.ll | 3 | ||||
| -rw-r--r-- | llvm/test/CodeGen/X86/combine-udiv.ll | 3 |
2 files changed, 2 insertions, 4 deletions
diff --git a/llvm/test/CodeGen/X86/combine-sdiv.ll b/llvm/test/CodeGen/X86/combine-sdiv.ll index d77dab8a9fb..a10d9c57e41 100644 --- a/llvm/test/CodeGen/X86/combine-sdiv.ll +++ b/llvm/test/CodeGen/X86/combine-sdiv.ll @@ -3146,9 +3146,8 @@ define <16 x i8> @pr38658(<16 x i8> %x) { ; XOP-NEXT: vpshufd {{.*#+}} xmm1 = xmm0[2,3,0,1] ; XOP-NEXT: vpmovsxbw %xmm1, %xmm1 ; XOP-NEXT: vpmullw {{.*}}(%rip), %xmm1, %xmm1 -; XOP-NEXT: vpsrlw $8, %xmm1, %xmm1 ; XOP-NEXT: vpxor %xmm2, %xmm2, %xmm2 -; XOP-NEXT: vpackuswb %xmm1, %xmm2, %xmm1 +; XOP-NEXT: vpperm {{.*#+}} xmm1 = xmm2[1,3,5,7,9,11,13,15],xmm1[1,3,5,7,9,11,13,15] ; XOP-NEXT: vpaddb %xmm0, %xmm1, %xmm0 ; XOP-NEXT: vpshab {{.*}}(%rip), %xmm0, %xmm1 ; XOP-NEXT: vpshlb {{.*}}(%rip), %xmm0, %xmm0 diff --git a/llvm/test/CodeGen/X86/combine-udiv.ll b/llvm/test/CodeGen/X86/combine-udiv.ll index 4dea599532e..bfd3095ab96 100644 --- a/llvm/test/CodeGen/X86/combine-udiv.ll +++ b/llvm/test/CodeGen/X86/combine-udiv.ll @@ -719,9 +719,8 @@ define <16 x i8> @combine_vec_udiv_nonuniform4(<16 x i8> %x) { ; XOP-NEXT: vmovd %eax, %xmm1 ; XOP-NEXT: vpmovzxbw {{.*#+}} xmm2 = xmm0[0],zero,xmm0[1],zero,xmm0[2],zero,xmm0[3],zero,xmm0[4],zero,xmm0[5],zero,xmm0[6],zero,xmm0[7],zero ; XOP-NEXT: vpmullw %xmm1, %xmm2, %xmm1 -; XOP-NEXT: vpsrlw $8, %xmm1, %xmm1 ; XOP-NEXT: vpxor %xmm2, %xmm2, %xmm2 -; XOP-NEXT: vpackuswb %xmm2, %xmm1, %xmm1 +; XOP-NEXT: vpperm {{.*#+}} xmm1 = xmm1[1,3,5,7,9,11,13,15],xmm2[1,3,5,7,9,11,13,15] ; XOP-NEXT: movl $249, %eax ; XOP-NEXT: vmovd %eax, %xmm2 ; XOP-NEXT: vpshlb %xmm2, %xmm1, %xmm1 |

