summaryrefslogtreecommitdiffstats
path: root/llvm/test/CodeGen/Hexagon/early-if-phi-i1.ll
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/test/CodeGen/Hexagon/early-if-phi-i1.ll')
-rw-r--r--llvm/test/CodeGen/Hexagon/early-if-phi-i1.ll17
1 files changed, 17 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/Hexagon/early-if-phi-i1.ll b/llvm/test/CodeGen/Hexagon/early-if-phi-i1.ll
new file mode 100644
index 00000000000..1649d51269e
--- /dev/null
+++ b/llvm/test/CodeGen/Hexagon/early-if-phi-i1.ll
@@ -0,0 +1,17 @@
+; RUN: llc < %s
+; REQUIRES: asserts
+; Check that the early if-conversion does not predicate block1 (where the
+; join block has a phi node of type i1).
+
+define i1 @foo(i32 %x, i32* %p) {
+entry:
+ %c = icmp sgt i32 %x, 0
+ %c1 = icmp sgt i32 %x, 10
+ br i1 %c, label %block2, label %block1
+block1:
+ store i32 1, i32* %p, align 4
+ br label %block2
+block2:
+ %b = phi i1 [ 0, %entry ], [ %c1, %block1 ]
+ ret i1 %b
+}
OpenPOWER on IntegriCloud