From 405342d075da81d372f454193e1c3f22ffe1e734 Mon Sep 17 00:00:00 2001 From: Chris Bieneman Date: Tue, 13 Oct 2015 05:35:12 +0000 Subject: [PATCH] [CMake] LLVM_PROFDATA_FILE only works if you're using clang, so we should error out if it is specified when not using clang. Also updated the CMake docs. Based on post-commit review of r250108 from Sean Silvas. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@250150 91177308-0d34-0410-b5e6-96231b3b80d8 --- CMakeLists.txt | 6 +++++- docs/CMake.rst | 4 ++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 2a2291c7822..d420e64228a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -594,7 +594,11 @@ set(LLVM_PROFDATA_FILE "" CACHE FILEPATH "Profiling data file to use when compiling in order to improve runtime performance.") if(LLVM_PROFDATA_FILE AND EXISTS ${LLVM_PROFDATA_FILE}) - add_definitions("-fprofile-instr-use=${LLVM_PROFDATA_FILE}") + if ("${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang" ) + add_definitions("-fprofile-instr-use=${LLVM_PROFDATA_FILE}") + else() + message(FATAL_ERROR "LLVM_PROFDATA_FILE can only be specified when compiling with clang") + endif() endif() include(AddLLVM) diff --git a/docs/CMake.rst b/docs/CMake.rst index 49657ba2dd8..0810bed90d4 100644 --- a/docs/CMake.rst +++ b/docs/CMake.rst @@ -334,6 +334,10 @@ LLVM-specific variables **LLVM_USE_OPROFILE**:BOOL Enable building OProfile JIT support. Defaults to OFF. +**LLVM_PROFDATA_FILE**:PATH + Path to a profdata file to pass into clang's -fprofile-instr-use flag. This + can only be specified if you're building with clang. + **LLVM_USE_INTEL_JITEVENTS**:BOOL Enable building support for Intel JIT Events API. Defaults to OFF. -- 2.34.1