From: Rafael Espindola Date: Mon, 6 Apr 2015 14:51:01 +0000 (+0000) Subject: Don't pass -O3 to the linker in debug builds. X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=e104aca94c964f1ffcc718da441c8bdfc18280fc;p=oota-llvm.git 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 --- 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()