[InstCombine] Signed saturation patterns
[llvm-core.git] / test / Other / debugcounter-predicateinfo.ll
blob6c82148f9e3991265a79f41fb38243424931b13a
1 ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
2 ; REQUIRES: asserts
3 ; RUN: opt -debug-counter=predicateinfo-rename-skip=1,predicateinfo-rename-count=1 -print-predicateinfo -analyze  < %s 2>&1 | FileCheck %s
4 ;; Test that, with debug counters on, we don't rename the first info, only the second
5 define fastcc void @barney() {
6 ; CHECK-LABEL: @barney(
7 ; CHECK-NEXT:  bb:
8 ; CHECK-NEXT:    br label [[BB22:%.*]]
9 ; CHECK:       bb22:
10 ; CHECK-NEXT:    [[TMP23:%.*]] = icmp eq i32 undef, 2
11 ; CHECK:         [[TMP23_0:%.*]] = call i1 @llvm.ssa.copy.{{.+}}(i1 [[TMP23]])
12 ; CHECK-NEXT:    br i1 [[TMP23]], label [[BB29:%.*]], label [[BB35:%.*]]
13 ; CHECK:       bb29:
14 ; CHECK:         [[TMP23_0_1:%.*]] = call i1 @llvm.ssa.copy.{{.+}}(i1 [[TMP23_0]])
15 ; CHECK-NEXT:    br i1 [[TMP23]], label [[BB33:%.*]], label [[BB35]]
16 ; CHECK:       bb33:
17 ; CHECK-NEXT:    br i1 [[TMP23_0_1]], label [[BB35]], label [[BB35]]
18 ; CHECK:       bb35:
19 ; CHECK-NEXT:    unreachable
21 bb:
22   br label %bb22
23 bb22:                                             ; preds = %bb21
24   %tmp23 = icmp eq i32 undef, 2
25   br i1 %tmp23, label %bb29, label %bb35
28 bb29:                                             ; preds = %bb28
29 ;; We will not rename this one (we will still generate a copy of a copy for the next one)
30   br i1 %tmp23, label %bb33, label %bb35
33 bb33:                                             ; preds = %bb31
34 ;; We will rename this one
35   br i1 %tmp23, label %bb35, label %bb35
37 bb35:                                             ; preds = %bb33, %bb29, %bb22
38   unreachable