[all-commits] [llvm/llvm-project] c061f7: [BOLT] Handle recursive calls as inter-branches in...

Amir Ayupov via All-commits all-commits at lists.llvm.org
Thu Jun 8 04:17:22 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: c061f755546e04b5804294111943b0f139a5ab60
      https://github.com/llvm/llvm-project/commit/c061f755546e04b5804294111943b0f139a5ab60
  Author: Amir Ayupov <aaupov at fb.com>
  Date:   2023-06-08 (Thu, 08 Jun 2023)

  Changed paths:
    M bolt/lib/Profile/DataAggregator.cpp
    M bolt/test/X86/Inputs/pre-aggregated.txt
    M bolt/test/X86/pre-aggregated-perf.test

  Log Message:
  -----------
  [BOLT] Handle recursive calls as inter-branches in DataAggregator

Align yaml and fdata profiles by applying the same treatment to recursive
calls (direct, indirect, tail). fdata profile increments entry count when
handling recursive calls. Make perf/pre-aggregated perf reader (DataAggregator)
do the same.

Test Plan:
In pre-aggregated-perf.test, add a dummy pre-aggregated branch entry between
an indirect call in `frame_dummy` function and its entry point.
Check that YAML profile gets incremented entry count for this function.

End-to-end test: https://github.com/rafaelauler/bolt-tests/pull/24

Reviewed By: #bolt, maksfb

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




More information about the All-commits mailing list