aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--test/Transforms/InstCombine/2003-06-05-BranchInvertInfLoop.ll14
1 files changed, 14 insertions, 0 deletions
diff --git a/test/Transforms/InstCombine/2003-06-05-BranchInvertInfLoop.ll b/test/Transforms/InstCombine/2003-06-05-BranchInvertInfLoop.ll
new file mode 100644
index 0000000000..a297230596
--- /dev/null
+++ b/test/Transforms/InstCombine/2003-06-05-BranchInvertInfLoop.ll
@@ -0,0 +1,14 @@
+; This testcase causes an infinite loop in the instruction combiner,
+; because it things that the constant value is a not expression... and
+; constantly inverts the branch back and forth.
+;
+; RUN: as < %s | opt -instcombine -disable-output
+
+ubyte %test19(bool %c) {
+ br bool true, label %True, label %False
+True:
+ ret ubyte 1
+False:
+ ret ubyte 3
+}
+