summaryrefslogtreecommitdiffstats
path: root/llvm/test/CodeGen
diff options
context:
space:
mode:
authorKrzysztof Parzyszek <kparzysz@codeaurora.org>2018-02-27 18:31:46 +0000
committerKrzysztof Parzyszek <kparzysz@codeaurora.org>2018-02-27 18:31:46 +0000
commitd70f5a0eb4714c185902f2ac43caa9427e156df4 (patch)
tree423ba0ee1547db215c81cc4756c56a47c52222b8 /llvm/test/CodeGen
parent9b1996ec8626b63afba9f575b1ef35d7a30ca667 (diff)
downloadbcm5719-llvm-d70f5a0eb4714c185902f2ac43caa9427e156df4.tar.gz
bcm5719-llvm-d70f5a0eb4714c185902f2ac43caa9427e156df4.zip
[Hexagon] Add patterns for compares of i1 values
llvm-svn: 326220
Diffstat (limited to 'llvm/test/CodeGen')
-rw-r--r--llvm/test/CodeGen/Hexagon/isel-setcc-i1.ll27
1 files changed, 27 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/Hexagon/isel-setcc-i1.ll b/llvm/test/CodeGen/Hexagon/isel-setcc-i1.ll
new file mode 100644
index 00000000000..8201c738d33
--- /dev/null
+++ b/llvm/test/CodeGen/Hexagon/isel-setcc-i1.ll
@@ -0,0 +1,27 @@
+; RUN: llc -march=hexagon < %s | FileCheck %s
+
+; Check that this compiles successfully.
+; CHECK: if (p0)
+
+target triple = "hexagon"
+
+define void @fred() #0 {
+b0:
+ br label %b1
+
+b1: ; preds = %b1, %b0
+ %v2 = load i32, i32* undef, align 4
+ %v3 = select i1 undef, i32 %v2, i32 0
+ %v4 = and i32 %v3, 7
+ %v5 = icmp eq i32 %v4, 4
+ %v6 = or i1 undef, %v5
+ %v7 = and i1 undef, %v6
+ %v8 = xor i1 %v7, true
+ %v9 = or i1 undef, %v8
+ br i1 %v9, label %b10, label %b1
+
+b10: ; preds = %b1
+ unreachable
+}
+
+attributes #0 = { nounwind "target-cpu"="hexagonv55" }
OpenPOWER on IntegriCloud