diff options
author | Evan Cheng <evan.cheng@apple.com> | 2008-05-03 00:52:09 +0000 |
---|---|---|
committer | Evan Cheng <evan.cheng@apple.com> | 2008-05-03 00:52:09 +0000 |
commit | f90f8f8bc5ad215a6c7d07f8479cb39f1f2d2c29 (patch) | |
tree | 3a83599ec57177f92afe3b5b85963118c13fda8d /test | |
parent | a0a6cae11cff6b12373a6f94df600303ebc11de7 (diff) | |
download | external_llvm-f90f8f8bc5ad215a6c7d07f8479cb39f1f2d2c29.zip external_llvm-f90f8f8bc5ad215a6c7d07f8479cb39f1f2d2c29.tar.gz external_llvm-f90f8f8bc5ad215a6c7d07f8479cb39f1f2d2c29.tar.bz2 |
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')
-rw-r--r-- | test/CodeGen/X86/mmx-shift.ll | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/test/CodeGen/X86/mmx-shift.ll b/test/CodeGen/X86/mmx-shift.ll index d68af2d..82eeafd 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: |