diff --git a/clang/tools/driver/CMakeLists.txt b/clang/tools/driver/CMakeLists.txt index ad336fcc45b60..5d7962769014a 100644 --- a/clang/tools/driver/CMakeLists.txt +++ b/clang/tools/driver/CMakeLists.txt @@ -23,10 +23,14 @@ if(CLANG_PLUGIN_SUPPORT) set(support_plugins SUPPORT_PLUGINS) endif() +set(CLANG_BOLT_ALLOWLIST INSTRUMENT PERF LBR) set(CLANG_BOLT OFF CACHE STRING "Apply BOLT optimization to Clang. \ - May be specified as Instrument or Perf or LBR to use a particular profiling \ +May be specified as one of ${CLANG_BOLT_ALLOWLIST} to use a particular profiling \ mechanism.") string(TOUPPER "${CLANG_BOLT}" CLANG_BOLT) +if (CLANG_BOLT AND NOT CLANG_BOLT IN_LIST CLANG_BOLT_ALLOWLIST) + message(FATAL_ERROR "Specified CLANG_BOLT value '${CLANG_BOLT}' is not one of ${CLANG_BOLT_ALLOWLIST}.") +endif() if (CLANG_BOLT AND NOT LLVM_BUILD_INSTRUMENTED) set(CLANG_BOLT_DEPS clear-bolt-fdata llvm-bolt llvm-readobj)