[PATCH] D54175: [PGO] context sensitive PGO

Rong Xu via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jan 23 10:13:33 PST 2019


xur updated this revision to Diff 183124.
xur marked 6 inline comments as done.
xur added a comment.

Integrated Teresa's review comments.

Also fixed a bug that can cause mismatch in new pass manager -- some optimization passes are under guard of PGOOptions::IRUse. LTOBackend sets PGOAction to NOAction for CSIRInstr (because regular profile is not passed down for CSIRInstr).  This leads to different IR for CSIRInstr and CSIRUse.

This patch sets the PGOAction to IRUSE for CSIRInstr.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D54175/new/

https://reviews.llvm.org/D54175

Files:
  CMakeLists.txt
  cmake/modules/HandleLLVMOptions.cmake
  include/llvm/Analysis/ProfileSummaryInfo.h
  include/llvm/IR/Module.h
  include/llvm/IR/ProfileSummary.h
  include/llvm/InitializePasses.h
  include/llvm/LTO/Config.h
  include/llvm/LinkAllPasses.h
  include/llvm/Passes/PassBuilder.h
  include/llvm/ProfileData/InstrProf.h
  include/llvm/ProfileData/InstrProfData.inc
  include/llvm/ProfileData/InstrProfReader.h
  include/llvm/ProfileData/InstrProfWriter.h
  include/llvm/Transforms/IPO/PassManagerBuilder.h
  include/llvm/Transforms/Instrumentation.h
  include/llvm/Transforms/Instrumentation/InstrProfiling.h
  include/llvm/Transforms/Instrumentation/PGOInstrumentation.h
  lib/Analysis/ProfileSummaryInfo.cpp
  lib/IR/Module.cpp
  lib/IR/ProfileSummary.cpp
  lib/LTO/LTOBackend.cpp
  lib/Passes/PassBuilder.cpp
  lib/ProfileData/InstrProf.cpp
  lib/ProfileData/InstrProfReader.cpp
  lib/ProfileData/InstrProfWriter.cpp
  lib/Transforms/IPO/PassManagerBuilder.cpp
  lib/Transforms/IPO/SampleProfile.cpp
  lib/Transforms/Instrumentation/InstrProfiling.cpp
  lib/Transforms/Instrumentation/PGOInstrumentation.cpp
  tools/gold/gold-plugin.cpp
  tools/llvm-profdata/llvm-profdata.cpp
  tools/opt/NewPMDriver.cpp
  tools/opt/NewPMDriver.h
  tools/opt/opt.cpp
  unittests/ProfileData/InstrProfTest.cpp
  unittests/ProfileData/SampleProfTest.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D54175.183124.patch
Type: text/x-patch
Size: 87642 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190123/91aa1cbf/attachment-0001.bin>


More information about the llvm-commits mailing list