summaryrefslogtreecommitdiff
path: root/test/CodeGen/X86/sse41-blend.ll
diff options
context:
space:
mode:
authorDuncan Sands <baldrick@free.fr>2011-09-17 16:49:39 +0000
committerDuncan Sands <baldrick@free.fr>2011-09-17 16:49:39 +0000
commit6bcd2196e5febb97efe188d0d6de403c577d96fc (patch)
treeb147a99b1f7f3b65365ba8535f8466ab53f5d766 /test/CodeGen/X86/sse41-blend.ll
parent2c693dc1261d8b8d92b5c96cf00ec873dde86bb2 (diff)
downloadllvm-6bcd2196e5febb97efe188d0d6de403c577d96fc.tar.gz
llvm-6bcd2196e5febb97efe188d0d6de403c577d96fc.tar.bz2
llvm-6bcd2196e5febb97efe188d0d6de403c577d96fc.tar.xz
Synthesize x86 max/min instructions also for vectors (i.e. produce
maxps and maxpd). This broke the sse41-blend.ll testcase by causing maxpd to be produced rather than a cmp+blend pair, which is the reason I tweaked it. Gives a small speedup on doduc with dragonegg when the GCC vectorizer is used. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139986 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/X86/sse41-blend.ll')
-rw-r--r--test/CodeGen/X86/sse41-blend.ll8
1 files changed, 4 insertions, 4 deletions
diff --git a/test/CodeGen/X86/sse41-blend.ll b/test/CodeGen/X86/sse41-blend.ll
index a21416b7a8..78604a0e96 100644
--- a/test/CodeGen/X86/sse41-blend.ll
+++ b/test/CodeGen/X86/sse41-blend.ll
@@ -73,10 +73,10 @@ define <2 x double> @A(<2 x double> %x, <2 x double> %y) {
; CHECK: B
define <2 x double> @B(<2 x double> %x, <2 x double> %y) {
- ; CHECK: cmpltpd
+ ; CHECK: cmpnlepd
; CHECK: blendvpd
- %max_is_x = fcmp ogt <2 x double> %x, %y
- %max = select <2 x i1> %max_is_x, <2 x double> %x, <2 x double> %y
- ret <2 x double> %max
+ %min_is_x = fcmp ult <2 x double> %x, %y
+ %min = select <2 x i1> %min_is_x, <2 x double> %x, <2 x double> %y
+ ret <2 x double> %min
}