diff options
author | Dehao Chen <dehao@google.com> | 2017-03-23 14:43:10 +0000 |
---|---|---|
committer | Dehao Chen <dehao@google.com> | 2017-03-23 14:43:10 +0000 |
commit | 53a0c082d2f8e3dbd2e138adc7d0f60e46fed307 (patch) | |
tree | 0a242cc149491f5bd66370e73835868cd2015f3e /llvm/test/Transforms/SampleProfile/branch.ll | |
parent | 50910bf842ca2d6bf16655ef3b74a8a34ca8c5f2 (diff) | |
download | bcm5719-llvm-53a0c082d2f8e3dbd2e138adc7d0f60e46fed307.tar.gz bcm5719-llvm-53a0c082d2f8e3dbd2e138adc7d0f60e46fed307.zip |
Do not set branch weight if the branch weight annotation is present.
Summary: ThinLTO will annotate the CFG twice. If the branch weight is set by the first annotation, we should not set the branch weight again in the second annotation because the first annotation is more accurate as there is less optimization that could affect debug info accuracy.
Reviewers: tejohnson, davidxl
Reviewed By: tejohnson
Subscribers: mehdi_amini, aprantl, llvm-commits
Differential Revision: https://reviews.llvm.org/D31228
llvm-svn: 298602
Diffstat (limited to 'llvm/test/Transforms/SampleProfile/branch.ll')
-rw-r--r-- | llvm/test/Transforms/SampleProfile/branch.ll | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/llvm/test/Transforms/SampleProfile/branch.ll b/llvm/test/Transforms/SampleProfile/branch.ll index 2ef01a76b0f..5a5160e6343 100644 --- a/llvm/test/Transforms/SampleProfile/branch.ll +++ b/llvm/test/Transforms/SampleProfile/branch.ll @@ -87,7 +87,9 @@ for.cond: ; preds = %for.inc, %if.then.2 %6 = load i32, i32* %u, align 4, !dbg !46 %7 = load i32, i32* %limit, align 4, !dbg !48 %cmp5 = icmp slt i32 %6, %7, !dbg !49 - br i1 %cmp5, label %for.body, label %for.end, !dbg !50 + br i1 %cmp5, label %for.body, label %for.end, !dbg !50, !prof !80 +; CHECK: edge for.cond -> for.body probability is 0x73333333 / 0x80000000 = 90.00% +; CHECK: edge for.cond -> for.end probability is 0x0ccccccd / 0x80000000 = 10.00% for.body: ; preds = %for.cond call void @llvm.dbg.declare(metadata double* %x, metadata !51, metadata !17), !dbg !53 @@ -237,3 +239,4 @@ attributes #4 = { nounwind readonly } !77 = !DILocation(line: 20, column: 4, scope: !6) !78 = !DILocation(line: 21, column: 4, scope: !6) !79 = !DILocation(line: 22, column: 2, scope: !6) +!80 = !{!"branch_weights", i32 90, i32 10} |