summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--llvm/test/Regression/Transforms/InstCombine/set.ll27
1 files changed, 27 insertions, 0 deletions
diff --git a/llvm/test/Regression/Transforms/InstCombine/set.ll b/llvm/test/Regression/Transforms/InstCombine/set.ll
index e7057bd444f..38a490d48e2 100644
--- a/llvm/test/Regression/Transforms/InstCombine/set.ll
+++ b/llvm/test/Regression/Transforms/InstCombine/set.ll
@@ -51,3 +51,30 @@ bool "test8"(uint %A) {
%B = setlt uint %A, 0 ; false
ret bool %B
}
+
+;; test operations on boolean values these should all be eliminated$a
+bool %test9(bool %A) {
+ %B = setlt bool %A, false ; false
+ ret bool %B
+}
+bool %test10(bool %A) {
+ %B = setgt bool %A, true ; false
+ ret bool %B
+}
+bool %test11(bool %A) {
+ %B = setle bool %A, true ; true
+ ret bool %B
+}
+bool %test12(bool %A) {
+ %B = setge bool %A, false ; true
+ ret bool %B
+}
+bool %test13(bool %A, bool %B) {
+ %C = setge bool %A, %B ; A | ~B
+ ret bool %C
+}
+bool %test14(bool %A, bool %B) {
+ %C = seteq bool %A, %B ; ~(A ^ B)
+ ret bool %C
+}
+
OpenPOWER on IntegriCloud