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 | 0141e556f53cd534a6b454472c71c140a0b38ac2 (patch) | |
| tree | 8c5c505e2b7dcc9d78327b8b727591de87a515ad | |
| parent | ce2f5fdbb845f02d0f523d154466a35545e2f8fc (diff) | |
| download | bcm5719-llvm-0141e556f53cd534a6b454472c71c140a0b38ac2.tar.gz bcm5719-llvm-0141e556f53cd534a6b454472c71c140a0b38ac2.zip | |
[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
llvm-svn: 315665
| -rw-r--r-- | clang/utils/perf-training/CMakeLists.txt | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/clang/utils/perf-training/CMakeLists.txt b/clang/utils/perf-training/CMakeLists.txt index c046a1dac40..39f9a4ca3c1 100644 --- a/clang/utils/perf-training/CMakeLists.txt +++ b/clang/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) |

