diff options
author | Rafael Espindola <rafael.espindola@gmail.com> | 2015-04-06 14:51:01 +0000 |
---|---|---|
committer | Rafael Espindola <rafael.espindola@gmail.com> | 2015-04-06 14:51:01 +0000 |
commit | e104aca94c964f1ffcc718da441c8bdfc18280fc (patch) | |
tree | 048aa84b063ca7ca3c8fee1b154ec56fbb5bdb39 /cmake | |
parent | 29072c8fab85f090d0482074c1d7bbb4565de8fd (diff) |
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@234160 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'cmake')
-rw-r--r-- | cmake/modules/AddLLVM.cmake | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/cmake/modules/AddLLVM.cmake b/cmake/modules/AddLLVM.cmake index 5d906bbc1be..af51f731cee 100644 --- a/cmake/modules/AddLLVM.cmake +++ b/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() |