From c5fafc1e73bcdbb8eaf899d13c5566f37f9580ac Mon Sep 17 00:00:00 2001 From: Hongtao Yu Date: Fri, 17 Sep 2021 09:21:39 -0700 Subject: [CSSPGO] Tweakes to lower pseudo probe runtime overhead A couple tweaks to 1. allow more thinlto importing by excluding probe intrinsics from IR size in module summary 2. Allow general default attributes (nofree nosync nounwind) for pseudo probe intrinsic. Without those attributes, pseudo probes will be basically treated as unknown calls which will in turn block their containing functions from annotated with those attributes. Reviewed By: wenlei Differential Revision: https://reviews.llvm.org/D109976 --- llvm/lib/Analysis/ModuleSummaryAnalysis.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'llvm/lib/Analysis/ModuleSummaryAnalysis.cpp') diff --git a/llvm/lib/Analysis/ModuleSummaryAnalysis.cpp b/llvm/lib/Analysis/ModuleSummaryAnalysis.cpp index a85dd75..6a5320e 100644 --- a/llvm/lib/Analysis/ModuleSummaryAnalysis.cpp +++ b/llvm/lib/Analysis/ModuleSummaryAnalysis.cpp @@ -279,7 +279,7 @@ static void computeFunctionSummary( } for (const Instruction &I : BB) { - if (isa(I)) + if (I.isDebugOrPseudoInst()) continue; ++NumInsts; // Regular LTO module doesn't participate in ThinLTO import, -- cgit v1.1