diff options
author | Alexander Shaposhnikov <shal1t712@gmail.com> | 2017-10-13 03:21:39 +0000 |
---|---|---|
committer | Alexander Shaposhnikov <shal1t712@gmail.com> | 2017-10-13 03:21:39 +0000 |
commit | 290556e7d3c9fbb74087dc447752b55dbd10ffeb (patch) | |
tree | a94ed94f30663258a41692305ce82c6caa269dd2 /utils | |
parent | 404915f6a478cc55d43a338a6a6fdec062642960 (diff) |
[clang] Enable clang build with LLVM_BUILD_INSTRUMENTED without setting LLVM_PROFTDATA
At the moment if LLVM_BUILD_INSTRUMENTED is set to True
one has to set LLVM_PROFTDATA even if it's not really used
(because of message(FATAL_ERROR ...)).
Building the instrumented version of Clang can be useful even if
one doesn't plan to build the target generate-profdata
(currently that target would only compile utils/perf-training/cxx/hello_world.cpp).
For example, one can run the instrumented version of Clang
via a separate build system against a different codebase,
collect/analyze the profiles and merge them by llvm-profdata later.
Differential revision: https://reviews.llvm.org/D38859
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@315665 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'utils')
-rw-r--r-- | utils/perf-training/CMakeLists.txt | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/utils/perf-training/CMakeLists.txt b/utils/perf-training/CMakeLists.txt index c046a1dac4..39f9a4ca3c 100644 --- a/utils/perf-training/CMakeLists.txt +++ b/utils/perf-training/CMakeLists.txt @@ -30,13 +30,13 @@ if(LLVM_BUILD_INSTRUMENTED) endif() if(NOT LLVM_PROFDATA) - message(FATAL_ERROR "Must set LLVM_PROFDATA to point to llvm-profdata to use for merging PGO data") + message(STATUS "To enable merging PGO data LLVM_PROFDATA has to point to llvm-profdata") + else() + add_custom_target(generate-profdata + COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/perf-helper.py merge ${LLVM_PROFDATA} ${CMAKE_CURRENT_BINARY_DIR}/clang.profdata ${CMAKE_CURRENT_BINARY_DIR} + COMMENT "Merging profdata" + DEPENDS generate-profraw) endif() - - add_custom_target(generate-profdata - COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/perf-helper.py merge ${LLVM_PROFDATA} ${CMAKE_CURRENT_BINARY_DIR}/clang.profdata ${CMAKE_CURRENT_BINARY_DIR} - COMMENT "Merging profdata" - DEPENDS generate-profraw) endif() find_program(DTRACE dtrace) |