[PATCH] D34895: Add sample PGO support to ThinLTO new pass manager.

Dehao Chen via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Jun 30 10:05:00 PDT 2017


danielcdh created this revision.
Herald added subscribers: inglorion, Prazek, mehdi_amini, sanjoy.

For SamplePGO + ThinLTO, because profile annotation is done twice at both PrepareForThinLTO pipeline and backend compiler, the following changes are needed at the PrepareForThinLTO phase to ensure the IR is not changed dramatically. Otherwise the profile annotation will be inaccurate in the backend compiler.

- disable hot-caller heuristic
- disable loop unrolling
- disable indirect call promotion

This will unblock the new PM testing for sample PGO (tools/clang/test/CodeGen/pgo-sample-thinlto-summary.c), which will be covered in another cfe patch.


https://reviews.llvm.org/D34895

Files:
  include/llvm/Passes/PassBuilder.h
  lib/Passes/PassBuilder.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D34895.104884.patch
Type: text/x-patch
Size: 6799 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170630/fe9cd56e/attachment.bin>


More information about the llvm-commits mailing list