diff options
author | Luis Lozano <llozano@google.com> | 2021-06-07 00:26:26 -0700 |
---|---|---|
committer | Luis Lozano <llozano@chromium.org> | 2021-06-08 06:35:41 +0000 |
commit | 502fb1d988d399c887059ee9bf4b2e1820a59eaf (patch) | |
tree | 65002b8d5105c2c05b3cd9fbebe6f491c25c946e /compiler_wrapper | |
parent | 566da2201b56f9a091d0adb4b7c0b5b1196ae9c9 (diff) | |
download | toolchain-utils-502fb1d988d399c887059ee9bf4b2e1820a59eaf.tar.gz |
llvm-next: add nostart-stop-gc to the list of flags.
This functionality causes problems for several packages and it
seems to be only of importance for instrumented profiling which
we don't use.
BUG=b:187743526
TEST=CQ
Change-Id: I441b96223dc8e09eb113608b85cde918faf2753f
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/2943079
Reviewed-by: George Burgess <gbiv@chromium.org>
Tested-by: George Burgess <gbiv@chromium.org>
Tested-by: Luis Lozano <llozano@chromium.org>
Commit-Queue: Luis Lozano <llozano@chromium.org>
Auto-Submit: Luis Lozano <llozano@chromium.org>
Diffstat (limited to 'compiler_wrapper')
7 files changed, 36 insertions, 5 deletions
diff --git a/compiler_wrapper/config_test.go b/compiler_wrapper/config_test.go index 5492a1bb..329b140c 100644 --- a/compiler_wrapper/config_test.go +++ b/compiler_wrapper/config_test.go @@ -38,7 +38,6 @@ func TestRealConfigWithUseCCacheFlag(t *testing.T) { } } -/* TODO: Re-enable this, when llvm-next is different than llvm func TestRealConfigWithUseLLvmFlag(t *testing.T) { resetGlobals() defer resetGlobals() @@ -69,7 +68,6 @@ func TestRealConfigWithUseLLvmFlag(t *testing.T) { t.Fatalf("UseLlvmNext: Expected an error, got none") } } -*/ func TestRealConfigWithConfigNameFlag(t *testing.T) { resetGlobals() @@ -128,10 +126,9 @@ func isSysrootHardened(cfg *config) bool { return false } -// TODO: Update this with correct flag when we change llvm-next. func isUsingLLvmNext(cfg *config) bool { for _, arg := range cfg.clangFlags { - if arg == "-Wno-reorder-init-list" { + if arg == "-Wl,-z,nostart-stop-gc" { return true } } diff --git a/compiler_wrapper/cros_llvm_next_flags.go b/compiler_wrapper/cros_llvm_next_flags.go index 6cd7cd2a..0c8dc671 100644 --- a/compiler_wrapper/cros_llvm_next_flags.go +++ b/compiler_wrapper/cros_llvm_next_flags.go @@ -13,6 +13,8 @@ package main // tag is set. // TODO: Enable test in config_test.go, once we have new llvm-next flags. -var llvmNextFlags = []string{} +var llvmNextFlags = []string{ + "-Wl,-z,nostart-stop-gc", +} var llvmNextPostFlags = []string{} diff --git a/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/bisect.json b/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/bisect.json index 53cc5986..7b63df95 100644 --- a/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/bisect.json +++ b/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/bisect.json @@ -39,6 +39,7 @@ "-Werror=poison-system-directories", "-fexperimental-new-pass-manager", "-Wno-compound-token-split-by-macro", + "-Wl,-z,nostart-stop-gc", "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "-fcommon", "-fstack-protector-strong", @@ -107,6 +108,7 @@ "-Werror=poison-system-directories", "-fexperimental-new-pass-manager", "-Wno-compound-token-split-by-macro", + "-Wl,-z,nostart-stop-gc", "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "-fcommon", "-fstack-protector-strong", @@ -178,6 +180,7 @@ "-Werror=poison-system-directories", "-fexperimental-new-pass-manager", "-Wno-compound-token-split-by-macro", + "-Wl,-z,nostart-stop-gc", "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "-fcommon", "-fstack-protector-strong", diff --git a/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/clang_path.json b/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/clang_path.json index 48ab0dd9..97c1cbfb 100644 --- a/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/clang_path.json +++ b/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/clang_path.json @@ -29,6 +29,7 @@ "-Werror=poison-system-directories", "-fexperimental-new-pass-manager", "-Wno-compound-token-split-by-macro", + "-Wl,-z,nostart-stop-gc", "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "-fcommon", "-fstack-protector-strong", @@ -88,6 +89,7 @@ "-Werror=poison-system-directories", "-fexperimental-new-pass-manager", "-Wno-compound-token-split-by-macro", + "-Wl,-z,nostart-stop-gc", "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "-fcommon", "-fstack-protector-strong", @@ -147,6 +149,7 @@ "-Werror=poison-system-directories", "-fexperimental-new-pass-manager", "-Wno-compound-token-split-by-macro", + "-Wl,-z,nostart-stop-gc", "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "-fcommon", "-fstack-protector-strong", @@ -206,6 +209,7 @@ "-Werror=poison-system-directories", "-fexperimental-new-pass-manager", "-Wno-compound-token-split-by-macro", + "-Wl,-z,nostart-stop-gc", "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "-fcommon", "-fstack-protector-strong", @@ -272,6 +276,7 @@ "-Werror=poison-system-directories", "-fexperimental-new-pass-manager", "-Wno-compound-token-split-by-macro", + "-Wl,-z,nostart-stop-gc", "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "-fcommon", "-fstack-protector-strong", @@ -343,6 +348,7 @@ "-Werror=poison-system-directories", "-fexperimental-new-pass-manager", "-Wno-compound-token-split-by-macro", + "-Wl,-z,nostart-stop-gc", "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "-fcommon", "-fstack-protector-strong", @@ -409,6 +415,7 @@ "-Werror=poison-system-directories", "-fexperimental-new-pass-manager", "-Wno-compound-token-split-by-macro", + "-Wl,-z,nostart-stop-gc", "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "-fcommon", "-fstack-protector-strong", @@ -470,6 +477,7 @@ "-Werror=poison-system-directories", "-fexperimental-new-pass-manager", "-Wno-compound-token-split-by-macro", + "-Wl,-z,nostart-stop-gc", "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "-fcommon", "-fstack-protector-strong", @@ -526,6 +534,7 @@ "-Werror=poison-system-directories", "-fexperimental-new-pass-manager", "-Wno-compound-token-split-by-macro", + "-Wl,-z,nostart-stop-gc", "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "-fcommon", "-fstack-protector-strong", @@ -582,6 +591,7 @@ "-Werror=poison-system-directories", "-fexperimental-new-pass-manager", "-Wno-compound-token-split-by-macro", + "-Wl,-z,nostart-stop-gc", "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "-fcommon", "-fstack-protector-strong", @@ -638,6 +648,7 @@ "-Werror=poison-system-directories", "-fexperimental-new-pass-manager", "-Wno-compound-token-split-by-macro", + "-Wl,-z,nostart-stop-gc", "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "-fcommon", "-fstack-protector-strong", @@ -697,6 +708,7 @@ "-Werror=poison-system-directories", "-fexperimental-new-pass-manager", "-Wno-compound-token-split-by-macro", + "-Wl,-z,nostart-stop-gc", "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "-fcommon", "-fstack-protector-strong", diff --git a/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/clangtidy.json b/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/clangtidy.json index d2f22710..482d9f56 100644 --- a/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/clangtidy.json +++ b/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/clangtidy.json @@ -44,6 +44,7 @@ "-Werror=poison-system-directories", "-fexperimental-new-pass-manager", "-Wno-compound-token-split-by-macro", + "-Wl,-z,nostart-stop-gc", "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "-fcommon", "-fstack-protector-strong", @@ -81,6 +82,7 @@ "-Werror=poison-system-directories", "-fexperimental-new-pass-manager", "-Wno-compound-token-split-by-macro", + "-Wl,-z,nostart-stop-gc", "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "-fcommon", "-fstack-protector-strong", @@ -148,6 +150,7 @@ "-Werror=poison-system-directories", "-fexperimental-new-pass-manager", "-Wno-compound-token-split-by-macro", + "-Wl,-z,nostart-stop-gc", "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "-fcommon", "-fstack-protector-strong", @@ -186,6 +189,7 @@ "-Werror=poison-system-directories", "-fexperimental-new-pass-manager", "-Wno-compound-token-split-by-macro", + "-Wl,-z,nostart-stop-gc", "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "-fcommon", "-fstack-protector-strong", @@ -255,6 +259,7 @@ "-Werror=poison-system-directories", "-fexperimental-new-pass-manager", "-Wno-compound-token-split-by-macro", + "-Wl,-z,nostart-stop-gc", "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "-fcommon", "-fstack-protector-strong", @@ -296,6 +301,7 @@ "-Werror=poison-system-directories", "-fexperimental-new-pass-manager", "-Wno-compound-token-split-by-macro", + "-Wl,-z,nostart-stop-gc", "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "-fcommon", "-fstack-protector-strong", @@ -366,6 +372,7 @@ "-Werror=poison-system-directories", "-fexperimental-new-pass-manager", "-Wno-compound-token-split-by-macro", + "-Wl,-z,nostart-stop-gc", "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "-fcommon", "-fstack-protector-strong", @@ -404,6 +411,7 @@ "-Werror=poison-system-directories", "-fexperimental-new-pass-manager", "-Wno-compound-token-split-by-macro", + "-Wl,-z,nostart-stop-gc", "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "-fcommon", "-fstack-protector-strong", diff --git a/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/force_disable_werror.json b/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/force_disable_werror.json index 523d3df4..3c3411e8 100644 --- a/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/force_disable_werror.json +++ b/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/force_disable_werror.json @@ -32,6 +32,7 @@ "-Werror=poison-system-directories", "-fexperimental-new-pass-manager", "-Wno-compound-token-split-by-macro", + "-Wl,-z,nostart-stop-gc", "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "-fcommon", "-fstack-protector-strong", @@ -91,6 +92,7 @@ "-Werror=poison-system-directories", "-fexperimental-new-pass-manager", "-Wno-compound-token-split-by-macro", + "-Wl,-z,nostart-stop-gc", "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "-fcommon", "-fstack-protector-strong", @@ -136,6 +138,7 @@ "-Werror=poison-system-directories", "-fexperimental-new-pass-manager", "-Wno-compound-token-split-by-macro", + "-Wl,-z,nostart-stop-gc", "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "-fcommon", "-fstack-protector-strong", @@ -199,6 +202,7 @@ "-Werror=poison-system-directories", "-fexperimental-new-pass-manager", "-Wno-compound-token-split-by-macro", + "-Wl,-z,nostart-stop-gc", "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "-fcommon", "-fstack-protector-strong", @@ -244,6 +248,7 @@ "-Werror=poison-system-directories", "-fexperimental-new-pass-manager", "-Wno-compound-token-split-by-macro", + "-Wl,-z,nostart-stop-gc", "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "-fcommon", "-fstack-protector-strong", diff --git a/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/gcc_clang_syntax.json b/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/gcc_clang_syntax.json index f3d487ee..38a0fa59 100644 --- a/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/gcc_clang_syntax.json +++ b/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/gcc_clang_syntax.json @@ -29,6 +29,7 @@ "-Werror=poison-system-directories", "-fexperimental-new-pass-manager", "-Wno-compound-token-split-by-macro", + "-Wl,-z,nostart-stop-gc", "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "-fcommon", "-fstack-protector-strong", @@ -110,6 +111,7 @@ "-Werror=poison-system-directories", "-fexperimental-new-pass-manager", "-Wno-compound-token-split-by-macro", + "-Wl,-z,nostart-stop-gc", "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "-fcommon", "-fstack-protector-strong", @@ -186,6 +188,7 @@ "-Werror=poison-system-directories", "-fexperimental-new-pass-manager", "-Wno-compound-token-split-by-macro", + "-Wl,-z,nostart-stop-gc", "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "-fcommon", "-fstack-protector-strong", @@ -245,6 +248,7 @@ "-Werror=poison-system-directories", "-fexperimental-new-pass-manager", "-Wno-compound-token-split-by-macro", + "-Wl,-z,nostart-stop-gc", "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "-fcommon", "-fstack-protector-strong", |