diff options
Diffstat (limited to 'llvm')
| -rw-r--r-- | llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp | 1 | ||||
| -rw-r--r-- | llvm/test/Transforms/PGOProfile/branch1.ll | 3 |
2 files changed, 4 insertions, 0 deletions
diff --git a/llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp b/llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp index 9b7eb1e4bf5..ccfdf1a7657 100644 --- a/llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp +++ b/llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp @@ -693,6 +693,7 @@ void PGOUseFunc::populateCounters() { DEBUG(dbgs() << "Populate counts in " << NumPasses << " passes.\n"); // Assert every BB has a valid counter. uint64_t FuncEntryCount = getBBInfo(&*F.begin()).CountValue; + F.setEntryCount(FuncEntryCount); uint64_t FuncMaxCount = FuncEntryCount; for (auto &BB : F) { assert(getBBInfo(&BB).CountValid && "BB count is not valid"); diff --git a/llvm/test/Transforms/PGOProfile/branch1.ll b/llvm/test/Transforms/PGOProfile/branch1.ll index 380a293ca0e..b2c7bcc2c19 100644 --- a/llvm/test/Transforms/PGOProfile/branch1.ll +++ b/llvm/test/Transforms/PGOProfile/branch1.ll @@ -21,6 +21,8 @@ target triple = "x86_64-unknown-linux-gnu" ; GEN: @__profn_test_br_1 = private constant [9 x i8] c"test_br_1" define i32 @test_br_1(i32 %i) { +; USE-LABEL: @test_br_1 +; USE-SAME: !prof ![[FUNC_ENTRY_COUNT:[0-9]+]] entry: ; GEN: entry: ; GEN-NOT: llvm.instrprof.increment @@ -44,3 +46,4 @@ if.end: } ; USE-DAG: {{![0-9]+}} = !{i32 1, !"ProfileSummary", {{![0-9]+}}} ; USE-DAG: {{![0-9]+}} = !{!"DetailedSummary", {{![0-9]+}}} +; USE-DAG: ![[FUNC_ENTRY_COUNT]] = !{!"function_entry_count", i64 3} |

