[Reland][Runtimes] Merge 'compile_commands.json' files from runtimes build (#116303)
[llvm-project.git] / llvm / test / CodeGen / X86 / block_set.ll
blobbfe391d5b464f55c8801d75bf18e1fc7c4dcc3ba
1 ; RUN: llc -mtriple=i686-linux < %s | FileCheck %s
3 define i1 @block_filter() !prof !22{
4 ; CHECK-LABEL: block_filter
5 ; CHECK: %.entry
6 ; CHECK: %.header1
7 ; CHECK: %.bb1
8 ; CHECK: %.header2
9 ; CHECK: %.latch2
10 ; CHECK: %.cold
11 ; CHECK: %.pred
12 ; CHECK: %.problem
13 ; CHECK: %.latch1
14 ; CHECK: %.exit
15 .entry:
16   %val0 = call i1 @bar()
17   br label %.header1
19 .header1:
20   %val1 = call i1 @foo()
21   br i1 %val1, label %.bb1, label %.pred, !prof !2
23 .bb1:
24   %val11 = call i1 @foo()
25   br i1 %val11, label %.header2, label %.pred, !prof !2
27 .header2:
28   %val2 = call i1 @foo()
29   br i1 %val2, label %.latch2, label %.cold, !prof !10
31 .cold:
32   %val4 = call i1 @bar()
33   br i1 %val4, label %.latch2, label %.problem
35 .latch2:
36   %val5 = call i1 @foo()
37   br i1 %val5, label %.header2, label %.latch1, !prof !1
39 .pred:
40   %valp = call i1 @foo()
41   br label %.problem
43 .problem:
44   %val3 = call i1 @foo()
45   br label %.latch1
47 .latch1:
48   %val6 = call i1 @foo()
49   br i1 %val6, label %.header1, label %.exit, !prof !1
51 .exit:
52   %val7 = call i1 @foo()
53   ret i1 %val7
56 declare i1 @foo()
57 declare i1 @bar()
59 !1 = !{!"branch_weights", i32 5, i32 5}
60 !2 = !{!"branch_weights", i32 60, i32 40}
61 !3 = !{!"branch_weights", i32 90, i32 10}
62 !10 = !{!"branch_weights", i32 90, i32 10}
64 !22 = !{!"function_entry_count", i64 100}