summaryrefslogtreecommitdiffstats
path: root/llvm/test/CodeGen/X86/fp-logic.ll
diff options
context:
space:
mode:
authorSanjay Patel <spatel@rotateright.com>2015-09-23 18:19:07 +0000
committerSanjay Patel <spatel@rotateright.com>2015-09-23 18:19:07 +0000
commitaba37553c43c691421279836eb4a524ff7f03ab5 (patch)
treedfe5a182054d162bdfa123570f35dc61ceea9ba0 /llvm/test/CodeGen/X86/fp-logic.ll
parente75405b4ea9d73a7f193126387287dd4b8e59d40 (diff)
downloadbcm5719-llvm-aba37553c43c691421279836eb4a524ff7f03ab5.tar.gz
bcm5719-llvm-aba37553c43c691421279836eb4a524ff7f03ab5.zip
[x86] replace integer 'or' ops with packed SSE FP 'or' ops when operating on FP scalars
Turn this: movd %xmm0, %eax movd %xmm1, %ecx orl %eax, %ecx movd %ecx, %xmm0 into this: orps %xmm1, %xmm0 This is related to, but does not solve: https://llvm.org/bugs/show_bug.cgi?id=22428 This is an extension of: http://reviews.llvm.org/rL248395 llvm-svn: 248409
Diffstat (limited to 'llvm/test/CodeGen/X86/fp-logic.ll')
-rw-r--r--llvm/test/CodeGen/X86/fp-logic.ll5
1 files changed, 1 insertions, 4 deletions
diff --git a/llvm/test/CodeGen/X86/fp-logic.ll b/llvm/test/CodeGen/X86/fp-logic.ll
index 0b714ffe36f..95f15789789 100644
--- a/llvm/test/CodeGen/X86/fp-logic.ll
+++ b/llvm/test/CodeGen/X86/fp-logic.ll
@@ -170,10 +170,7 @@ define float @f10(float %x, float %y) {
define float @or(float %x, float %y) {
; CHECK-LABEL: or:
; CHECK: # BB#0:
-; CHECK-NEXT: movd %xmm0, %eax
-; CHECK-NEXT: movd %xmm1, %ecx
-; CHECK-NEXT: orl %eax, %ecx
-; CHECK-NEXT: movd %ecx, %xmm0
+; CHECK-NEXT: orps %xmm1, %xmm0
; CHECK-NEXT: retq
%bc1 = bitcast float %x to i32
OpenPOWER on IntegriCloud