From: Andrea Di Biagio Date: Tue, 18 Apr 2017 10:08:53 +0000 (+0000) Subject: [SampleProfile] Skip intrinsic calls when visiting callsites in InlineHotFunctions. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=c3a1bd43f40b4b05e21d03d2728680f66d8b0cc1;p=llvm [SampleProfile] Skip intrinsic calls when visiting callsites in InlineHotFunctions. Before this patch, we always called method 'findCalleeFunctionSamples()' on intrinsic calls. However, intrinsic calls like llvm.dbg.value() are not viable candidates for obvious reasons. No functional change intended. Differential Revision: https://reviews.llvm.org/D32008 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@300541 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Transforms/IPO/SampleProfile.cpp b/lib/Transforms/IPO/SampleProfile.cpp index 599774e3e86..642d80e6b8a 100644 --- a/lib/Transforms/IPO/SampleProfile.cpp +++ b/lib/Transforms/IPO/SampleProfile.cpp @@ -677,7 +677,7 @@ bool SampleProfileLoader::inlineHotFunctions( for (auto &I : BB.getInstList()) { const FunctionSamples *FS = nullptr; if ((isa(I) || isa(I)) && - (FS = findCalleeFunctionSamples(I))) { + !isa(I) && (FS = findCalleeFunctionSamples(I))) { Candidates.push_back(&I); if (callsiteIsHot(Samples, FS)) Hot = true;