[PATCH] D156607: [Clang][CMake] Allow using passthrough BOLT in BOLT-PGO.cmake

Amir Ayupov via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Sat Jul 29 23:03:04 PDT 2023


Amir created this revision.
Amir added reviewers: bolt, phosek, beanz.
Herald added subscribers: wlei, ekilmer, wenlei.
Herald added a project: All.
Amir requested review of this revision.
Herald added a project: clang.
Herald added a subscriber: cfe-commits.

Factor out bolt project dependency from Clang-BOLT usage.
Allow using

- user-specified BOLT: `LLVM_BOLT` and `MERGE_FDATA` variables,
- BOLT from system path (with CMake's `find_program`),
- built from `bolt` project (the only previously supported way).

Customize BOLT-PGO.cmake cache file to build BOLT in first-stage build, and
passthrough and use it in the final clang-bolt invocation (on top of PGO binary).
This avoids building PGO'd BOLT (first instrumented and then optimized), cutting
the build time.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D156607

Files:
  clang/CMakeLists.txt
  clang/cmake/caches/BOLT-PGO-stage2.cmake
  clang/cmake/caches/BOLT-PGO.cmake
  clang/utils/perf-training/CMakeLists.txt

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D156607.545405.patch
Type: text/x-patch
Size: 6248 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20230730/da6adc58/attachment.bin>


More information about the cfe-commits mailing list