diff options
Diffstat (limited to 'llvm/lib/Transforms/Instrumentation/CGProfile.cpp')
| -rw-r--r-- | llvm/lib/Transforms/Instrumentation/CGProfile.cpp | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/llvm/lib/Transforms/Instrumentation/CGProfile.cpp b/llvm/lib/Transforms/Instrumentation/CGProfile.cpp index c322d0abd6bc..651239bee91f 100644 --- a/llvm/lib/Transforms/Instrumentation/CGProfile.cpp +++ b/llvm/lib/Transforms/Instrumentation/CGProfile.cpp @@ -78,14 +78,14 @@ static bool runCGProfilePass(Module &M, FunctionAnalysisManager &FAM, if (!CB) continue; if (CB->isIndirectCall()) { - InstrProfValueData ValueData[8]; uint32_t ActualNumValueData; uint64_t TotalC; - if (!getValueProfDataFromInst(*CB, IPVK_IndirectCallTarget, 8, - ValueData, ActualNumValueData, TotalC)) + auto ValueData = getValueProfDataFromInst( + *CB, IPVK_IndirectCallTarget, 8, ActualNumValueData, TotalC); + if (!ValueData) continue; - for (const auto &VD : - ArrayRef<InstrProfValueData>(ValueData, ActualNumValueData)) { + for (const auto &VD : ArrayRef<InstrProfValueData>( + ValueData.get(), ActualNumValueData)) { UpdateCounts(TTI, &F, Symtab.getFunction(VD.Value), VD.Count); } continue; |
