summaryrefslogtreecommitdiffstats
path: root/llvm/test/Transforms/InstCombine/zext-bool-add-sub.ll
diff options
context:
space:
mode:
authorSanjay Patel <spatel@rotateright.com>2016-09-12 19:50:08 +0000
committerSanjay Patel <spatel@rotateright.com>2016-09-12 19:50:08 +0000
commitdea26950a020bfb65aeedcc5d2afaa574adbedbb (patch)
tree1b55f74f8446d9a9f01917c74b5c70e843d0b916 /llvm/test/Transforms/InstCombine/zext-bool-add-sub.ll
parent2eea9a1d58839efb5c1359f88a7abc5d087de3f0 (diff)
downloadbcm5719-llvm-dea26950a020bfb65aeedcc5d2afaa574adbedbb.tar.gz
bcm5719-llvm-dea26950a020bfb65aeedcc5d2afaa574adbedbb.zip
[InstCombine] add test for PR30327
llvm-svn: 281248
Diffstat (limited to 'llvm/test/Transforms/InstCombine/zext-bool-add-sub.ll')
-rw-r--r--llvm/test/Transforms/InstCombine/zext-bool-add-sub.ll14
1 files changed, 14 insertions, 0 deletions
diff --git a/llvm/test/Transforms/InstCombine/zext-bool-add-sub.ll b/llvm/test/Transforms/InstCombine/zext-bool-add-sub.ll
index 735b07c6b92..d252ad0c011 100644
--- a/llvm/test/Transforms/InstCombine/zext-bool-add-sub.ll
+++ b/llvm/test/Transforms/InstCombine/zext-bool-add-sub.ll
@@ -1,5 +1,6 @@
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
; RUN: opt < %s -instcombine -S | FileCheck %s
+
; rdar://11748024
define i32 @a(i1 zeroext %x, i1 zeroext %y) {
@@ -17,3 +18,16 @@ define i32 @a(i1 zeroext %x, i1 zeroext %y) {
ret i32 %add
}
+define i32 @PR30273(i1 %a, i1 %b) {
+; CHECK-LABEL: @PR30273(
+; CHECK-NEXT: [[ZEXT:%.*]] = zext i1 %a to i32
+; CHECK-NEXT: [[SEL1:%.*]] = select i1 %a, i32 2, i32 1
+; CHECK-NEXT: [[SEL2:%.*]] = select i1 %b, i32 [[SEL1]], i32 [[ZEXT]]
+; CHECK-NEXT: ret i32 [[SEL2]]
+;
+ %zext = zext i1 %a to i32
+ %sel1 = select i1 %a, i32 2, i32 1
+ %sel2 = select i1 %b, i32 %sel1, i32 %zext
+ ret i32 %sel2
+}
+
OpenPOWER on IntegriCloud