[all-commits] [llvm/llvm-project] ccb5b9: [CSSPGO] Allow the use of debug-info-for-profiling...

Hongtao Yu via All-commits all-commits at lists.llvm.org
Thu Aug 12 08:53:19 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: ccb5b9bbfb5cef1aa2982481894f30c8f81d5253
      https://github.com/llvm/llvm-project/commit/ccb5b9bbfb5cef1aa2982481894f30c8f81d5253
  Author: Hongtao Yu <hoy at fb.com>
  Date:   2021-08-12 (Thu, 12 Aug 2021)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/CodeGenCXX/fdebug-info-for-profiling.cpp
    M clang/test/Driver/pseudo-probe.c
    M llvm/include/llvm/Passes/PassBuilder.h
    A llvm/test/Transforms/SampleProfile/pseudo-probe-discriminator.ll
    M llvm/tools/opt/NewPMDriver.cpp

  Log Message:
  -----------
  [CSSPGO] Allow the use of debug-info-for-profiling and pseudo-probe-for-profiling together

Previoulsy debug-info-for-profiling and pseudo-probe-for-profiling are mutual exclusive because they compete the dwarf discrimnator for callsites on the IR. This changes allows to use the two switches together. The side effect is that callsite discriminators will be taken by pseudo probe, while discriminators for other instructions are still available for AutoFDO use. This is less than ideal, however, it still allows us a chance to smoothly transition from AutoFDO to CSSPGO, by collecting both profiles from a CSSPGO binary.

Reviewed By: wenlei, wmi

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




More information about the All-commits mailing list