summaryrefslogtreecommitdiffstats
path: root/llvm/test/CodeGen/Mips/seteqz.ll
diff options
context:
space:
mode:
authorReed Kotler <rkotler@mips.com>2012-10-23 01:35:48 +0000
committerReed Kotler <rkotler@mips.com>2012-10-23 01:35:48 +0000
commit164bb37c7be710a07879ebe9711da0229aa18021 (patch)
tree14195877a5fa268afa4eae10bfa32575294b714b /llvm/test/CodeGen/Mips/seteqz.ll
parent7ccb6d9f8a655f1d32f6b4f87d40838a4eabfbc5 (diff)
downloadbcm5719-llvm-164bb37c7be710a07879ebe9711da0229aa18021.tar.gz
bcm5719-llvm-164bb37c7be710a07879ebe9711da0229aa18021.zip
implement setXX patterns
llvm-svn: 166459
Diffstat (limited to 'llvm/test/CodeGen/Mips/seteqz.ll')
-rw-r--r--llvm/test/CodeGen/Mips/seteqz.ll24
1 files changed, 24 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/Mips/seteqz.ll b/llvm/test/CodeGen/Mips/seteqz.ll
new file mode 100644
index 00000000000..d445be6aedb
--- /dev/null
+++ b/llvm/test/CodeGen/Mips/seteqz.ll
@@ -0,0 +1,24 @@
+; RUN: llc -march=mipsel -mcpu=mips16 -relocation-model=pic -O3 < %s | FileCheck %s -check-prefix=16
+
+@i = global i32 0, align 4
+@j = global i32 99, align 4
+@r1 = common global i32 0, align 4
+@r2 = common global i32 0, align 4
+
+define void @test() nounwind {
+entry:
+ %0 = load i32* @i, align 4
+ %cmp = icmp eq i32 %0, 0
+ %conv = zext i1 %cmp to i32
+ store i32 %conv, i32* @r1, align 4
+; 16: sltiu ${{[0-9]+}}, 1
+; 16: move ${{[0-9]+}}, $t8
+ %1 = load i32* @j, align 4
+ %cmp1 = icmp eq i32 %1, 99
+ %conv2 = zext i1 %cmp1 to i32
+ store i32 %conv2, i32* @r2, align 4
+; 16: xor $[[REGISTER:[0-9A-Ba-b_]+]], ${{[0-9]+}}
+; 16: sltiu $[[REGISTER:[0-9A-Ba-b_]+]], 1
+; 16: move ${{[0-9]+}}, $t8
+ ret void
+}
OpenPOWER on IntegriCloud