[PGO] Allow overriding -vp-counters-per-site
authorRaul Tambre <raul@tambre.ee>
Tue, 15 Dec 2020 06:41:22 +0000 (08:41 +0200)
committerRaul Tambre <raul@tambre.ee>
Tue, 15 Dec 2020 17:03:27 +0000 (19:03 +0200)
In some build configurations more than 1.5 might be required.
Paramaterize so it can be changed by the user.

Reviewed By: yamauchi

Differential Revision: https://reviews.llvm.org/D93281

llvm/cmake/modules/HandleLLVMOptions.cmake

index f313492..5d4d692 100644 (file)
@@ -904,7 +904,8 @@ option(LLVM_ENABLE_IR_PGO "Build LLVM and tools with IR PGO instrumentation (dep
 mark_as_advanced(LLVM_ENABLE_IR_PGO)
 
 set(LLVM_BUILD_INSTRUMENTED OFF CACHE STRING "Build LLVM and tools with PGO instrumentation. May be specified as IR or Frontend")
-mark_as_advanced(LLVM_BUILD_INSTRUMENTED)
+set(LLVM_VP_COUNTERS_PER_SITE "1.5" CACHE STRING "Value profile counters to use per site for IR PGO with Clang")
+mark_as_advanced(LLVM_BUILD_INSTRUMENTED LLVM_VP_COUNTERS_PER_SITE)
 string(TOUPPER "${LLVM_BUILD_INSTRUMENTED}" uppercase_LLVM_BUILD_INSTRUMENTED)
 
 if (LLVM_BUILD_INSTRUMENTED)
@@ -922,7 +923,7 @@ if (LLVM_BUILD_INSTRUMENTED)
     if (CMAKE_CXX_COMPILER_ID MATCHES "Clang" AND
         CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 11 AND
         LLVM_LINK_LLVM_DYLIB)
-      append("-Xclang -mllvm -Xclang -vp-counters-per-site=1.5"
+      append("-Xclang -mllvm -Xclang -vp-counters-per-site=${LLVM_VP_COUNTERS_PER_SITE}"
         CMAKE_CXX_FLAGS
         CMAKE_C_FLAGS)
     endif()