[PATCH] D54175: [PGO] context sensitive PGO

Rong Xu via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Nov 29 12:08:49 PST 2018


xur updated this revision to Diff 175921.
xur added a comment.

This new version integrated the review comments from David and Vsk. Noticeable changes are:
(1)  Combined the following 3 field in PGOOptions struct

  bool RunProfileGen;
  bool RunCSProfileGen;
  bool RunCSProfileUse;

into an enum. There three are mutually exclusive.

(2) Not use default arguments for a set of functions.

(3) Don't bump up index profile version

(4) CS variant flag is set in raw profile and use that to tell if the profile has CS counters.

(5) Better handle in profile text format.

(7) Revert ProfileSummary recomputation as it is not needed.

(8) Fix a bug in the change to instrprofiling promotion.

I will also update
https://reviews.llvm.org/D54177
and
https://reviews.llvm.org/D54176


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

https://reviews.llvm.org/D54175

Files:
  include/llvm/Analysis/ProfileSummaryInfo.h
  include/llvm/IR/Module.h
  include/llvm/IR/ProfileSummary.h
  include/llvm/LTO/Config.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/PGOInstrumentation.h
  lib/Analysis/ProfileSummaryInfo.cpp
  lib/IR/Module.cpp
  lib/IR/ProfileSummary.cpp
  lib/LTO/LTOBackend.cpp
  lib/Passes/PassBuilder.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
  unittests/ProfileData/InstrProfTest.cpp
  unittests/ProfileData/SampleProfTest.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D54175.175921.patch
Type: text/x-patch
Size: 57124 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20181129/33d81492/attachment.bin>


More information about the llvm-commits mailing list