From b74b4717a13bc4d55ead27ca834c2c2550385fb5 Mon Sep 17 00:00:00 2001 From: Manoj Gupta Date: Sat, 29 Feb 2020 07:52:14 -0800 Subject: compiler_wrapper: Stop disabling two warnings. Chrome OS code now is clean of following warnings: "-Wreorder-init-list" and "-return-stack-address" so stop disabling them. BUG=chromium:1057384 TEST=warnings tested by CL:1898670 Change-Id: I568cf93a9e836ba936ea976312e9a78b5c473157 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/2081707 Tested-by: Manoj Gupta Reviewed-by: George Burgess --- .../testdata/cros_nonhardened_golden/gcc_clang_syntax.json | 8 -------- 1 file changed, 8 deletions(-) (limited to 'compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json') diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json b/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json index c8db8869..3587b6bf 100644 --- a/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json +++ b/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json @@ -22,9 +22,7 @@ "-Wno-unknown-warning-option", "-Wno-section", "-static-libgcc", - "-Wno-reorder-init-list", "-Wno-final-dtor-non-final-class", - "-Wno-return-stack-address", "-Werror=poison-system-directories", "main.cc", "-Wno-implicit-int-float-conversion", @@ -85,9 +83,7 @@ "-Wno-unknown-warning-option", "-Wno-section", "-static-libgcc", - "-Wno-reorder-init-list", "-Wno-final-dtor-non-final-class", - "-Wno-return-stack-address", "-Werror=poison-system-directories", "main.cc", "-Wno-implicit-int-float-conversion", @@ -142,9 +138,7 @@ "-Wno-unknown-warning-option", "-Wno-section", "-static-libgcc", - "-Wno-reorder-init-list", "-Wno-final-dtor-non-final-class", - "-Wno-return-stack-address", "-Werror=poison-system-directories", "main.cc", "-Wno-implicit-int-float-conversion", @@ -187,9 +181,7 @@ "-Wno-unknown-warning-option", "-Wno-section", "-static-libgcc", - "-Wno-reorder-init-list", "-Wno-final-dtor-non-final-class", - "-Wno-return-stack-address", "-Werror=poison-system-directories", "main.cc", "-Wno-implicit-int-float-conversion", -- cgit v1.2.3 From 28979264d4c945fcd9a3f09b385a7b67f051419f Mon Sep 17 00:00:00 2001 From: Manoj Gupta Date: Fri, 13 Mar 2020 11:05:26 -0700 Subject: compiler_wrapper: Stop setting CCACHE_BASEDIR CCACHE_BASEDIR used to be set to sysroot so that ccache can reuse compilation results across different boards. This is not useful on builders and also less useful for board builds since we set closer to target CFLAGS now. It also breaks use of -fmacro-prefix-map option in clang/gcc. So rip it out and simplify the rest of code. BUG=chromium:983759 TEST=go test Change-Id: Ia99ca994c976ee1137c3d904a78f7e25931c70f6 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/2103170 Commit-Queue: Manoj Gupta Tested-by: Manoj Gupta Reviewed-by: George Burgess --- compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json | 2 -- 1 file changed, 2 deletions(-) (limited to 'compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json') diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json b/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json index 3587b6bf..76d81fa9 100644 --- a/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json +++ b/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json @@ -48,7 +48,6 @@ "-mno-movbe" ], "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", "CCACHE_DIR=/var/cache/distfiles/ccache", "CCACHE_UMASK=002" ] @@ -207,7 +206,6 @@ "-mno-movbe" ], "env_updates": [ - "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu", "CCACHE_DIR=/var/cache/distfiles/ccache", "CCACHE_UMASK=002" ] -- cgit v1.2.3 From dc996b9cd333b330ca79985a93f9a71995676a71 Mon Sep 17 00:00:00 2001 From: Jian Cai Date: Wed, 17 Jun 2020 15:27:24 -0700 Subject: compiler_wrapper: redirect clang crash dignoses Redirect all diagnoses of clang crashes to a dedicated directory using fcrash-diagnostics-dir so we can upload these files to the cloud. The flag was added to clangPostFlags to overwite redirection done on package level. BUG=chromium:1056904 TEST=None Change-Id: I78bfc77d7f3af8556b4308f2e71407d627627747 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/2251038 Reviewed-by: Manoj Gupta Commit-Queue: Jian Cai Tested-by: Jian Cai --- .../testdata/cros_nonhardened_golden/gcc_clang_syntax.json | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json') diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json b/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json index 76d81fa9..d21d2179 100644 --- a/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json +++ b/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json @@ -24,6 +24,7 @@ "-static-libgcc", "-Wno-final-dtor-non-final-class", "-Werror=poison-system-directories", + "-fcrash-diagnostics-dir=/tmp/clang_crash_diagnostics", "main.cc", "-Wno-implicit-int-float-conversion", "-B../../bin", @@ -84,6 +85,7 @@ "-static-libgcc", "-Wno-final-dtor-non-final-class", "-Werror=poison-system-directories", + "-fcrash-diagnostics-dir=/tmp/clang_crash_diagnostics", "main.cc", "-Wno-implicit-int-float-conversion", "-B../../bin", @@ -139,6 +141,7 @@ "-static-libgcc", "-Wno-final-dtor-non-final-class", "-Werror=poison-system-directories", + "-fcrash-diagnostics-dir=/tmp/clang_crash_diagnostics", "main.cc", "-Wno-implicit-int-float-conversion", "-B../../bin", @@ -182,6 +185,7 @@ "-static-libgcc", "-Wno-final-dtor-non-final-class", "-Werror=poison-system-directories", + "-fcrash-diagnostics-dir=/tmp/clang_crash_diagnostics", "main.cc", "-Wno-implicit-int-float-conversion", "-B../../bin", -- cgit v1.2.3 From d1a9a25c3b25e5eb3623c2ca1f5428673ca2ee37 Mon Sep 17 00:00:00 2001 From: Jian Cai Date: Wed, 29 Jul 2020 18:03:33 -0700 Subject: compiler_wrapper: add -fexperimental-new-pass-manager LLVM is currently build with DENABLE_EXPERIMENTAL_NEW_PASS_MANAGER=ON on Chrome OS. This is however not reflected in clang crash diagnoses. Adding -fexperimental-new-pass-manager to help with reproducibility on 4c. BUG=chromium:1111103 TEST=CQ tests. Change-Id: Ie01431dff397e982469e29c9132e21374354762d Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/2327414 Reviewed-by: George Burgess Reviewed-by: Manoj Gupta Tested-by: Jian Cai --- .../testdata/cros_nonhardened_golden/gcc_clang_syntax.json | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json') diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json b/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json index d21d2179..a3cabd88 100644 --- a/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json +++ b/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json @@ -25,6 +25,7 @@ "-Wno-final-dtor-non-final-class", "-Werror=poison-system-directories", "-fcrash-diagnostics-dir=/tmp/clang_crash_diagnostics", + "-fexperimental-new-pass-manager", "main.cc", "-Wno-implicit-int-float-conversion", "-B../../bin", @@ -86,6 +87,7 @@ "-Wno-final-dtor-non-final-class", "-Werror=poison-system-directories", "-fcrash-diagnostics-dir=/tmp/clang_crash_diagnostics", + "-fexperimental-new-pass-manager", "main.cc", "-Wno-implicit-int-float-conversion", "-B../../bin", @@ -142,6 +144,7 @@ "-Wno-final-dtor-non-final-class", "-Werror=poison-system-directories", "-fcrash-diagnostics-dir=/tmp/clang_crash_diagnostics", + "-fexperimental-new-pass-manager", "main.cc", "-Wno-implicit-int-float-conversion", "-B../../bin", @@ -186,6 +189,7 @@ "-Wno-final-dtor-non-final-class", "-Werror=poison-system-directories", "-fcrash-diagnostics-dir=/tmp/clang_crash_diagnostics", + "-fexperimental-new-pass-manager", "main.cc", "-Wno-implicit-int-float-conversion", "-B../../bin", -- cgit v1.2.3 From 1713d258a4eaa8a52a7216971bf4b40b36b27aee Mon Sep 17 00:00:00 2001 From: George Burgess IV Date: Fri, 7 Aug 2020 19:17:52 -0700 Subject: compiler_wrapper: use crashArtifactsDir to apply clang opts Since we now have crashArtifactsDir as a more abstract concept, it seems good to apply '-fcrash-diagnostics-dir=' based on that, rather than having it as an explicit clang flag. BUG=chromium:1113442 TEST=FIXME Change-Id: I147779d7cf8806b3bc712c2998446158e87ec967 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/2343975 Reviewed-by: Manoj Gupta Tested-by: George Burgess --- .../testdata/cros_nonhardened_golden/gcc_clang_syntax.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json') diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json b/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json index a3cabd88..ca16f412 100644 --- a/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json +++ b/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json @@ -24,8 +24,8 @@ "-static-libgcc", "-Wno-final-dtor-non-final-class", "-Werror=poison-system-directories", - "-fcrash-diagnostics-dir=/tmp/clang_crash_diagnostics", "-fexperimental-new-pass-manager", + "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "main.cc", "-Wno-implicit-int-float-conversion", "-B../../bin", @@ -86,8 +86,8 @@ "-static-libgcc", "-Wno-final-dtor-non-final-class", "-Werror=poison-system-directories", - "-fcrash-diagnostics-dir=/tmp/clang_crash_diagnostics", "-fexperimental-new-pass-manager", + "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "main.cc", "-Wno-implicit-int-float-conversion", "-B../../bin", @@ -143,8 +143,8 @@ "-static-libgcc", "-Wno-final-dtor-non-final-class", "-Werror=poison-system-directories", - "-fcrash-diagnostics-dir=/tmp/clang_crash_diagnostics", "-fexperimental-new-pass-manager", + "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "main.cc", "-Wno-implicit-int-float-conversion", "-B../../bin", @@ -188,8 +188,8 @@ "-static-libgcc", "-Wno-final-dtor-non-final-class", "-Werror=poison-system-directories", - "-fcrash-diagnostics-dir=/tmp/clang_crash_diagnostics", "-fexperimental-new-pass-manager", + "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "main.cc", "-Wno-implicit-int-float-conversion", "-B../../bin", -- cgit v1.2.3 From 243ce37bf481923dafd7cb30c860aa65744914f1 Mon Sep 17 00:00:00 2001 From: Jian Cai Date: Mon, 10 Aug 2020 18:35:12 -0700 Subject: compiler_wrapper: remove some flags from unsupport clang flags LLVM implemented some flags that used to not be supported. Remove these flags from unsupported flags in the wrapper. BUG=chromium:1112929 TEST=tested locally. Change-Id: If91df0d35ac3db926067d3e0c5e213f6c5e3f390 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/2346956 Reviewed-by: Manoj Gupta Tested-by: Jian Cai --- .../testdata/cros_nonhardened_golden/gcc_clang_syntax.json | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json') diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json b/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json index ca16f412..244e8fad 100644 --- a/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json +++ b/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json @@ -28,6 +28,7 @@ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "main.cc", "-Wno-implicit-int-float-conversion", + "-mno-movbe", "-B../../bin", "-target", "x86_64-cros-linux-gnu", @@ -90,6 +91,7 @@ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "main.cc", "-Wno-implicit-int-float-conversion", + "-mno-movbe", "-B../../bin", "-target", "x86_64-cros-linux-gnu", @@ -147,6 +149,7 @@ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "main.cc", "-Wno-implicit-int-float-conversion", + "-mno-movbe", "-B../../bin", "-target", "x86_64-cros-linux-gnu", @@ -192,6 +195,7 @@ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "main.cc", "-Wno-implicit-int-float-conversion", + "-mno-movbe", "-B../../bin", "-target", "x86_64-cros-linux-gnu", -- cgit v1.2.3 From 4a8085ed25adf0822fa1012d21b51b52a8f6db5c Mon Sep 17 00:00:00 2001 From: inglorion Date: Wed, 25 Nov 2020 17:18:50 -0800 Subject: compiler_wrapper: move llvm-next options to clang options The new Clang version has a number of new warnings which we disable. This CL makes those apply to llvm (current) as well as llvm-next. BUG=None TEST=go test Change-Id: I1f4929580953003d21676e7e72af4577592fb217 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/2561725 Reviewed-by: Manoj Gupta Tested-by: Manoj Gupta Commit-Queue: Manoj Gupta --- .../testdata/cros_nonhardened_golden/gcc_clang_syntax.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json') diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json b/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json index 244e8fad..9ea1c01d 100644 --- a/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json +++ b/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json @@ -25,9 +25,12 @@ "-Wno-final-dtor-non-final-class", "-Werror=poison-system-directories", "-fexperimental-new-pass-manager", + "-Wno-compound-token-split-by-macro", "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "main.cc", "-Wno-implicit-int-float-conversion", + "-Wno-compound-token-split-by-space", + "-Wno-string-concatenation", "-mno-movbe", "-B../../bin", "-target", @@ -88,9 +91,12 @@ "-Wno-final-dtor-non-final-class", "-Werror=poison-system-directories", "-fexperimental-new-pass-manager", + "-Wno-compound-token-split-by-macro", "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "main.cc", "-Wno-implicit-int-float-conversion", + "-Wno-compound-token-split-by-space", + "-Wno-string-concatenation", "-mno-movbe", "-B../../bin", "-target", @@ -146,9 +152,12 @@ "-Wno-final-dtor-non-final-class", "-Werror=poison-system-directories", "-fexperimental-new-pass-manager", + "-Wno-compound-token-split-by-macro", "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "main.cc", "-Wno-implicit-int-float-conversion", + "-Wno-compound-token-split-by-space", + "-Wno-string-concatenation", "-mno-movbe", "-B../../bin", "-target", @@ -192,9 +201,12 @@ "-Wno-final-dtor-non-final-class", "-Werror=poison-system-directories", "-fexperimental-new-pass-manager", + "-Wno-compound-token-split-by-macro", "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics", "main.cc", "-Wno-implicit-int-float-conversion", + "-Wno-compound-token-split-by-space", + "-Wno-string-concatenation", "-mno-movbe", "-B../../bin", "-target", -- cgit v1.2.3