[InstCombine] Signed saturation patterns
[llvm-core.git] / test / Transforms / InstCombine / 2009-06-16-SRemDemandedBits.ll
blob8730b4e08e60b2bc79462fc966bccffd1f4521fa
1 ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
2 ; RUN: opt < %s -instcombine -S | FileCheck %s
3 ; PR3439
5 define i32 @a(i32 %x) nounwind {
6 ; CHECK-LABEL: @a(
7 ; CHECK-NEXT:  entry:
8 ; CHECK-NEXT:    [[REM:%.*]] = srem i32 [[X:%.*]], 2
9 ; CHECK-NEXT:    [[AND:%.*]] = and i32 [[REM]], 2
10 ; CHECK-NEXT:    ret i32 [[AND]]
12 entry:
13   %rem = srem i32 %x, 2
14   %and = and i32 %rem, 2
15   ret i32 %and