summaryrefslogtreecommitdiffstats
path: root/test/Assembler
diff options
context:
space:
mode:
Diffstat (limited to 'test/Assembler')
-rw-r--r--test/Assembler/vbool-cmp.ll15
-rw-r--r--test/Assembler/vector-select.ll11
2 files changed, 26 insertions, 0 deletions
diff --git a/test/Assembler/vbool-cmp.ll b/test/Assembler/vbool-cmp.ll
new file mode 100644
index 0000000..ac8fb29
--- /dev/null
+++ b/test/Assembler/vbool-cmp.ll
@@ -0,0 +1,15 @@
+; RUN: llvm-as < %s | llvm-dis | llvm-as | llvm-dis | grep {icmp slt}
+; rudimentary test of fcmp/icmp on vectors returning vector of bool
+
+define <4 x i1> @ffoo(<4 x float> %a, <4 x float> %b) nounwind {
+entry:
+ %cmp = fcmp olt <4 x float> %a, %b ; <4 x i1> [#uses=1]
+ ret <4 x i1> %cmp
+}
+
+define <4 x i1> @ifoo(<4 x i32> %a, <4 x i32> %b) nounwind {
+entry:
+ %cmp = icmp slt <4 x i32> %a, %b ; <4 x i1> [#uses=1]
+ ret <4 x i1> %cmp
+}
+
diff --git a/test/Assembler/vector-select.ll b/test/Assembler/vector-select.ll
new file mode 100644
index 0000000..87af602
--- /dev/null
+++ b/test/Assembler/vector-select.ll
@@ -0,0 +1,11 @@
+; RUN: llvm-as < %s | llvm-dis | llvm-as | llvm-dis | grep select
+; rudimentary test of select on vectors returning vector of bool
+
+define <4 x i32> @foo(<4 x i32> %a, <4 x i32> %b,
+ <4 x i1> %cond) nounwind {
+entry:
+ %cmp = select <4 x i1> %cond, <4 x i32> %a, <4 x i32> %b
+ ; <4 x i32> [#uses=1]
+ ret <4 x i32> %cmp
+}
+