summaryrefslogtreecommitdiffstats
path: root/llvm/test/CodeGen/X86
diff options
context:
space:
mode:
authorCraig Topper <craig.topper@intel.com>2018-07-02 17:01:54 +0000
committerCraig Topper <craig.topper@intel.com>2018-07-02 17:01:54 +0000
commit56440b974539dea36431e1b2a0da33d462367a09 (patch)
tree726f96ff5f97079e96ae8a3b6e2c35bb66dc5ce5 /llvm/test/CodeGen/X86
parent846f2436e8cdebc963c5920a0579dd8af643513f (diff)
downloadbcm5719-llvm-56440b974539dea36431e1b2a0da33d462367a09.tar.gz
bcm5719-llvm-56440b974539dea36431e1b2a0da33d462367a09.zip
[X86] Don't use aligned load/store instructions for fp128 if the load/store isn't aligned.
Similarily, don't fold fp128 loads into SSE instructions if the load isn't aligned. Unless we're targeting an AMD CPU that doesn't check alignment on arithmetic instructions. Should fix PR38001 llvm-svn: 336121
Diffstat (limited to 'llvm/test/CodeGen/X86')
-rw-r--r--llvm/test/CodeGen/X86/extract-store.ll4
-rw-r--r--llvm/test/CodeGen/X86/fp128-select.ll2
2 files changed, 3 insertions, 3 deletions
diff --git a/llvm/test/CodeGen/X86/extract-store.ll b/llvm/test/CodeGen/X86/extract-store.ll
index 871d66d6e84..41c2f5c495b 100644
--- a/llvm/test/CodeGen/X86/extract-store.ll
+++ b/llvm/test/CodeGen/X86/extract-store.ll
@@ -554,7 +554,7 @@ define void @extract_f128_0(fp128* nocapture %dst, <2 x fp128> %foo) nounwind {
;
; SSE-F128-LABEL: extract_f128_0:
; SSE-F128: # %bb.0:
-; SSE-F128-NEXT: movaps %xmm0, (%rdi)
+; SSE-F128-NEXT: movups %xmm0, (%rdi)
; SSE-F128-NEXT: retq
%vecext = extractelement <2 x fp128> %foo, i32 0
store fp128 %vecext, fp128* %dst, align 1
@@ -606,7 +606,7 @@ define void @extract_f128_1(fp128* nocapture %dst, <2 x fp128> %foo) nounwind {
;
; SSE-F128-LABEL: extract_f128_1:
; SSE-F128: # %bb.0:
-; SSE-F128-NEXT: movaps %xmm1, (%rdi)
+; SSE-F128-NEXT: movups %xmm1, (%rdi)
; SSE-F128-NEXT: retq
%vecext = extractelement <2 x fp128> %foo, i32 1
store fp128 %vecext, fp128* %dst, align 1
diff --git a/llvm/test/CodeGen/X86/fp128-select.ll b/llvm/test/CodeGen/X86/fp128-select.ll
index 85f7d97c985..503c7a9291e 100644
--- a/llvm/test/CodeGen/X86/fp128-select.ll
+++ b/llvm/test/CodeGen/X86/fp128-select.ll
@@ -18,7 +18,7 @@ define void @test_select(fp128* %p, fp128* %q, i1 zeroext %c) {
; MMX-NEXT: movaps %xmm0, (%rsi)
; MMX-NEXT: retq
; MMX-NEXT: .LBB0_1:
-; MMX-NEXT: movaps (%rdi), %xmm0
+; MMX-NEXT: movups (%rdi), %xmm0
; MMX-NEXT: movaps %xmm0, (%rsi)
; MMX-NEXT: retq
;
OpenPOWER on IntegriCloud