Revert "[InstCombine] Support gep nuw in icmp folds" (#118698)
[llvm-project.git] / llvm / test / Transforms / InstCombine / 2008-05-31-Bools.ll
blobfa7c5424c203f6dcbd5385def06f6156b934dae7
1 ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 5
2 ; RUN: opt < %s -passes=instcombine -S | FileCheck %s
4 define i1 @foo1(i1 %a, i1 %b) {
5 ; CHECK-LABEL: define i1 @foo1(
6 ; CHECK-SAME: i1 [[A:%.*]], i1 [[B:%.*]]) {
7 ; CHECK-NEXT:    [[R:%.*]] = xor i1 [[B]], [[A]]
8 ; CHECK-NEXT:    ret i1 [[R]]
10   %r = sub i1 %a, %b
11   ret i1 %r
14 define i1 @foo2(i1 %a, i1 %b) {
15 ; CHECK-LABEL: define i1 @foo2(
16 ; CHECK-SAME: i1 [[A:%.*]], i1 [[B:%.*]]) {
17 ; CHECK-NEXT:    [[R:%.*]] = and i1 [[A]], [[B]]
18 ; CHECK-NEXT:    ret i1 [[R]]
20   %r = mul i1 %a, %b
21   ret i1 %r
24 define i1 @foo3(i1 %a, i1 %b) {
25 ; CHECK-LABEL: define i1 @foo3(
26 ; CHECK-SAME: i1 [[A:%.*]], i1 [[B:%.*]]) {
27 ; CHECK-NEXT:    ret i1 [[A]]
29   %r = udiv i1 %a, %b
30   ret i1 %r
33 define i1 @foo4(i1 %a, i1 %b) {
34 ; CHECK-LABEL: define i1 @foo4(
35 ; CHECK-SAME: i1 [[A:%.*]], i1 [[B:%.*]]) {
36 ; CHECK-NEXT:    ret i1 [[A]]
38   %r = sdiv i1 %a, %b
39   ret i1 %r