Commit ca7bcc0a authored by Nico Weber's avatar Nico Weber Committed by Commit Bot

Revert "win: Link with lld instead of MSVC's link.exe by default"

This reverts commit be8138a4.

Reason for revert: broke checkbins on 32-bit, https://crbug.com/833951

Original change's description:
> win: Link with lld instead of MSVC's link.exe by default
> 
> lld is LLVM's linker. It produces PE/COFF and PDB files just like
> link.exe, but it's significantly faster and it can also handle LLVM's
> internal representation, which will enable us to do link-time
> optimization and control-flow integraty checks with Clang.
> 
> While lld is much faster at linking, it doesn't support incremental
> links, meaning builds that only touch a few files and re-link a large
> executable may become slower.
> 
> This is the first attempt at switching everything over, with the
> purpose of gathering data and finding unknown unknowns. It's likely
> temporary until something breaks.
> 
> is_win_fastlink is implicitly ignored when using lld, as lld without
> fastlink is faster than link.exe with it.
> 
> Also switch the CrWinClangLLD bots on chromium.clang to use MSVC's
> link.exe to make sure that configuration keeps working.
> 
> Bug: 792131
> Change-Id: I0f115a78c33d69eadbd480f75c2a5d636e86483d
> Reviewed-on: https://chromium-review.googlesource.com/983632
> Commit-Queue: Nico Weber <thakis@chromium.org>
> Reviewed-by: Nico Weber <thakis@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#551367}

TBR=thakis@chromium.org,hans@chromium.org

Change-Id: Ia6060fe909656ce5903cf6906beb8b5e4ef538c7
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 792131
Reviewed-on: https://chromium-review.googlesource.com/1015141Reviewed-by: default avatarNico Weber <thakis@chromium.org>
Commit-Queue: Nico Weber <thakis@chromium.org>
Cr-Commit-Position: refs/heads/master@{#551384}
parent f108f025
...@@ -164,12 +164,12 @@ declare_args() { ...@@ -164,12 +164,12 @@ declare_args() {
# Linux or Fuchsia. # Linux or Fuchsia.
# TODO(pcc): Enable lld on more architectures on Linux. E.g. we probably need # TODO(pcc): Enable lld on more architectures on Linux. E.g. we probably need
# to fix some of crbug.com/742655 to enable it on ARM. # to fix some of crbug.com/742655 to enable it on ARM.
use_lld = use_lld = is_clang &&
is_clang && ((is_win && host_os != "win") || is_fuchsia ||
(is_win || is_fuchsia || (use_thin_lto && target_os != "chromeos") || (use_thin_lto && target_os != "chromeos") ||
(is_linux && current_cpu == "x64" && target_os != "chromeos") || (is_linux && current_cpu == "x64" && target_os != "chromeos") ||
(is_android && (current_cpu != "arm" || arm_version >= 7) && (is_android && (current_cpu != "arm" || arm_version >= 7) &&
current_cpu != "mipsel" && current_cpu != "mips64el")) current_cpu != "mipsel" && current_cpu != "mips64el"))
} }
declare_args() { declare_args() {
......
...@@ -114,10 +114,10 @@ ...@@ -114,10 +114,10 @@
'CrWinAsan(dll)': 'asan_clang_shared_v8_heap_x86_full_symbols_release', 'CrWinAsan(dll)': 'asan_clang_shared_v8_heap_x86_full_symbols_release',
'CrWinAsanCov': 'asan_clang_edge_fuzzer_static_v8_heap_x86_full_symbols_release', 'CrWinAsanCov': 'asan_clang_edge_fuzzer_static_v8_heap_x86_full_symbols_release',
'CrWinClangLLD': 'clang_tot_official_static_no_lld_x86', 'CrWinClangLLD': 'clang_tot_official_static_use_lld_x86',
'CrWinClangLLD64': 'clang_tot_shared_release_no_lld_dcheck', 'CrWinClangLLD64': 'clang_tot_shared_release_use_lld_dcheck',
'CrWinClngLLD64dbg': 'clang_tot_full_symbols_shared_debug_no_lld', 'CrWinClngLLD64dbg': 'clang_tot_full_symbols_shared_debug_use_lld',
'CrWinClngLLDdbg': 'clang_tot_full_symbols_shared_debug_no_lld_x86', 'CrWinClngLLDdbg': 'clang_tot_full_symbols_shared_debug_use_lld_x86',
'linux-win_cross-rel': 'clang_tot_win_release_cross', 'linux-win_cross-rel': 'clang_tot_win_release_cross',
'ToTAndroid': 'android_clang_tot_release_minimal_symbols', 'ToTAndroid': 'android_clang_tot_release_minimal_symbols',
'ToTAndroid64': 'android_clang_tot_release_arm64', 'ToTAndroid64': 'android_clang_tot_release_arm64',
...@@ -1118,24 +1118,24 @@ ...@@ -1118,24 +1118,24 @@
'clang_tot', 'shared', 'debug', 'clang_tot', 'shared', 'debug',
], ],
'clang_tot_full_symbols_shared_debug_no_lld': [ 'clang_tot_full_symbols_shared_debug_use_lld': [
'clang_tot', 'full_symbols', 'shared', 'debug', 'no_lld', 'clang_tot', 'full_symbols', 'shared', 'debug', 'use_lld',
], ],
'clang_tot_full_symbols_shared_debug_no_lld_x86': [ 'clang_tot_full_symbols_shared_debug_use_lld_x86': [
'clang_tot', 'full_symbols', 'shared', 'debug', 'no_lld', 'x86', 'clang_tot', 'full_symbols', 'shared', 'debug', 'use_lld', 'x86',
], ],
'clang_tot_shared_debug_x86': [ 'clang_tot_shared_debug_x86': [
'clang_tot', 'shared', 'debug', 'x86', 'clang_tot', 'shared', 'debug', 'x86',
], ],
'clang_tot_shared_release_no_lld_dcheck': [ 'clang_tot_shared_release_use_lld_dcheck': [
'clang_tot', 'minimal_symbols', 'shared', 'release', 'no_lld', 'dcheck_always_on', 'clang_tot', 'minimal_symbols', 'shared', 'release', 'use_lld', 'dcheck_always_on',
], ],
'clang_tot_official_static_no_lld_x86': [ 'clang_tot_official_static_use_lld_x86': [
'clang_tot', 'minimal_symbols', 'official', 'static', 'release', 'no_lld', 'x86', 'clang_tot', 'minimal_symbols', 'official', 'static', 'release', 'use_lld', 'x86',
], ],
'clang_tot_minimal_symbols_shared_release': [ 'clang_tot_minimal_symbols_shared_release': [
...@@ -2084,10 +2084,6 @@ ...@@ -2084,10 +2084,6 @@
'gn_args': 'use_lld=true', 'gn_args': 'use_lld=true',
}, },
'no_lld': {
'gn_args': 'use_lld=false',
},
'use_vaapi': { 'use_vaapi': {
'gn_args': 'use_vaapi=true', 'gn_args': 'use_vaapi=true',
}, },
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment