summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorNadav Rotem <nadav.rotem@intel.com>2012-04-15 15:08:09 +0000
committerNadav Rotem <nadav.rotem@intel.com>2012-04-15 15:08:09 +0000
commit3ab32ea49ec13182f1397dc89c37551692f67140 (patch)
tree977dde5f8d6f1fea880e55175174f2a5a06e282d /test
parent73c504af9d86a426532ee32c5d07a4b872794675 (diff)
downloadllvm-3ab32ea49ec13182f1397dc89c37551692f67140.tar.gz
llvm-3ab32ea49ec13182f1397dc89c37551692f67140.tar.bz2
llvm-3ab32ea49ec13182f1397dc89c37551692f67140.tar.xz
When emulating vselect using OR/AND/XOR make sure to bitcast the result back to the original type.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154764 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test')
-rw-r--r--test/CodeGen/X86/sse41-blend.ll8
1 files changed, 8 insertions, 0 deletions
diff --git a/test/CodeGen/X86/sse41-blend.ll b/test/CodeGen/X86/sse41-blend.ll
index 78604a0e96..1a1017d2c1 100644
--- a/test/CodeGen/X86/sse41-blend.ll
+++ b/test/CodeGen/X86/sse41-blend.ll
@@ -80,3 +80,11 @@ define <2 x double> @B(<2 x double> %x, <2 x double> %y) {
ret <2 x double> %min
}
+; CHECK: float_crash
+define void @float_crash() nounwind {
+entry:
+ %merge205vector_func.i = select <4 x i1> undef, <4 x double> undef, <4 x double> undef
+ %extract214vector_func.i = extractelement <4 x double> %merge205vector_func.i, i32 0
+ store double %extract214vector_func.i, double addrspace(1)* undef, align 8
+ ret void
+}