diff options
| author | Craig Topper <craig.topper@intel.com> | 2017-11-06 04:04:01 +0000 |
|---|---|---|
| committer | Craig Topper <craig.topper@intel.com> | 2017-11-06 04:04:01 +0000 |
| commit | eff606cc0ea6f1fcc2d6a652fd206a90830bf1ef (patch) | |
| tree | ae6b68deda6d6ea755ba4c5077796b48ad216b9a /llvm/test/CodeGen/X86/sse2-intrinsics-x86.ll | |
| parent | 82b22e03278f4f83fbeb7e3193ad3e6d1fece73d (diff) | |
| download | bcm5719-llvm-eff606cc0ea6f1fcc2d6a652fd206a90830bf1ef.tar.gz bcm5719-llvm-eff606cc0ea6f1fcc2d6a652fd206a90830bf1ef.zip | |
[X86] Use EVEX encoded instructions for legacy scalar sqrt intrinsics.
Fixes PR35161.
llvm-svn: 317445
Diffstat (limited to 'llvm/test/CodeGen/X86/sse2-intrinsics-x86.ll')
| -rw-r--r-- | llvm/test/CodeGen/X86/sse2-intrinsics-x86.ll | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/llvm/test/CodeGen/X86/sse2-intrinsics-x86.ll b/llvm/test/CodeGen/X86/sse2-intrinsics-x86.ll index dcccdbfc2e6..72c68c56638 100644 --- a/llvm/test/CodeGen/X86/sse2-intrinsics-x86.ll +++ b/llvm/test/CodeGen/X86/sse2-intrinsics-x86.ll @@ -1613,10 +1613,15 @@ define <2 x double> @test_x86_sse2_sqrt_sd(<2 x double> %a0) { ; SSE-NEXT: sqrtsd %xmm0, %xmm0 ## encoding: [0xf2,0x0f,0x51,0xc0] ; SSE-NEXT: retl ## encoding: [0xc3] ; -; VCHECK-LABEL: test_x86_sse2_sqrt_sd: -; VCHECK: ## BB#0: -; VCHECK-NEXT: vsqrtsd %xmm0, %xmm0, %xmm0 ## encoding: [0xc5,0xfb,0x51,0xc0] -; VCHECK-NEXT: retl ## encoding: [0xc3] +; AVX2-LABEL: test_x86_sse2_sqrt_sd: +; AVX2: ## BB#0: +; AVX2-NEXT: vsqrtsd %xmm0, %xmm0, %xmm0 ## encoding: [0xc5,0xfb,0x51,0xc0] +; AVX2-NEXT: retl ## encoding: [0xc3] +; +; SKX-LABEL: test_x86_sse2_sqrt_sd: +; SKX: ## BB#0: +; SKX-NEXT: vsqrtsd %xmm0, %xmm0, %xmm0 ## EVEX TO VEX Compression encoding: [0xc5,0xfb,0x51,0xc0] +; SKX-NEXT: retl ## encoding: [0xc3] %res = call <2 x double> @llvm.x86.sse2.sqrt.sd(<2 x double> %a0) ; <<2 x double>> [#uses=1] ret <2 x double> %res } @@ -1642,7 +1647,7 @@ define <2 x double> @test_x86_sse2_sqrt_sd_vec_load(<2 x double>* %a0) { ; SKX: ## BB#0: ; SKX-NEXT: movl {{[0-9]+}}(%esp), %eax ## encoding: [0x8b,0x44,0x24,0x04] ; SKX-NEXT: vmovapd (%eax), %xmm0 ## EVEX TO VEX Compression encoding: [0xc5,0xf9,0x28,0x00] -; SKX-NEXT: vsqrtsd %xmm0, %xmm0, %xmm0 ## encoding: [0xc5,0xfb,0x51,0xc0] +; SKX-NEXT: vsqrtsd %xmm0, %xmm0, %xmm0 ## EVEX TO VEX Compression encoding: [0xc5,0xfb,0x51,0xc0] ; SKX-NEXT: retl ## encoding: [0xc3] %a1 = load <2 x double>, <2 x double>* %a0, align 16 %res = call <2 x double> @llvm.x86.sse2.sqrt.sd(<2 x double> %a1) ; <<2 x double>> [#uses=1] |

