[llvm] r277093 - Add LLVM_ENABLE_LLD option to use LLD as C/C++ linker.

Hans Wennborg via llvm-commits llvm-commits at lists.llvm.org
Tue Aug 2 10:54:53 PDT 2016


Eugene has asked that this be merged to 3.9. Saleem, what do you think?

Thanks,
Hans

On Thu, Jul 28, 2016 at 5:46 PM, Eugene Zelenko via llvm-commits
<llvm-commits at lists.llvm.org> wrote:
> Author: eugenezelenko
> Date: Thu Jul 28 19:46:13 2016
> New Revision: 277093
>
> URL: http://llvm.org/viewvc/llvm-project?rev=277093&view=rev
> Log:
> Add LLVM_ENABLE_LLD option to use LLD as C/C++ linker.
>
> Differential revision: https://reviews.llvm.org/D22896
>
> Modified:
>     llvm/trunk/CMakeLists.txt
>     llvm/trunk/cmake/modules/HandleLLVMOptions.cmake
>
> Modified: llvm/trunk/CMakeLists.txt
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/CMakeLists.txt?rev=277093&r1=277092&r2=277093&view=diff
> ==============================================================================
> --- llvm/trunk/CMakeLists.txt (original)
> +++ llvm/trunk/CMakeLists.txt Thu Jul 28 19:46:13 2016
> @@ -317,6 +317,7 @@ endif()
>  option(LLVM_ENABLE_CXX1Y "Compile with C++1y enabled." OFF)
>  option(LLVM_ENABLE_LIBCXX "Use libc++ if available." OFF)
>  option(LLVM_ENABLE_LIBCXXABI "Use libc++abi when using libc++." OFF)
> +option(LLVM_ENABLE_LLD "Use lld as C and C++ linker." OFF)
>  option(LLVM_ENABLE_PEDANTIC "Compile with pedantic enabled." ON)
>  option(LLVM_ENABLE_WERROR "Fail and stop if a warning is triggered." OFF)
>
>
> Modified: llvm/trunk/cmake/modules/HandleLLVMOptions.cmake
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/cmake/modules/HandleLLVMOptions.cmake?rev=277093&r1=277092&r2=277093&view=diff
> ==============================================================================
> --- llvm/trunk/cmake/modules/HandleLLVMOptions.cmake (original)
> +++ llvm/trunk/cmake/modules/HandleLLVMOptions.cmake Thu Jul 28 19:46:13 2016
> @@ -144,6 +144,12 @@ function(add_flag_or_print_warning flag
>    endif()
>  endfunction()
>
> +if(LLVM_ENABLE_LLD)
> +  check_cxx_compiler_flag("-fuse-ld=lld" CXX_SUPPORTS_LLD)
> +  append_if(CXX_SUPPORTS_LLD "-fuse-ld=lld"
> +    CMAKE_EXE_LINKER_FLAGS CMAKE_MODULE_LINKER_FLAGS CMAKE_SHARED_LINKER_FLAGS)
> +endif()
> +
>  if( LLVM_ENABLE_PIC )
>    if( XCODE )
>      # Xcode has -mdynamic-no-pic on by default, which overrides -fPIC. I don't


More information about the llvm-commits mailing list