aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Support/X86TargetParser.cpp
diff options
context:
space:
mode:
authorAmir Ayupov <aaupov@fb.com>2022-10-19 18:23:43 -0700
committerAmir Ayupov <amir.aupov@gmail.com>2022-10-19 18:24:05 -0700
commit076240fa062415b6470b79413559aff2bf5bf208 (patch)
tree8036c6a7d91314df13cce853335b1b303758898d /llvm/lib/Support/X86TargetParser.cpp
parent647ca2ee700b00e27218103b5fcfd2cb3956f6f1 (diff)
downloadllvm-076240fa062415b6470b79413559aff2bf5bf208.zip
llvm-076240fa062415b6470b79413559aff2bf5bf208.tar.gz
llvm-076240fa062415b6470b79413559aff2bf5bf208.tar.bz2
[CMake] Disable BOLT instrumentation of Clang on instrumented build
This enables multi-stage PGO build optimized by BOLT using BOLT.cmake cache. The issue is that `-DPGO_BUILD_CONFIGURATION` cache file is passed to both stage2-instrumented and stage2-optimized builds (for them to be identical), but in case of BOLT.cmake, it doesn't make sense to BOLT-instrument the instrumented binary (it's not going to be optimized). Hence turn off `CLANG_BOLT_INSTRUMENT` code if `LLVM_BUILD_INSTRUMENTED` is enabled. The final workflow that enables multi-stage InstrPGO+ThinLTO+BOLT Clang build: ``` cmake <llvm-project>/llvm -GNinja -DLLVM_ENABLE_LLD=ON \ -DBOOTSTRAP_LLVM_ENABLE_LLD=ON -DBOOTSTRAP_BOOTSTRAP_LLVM_ENABLE_LLD=ON \ -DPGO_INSTRUMENT_LTO=Thin -C llvm-project/clang/cmake/caches/BOLT-PGO.cmake ninja stage2-clang++-bolt ``` Reviewed By: rafauler Differential Revision: https://reviews.llvm.org/D136023
Diffstat (limited to 'llvm/lib/Support/X86TargetParser.cpp')
0 files changed, 0 insertions, 0 deletions