summaryrefslogtreecommitdiff
path: root/test/CodeGen/X86/mmx-shift.ll
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2008-05-03 00:52:09 +0000
committerEvan Cheng <evan.cheng@apple.com>2008-05-03 00:52:09 +0000
commit22b942aa4df824adbd3f6eaede53abe451f616e9 (patch)
tree3a83599ec57177f92afe3b5b85963118c13fda8d /test/CodeGen/X86/mmx-shift.ll
parentf944c9a19ed5438ea20f20205dfb073d0f00bd9e (diff)
downloadllvm-22b942aa4df824adbd3f6eaede53abe451f616e9.tar.gz
llvm-22b942aa4df824adbd3f6eaede53abe451f616e9.tar.bz2
llvm-22b942aa4df824adbd3f6eaede53abe451f616e9.tar.xz
Add separate intrinsics for MMX / SSE shifts with i32 integer operands. This allow us to simplify the horribly complicated matching code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50601 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/X86/mmx-shift.ll')
-rw-r--r--test/CodeGen/X86/mmx-shift.ll5
1 files changed, 3 insertions, 2 deletions
diff --git a/test/CodeGen/X86/mmx-shift.ll b/test/CodeGen/X86/mmx-shift.ll
index d68af2d1d3..82eeafd075 100644
--- a/test/CodeGen/X86/mmx-shift.ll
+++ b/test/CodeGen/X86/mmx-shift.ll
@@ -1,14 +1,15 @@
; RUN: llvm-as < %s | llc -march=x86 -mattr=+mmx | grep psllq | grep 32
+; RUN: llvm-as < %s | llc -march=x86-64 -mattr=+mmx | grep psllq | grep 32
; RUN: llvm-as < %s | llc -march=x86 -mattr=+mmx | grep psrad
define i64 @t1(<1 x i64> %mm1) nounwind {
entry:
- %tmp6 = tail call <1 x i64> @llvm.x86.mmx.psll.q( <1 x i64> %mm1, <1 x i64> <i64 32> ) ; <<1 x i64>> [#uses=1]
+ %tmp6 = tail call <1 x i64> @llvm.x86.mmx.pslli.q( <1 x i64> %mm1, i32 32 ) ; <<1 x i64>> [#uses=1]
%retval1112 = bitcast <1 x i64> %tmp6 to i64 ; <i64> [#uses=1]
ret i64 %retval1112
}
-declare <1 x i64> @llvm.x86.mmx.psll.q(<1 x i64>, <1 x i64>) nounwind readnone
+declare <1 x i64> @llvm.x86.mmx.pslli.q(<1 x i64>, i32) nounwind readnone
define i64 @t2(<2 x i32> %mm1, <2 x i32> %mm2) nounwind {
entry: