diff options
author | Cong Hou <congh@google.com> | 2015-11-24 08:51:23 +0000 |
---|---|---|
committer | Cong Hou <congh@google.com> | 2015-11-24 08:51:23 +0000 |
commit | 1938f2eb9832978952f6a6397a5ad40c6338ed6e (patch) | |
tree | bb573a7986c8a72e20f561c9893e437f7ae8e4f6 /llvm/test/CodeGen/ARM | |
parent | 5712d4611418742c5c4eec394675dd00867d1470 (diff) | |
download | bcm5719-llvm-1938f2eb9832978952f6a6397a5ad40c6338ed6e.tar.gz bcm5719-llvm-1938f2eb9832978952f6a6397a5ad40c6338ed6e.zip |
Let SelectionDAG start to use probability-based interface to add successors.
The patch in http://reviews.llvm.org/D13745 is broken into four parts:
1. New interfaces without functional changes.
2. Use new interfaces in SelectionDAG, while in other passes treat probabilities
as weights.
3. Use new interfaces in all other passes.
4. Remove old interfaces.
This the second patch above. In this patch SelectionDAG starts to use
probability-based interfaces in MBB to add successors but other MC passes are
still using weight-based interfaces. Therefore, we need to maintain correct
weight list in MBB even when probability-based interfaces are used. This is
done by updating weight list in probability-based interfaces by treating the
numerator of probabilities as weights. This change affects many test cases
that check successor weight values. I will update those test cases once this
patch looks good to you.
Differential revision: http://reviews.llvm.org/D14361
llvm-svn: 253965
Diffstat (limited to 'llvm/test/CodeGen/ARM')
-rw-r--r-- | llvm/test/CodeGen/ARM/ifcvt-branch-weight-bug.ll | 2 | ||||
-rw-r--r-- | llvm/test/CodeGen/ARM/ifcvt-branch-weight.ll | 2 | ||||
-rw-r--r-- | llvm/test/CodeGen/ARM/ifcvt-iter-indbr.ll | 4 | ||||
-rw-r--r-- | llvm/test/CodeGen/ARM/taildup-branch-weight.ll | 4 |
4 files changed, 6 insertions, 6 deletions
diff --git a/llvm/test/CodeGen/ARM/ifcvt-branch-weight-bug.ll b/llvm/test/CodeGen/ARM/ifcvt-branch-weight-bug.ll index 4e6924fe5b6..e17da7a9720 100644 --- a/llvm/test/CodeGen/ARM/ifcvt-branch-weight-bug.ll +++ b/llvm/test/CodeGen/ARM/ifcvt-branch-weight-bug.ll @@ -22,7 +22,7 @@ entry: ; for.body -> for.cond.backedge (130023362) ; -> cond.false.i (62) ; CHECK: BB#1: derived from LLVM BB %for.body -; CHECK: Successors according to CFG: BB#2(130023362) BB#4(62) +; CHECK: Successors according to CFG: BB#2(4294967291) BB#4(2048) for.body: br i1 undef, label %for.cond.backedge, label %lor.lhs.false.i, !prof !1 diff --git a/llvm/test/CodeGen/ARM/ifcvt-branch-weight.ll b/llvm/test/CodeGen/ARM/ifcvt-branch-weight.ll index 41d78e53acc..f2a1229d0d8 100644 --- a/llvm/test/CodeGen/ARM/ifcvt-branch-weight.ll +++ b/llvm/test/CodeGen/ARM/ifcvt-branch-weight.ll @@ -19,7 +19,7 @@ bb: br i1 %9, label %return, label %bb2 ; CHECK: BB#2: derived from LLVM BB %bb2 -; CHECK: Successors according to CFG: BB#3(192) BB#4(192) +; CHECK: Successors according to CFG: BB#3(4294967289) BB#4(4294967287) bb2: %v10 = icmp eq i32 %3, 16 diff --git a/llvm/test/CodeGen/ARM/ifcvt-iter-indbr.ll b/llvm/test/CodeGen/ARM/ifcvt-iter-indbr.ll index 69abbf395dc..6ce9bcb56ef 100644 --- a/llvm/test/CodeGen/ARM/ifcvt-iter-indbr.ll +++ b/llvm/test/CodeGen/ARM/ifcvt-iter-indbr.ll @@ -30,9 +30,9 @@ declare i8* @bar(i32, i8*, i8*) ; CHECK-NEXT: blx _foo ; ; CHECK-WEIGHT: BB#0: -; CHECK-WEIGHT: Successors according to CFG: BB#1(16) BB#2(8) BB#4(8) +; CHECK-WEIGHT: Successors according to CFG: BB#1(1073741824) BB#2(536870912) BB#4(536870912) ; CHECK-WEIGHT: BB#1: -; CHECK-WEIGHT: Successors according to CFG: BB#2(24) BB#4(8) +; CHECK-WEIGHT: Successors according to CFG: BB#2(1610612736) BB#4(536870912) define i32 @test(i32 %a, i32 %a2, i32* %p, i32* %p2) { entry: diff --git a/llvm/test/CodeGen/ARM/taildup-branch-weight.ll b/llvm/test/CodeGen/ARM/taildup-branch-weight.ll index 64e0f4bcdef..576c120b444 100644 --- a/llvm/test/CodeGen/ARM/taildup-branch-weight.ll +++ b/llvm/test/CodeGen/ARM/taildup-branch-weight.ll @@ -3,7 +3,7 @@ ; RUN: | FileCheck %s ; CHECK: Machine code for function test0: -; CHECK: Successors according to CFG: BB#1(4) BB#2(124) +; CHECK: Successors according to CFG: BB#1(67108864) BB#2(2080374784) define void @test0(i32 %a, i32 %b, i32* %c, i32* %d) { entry: @@ -30,7 +30,7 @@ B4: !0 = !{!"branch_weights", i32 4, i32 124} ; CHECK: Machine code for function test1: -; CHECK: Successors according to CFG: BB#1(8) BB#2(248) +; CHECK: Successors according to CFG: BB#1(67108864) BB#2(2080374784) @g0 = common global i32 0, align 4 |