[all-commits] [llvm/llvm-project] 6da924: [llvm-profgen] Refactor PerfReader to allow differ...

ictwanglei via All-commits all-commits at lists.llvm.org
Mon Aug 2 17:20:14 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 6da9241aabe12c07fb905e5b3d2e4e16ef7d4296
      https://github.com/llvm/llvm-project/commit/6da9241aabe12c07fb905e5b3d2e4e16ef7d4296
  Author: wlei <wlei at fb.com>
  Date:   2021-08-02 (Mon, 02 Aug 2021)

  Changed paths:
    M llvm/tools/llvm-profgen/PerfReader.cpp
    M llvm/tools/llvm-profgen/PerfReader.h
    M llvm/tools/llvm-profgen/ProfiledBinary.h
    M llvm/tools/llvm-profgen/llvm-profgen.cpp

  Log Message:
  -----------
  [llvm-profgen] Refactor PerfReader to allow different types of perf scripts

In order to support different types of perf scripts, this change tried to refactor `PerfReader` by adding the base class `PerfReaderBase` and current HybridPerfReader is derived from it for CS profile generation. Common functions like, passMM2PEvents, extract_lbrs, extract_callstack, etc. can be reused.

Next step is to add LBR only reader(for non-CS profile) and aggregated perf scripts reader(do a pre-aggregation of scripts).

Reviewed By: hoy, wenlei

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




More information about the All-commits mailing list