[llvm] r361837 - Revert r361826, as it still breaks LLDB.

Alexandre Ganea via llvm-commits llvm-commits at lists.llvm.org
Tue May 28 08:04:40 PDT 2019


Author: aganea
Date: Tue May 28 08:04:39 2019
New Revision: 361837

URL: http://llvm.org/viewvc/llvm-project?rev=361837&view=rev
Log:
Revert r361826, as it still breaks LLDB.

Modified:
    llvm/trunk/CMakeLists.txt
    llvm/trunk/cmake/modules/ChooseMSVCCRT.cmake
    llvm/trunk/cmake/modules/HandleLLVMOptions.cmake

Modified: llvm/trunk/CMakeLists.txt
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/CMakeLists.txt?rev=361837&r1=361836&r2=361837&view=diff
==============================================================================
--- llvm/trunk/CMakeLists.txt (original)
+++ llvm/trunk/CMakeLists.txt Tue May 28 08:04:39 2019
@@ -435,10 +435,6 @@ option(LLVM_ENABLE_LLD "Use lld as C and
 option(LLVM_ENABLE_PEDANTIC "Compile with pedantic enabled." ON)
 option(LLVM_ENABLE_WERROR "Fail and stop if a warning is triggered." OFF)
 
-if (MSVC)
-   option(LLVM_ENABLE_INCREMENTAL_LINK "Link incrementally. Enabling it might produce slower executables." OFF)
-endif()
-
 option(LLVM_ENABLE_DUMP "Enable dump functions even when assertions are disabled" OFF)
 
 if( NOT uppercase_CMAKE_BUILD_TYPE STREQUAL "DEBUG" )

Modified: llvm/trunk/cmake/modules/ChooseMSVCCRT.cmake
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/cmake/modules/ChooseMSVCCRT.cmake?rev=361837&r1=361836&r2=361837&view=diff
==============================================================================
--- llvm/trunk/cmake/modules/ChooseMSVCCRT.cmake (original)
+++ llvm/trunk/cmake/modules/ChooseMSVCCRT.cmake Tue May 28 08:04:39 2019
@@ -50,17 +50,6 @@ macro(set_flag_in_var flagsvar regex fla
   set(${flagsvar} "${${flagsvar}}" CACHE STRING "${flagsvar_docs}" FORCE)
 endmacro(set_flag_in_var)
 
-macro(disable_MT_if_LLDB build message)
-  if (LLVM_TOOL_LLDB_BUILD)
-    if ((NOT ${build} STREQUAL "DEBUG") AND (LLVM_USE_CRT_${build} STREQUAL "MT"))
-      if (LLVM_TOOL_CLANG_BUILD OR LLVM_TOOL_LLD_BUILD)
-        set(performance " This might impact runtime performance for Clang or LLD. Preferably build them separately.")
-      endif()
-      message(WARNING "${message}.${performance}")
-      set(LLVM_USE_CRT_${build} "MD")
-    endif()
-  endif()
-endmacro(disable_MT_if_LLDB)
 
 macro(choose_msvc_crt MSVC_CRT)
   if(LLVM_USE_CRT)
@@ -77,26 +66,13 @@ variables (LLVM_USE_CRT_DEBUG, etc) inst
       get_current_crt(LLVM_USE_CRT_${build}
         MSVC_CRT_REGEX
         CMAKE_CXX_FLAGS_${build})
-
-      # Make /MT the default in Release builds to make them faster
-      # and avoid the DLL function thunking.
-      if ((${build} STREQUAL "MINSIZEREL") OR
-          (${build} STREQUAL "RELEASE") OR
-          (${build} STREQUAL "RELWITHDEBINFO"))
-          set(LLVM_USE_CRT_${build} "MT")
-      endif()
-
-      disable_MT_if_LLDB(${build} "Using /MD as required by LLDB")
-
       set(LLVM_USE_CRT_${build}
         "${LLVM_USE_CRT_${build}}"
         CACHE STRING "Specify VC++ CRT to use for ${build_type} configurations."
         FORCE)
       set_property(CACHE LLVM_USE_CRT_${build}
         PROPERTY STRINGS ;${${MSVC_CRT}})
-    else()
-      disable_MT_if_LLDB(${build} "Disabling /MT as required by LLDB")
-    endif()
+    endif(NOT LLVM_USE_CRT_${build})
   endforeach(build_type)
 
   foreach(build_type ${CMAKE_CONFIGURATION_TYPES} ${CMAKE_BUILD_TYPE})

Modified: llvm/trunk/cmake/modules/HandleLLVMOptions.cmake
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/cmake/modules/HandleLLVMOptions.cmake?rev=361837&r1=361836&r2=361837&view=diff
==============================================================================
--- llvm/trunk/cmake/modules/HandleLLVMOptions.cmake (original)
+++ llvm/trunk/cmake/modules/HandleLLVMOptions.cmake Tue May 28 08:04:39 2019
@@ -418,14 +418,6 @@ if( MSVC )
   # "Enforce type conversion rules".
   append("/Zc:rvalueCast" CMAKE_CXX_FLAGS)
 
-  if (CMAKE_CXX_COMPILER_ID MATCHES "MSVC" AND NOT LLVM_ENABLE_INCREMENTAL_LINK)
-    foreach(CONFIG RELEASE RELWITHDEBINFO MINSIZEREL)
-      foreach(FLAG EXE MODULE SHARED STATIC)
-        string(REGEX REPLACE "[-/](INCREMENTAL:YES|INCREMENTAL:NO|INCREMENTAL)" "/INCREMENTAL:NO" CMAKE_${FLAG}_LINKER_FLAGS_${CONFIG} "${CMAKE_${FLAG}_LINKER_FLAGS_${CONFIG}}")
-      endforeach()
-    endforeach()
-  endif()
-
   if (CMAKE_CXX_COMPILER_ID MATCHES "Clang" AND NOT LLVM_ENABLE_LTO)
     # clang-cl and cl by default produce non-deterministic binaries because
     # link.exe /incremental requires a timestamp in the .obj file.  clang-cl




More information about the llvm-commits mailing list