[InstCombine] Signed saturation patterns
[llvm-complete.git] / test / Other / debugcounter-earlycse.ll
blob3d0a9cdbd3a23b4f447d32171057c6c8697c8227
1 ; REQUIRES: asserts
2 ; RUN: opt -S -debug-counter=early-cse-skip=1,early-cse-count=1 -early-cse  < %s 2>&1 | FileCheck %s
3 ;; Test that, with debug counters on, we only optimize the second CSE opportunity.
4 define i32 @test(i32 %a, i32 %b) {
5 ; CHECK-LABEL: @test(
6 ; CHECK-NEXT:  bb:
7 ; CHECK-NEXT:    %add1 = add i32 %a, %b
8 ; CHECK-NEXT:    %add2 = add i32 %a, %b
9 ; CHECK-NEXT:    %add4 = add i32 %a, %b
10 ; CHECK-NEXT:    %ret1 = add i32 %add1, %add2
11 ; CHECK-NEXT:    %ret2 = add i32 %add1, %add4
12 ; CHECK-NEXT:    %ret = add i32 %ret1, %ret2
13 ; CHECK-NEXT:    ret i32 %ret
15 bb:
16   %add1 = add i32 %a, %b
17   %add2 = add i32 %a, %b
18   %add3 = add i32 %a, %b
19   %add4 = add i32 %a, %b
20   %ret1 = add i32 %add1, %add2
21   %ret2 = add i32 %add3, %add4
22   %ret = add i32 %ret1, %ret2
23   ret i32 %ret