[all-commits] [llvm/llvm-project] 40886f: [llvm-profgen] Extend llvm-profgen to generate vta...

Mingming Liu via All-commits all-commits at lists.llvm.org
Mon Sep 15 16:45:05 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 40886fbd2101f1277d343eb6bfedb6f10efde422
      https://github.com/llvm/llvm-project/commit/40886fbd2101f1277d343eb6bfedb6f10efde422
  Author: Mingming Liu <mingmingl at google.com>
  Date:   2025-09-15 (Mon, 15 Sep 2025)

  Changed paths:
    M llvm/include/llvm/ProfileData/SampleProf.h
    A llvm/test/tools/llvm-profgen/Inputs/css-pgo-perf.script
    A llvm/test/tools/llvm-profgen/Inputs/dap-perf-trace.txt
    A llvm/test/tools/llvm-profgen/Inputs/dap-pie.bin
    A llvm/test/tools/llvm-profgen/Inputs/dap.bin
    A llvm/test/tools/llvm-profgen/Inputs/lbr-perf-for-dap.script
    A llvm/test/tools/llvm-profgen/Inputs/pie-dap-perf.txt
    A llvm/test/tools/llvm-profgen/Inputs/pie-lbr-perf.script
    A llvm/test/tools/llvm-profgen/afdo-with-vtable-pie.test
    A llvm/test/tools/llvm-profgen/afdo-with-vtable.test
    M llvm/tools/llvm-profgen/PerfReader.cpp
    M llvm/tools/llvm-profgen/PerfReader.h
    M llvm/tools/llvm-profgen/ProfileGenerator.cpp
    M llvm/tools/llvm-profgen/ProfileGenerator.h
    M llvm/tools/llvm-profgen/ProfiledBinary.cpp
    M llvm/tools/llvm-profgen/ProfiledBinary.h
    M llvm/tools/llvm-profgen/llvm-profgen.cpp

  Log Message:
  -----------
  [llvm-profgen] Extend llvm-profgen to generate vtable profiles with data access events for non context-sensitive profiles using debug info (#148013)

An RFC is in
https://discourse.llvm.org/t/rfc-vtable-type-profiling-for-samplefdo/87283

This change extends to process perf data with Intel
[MEM_INST_RETIRED.ALL_LOADS](https://perfmon-events.intel.com/index.html?pltfrm=skylake_server.html&evnt=MEM_INST_RETIRED.ALL_LOADS)
samples and produce sample profiles with vtable information for non
context-sensitive SampleFDO profiles.

* For feature parity across different hardwares, future work could
incorporate support for AMD Instruction-Based Sampling (IBS) and Arm
Statistical Profiling Extension (SPE).

---------

Co-authored-by: Paschalis Mpeis <paschalis.mpeis at arm.com>



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