summaryrefslogtreecommitdiffstats
path: root/llvm/cmake/modules/AddLLVM.cmake
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2015-04-06 14:51:01 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2015-04-06 14:51:01 +0000
commit1c7fc3e3aee6f1f71065ce516a85bdeed71d5565 (patch)
tree900ce803a29b3da418cd1f256d0ddb8087c617ec /llvm/cmake/modules/AddLLVM.cmake
parent9c5701ffcff34b320da4bfef7beccda869bdfd58 (diff)
downloadbcm5719-llvm-1c7fc3e3aee6f1f71065ce516a85bdeed71d5565.tar.gz
bcm5719-llvm-1c7fc3e3aee6f1f71065ce516a85bdeed71d5565.zip
Don't pass -O3 to the linker in debug builds.
This takes linking clang in a debug build with gold form 19.518925697 to 16.406388685 seconds. llvm-svn: 234160
Diffstat (limited to 'llvm/cmake/modules/AddLLVM.cmake')
-rw-r--r--llvm/cmake/modules/AddLLVM.cmake6
1 files changed, 4 insertions, 2 deletions
diff --git a/llvm/cmake/modules/AddLLVM.cmake b/llvm/cmake/modules/AddLLVM.cmake
index 5d906bbc1be..af51f731cee 100644
--- a/llvm/cmake/modules/AddLLVM.cmake
+++ b/llvm/cmake/modules/AddLLVM.cmake
@@ -159,8 +159,10 @@ endif()
function(add_link_opts target_name)
# Pass -O3 to the linker. This enabled different optimizations on different
- # linkers.
- if(NOT (${CMAKE_SYSTEM_NAME} MATCHES "Darwin" OR WIN32))
+ # linkers. Don't do it in debug builds since it slows down the linker
+ # in a context where the optimizations are not important.
+ if(NOT (${CMAKE_SYSTEM_NAME} MATCHES "Darwin" OR WIN32) AND
+ NOT uppercase_CMAKE_BUILD_TYPE STREQUAL "DEBUG")
set_property(TARGET ${target_name} APPEND_STRING PROPERTY
LINK_FLAGS " -Wl,-O3")
endif()
OpenPOWER on IntegriCloud