[llvm] r288192 - Use CallSite to simplify code

David Blaikie via llvm-commits llvm-commits at lists.llvm.org
Tue Nov 29 11:42:27 PST 2016


Author: dblaikie
Date: Tue Nov 29 13:42:27 2016
New Revision: 288192

URL: http://llvm.org/viewvc/llvm-project?rev=288192&view=rev
Log:
Use CallSite to simplify code

Modified:
    llvm/trunk/lib/Transforms/IPO/SampleProfile.cpp

Modified: llvm/trunk/lib/Transforms/IPO/SampleProfile.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/IPO/SampleProfile.cpp?rev=288192&r1=288191&r2=288192&view=diff
==============================================================================
--- llvm/trunk/lib/Transforms/IPO/SampleProfile.cpp (original)
+++ llvm/trunk/lib/Transforms/IPO/SampleProfile.cpp Tue Nov 29 13:42:27 2016
@@ -647,15 +647,13 @@ bool SampleProfileLoader::inlineHotFunct
     }
     for (auto I : CIS) {
       InlineFunctionInfo IFI(nullptr, ACT ? &GetAssumptionCache : nullptr);
-      CallInst *CI = dyn_cast<CallInst>(I);
-      InvokeInst *II = dyn_cast<InvokeInst>(I);
-      Function *CalledFunction =
-          (CI == nullptr ? II->getCalledFunction() : CI->getCalledFunction());
+      CallSite CS(I);
+      Function *CalledFunction = CS.getCalledFunction();
       if (!CalledFunction || !CalledFunction->getSubprogram())
         continue;
       DebugLoc DLoc = I->getDebugLoc();
       uint64_t NumSamples = findCalleeFunctionSamples(*I)->getTotalSamples();
-      if ((CI && InlineFunction(CI, IFI)) || (II && InlineFunction(II, IFI))) {
+      if (InlineFunction(CS, IFI)) {
         LocalChanged = true;
         emitOptimizationRemark(Ctx, DEBUG_TYPE, F, DLoc,
                                Twine("inlined hot callee '") +




More information about the llvm-commits mailing list