[all-commits] [llvm/llvm-project] 02467f: [ctxprof] Option to move a whole tree to its own m...

Mircea Trofin via All-commits all-commits at lists.llvm.org
Wed Apr 2 18:16:10 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 02467f9e2100d451b52bc63abc9c94829d7b83f4
      https://github.com/llvm/llvm-project/commit/02467f9e2100d451b52bc63abc9c94829d7b83f4
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2025-04-02 (Wed, 02 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/IPO/FunctionImport.cpp
    A llvm/test/ThinLTO/X86/ctxprof-separate-module.ll

  Log Message:
  -----------
  [ctxprof] Option to move a whole tree to its own module (#133992)

Modules may contain a mix of functions that participate or don't participate in callgraphs covered by a contextual profile. We currently have been importing all the functions under a context root in the module defining that root, but if the other functions there are covered by flat profiles, the result is difficult to reason about.

This patch allows moving everything under a context root (and that root) in its own module. For now, we expect a module with a filename matching the GUID of the function be present in the set of modules known by the linker. This mechanism can be improved in a later patch.

Subsequent patches will handle implementing "move" instead of "import" semantics for the root function (because we want to make sure only one version of the root exists - so the optimizations we perform are actually the ones being observed at runtime).



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list