[llvm] [memprof] Dump call site matching information (PR #125130)
Teresa Johnson via llvm-commits
llvm-commits at lists.llvm.org
Thu Jan 30 18:32:33 PST 2025
================
@@ -1201,15 +1203,22 @@ readMemprof(Module &M, Function &F, IndexedInstrProfReader *MemProfReader,
// instruction's leaf location in the callsites map and not the allocation
// map.
assert(CallSitesIter != LocHashToCallSites.end());
- for (auto CallStackIdx : CallSitesIter->second) {
+ for (auto &[ProfileCallStack, Idx] : CallSitesIter->second) {
// If we found and thus matched all frames on the call, create and
// attach call stack metadata.
- if (stackFrameIncludesInlinedCallStack(CallStackIdx,
+ if (stackFrameIncludesInlinedCallStack(ProfileCallStack.drop_front(Idx),
InlinedCallStack)) {
NumOfMemProfMatchedCallSites++;
addCallsiteMetadata(I, InlinedCallStack, Ctx);
// Only need to find one with a matching call stack and add a single
// callsite metadata.
+
+ // Dump call site matching information upon request.
+ if (ClPrintMemProfMatchInfo) {
+ uint64_t FullStackId = computeFullStackId(ProfileCallStack);
+ errs() << "MemProf callsite " << FullStackId << " " << Idx << " "
----------------
teresajohnson wrote:
Maybe include a bit more info in the message about the latter 2 numbers being printed.
https://github.com/llvm/llvm-project/pull/125130
More information about the llvm-commits
mailing list