Run DCE after a LoopFlatten test to reduce spurious output [nfc]
[llvm-project.git] / llvm / test / CodeGen / ARM / taildup-branch-weight.ll
blobc63c691171d25d1dbd28742a4f80b313d5e2ca9f
1 ; RUN: llc < %s -mtriple=arm-eabi -stop-after=tailduplication -tail-dup-size=100 \
2 ; RUN:      -enable-tail-merge=false -disable-cgp | FileCheck %s
4 ; CHECK: name:            test0
5 ; CHECK: successors: %bb.1(0x04000000), %bb.2(0x7c000000)
7 define void @test0(i32 %a, i32 %b, ptr %c, ptr %d) {
8 entry:
9   store i32 3, ptr %d
10   br label %B1
12 B2:
13   store i32 2, ptr %c
14   br label %B4
16 B3:
17   store i32 2, ptr %c
18   br label %B4
20 B1:
21   store i32 1, ptr %d
22   %test0 = icmp slt i32 %a, %b
23   br i1 %test0, label %B2, label %B3, !prof !0
25 B4:
26   ret void
29 !0 = !{!"branch_weights", i32 4, i32 124}
31 ; CHECK: name:            test1
32 ; CHECK: successors: %bb.2(0x7c000000), %bb.1(0x04000000)
34 @g0 = common global i32 0, align 4
36 define void @test1(i32 %a, i32 %b, ptr %c, ptr %d, ptr %e) {
38   %test0 = icmp slt i32 %a, %b
39   br i1 %test0, label %B1, label %B2, !prof !1
41 B1:
42   br label %B3
44 B2:
45   store i32 2, ptr %c
46   br label %B3
48 B3:
49   store i32 3, ptr %e
50   ret void
53 !1 = !{!"branch_weights", i32 248, i32 8}