xref: /llvm-project/llvm/test/Transforms/SampleProfile/pseudo-probe-dangle3.ll (revision bd52495518808bdbf24f4d8e9e20774d6d2e3333)
1; Test after FoldValueComparisonIntoPredecessors, one dangling probe is gone
2; RUN: opt -S -passes='pseudo-probe,simplifycfg' < %s | FileCheck %s
3
4
5; CHECK: if.end80:                                         ; preds = %if.end
6; CHECK-NEXT:   call void @llvm.pseudoprobe(i64 -2281696412744416103, i64 3, i32 0, i64 -1)
7; CHECK-NOT:   call void @llvm.pseudoprobe(i64 -2281696412744416103, i64 4
8
9define dso_local i32 @readCBPandCoeffsFromNAL(i1 %c, i32 %x, i32 %y) local_unnamed_addr {
10;
11if.end:
12  br i1 %c, label %if.end80, label %if.then64
13
14if.then64:                                        ; preds = %if.end
15  ret i32 %y
16
17if.end80:                                         ; preds = %if.end
18  switch i32 %x, label %lor.lhs.false89 [
19  i32 10, label %if.end172237
20  i32 14, label %if.end172237
21  i32 9, label %if.end172
22  ]
23
24lor.lhs.false89:                                  ; preds = %lor.lhs.false89, %if.end80
25  %cmp91 = icmp eq i32 %x, 12
26  br i1 %cmp91, label %if.end172, label %lor.lhs.false89
27
28if.end172:                                        ; preds = %lor.lhs.false89, %if.end80
29  br label %if.end239
30
31if.end172237:                                     ; preds = %if.end80, %if.end80
32  br label %if.end239
33
34if.end239:                                        ; preds = %if.end172237, %if.end172
35  %cbp.0 = phi i32 [ 1, %if.end172237 ], [ 0, %if.end172 ]
36  ret i32 %cbp.0
37}
38