diff options
author | Kalle Raiskila <kalle.raiskila@nokia.com> | 2010-06-21 14:42:19 +0000 |
---|---|---|
committer | Kalle Raiskila <kalle.raiskila@nokia.com> | 2010-06-21 14:42:19 +0000 |
commit | d7f50c118ab3e16de75dd49559dc431ce46c48a5 (patch) | |
tree | 81cfbbad3d489f4317d76f8b9f68f7ffcd449e56 /llvm/test/CodeGen/CellSPU | |
parent | 1e909fc0b6d15111e6bb6d680014115d6bcadd72 (diff) | |
download | bcm5719-llvm-d7f50c118ab3e16de75dd49559dc431ce46c48a5.tar.gz bcm5719-llvm-d7f50c118ab3e16de75dd49559dc431ce46c48a5.zip |
Fix the lowering of VECTOR_SHUFFLE on SPU to handle splats.
llvm-svn: 106419
Diffstat (limited to 'llvm/test/CodeGen/CellSPU')
-rw-r--r-- | llvm/test/CodeGen/CellSPU/shuffles.ll | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/llvm/test/CodeGen/CellSPU/shuffles.ll b/llvm/test/CodeGen/CellSPU/shuffles.ll index 20ac5705586..85b16506e95 100644 --- a/llvm/test/CodeGen/CellSPU/shuffles.ll +++ b/llvm/test/CodeGen/CellSPU/shuffles.ll @@ -5,6 +5,11 @@ define <4 x float> @shuffle(<4 x float> %param1, <4 x float> %param2) { ; CHECK: shufb {{\$., \$4, \$3, \$.}} %val= shufflevector <4 x float> %param1, <4 x float> %param2, <4 x i32> <i32 4,i32 1,i32 2,i32 3> ret <4 x float> %val - } +define <4 x float> @splat(float %param1) { + %vec = insertelement <1 x float> undef, float %param1, i32 0 + %val= shufflevector <1 x float> %vec, <1 x float> undef, <4 x i32> <i32 0,i32 0,i32 0,i32 0> + ret <4 x float> %val +} + |