[PATCH] D31336: [ThinLTO] Correct counting of functions in inliner stats
Teresa Johnson via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Mar 24 09:23:03 PDT 2017
tejohnson created this revision.
Herald added a subscriber: Prazek.
Declarations need to be filtered out when counting functions.
https://reviews.llvm.org/D31336
Files:
lib/Transforms/Utils/ImportedFunctionsInliningStatistics.cpp
test/Transforms/Inline/inline_stats.ll
Index: test/Transforms/Inline/inline_stats.ll
===================================================================
--- test/Transforms/Inline/inline_stats.ll
+++ test/Transforms/Inline/inline_stats.ll
@@ -36,9 +36,12 @@
ret void
}
+declare void @external_decl()
+
define void @external1() alwaysinline !thinlto_src_module !0 {
call fastcc void @internal2()
call fastcc void @external2();
+ call void @external_decl();
ret void
}
Index: lib/Transforms/Utils/ImportedFunctionsInliningStatistics.cpp
===================================================================
--- lib/Transforms/Utils/ImportedFunctionsInliningStatistics.cpp
+++ lib/Transforms/Utils/ImportedFunctionsInliningStatistics.cpp
@@ -62,6 +62,8 @@
void ImportedFunctionsInliningStatistics::setModuleInfo(const Module &M) {
ModuleName = M.getName();
for (const auto &F : M.functions()) {
+ if (F.isDeclaration())
+ continue;
AllFunctions++;
ImportedFunctions += int(F.getMetadata("thinlto_src_module") != nullptr);
}
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D31336.92958.patch
Type: text/x-patch
Size: 1038 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170324/52d304f2/attachment.bin>
More information about the llvm-commits
mailing list