[all-commits] [llvm/llvm-project] 43417d: [MemProf] Update metadata during inlining

Teresa Johnson via All-commits all-commits at lists.llvm.org
Fri Sep 30 19:21:40 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 43417d815937e7d241dd536267a57f0cdcd25c09
      https://github.com/llvm/llvm-project/commit/43417d815937e7d241dd536267a57f0cdcd25c09
  Author: Teresa Johnson <tejohnson at google.com>
  Date:   2022-09-30 (Fri, 30 Sep 2022)

  Changed paths:
    M llvm/include/llvm/Transforms/Utils/Cloning.h
    M llvm/lib/Transforms/Utils/CloneFunction.cpp
    M llvm/lib/Transforms/Utils/InlineFunction.cpp
    A llvm/test/Transforms/Inline/memprof_inline.ll
    A llvm/test/Transforms/Inline/memprof_inline2.ll

  Log Message:
  -----------
  [MemProf] Update metadata during inlining

Update both memprof and callsite metadata to reflect inlined functions.

For callsite metadata this is simply a concatenation of each cloned
call's call stack with that of the inlined callsite's.

For memprof metadata, each profiled memory info block (MIB) is either
moved to the cloned allocation call or left on the original allocation
call depending on whether its context matches the newly refined call
stack context on the cloned call. We also reapply context trimming
optimizations based on the refined set of contexts on each of the calls
(cloned and original).

Depends on D128142.

Reviewed By: snehasish

Differential Revision: https://reviews.llvm.org/D128143




More information about the All-commits mailing list