From f2c5fe913976a4e288d5cbe0b4bdfe68640179d2 Mon Sep 17 00:00:00 2001 From: Evan Cheng Date: Thu, 20 Apr 2006 09:01:54 +0000 Subject: [PATCH] Another shuffle test. For 4-wide shuffle, no more than 3 {p}shuf*. llvm-svn: 27876 --- llvm/test/Regression/CodeGen/X86/vec_shuffle-4.ll | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 llvm/test/Regression/CodeGen/X86/vec_shuffle-4.ll diff --git a/llvm/test/Regression/CodeGen/X86/vec_shuffle-4.ll b/llvm/test/Regression/CodeGen/X86/vec_shuffle-4.ll new file mode 100644 index 000000000000..20a0a32d43b3 --- /dev/null +++ b/llvm/test/Regression/CodeGen/X86/vec_shuffle-4.ll @@ -0,0 +1,9 @@ +; RUN: llvm-as < %s | llc -march=x86 -mattr=+sse2 | grep shuf | wc -l | grep 3 +; RUN: llvm-as < %s | llc -march=x86 -mattr=+sse2 | not grep unpck +void %test(<4 x float>* %res, <4 x float>* %A, <4 x float>* %B, <4 x float>* %C) { + %tmp3 = load <4 x float>* %B + %tmp5 = load <4 x float>* %C + %tmp11 = shufflevector <4 x float> %tmp3, <4 x float> %tmp5, <4 x uint> < uint 1, uint 4, uint 1, uint 5 > + store <4 x float> %tmp11, <4 x float>* %res + ret void +}