diff options
-rw-r--r-- | llvm/lib/Transforms/IPO/SampleProfile.cpp | 1 | ||||
-rw-r--r-- | llvm/test/Transforms/SampleProfile/entry_counts.ll | 7 |
2 files changed, 8 insertions, 0 deletions
diff --git a/llvm/lib/Transforms/IPO/SampleProfile.cpp b/llvm/lib/Transforms/IPO/SampleProfile.cpp index 9fb6fac9911..b8636665a82 100644 --- a/llvm/lib/Transforms/IPO/SampleProfile.cpp +++ b/llvm/lib/Transforms/IPO/SampleProfile.cpp @@ -1257,6 +1257,7 @@ bool SampleProfileLoader::runOnModule(Module &M) { } bool SampleProfileLoader::runOnFunction(Function &F) { + F.setEntryCount(0); Samples = Reader->getSamplesFor(F); if (!Samples->empty()) return emitAnnotations(F); diff --git a/llvm/test/Transforms/SampleProfile/entry_counts.ll b/llvm/test/Transforms/SampleProfile/entry_counts.ll index 50cd575295a..6d1d4318abf 100644 --- a/llvm/test/Transforms/SampleProfile/entry_counts.ll +++ b/llvm/test/Transforms/SampleProfile/entry_counts.ll @@ -8,6 +8,13 @@ entry: ret void, !dbg !9 } +; This function does not have profile, check if function_entry_count is 0 +; CHECK: {{.*}} = !{!"function_entry_count", i64 0} +define void @no_profile() { +entry: + ret void +} + !llvm.dbg.cu = !{!0} !llvm.module.flags = !{!6, !7} !llvm.ident = !{!8} |