aboutsummaryrefslogtreecommitdiff
path: root/compiler_wrapper
diff options
context:
space:
mode:
authorandroid-build-team Robot <android-build-team-robot@google.com>2021-06-19 12:04:54 +0000
committerandroid-build-team Robot <android-build-team-robot@google.com>2021-06-19 12:04:54 +0000
commit4ac7ca7c4f6d13380afa6b0d52313f0f18765038 (patch)
tree73936aba47fe1dc71e9cc05af9747036e935608c /compiler_wrapper
parentb75f321fc8978b92ce3db6886ccb966768f0c7a8 (diff)
parent4e4201457e5f51a132101c611c79ccff9f713c8b (diff)
downloadtoolchain-utils-4ac7ca7c4f6d13380afa6b0d52313f0f18765038.tar.gz
Change-Id: I2fe70a8ca191c683886391da7cc959d8659fac4c
Diffstat (limited to 'compiler_wrapper')
-rw-r--r--compiler_wrapper/README.md53
l---------compiler_wrapper/android_llvm_next_flags.go1
-rw-r--r--compiler_wrapper/bisect_flag.go7
-rw-r--r--compiler_wrapper/bisect_flag_test.go4
-rwxr-xr-xcompiler_wrapper/build.py33
-rw-r--r--compiler_wrapper/ccache_flag.go22
-rw-r--r--compiler_wrapper/ccache_flag_test.go11
-rw-r--r--compiler_wrapper/clang_flags.go10
-rw-r--r--compiler_wrapper/clang_flags_test.go8
-rw-r--r--compiler_wrapper/clang_syntax_flag.go14
-rw-r--r--compiler_wrapper/clang_tidy_flag.go225
-rw-r--r--compiler_wrapper/clang_tidy_flag_test.go170
-rw-r--r--compiler_wrapper/compile_with_fallback.go10
-rw-r--r--compiler_wrapper/compile_with_fallback_test.go13
-rw-r--r--compiler_wrapper/compiler_wrapper.go163
-rw-r--r--compiler_wrapper/compiler_wrapper_test.go50
-rw-r--r--compiler_wrapper/config.go77
-rw-r--r--compiler_wrapper/cros_llvm_next_flags.go18
-rw-r--r--compiler_wrapper/disable_werror_flag.go209
-rw-r--r--compiler_wrapper/disable_werror_flag_test.go199
-rw-r--r--compiler_wrapper/env.go26
-rw-r--r--compiler_wrapper/env_test.go74
-rw-r--r--compiler_wrapper/gcc_flags.go1
-rw-r--r--compiler_wrapper/gcc_flags_test.go1
-rwxr-xr-xcompiler_wrapper/install_compiler_wrapper.sh (renamed from compiler_wrapper/update_compiler_wrapper.sh)19
-rw-r--r--compiler_wrapper/libc_exec.go22
-rw-r--r--compiler_wrapper/rusage_flag.go52
-rw-r--r--compiler_wrapper/sysroot_flag.go3
-rw-r--r--compiler_wrapper/testdata/android_golden/bisect.json12
-rw-r--r--compiler_wrapper/testdata/cros_clang_host_golden/bisect.json45
-rw-r--r--compiler_wrapper/testdata/cros_clang_host_golden/clang_ftrapv_maincc_target_specific.json99
-rw-r--r--compiler_wrapper/testdata/cros_clang_host_golden/clang_host_wrapper.json11
-rw-r--r--compiler_wrapper/testdata/cros_clang_host_golden/clang_maincc_target_specific.json99
-rw-r--r--compiler_wrapper/testdata/cros_clang_host_golden/clang_path.json132
-rw-r--r--compiler_wrapper/testdata/cros_clang_host_golden/clang_sanitizer_args.json88
-rw-r--r--compiler_wrapper/testdata/cros_clang_host_golden/clang_specific_args.json85
-rw-r--r--compiler_wrapper/testdata/cros_clang_host_golden/clangtidy.json96
-rw-r--r--compiler_wrapper/testdata/cros_clang_host_golden/force_disable_werror.json57
-rw-r--r--compiler_wrapper/testdata/cros_hardened_golden/bisect.json45
-rw-r--r--compiler_wrapper/testdata/cros_hardened_golden/clang_ftrapv_maincc_target_specific.json93
-rw-r--r--compiler_wrapper/testdata/cros_hardened_golden/clang_maincc_target_specific.json93
-rw-r--r--compiler_wrapper/testdata/cros_hardened_golden/clang_path.json131
-rw-r--r--compiler_wrapper/testdata/cros_hardened_golden/clang_sanitizer_args.json88
-rw-r--r--compiler_wrapper/testdata/cros_hardened_golden/clang_specific_args.json85
-rw-r--r--compiler_wrapper/testdata/cros_hardened_golden/clang_sysroot_wrapper_common.json64
-rw-r--r--compiler_wrapper/testdata/cros_hardened_golden/clangtidy.json88
-rw-r--r--compiler_wrapper/testdata/cros_hardened_golden/force_disable_werror.json61
-rw-r--r--compiler_wrapper/testdata/cros_hardened_golden/gcc_clang_syntax.json42
-rw-r--r--compiler_wrapper/testdata/cros_hardened_golden/gcc_maincc_target_specific.json9
-rw-r--r--compiler_wrapper/testdata/cros_hardened_golden/gcc_path.json6
-rw-r--r--compiler_wrapper/testdata/cros_hardened_golden/gcc_sanitizer_args.json8
-rw-r--r--compiler_wrapper/testdata/cros_hardened_golden/gcc_specific_args.json3
-rw-r--r--compiler_wrapper/testdata/cros_hardened_golden/gcc_sysroot_wrapper_common.json5
-rw-r--r--compiler_wrapper/testdata/cros_hardened_llvmnext_golden/bisect.json45
-rw-r--r--compiler_wrapper/testdata/cros_hardened_llvmnext_golden/clang_path.json131
-rw-r--r--compiler_wrapper/testdata/cros_hardened_llvmnext_golden/clangtidy.json88
-rw-r--r--compiler_wrapper/testdata/cros_hardened_llvmnext_golden/force_disable_werror.json61
-rw-r--r--compiler_wrapper/testdata/cros_hardened_llvmnext_golden/gcc_clang_syntax.json42
-rw-r--r--compiler_wrapper/testdata/cros_hardened_llvmnext_golden/gcc_path.json6
-rw-r--r--compiler_wrapper/testdata/cros_hardened_noccache_golden/bisect.json42
-rw-r--r--compiler_wrapper/testdata/cros_hardened_noccache_golden/clang_path.json120
-rw-r--r--compiler_wrapper/testdata/cros_hardened_noccache_golden/clangtidy.json88
-rw-r--r--compiler_wrapper/testdata/cros_hardened_noccache_golden/force_disable_werror.json56
-rw-r--r--compiler_wrapper/testdata/cros_hardened_noccache_golden/gcc_clang_syntax.json40
-rw-r--r--compiler_wrapper/testdata/cros_nonhardened_golden/bisect.json39
-rw-r--r--compiler_wrapper/testdata/cros_nonhardened_golden/clang_ftrapv_maincc_target_specific.json75
-rw-r--r--compiler_wrapper/testdata/cros_nonhardened_golden/clang_maincc_target_specific.json75
-rw-r--r--compiler_wrapper/testdata/cros_nonhardened_golden/clang_path.json107
-rw-r--r--compiler_wrapper/testdata/cros_nonhardened_golden/clang_sanitizer_args.json72
-rw-r--r--compiler_wrapper/testdata/cros_nonhardened_golden/clang_specific_args.json71
-rw-r--r--compiler_wrapper/testdata/cros_nonhardened_golden/clang_sysroot_wrapper_common.json52
-rw-r--r--compiler_wrapper/testdata/cros_nonhardened_golden/clangtidy.json72
-rw-r--r--compiler_wrapper/testdata/cros_nonhardened_golden/force_disable_werror.json51
-rw-r--r--compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json34
-rw-r--r--compiler_wrapper/testdata/cros_nonhardened_golden/gcc_maincc_target_specific.json9
-rw-r--r--compiler_wrapper/testdata/cros_nonhardened_golden/gcc_path.json6
-rw-r--r--compiler_wrapper/testdata/cros_nonhardened_golden/gcc_sanitizer_args.json8
-rw-r--r--compiler_wrapper/testdata/cros_nonhardened_golden/gcc_specific_args.json3
-rw-r--r--compiler_wrapper/testdata/cros_nonhardened_golden/gcc_sysroot_wrapper_common.json5
-rw-r--r--compiler_wrapper/testutil_test.go23
80 files changed, 3130 insertions, 1331 deletions
diff --git a/compiler_wrapper/README.md b/compiler_wrapper/README.md
index 794e1635..e55bb669 100644
--- a/compiler_wrapper/README.md
+++ b/compiler_wrapper/README.md
@@ -12,16 +12,63 @@ package, including the build script, and then
build from there without a dependency on toolchain-utils
itself.
-## Update Chrome OS
+## Testing Inside the Chroot
-Copy over sources and `build.py` to Chrome OS:
+To test updates to the wrapper locally:
+
+Run `install_compiler_wrapper.sh` to install the new wrapper in the chroot:
+```
+(chroot) ~/trunk/src/third_party/toolchain-utils/compiler_wrapper/install_compiler_wrapper.sh
+```
+
+Then perform the tests, e.g. build with the new compiler.
+
+
+## Updating the Wrapper for Chrome OS
+
+To update the wrapper for everyone, the new wrapper configuration must be copied
+into chromiumos-overlay, and new revisions of the gcc and llvm ebuilds must be
+created.
+
+Copy over sources and `build.py` to chromiumos-overlay:
```
(chroot) /mnt/host/source/src/third_party/chromiumos-overlay/sys-devel/llvm/files/update_compiler_wrapper.sh
```
+Rename chromiumos-overlay/sys-devel/llvm/llvm-${VERSION}.ebuild to the next
+revision number. For example, if the current version is
+11.0_pre394483_p20200618-r2:
+```
+(chroot) cd ~/trunk/src/third_party/chromiumos-overlay
+(chroot) git mv llvm-11.0_pre394483_p20200618-r2.ebuild llvm-11.0_pre394483_p20200618-r3.ebuild
+```
+
+Rename chromiumos-overlay/sys-devel/gcc/gcc-${VERSION}.ebuild to the next
+revision number. For example, if the current version is 4.9.2-r254:
+```
+(chroot) cd ~/trunk/src/third_party/chromiumos-overlay
+(chroot) git mv sys-devel/gcc/gcc-4.9.2-r254.ebuild sys-devel/gcc/gcc-4.9.2-r255.ebuild
+```
+
+Edit the new ebuild file and change the number at the end to match the new revision:
+```
+-# If you need to force a cros_workon uprev, change this number (you can use next
+-# uprev): 254
++# If you need to force a cros_workon uprev, change this number (you can use next
++# uprev): 255
+```
+
+Commit those changes together with the changes made by
+`update_compiler_wrapper.sh`.
+
+The changes can then be reviewed and submitted through the normal process.
+
+
+## Paths
+
`build.py` is called by these ebuilds:
-- third_party/chromiumos-overlay/sys-devel/llvm/llvm-9.0_pre361749_p20190714.ebuild
+- third_party/chromiumos-overlay/sys-devel/llvm/llvm-*.ebuild
- third_party/chromiumos-overlay/sys-devel/gcc/gcc-*.ebuild
Generated wrappers are stored here:
diff --git a/compiler_wrapper/android_llvm_next_flags.go b/compiler_wrapper/android_llvm_next_flags.go
new file mode 120000
index 00000000..0abed7b4
--- /dev/null
+++ b/compiler_wrapper/android_llvm_next_flags.go
@@ -0,0 +1 @@
+../../../toolchain/llvm_android/android_llvm_next_flags.go \ No newline at end of file
diff --git a/compiler_wrapper/bisect_flag.go b/compiler_wrapper/bisect_flag.go
index 8aec3e7e..adfa8b03 100644
--- a/compiler_wrapper/bisect_flag.go
+++ b/compiler_wrapper/bisect_flag.go
@@ -7,6 +7,7 @@ package main
import (
"errors"
"os"
+ "os/exec"
"path/filepath"
)
@@ -20,7 +21,7 @@ import sys
def ExpandArgs(args, target):
for arg in args:
if arg[0] == '@':
- with open(arg[1:], 'rb') as f:
+ with open(arg[1:], 'r', encoding='utf-8') as f:
ExpandArgs(shlex.split(f.read()), target)
else:
target.append(arg)
@@ -52,7 +53,7 @@ func calcBisectCommand(env env, cfg *config, bisectStage string, compilerCmd *co
}
}
absCompilerPath := getAbsCmdPath(env, compilerCmd)
- pythonPath, err := filepath.Abs(os.Args[0])
+ pythonPath, err := exec.LookPath(os.Args[0])
if err != nil {
return nil, err
}
@@ -64,7 +65,7 @@ func calcBisectCommand(env env, cfg *config, bisectStage string, compilerCmd *co
return &command{
Path: "/usr/bin/env",
Args: append([]string{
- "python",
+ "python3",
"-c",
bisectPythonCommand,
bisectStage,
diff --git a/compiler_wrapper/bisect_flag_test.go b/compiler_wrapper/bisect_flag_test.go
index 5c4c82d6..cc203a0f 100644
--- a/compiler_wrapper/bisect_flag_test.go
+++ b/compiler_wrapper/bisect_flag_test.go
@@ -56,7 +56,7 @@ func TestCallBisectDriverWithCCache(t *testing.T) {
if err := verifyPath(cmd, "/usr/bin/env"); err != nil {
t.Error(err)
}
- if err := verifyArgOrder(cmd, "python", "/usr/bin/ccache"); err != nil {
+ if err := verifyArgOrder(cmd, "python3", "/usr/bin/ccache"); err != nil {
t.Error(err)
}
if err := verifyEnvUpdate(cmd, "CCACHE_DIR=.*"); err != nil {
@@ -138,7 +138,7 @@ func withBisectTestContext(t *testing.T, work func(ctx *testContext)) {
if err := verifyPath(cmd, "/usr/bin/env"); err != nil {
return err
}
- if cmd.Args[0] != "python" {
+ if cmd.Args[0] != "python3" {
return fmt.Errorf("expected a call to python. Got: %s", cmd.Args[0])
}
if cmd.Args[1] != "-c" {
diff --git a/compiler_wrapper/build.py b/compiler_wrapper/build.py
index 037b940f..f98b2549 100755
--- a/compiler_wrapper/build.py
+++ b/compiler_wrapper/build.py
@@ -25,10 +25,22 @@ def parse_args():
parser.add_argument(
'--use_llvm_next', required=True, choices=['true', 'false'])
parser.add_argument('--output_file', required=True, type=str)
- return parser.parse_args()
+ parser.add_argument(
+ '--static',
+ choices=['true', 'false'],
+ help='If true, produce a static wrapper. Autodetects a good value if '
+ 'unspecified.')
+ args = parser.parse_args()
+
+ if args.static is None:
+ args.static = 'cros' not in args.config
+ else:
+ args.static = args.static == 'true'
+
+ return args
-def calc_go_args(args, version):
+def calc_go_args(args, version, build_dir):
ldFlags = [
'-X',
'main.ConfigName=' + args.config,
@@ -42,8 +54,18 @@ def calc_go_args(args, version):
# If the wrapper is intended for Chrome OS, we need to use libc's exec.
extra_args = []
- if 'cros' in args.config:
- extra_args = ['-tags', 'libc_exec']
+ if not args.static:
+ extra_args += ['-tags', 'libc_exec']
+
+ if args.config == 'android':
+ # If android_llvm_next_flags.go DNE, we'll get an obscure "no
+ # llvmNextFlags" build error; complaining here is clearer.
+ if not os.path.exists(
+ os.path.join(build_dir, 'android_llvm_next_flags.go')):
+ sys.exit('In order to build the Android wrapper, you must have a local '
+ 'android_llvm_next_flags.go file; please see '
+ 'cros_llvm_next_flags.go.')
+ extra_args += ['-tags', 'android_llvm_next_flags']
return [
'go', 'build', '-o',
@@ -72,7 +94,8 @@ def main():
version = read_version(build_dir)
# Note: Go does not support using absolute package names.
# So we run go inside the directory of the the build file.
- sys.exit(subprocess.call(calc_go_args(args, version), cwd=build_dir))
+ sys.exit(
+ subprocess.call(calc_go_args(args, version, build_dir), cwd=build_dir))
if __name__ == '__main__':
diff --git a/compiler_wrapper/ccache_flag.go b/compiler_wrapper/ccache_flag.go
index 312d0f02..265b8fc2 100644
--- a/compiler_wrapper/ccache_flag.go
+++ b/compiler_wrapper/ccache_flag.go
@@ -4,7 +4,7 @@
package main
-func processCCacheFlag(sysroot string, builder *commandBuilder) {
+func processCCacheFlag(builder *commandBuilder) {
// We should be able to share the objects across compilers as
// the pre-processed output will differ. This allows boards
// that share compiler flags (like x86 boards) to share caches.
@@ -20,24 +20,8 @@ func processCCacheFlag(sysroot string, builder *commandBuilder) {
})
if builder.cfg.useCCache && useCCache {
- // We need to get ccache to make relative paths from within the
- // sysroot. This lets us share cached files across boards (if
- // all other things are equal of course like CFLAGS) as well as
- // across versions. A quick test is something like:
- // $ export CFLAGS='-O2 -g -pipe' CXXFLAGS='-O2 -g -pipe'
- // $ BOARD=x86-alex
- // $ cros_workon-$BOARD stop cros-disks
- // $ emerge-$BOARD cros-disks
- // $ cros_workon-$BOARD start cros-disks
- // $ emerge-$BOARD cros-disks
- // $ BOARD=amd64-generic
- // $ cros_workon-$BOARD stop cros-disks
- // $ emerge-$BOARD cros-disks
- // $ cros_workon-$BOARD start cros-disks
- // $ emerge-$BOARD cros-disks
- // All of those will get cache hits (ignoring the first one
- // which will seed the cache) due to this setting.
- builder.updateEnv("CCACHE_BASEDIR=" + sysroot)
+ // Note: we used to also set CCACHE_BASEDIR but don't do it
+ // anymore for reasons outlined in crrev.com/c/2103170.
if _, present := builder.env.getenv("CCACHE_DISABLE"); present {
// Portage likes to set this for us when it has FEATURES=-ccache.
// The other vars we need to setup manually because of tools like
diff --git a/compiler_wrapper/ccache_flag_test.go b/compiler_wrapper/ccache_flag_test.go
index 61abef06..03a74de8 100644
--- a/compiler_wrapper/ccache_flag_test.go
+++ b/compiler_wrapper/ccache_flag_test.go
@@ -54,17 +54,6 @@ func TestSetCacheDir(t *testing.T) {
})
}
-func TestSetCacheBaseDirToSysroot(t *testing.T) {
- withCCacheEnabledTestContext(t, func(ctx *testContext) {
- cmd := ctx.must(callCompiler(ctx, ctx.cfg,
- ctx.newCommand(gccX86_64, mainCc)))
- if err := verifyEnvUpdate(cmd,
- "CCACHE_BASEDIR="+ctx.tempDir+"/usr/x86_64-cros-linux-gnu"); err != nil {
- t.Error(err)
- }
- })
-}
-
func TestSetCacheUmask(t *testing.T) {
withCCacheEnabledTestContext(t, func(ctx *testContext) {
cmd := ctx.must(callCompiler(ctx, ctx.cfg,
diff --git a/compiler_wrapper/clang_flags.go b/compiler_wrapper/clang_flags.go
index 1f0e2231..9eb951de 100644
--- a/compiler_wrapper/clang_flags.go
+++ b/compiler_wrapper/clang_flags.go
@@ -47,15 +47,7 @@ func processClangFlags(builder *commandBuilder) error {
// Use of -Qunused-arguments allows this set to be small, just those
// that clang still warns about.
unsupported := map[string]bool{
- "-mno-movbe": true,
- "-pass-exit-codes": true,
- "-Wclobbered": true,
- "-Wno-psabi": true,
- "-Wlogical-op": true,
- "-Wmissing-parameter-type": true,
- "-Wold-style-declaration": true,
- "-Woverride-init": true,
- "-Wunsafe-loop-optimizations": true,
+ "-pass-exit-codes": true,
}
unsupportedPrefixes := []string{"-Wstrict-aliasing=", "-finline-limit="}
diff --git a/compiler_wrapper/clang_flags_test.go b/compiler_wrapper/clang_flags_test.go
index 2a7fbd15..a4145c22 100644
--- a/compiler_wrapper/clang_flags_test.go
+++ b/compiler_wrapper/clang_flags_test.go
@@ -212,14 +212,6 @@ func TestFilterUnsupportedClangFlags(t *testing.T) {
expectedCount int
}{
{clangX86_64, "-pass-exit-codes", 0},
- {clangX86_64, "-Wclobbered", 0},
- {clangX86_64, "-Wunsafe-loop-optimizations", 0},
- {clangX86_64, "-Wlogical-op", 0},
- {clangX86_64, "-Wmissing-parameter-type", 0},
- {clangX86_64, "-Woverride-init", 0},
- {clangX86_64, "-Wold-style-declaration", 0},
- {clangX86_64, "-Wno-psabi", 0},
- {clangX86_64, "-mno-movbe", 0},
{clangX86_64, "-Wstrict-aliasing=xyz", 0},
{clangX86_64, "-finline-limit=xyz", 0},
{"./armv7a-cros-linux-gnu-clang", "-ftrapv", 0},
diff --git a/compiler_wrapper/clang_syntax_flag.go b/compiler_wrapper/clang_syntax_flag.go
index 90d2327a..53240c7f 100644
--- a/compiler_wrapper/clang_syntax_flag.go
+++ b/compiler_wrapper/clang_syntax_flag.go
@@ -4,10 +4,6 @@
package main
-import (
- "bytes"
-)
-
func processClangSyntaxFlag(builder *commandBuilder) (clangSyntax bool) {
builder.transformArgs(func(arg builderArg) string {
if arg.value == "-clang-syntax" {
@@ -26,12 +22,16 @@ func checkClangSyntax(env env, clangCmd *command, gccCmd *command) (exitCode int
EnvUpdates: clangCmd.EnvUpdates,
}
- stdinBuffer := &bytes.Buffer{}
+ getStdin, err := prebufferStdinIfNeeded(env, clangCmd)
+ if err != nil {
+ return 0, wrapErrorwithSourceLocf(err, "prebuffering stdin: %v", err)
+ }
+
exitCode, err = wrapSubprocessErrorWithSourceLoc(clangSyntaxCmd,
- env.run(clangSyntaxCmd, teeStdinIfNeeded(env, clangCmd, stdinBuffer), env.stdout(), env.stderr()))
+ env.run(clangSyntaxCmd, getStdin(), env.stdout(), env.stderr()))
if err != nil || exitCode != 0 {
return exitCode, err
}
return wrapSubprocessErrorWithSourceLoc(gccCmd,
- env.run(gccCmd, bytes.NewReader(stdinBuffer.Bytes()), env.stdout(), env.stderr()))
+ env.run(gccCmd, getStdin(), env.stdout(), env.stderr()))
}
diff --git a/compiler_wrapper/clang_tidy_flag.go b/compiler_wrapper/clang_tidy_flag.go
index 40a5bdbe..01387fd6 100644
--- a/compiler_wrapper/clang_tidy_flag.go
+++ b/compiler_wrapper/clang_tidy_flag.go
@@ -5,15 +5,39 @@
package main
import (
+ "encoding/json"
"fmt"
+ "io/ioutil"
+ "os"
+ "path"
"path/filepath"
"strings"
)
-func processClangTidyFlags(builder *commandBuilder) (cSrcFile string, useClangTidy bool) {
+type useTidyMode int
+
+const clangTidyCrashSubstring = "PLEASE submit a bug report"
+
+const (
+ tidyModeNone useTidyMode = iota
+ tidyModeAll
+ tidyModeTricium
+)
+
+func processClangTidyFlags(builder *commandBuilder) (cSrcFile string, clangTidyFlags []string, mode useTidyMode) {
+ builder.transformArgs(func(arg builderArg) string {
+ const prefix = "-clang-tidy-flag="
+ if !strings.HasPrefix(arg.value, prefix) {
+ return arg.value
+ }
+
+ clangTidyFlags = append(clangTidyFlags, arg.value[len(prefix):])
+ return ""
+ })
+
withTidy, _ := builder.env.getenv("WITH_TIDY")
if withTidy == "" {
- return "", false
+ return "", clangTidyFlags, tidyModeNone
}
srcFileSuffixes := []string{
".c",
@@ -24,58 +48,177 @@ func processClangTidyFlags(builder *commandBuilder) (cSrcFile string, useClangTi
".c++",
}
cSrcFile = ""
+ srcSuffix := ""
lastArg := ""
for _, arg := range builder.args {
- if hasAtLeastOneSuffix(arg.value, srcFileSuffixes) && lastArg != "-o" {
- cSrcFile = arg.value
+ if lastArg != "-o" {
+ for _, suffix := range srcFileSuffixes {
+ if strings.HasSuffix(arg.value, suffix) {
+ srcSuffix = suffix
+ cSrcFile = arg.value
+ break
+ }
+ }
}
lastArg = arg.value
}
- useClangTidy = cSrcFile != ""
- return cSrcFile, useClangTidy
-}
-func runClangTidy(env env, clangCmd *command, cSrcFile string) error {
- defaultTidyChecks := strings.Join([]string{
- "*",
- "google*",
- "-bugprone-narrowing-conversions",
- "-cppcoreguidelines-*",
- "-fuchsia-*",
- "-google-build-using-namespace",
- "-google-default-arguments",
- "-google-explicit-constructor",
- "-google-readability*",
- "-google-runtime-int",
- "-google-runtime-references",
- "-hicpp-avoid-c-arrays",
- "-hicpp-braces-around-statements",
- "-hicpp-no-array-decay",
- "-hicpp-signed-bitwise",
- "-hicpp-uppercase-literal-suffix",
- "-hicpp-use-auto",
- "-llvm-namespace-comment",
- "-misc-non-private-member-variables-in-classes",
- "-misc-unused-parameters",
- "-modernize-*",
- "-readability-*",
- }, ",")
+ if cSrcFile == "" {
+ return "", clangTidyFlags, tidyModeNone
+ }
+ if withTidy == "tricium" {
+ // Files generated from protobufs can result in _many_ clang-tidy complaints, and aren't
+ // worth linting in general. Don't.
+ if strings.HasSuffix(cSrcFile, ".pb"+srcSuffix) {
+ mode = tidyModeNone
+ } else {
+ mode = tidyModeTricium
+ }
+ } else {
+ mode = tidyModeAll
+ }
+ return cSrcFile, clangTidyFlags, mode
+}
+
+func calcClangTidyInvocation(env env, clangCmd *command, cSrcFile string, tidyFlags ...string) (*command, error) {
resourceDir, err := getClangResourceDir(env, clangCmd.Path)
if err != nil {
- return err
+ return nil, err
}
clangTidyPath := filepath.Join(filepath.Dir(clangCmd.Path), "clang-tidy")
- clangTidyCmd := &command{
- Path: clangTidyPath,
- Args: append([]string{
- "-checks=" + defaultTidyChecks,
- cSrcFile,
- "--",
- "-resource-dir=" + resourceDir,
- }, clangCmd.Args...),
+ args := append([]string{}, tidyFlags...)
+ args = append(args, cSrcFile, "--", "-resource-dir="+resourceDir)
+ args = append(args, clangCmd.Args...)
+ return &command{
+ Path: clangTidyPath,
+ Args: args,
EnvUpdates: clangCmd.EnvUpdates,
+ }, nil
+}
+
+func runClangTidyForTricium(env env, clangCmd *command, cSrcFile, fixesDir string, extraTidyFlags []string, crashArtifactsDir string) error {
+ if err := os.MkdirAll(fixesDir, 0777); err != nil {
+ return fmt.Errorf("creating fixes directory at %q: %v", fixesDir, err)
+ }
+
+ f, err := ioutil.TempFile(fixesDir, "lints-")
+ if err != nil {
+ return fmt.Errorf("making tempfile for tidy: %v", err)
+ }
+ f.Close()
+
+ // `f` is an 'anchor'; it ensures we won't create a similarly-named file in the future.
+ // Hence, we can't delete it.
+ fixesFilePath := f.Name() + ".yaml"
+ fixesMetadataPath := f.Name() + ".json"
+
+ // FIXME(gbiv): Remove `-checks=*` when testing is complete; we should defer to .clang-tidy
+ // files, which are both more expressive and more approachable than `-checks=*`.
+ extraTidyFlags = append(extraTidyFlags, "-checks=*", "--export-fixes="+fixesFilePath)
+ clangTidyCmd, err := calcClangTidyInvocation(env, clangCmd, cSrcFile, extraTidyFlags...)
+ if err != nil {
+ return fmt.Errorf("calculating tidy invocation: %v", err)
+ }
+
+ stdstreams := &strings.Builder{}
+ // Note: We pass nil as stdin as we checked before that the compiler
+ // was invoked with a source file argument.
+ exitCode, err := wrapSubprocessErrorWithSourceLoc(clangTidyCmd,
+ env.run(clangTidyCmd, nil, stdstreams, stdstreams))
+ if err != nil {
+ return err
+ }
+
+ type crashOutput struct {
+ CrashReproducerPath string `json:"crash_reproducer_path"`
+ Stdstreams string `json:"stdstreams"`
+ }
+
+ type metadata struct {
+ Args []string `json:"args"`
+ CrashOutput *crashOutput `json:"crash_output"`
+ Executable string `json:"executable"`
+ ExitCode int `json:"exit_code"`
+ LintTarget string `json:"lint_target"`
+ Stdstreams string `json:"stdstreams"`
+ Wd string `json:"wd"`
+ }
+
+ meta := &metadata{
+ Args: clangTidyCmd.Args,
+ CrashOutput: nil,
+ Executable: clangTidyCmd.Path,
+ ExitCode: exitCode,
+ LintTarget: cSrcFile,
+ Stdstreams: stdstreams.String(),
+ Wd: env.getwd(),
+ }
+
+ // Sometimes, clang-tidy crashes. Unfortunately, these don't get funnelled through the
+ // standard clang crash machinery. :(. Try to work with our own.
+ if crashArtifactsDir != "" && strings.Contains(meta.Stdstreams, clangTidyCrashSubstring) {
+ tidyCrashArtifacts := path.Join(crashArtifactsDir, "clang-tidy")
+ if err := os.MkdirAll(tidyCrashArtifacts, 0777); err != nil {
+ return fmt.Errorf("creating crash artifacts directory at %q: %v", tidyCrashArtifacts, err)
+ }
+
+ f, err := ioutil.TempFile(tidyCrashArtifacts, "crash-")
+ if err != nil {
+ return fmt.Errorf("making tempfile for crash output: %v", err)
+ }
+ f.Close()
+
+ reproCmd := &command{}
+ *reproCmd = *clangCmd
+ reproCmd.Args = append(reproCmd.Args, "-E", "-o", f.Name())
+
+ reproOut := &strings.Builder{}
+ _, err = wrapSubprocessErrorWithSourceLoc(reproCmd, env.run(reproCmd, nil, reproOut, reproOut))
+ if err != nil {
+ return fmt.Errorf("attempting to produce a clang-tidy crash reproducer: %v", err)
+ }
+ meta.CrashOutput = &crashOutput{
+ CrashReproducerPath: f.Name(),
+ Stdstreams: reproOut.String(),
+ }
+ }
+
+ f, err = os.Create(fixesMetadataPath)
+ if err != nil {
+ return fmt.Errorf("creating fixes metadata: %v", err)
+ }
+
+ if err := json.NewEncoder(f).Encode(meta); err != nil {
+ return fmt.Errorf("writing fixes metadata: %v", err)
+ }
+
+ if err := f.Close(); err != nil {
+ return fmt.Errorf("finalizing fixes metadata: %v", err)
+ }
+ return nil
+}
+
+func runClangTidy(env env, clangCmd *command, cSrcFile string, extraTidyFlags []string) error {
+ extraTidyFlags = append(extraTidyFlags,
+ "-checks="+strings.Join([]string{
+ "*",
+ "-bugprone-narrowing-conversions",
+ "-cppcoreguidelines-*",
+ "-fuchsia-*",
+ "-google-readability*",
+ "-google-runtime-references",
+ "-hicpp-*",
+ "-llvm-*",
+ "-misc-non-private-member-variables-in-classes",
+ "-misc-unused-parameters",
+ "-modernize-*",
+ "-readability-*",
+ }, ","))
+ clangTidyCmd, err := calcClangTidyInvocation(env, clangCmd, cSrcFile, extraTidyFlags...)
+ if err != nil {
+ return fmt.Errorf("calculating clang-tidy invocation: %v", err)
}
// Note: We pass nil as stdin as we checked before that the compiler
diff --git a/compiler_wrapper/clang_tidy_flag_test.go b/compiler_wrapper/clang_tidy_flag_test.go
index baf5219e..4293bb21 100644
--- a/compiler_wrapper/clang_tidy_flag_test.go
+++ b/compiler_wrapper/clang_tidy_flag_test.go
@@ -273,6 +273,176 @@ func TestPartiallyOmitGomaWithClangTidy(t *testing.T) {
})
}
+func TestTriciumClangTidyIsProperlyDetectedFromEnv(t *testing.T) {
+ withClangTidyTestContext(t, func(ctx *testContext) {
+ ctx.env = []string{"WITH_TIDY=tricium"}
+ ctx.cmdMock = func(cmd *command, stdin io.Reader, stdout io.Writer, stderr io.Writer) error {
+ switch ctx.cmdCount {
+ case 1:
+ if err := verifyPath(cmd, "usr/bin/clang"); err != nil {
+ t.Error(err)
+ }
+ return nil
+ case 2:
+ if err := verifyPath(cmd, "usr/bin/clang-tidy"); err != nil {
+ return err
+ }
+
+ hasFixesFile := false
+ for _, arg := range cmd.Args {
+ if path := strings.TrimPrefix(arg, "--export-fixes="); path != arg {
+ hasFixesFile = true
+ if !strings.HasPrefix(path, ctx.cfg.triciumNitsDir+"/") {
+ t.Errorf("fixes file was %q; expected it to be in %q", path, ctx.cfg.triciumNitsDir)
+ }
+ break
+ }
+ }
+
+ if !hasFixesFile {
+ t.Error("no fixes file was provided to a tricium invocation")
+ }
+
+ return nil
+ default:
+ return nil
+ }
+ }
+ cmd := ctx.must(callCompiler(ctx, ctx.cfg,
+ ctx.newCommand(clangX86_64, mainCc)))
+ if ctx.cmdCount != 3 {
+ t.Errorf("expected 3 calls. Got: %d", ctx.cmdCount)
+ }
+ if err := verifyPath(cmd, "usr/bin/clang"); err != nil {
+ t.Error(err)
+ }
+ })
+}
+
+func TestTriciumClangTidySkipsProtobufFiles(t *testing.T) {
+ withClangTidyTestContext(t, func(ctx *testContext) {
+ ctx.env = []string{"WITH_TIDY=tricium"}
+ cmd := ctx.must(callCompiler(ctx, ctx.cfg,
+ ctx.newCommand(clangX86_64, mainCc+".pb.cc")))
+ if ctx.cmdCount != 1 {
+ t.Errorf("expected tricium clang-tidy to not execute on a protobuf file")
+ }
+ if err := verifyPath(cmd, "usr/bin/clang"); err != nil {
+ t.Error(err)
+ }
+ })
+}
+
+func testClangTidyFiltersClangTidySpecificFlagsWithPresetEnv(t *testing.T, ctx *testContext) {
+ addedFlag := "--some_clang_tidy=flag"
+ ctx.cmdMock = func(cmd *command, stdin io.Reader, stdout io.Writer, stderr io.Writer) error {
+ switch ctx.cmdCount {
+ case 1:
+ if err := verifyPath(cmd, "usr/bin/clang"); err != nil {
+ t.Error(err)
+ } else if err := verifyArgCount(cmd, 0, addedFlag); err != nil {
+ t.Error(err)
+ }
+ return nil
+ case 2:
+ if err := verifyPath(cmd, "usr/bin/clang-tidy"); err != nil {
+ t.Error(err)
+ } else if verifyArgCount(cmd, 1, addedFlag); err != nil {
+ t.Error(err)
+ }
+ return nil
+ default:
+ return nil
+ }
+ }
+ cmd := ctx.must(callCompiler(ctx, ctx.cfg, ctx.newCommand(clangX86_64, mainCc, "-clang-tidy-flag="+addedFlag)))
+ if ctx.cmdCount != 3 {
+ t.Errorf("expected 3 calls. Got: %d", ctx.cmdCount)
+ }
+ if err := verifyPath(cmd, "usr/bin/clang"); err != nil {
+ t.Error(err)
+ }
+}
+
+func TestClangTidyFiltersClangTidySpecificFlagsForTricium(t *testing.T) {
+ withClangTidyTestContext(t, func(ctx *testContext) {
+ ctx.env = []string{"WITH_TIDY=tricium"}
+ testClangTidyFiltersClangTidySpecificFlagsWithPresetEnv(t, ctx)
+ })
+}
+
+func TestClangTidyFiltersClangTidySpecificFlags(t *testing.T) {
+ withClangTidyTestContext(t, func(ctx *testContext) {
+ testClangTidyFiltersClangTidySpecificFlagsWithPresetEnv(t, ctx)
+ })
+}
+
+func TestClangTidyFlagsAreFilteredFromGccInvocations(t *testing.T) {
+ withTestContext(t, func(ctx *testContext) {
+ cmd := ctx.must(callCompiler(ctx, ctx.cfg, ctx.newCommand(gccX86_64, mainCc, "-clang-tidy-flag=--foo")))
+ if err := verifyArgCount(cmd, 0, ".*--foo.*"); err != nil {
+ t.Error(err)
+ }
+ })
+}
+
+func TestTriciumReportsClangTidyCrashesGracefully(t *testing.T) {
+ withClangTidyTestContext(t, func(ctx *testContext) {
+ ctx.env = []string{"WITH_TIDY=tricium"}
+ ctx.cmdMock = func(cmd *command, stdin io.Reader, stdout io.Writer, stderr io.Writer) error {
+ switch ctx.cmdCount {
+ case 1:
+ if err := verifyPath(cmd, "usr/bin/clang"); err != nil {
+ t.Error(err)
+ }
+ return nil
+ case 2:
+ if err := verifyPath(cmd, "usr/bin/clang-tidy"); err != nil {
+ return err
+ }
+
+ if _, err := io.WriteString(stdout, clangTidyCrashSubstring); err != nil {
+ return err
+ }
+ return nil
+ case 3:
+ if err := verifyPath(cmd, "usr/bin/clang"); err != nil {
+ t.Error(err)
+ }
+
+ args := cmd.Args
+ if len(args) < 3 {
+ t.Errorf("insufficient number of args provided; got %d; want at least 3", len(args))
+ return nil
+ }
+
+ lastArgs := args[len(args)-3:]
+ eArg, oArg, outFileArg := lastArgs[0], lastArgs[1], lastArgs[2]
+ if eArg != "-E" {
+ t.Errorf("got eArg=%q; wanted -E", eArg)
+ }
+
+ if oArg != "-o" {
+ t.Errorf("got oArg=%q; wanted -o", oArg)
+ }
+
+ wantPrefix := path.Join(ctx.cfg.crashArtifactsDir, "clang-tidy")
+ if !strings.HasPrefix(outFileArg, wantPrefix) {
+ t.Errorf("got out file %q; wanted one starting with %q", outFileArg, wantPrefix)
+ }
+
+ return nil
+ default:
+ return nil
+ }
+ }
+ ctx.must(callCompiler(ctx, ctx.cfg, ctx.newCommand(clangX86_64, mainCc)))
+ if ctx.cmdCount != 4 {
+ t.Errorf("expected 3 calls. Got: %d", ctx.cmdCount)
+ }
+ })
+}
+
func withClangTidyTestContext(t *testing.T, work func(ctx *testContext)) {
withTestContext(t, func(ctx *testContext) {
ctx.env = []string{"WITH_TIDY=1"}
diff --git a/compiler_wrapper/compile_with_fallback.go b/compiler_wrapper/compile_with_fallback.go
index a3b00bf1..8b4b5b4d 100644
--- a/compiler_wrapper/compile_with_fallback.go
+++ b/compiler_wrapper/compile_with_fallback.go
@@ -42,10 +42,14 @@ func compileWithFallback(env env, cfg *config, originalCmd *command, absWrapperP
)
}
- firstCmdStdinBuffer := &bytes.Buffer{}
+ getStdin, err := prebufferStdinIfNeeded(env, firstCmd)
+ if err != nil {
+ return 0, wrapErrorwithSourceLocf(err, "prebuffering stdin: %v", err)
+ }
+
firstCmdStderrBuffer := &bytes.Buffer{}
firstCmdExitCode, err := wrapSubprocessErrorWithSourceLoc(firstCmd,
- env.run(firstCmd, teeStdinIfNeeded(env, firstCmd, firstCmdStdinBuffer), env.stdout(), io.MultiWriter(env.stderr(), firstCmdStderrBuffer)))
+ env.run(firstCmd, getStdin(), env.stdout(), io.MultiWriter(env.stderr(), firstCmdStderrBuffer)))
if err != nil {
return 0, err
}
@@ -101,5 +105,5 @@ func compileWithFallback(env env, cfg *config, originalCmd *command, absWrapperP
EnvUpdates: append(originalCmd.EnvUpdates, prebuiltCompilerPathKey+"="),
}
return wrapSubprocessErrorWithSourceLoc(fallbackCmd,
- env.run(fallbackCmd, bytes.NewReader(firstCmdStdinBuffer.Bytes()), env.stdout(), env.stderr()))
+ env.run(fallbackCmd, getStdin(), env.stdout(), env.stderr()))
}
diff --git a/compiler_wrapper/compile_with_fallback_test.go b/compiler_wrapper/compile_with_fallback_test.go
index 4ea847f6..a67f3eb9 100644
--- a/compiler_wrapper/compile_with_fallback_test.go
+++ b/compiler_wrapper/compile_with_fallback_test.go
@@ -12,9 +12,18 @@ import (
"os"
"path/filepath"
"strings"
+ "syscall"
"testing"
)
+// Save this off before goroutines start running, since this necessarily involves modifying the
+// value for our umask, and that screams subtle race conditions. :)
+var umaskAtStartup = func() os.FileMode {
+ umask := syscall.Umask(0)
+ syscall.Umask(umask)
+ return os.FileMode(umask)
+}()
+
func TestOmitFallbackCompileForSuccessfulCall(t *testing.T) {
withCompileWithFallbackTestContext(t, func(ctx *testContext) {
ctx.must(callCompiler(ctx, ctx.cfg, ctx.newCommand(clangAndroid, mainCc)))
@@ -229,7 +238,7 @@ func TestCompileWithFallbackLogCommandAndErrors(t *testing.T) {
log := readCompileWithFallbackErrorLog(ctx)
if log != `==================COMMAND:====================
-clang.real main.cc -fno-color-diagnostics -a -b
+./clang.real main.cc -fno-color-diagnostics -a -b
someerror
==============================================
@@ -239,7 +248,7 @@ someerror
}
entry, _ := os.Lstat(filepath.Join(ctx.tempDir, "fallback_stderr"))
- if entry.Mode()&0777 != 0644 {
+ if entry.Mode()&0777 != 0644 & ^umaskAtStartup {
t.Errorf("unexpected mode for logfile. Got: %#o", entry.Mode())
}
})
diff --git a/compiler_wrapper/compiler_wrapper.go b/compiler_wrapper/compiler_wrapper.go
index c614b99f..2b9459e4 100644
--- a/compiler_wrapper/compiler_wrapper.go
+++ b/compiler_wrapper/compiler_wrapper.go
@@ -5,6 +5,7 @@
package main
import (
+ "bytes"
"fmt"
"io"
"path/filepath"
@@ -37,6 +38,29 @@ func callCompiler(env env, cfg *config, inputCmd *command) int {
return exitCode
}
+// Given the main builder path and the absolute path to our wrapper, returns the path to the
+// 'real' compiler we should invoke.
+func calculateAndroidWrapperPath(mainBuilderPath string, absWrapperPath string) string {
+ // FIXME: This combination of using the directory of the symlink but the basename of the
+ // link target is strange but is the logic that old android wrapper uses. Change this to use
+ // directory and basename either from the absWrapperPath or from the builder.path, but don't
+ // mix anymore.
+
+ // We need to be careful here: path.Join Clean()s its result, so `./foo` will get
+ // transformed to `foo`, which isn't good since we're passing this path to exec.
+ basePart := filepath.Base(absWrapperPath) + ".real"
+ if !strings.ContainsRune(mainBuilderPath, filepath.Separator) {
+ return basePart
+ }
+
+ dirPart := filepath.Dir(mainBuilderPath)
+ if cleanResult := filepath.Join(dirPart, basePart); strings.ContainsRune(cleanResult, filepath.Separator) {
+ return cleanResult
+ }
+
+ return "." + string(filepath.Separator) + basePart
+}
+
func callCompilerInternal(env env, cfg *config, inputCmd *command) (exitCode int, err error) {
if err := checkUnsupportedFlags(inputCmd); err != nil {
return 0, err
@@ -51,16 +75,12 @@ func callCompilerInternal(env env, cfg *config, inputCmd *command) (exitCode int
var compilerCmd *command
clangSyntax := processClangSyntaxFlag(mainBuilder)
if cfg.isAndroidWrapper {
- // FIXME: This combination of using the directory of the symlink but the
- // basename of the link target is strange but is the logic that old android
- // wrapper uses. Change this to use directory and basename either from the
- // absWrapperPath or from the builder.path, but don't mix anymore.
- mainBuilder.path = filepath.Join(filepath.Dir(mainBuilder.path), filepath.Base(mainBuilder.absWrapperPath)+".real")
-
+ mainBuilder.path = calculateAndroidWrapperPath(mainBuilder.path, mainBuilder.absWrapperPath)
switch mainBuilder.target.compilerType {
case clangType:
mainBuilder.addPreUserArgs(mainBuilder.cfg.clangFlags...)
mainBuilder.addPreUserArgs(mainBuilder.cfg.commonFlags...)
+ mainBuilder.addPostUserArgs(mainBuilder.cfg.clangPostFlags...)
if _, err := processGomaCccFlags(mainBuilder); err != nil {
return 0, err
}
@@ -70,45 +90,60 @@ func callCompilerInternal(env env, cfg *config, inputCmd *command) (exitCode int
default:
return 0, newErrorwithSourceLocf("unsupported compiler: %s", mainBuilder.target.compiler)
}
- } else if mainBuilder.target.compilerType == clangType {
- cSrcFile, useClangTidy := processClangTidyFlags(mainBuilder)
- sysroot, err := prepareClangCommand(mainBuilder)
- if err != nil {
- return 0, err
- }
- allowCCache := true
- if useClangTidy {
- allowCCache = false
- clangCmdWithoutGomaAndCCache := mainBuilder.build()
- if err := runClangTidy(env, clangCmdWithoutGomaAndCCache, cSrcFile); err != nil {
- return 0, err
- }
- }
- if err := processGomaCCacheFlags(sysroot, allowCCache, mainBuilder); err != nil {
- return 0, err
- }
- compilerCmd = mainBuilder.build()
} else {
- if clangSyntax {
- allowCCache := false
- clangCmd, err := calcClangCommand(allowCCache, mainBuilder.clone())
+ cSrcFile, tidyFlags, tidyMode := processClangTidyFlags(mainBuilder)
+ if mainBuilder.target.compilerType == clangType {
+ err := prepareClangCommand(mainBuilder)
if err != nil {
return 0, err
}
- gccCmd, err := calcGccCommand(mainBuilder)
+ allowCCache := true
+ if tidyMode != tidyModeNone {
+ allowCCache = false
+ clangCmdWithoutGomaAndCCache := mainBuilder.build()
+ var err error
+ switch tidyMode {
+ case tidyModeTricium:
+ if cfg.triciumNitsDir == "" {
+ return 0, newErrorwithSourceLocf("tricium linting was requested, but no nits directory is configured")
+ }
+ err = runClangTidyForTricium(env, clangCmdWithoutGomaAndCCache, cSrcFile, cfg.triciumNitsDir, tidyFlags, cfg.crashArtifactsDir)
+ case tidyModeAll:
+ err = runClangTidy(env, clangCmdWithoutGomaAndCCache, cSrcFile, tidyFlags)
+ default:
+ panic(fmt.Sprintf("Unknown tidy mode: %v", tidyMode))
+ }
+
+ if err != nil {
+ return 0, err
+ }
+ }
+ if err := processGomaCCacheFlags(allowCCache, mainBuilder); err != nil {
+ return 0, err
+ }
+ compilerCmd = mainBuilder.build()
+ } else {
+ if clangSyntax {
+ allowCCache := false
+ clangCmd, err := calcClangCommand(allowCCache, mainBuilder.clone())
+ if err != nil {
+ return 0, err
+ }
+ gccCmd, err := calcGccCommand(mainBuilder)
+ if err != nil {
+ return 0, err
+ }
+ return checkClangSyntax(env, clangCmd, gccCmd)
+ }
+ compilerCmd, err = calcGccCommand(mainBuilder)
if err != nil {
return 0, err
}
- return checkClangSyntax(env, clangCmd, gccCmd)
- }
- compilerCmd, err = calcGccCommand(mainBuilder)
- if err != nil {
- return 0, err
}
}
rusageLogfileName := getRusageLogFilename(env)
bisectStage := getBisectStage(env)
- if shouldForceDisableWError(env) {
+ if shouldForceDisableWerror(env, cfg) {
if rusageLogfileName != "" {
return 0, newUserErrorf("GETRUSAGE is meaningless with FORCE_DISABLE_WERROR")
}
@@ -143,35 +178,33 @@ func callCompilerInternal(env env, cfg *config, inputCmd *command) (exitCode int
return wrapSubprocessErrorWithSourceLoc(compilerCmd, env.exec(compilerCmd))
}
-func prepareClangCommand(builder *commandBuilder) (sysroot string, err error) {
- sysroot = ""
+func prepareClangCommand(builder *commandBuilder) (err error) {
if !builder.cfg.isHostWrapper {
- sysroot = processSysrootFlag(builder)
+ processSysrootFlag(builder)
}
builder.addPreUserArgs(builder.cfg.clangFlags...)
+ if builder.cfg.crashArtifactsDir != "" {
+ builder.addPreUserArgs("-fcrash-diagnostics-dir=" + builder.cfg.crashArtifactsDir)
+ }
builder.addPostUserArgs(builder.cfg.clangPostFlags...)
calcCommonPreUserArgs(builder)
- if err := processClangFlags(builder); err != nil {
- return "", err
- }
- return sysroot, nil
+ return processClangFlags(builder)
}
func calcClangCommand(allowCCache bool, builder *commandBuilder) (*command, error) {
- sysroot, err := prepareClangCommand(builder)
+ err := prepareClangCommand(builder)
if err != nil {
return nil, err
}
- if err := processGomaCCacheFlags(sysroot, allowCCache, builder); err != nil {
+ if err := processGomaCCacheFlags(allowCCache, builder); err != nil {
return nil, err
}
return builder.build(), nil
}
func calcGccCommand(builder *commandBuilder) (*command, error) {
- sysroot := ""
if !builder.cfg.isHostWrapper {
- sysroot = processSysrootFlag(builder)
+ processSysrootFlag(builder)
}
builder.addPreUserArgs(builder.cfg.gccFlags...)
if !builder.cfg.isHostWrapper {
@@ -180,7 +213,7 @@ func calcGccCommand(builder *commandBuilder) (*command, error) {
processGccFlags(builder)
if !builder.cfg.isHostWrapper {
allowCCache := true
- if err := processGomaCCacheFlags(sysroot, allowCCache, builder); err != nil {
+ if err := processGomaCCacheFlags(allowCCache, builder); err != nil {
return nil, err
}
}
@@ -198,7 +231,7 @@ func calcCommonPreUserArgs(builder *commandBuilder) {
processSanitizerFlags(builder)
}
-func processGomaCCacheFlags(sysroot string, allowCCache bool, builder *commandBuilder) (err error) {
+func processGomaCCacheFlags(allowCCache bool, builder *commandBuilder) (err error) {
gomaccUsed := false
if !builder.cfg.isHostWrapper {
gomaccUsed, err = processGomaCccFlags(builder)
@@ -207,7 +240,7 @@ func processGomaCCacheFlags(sysroot string, allowCCache bool, builder *commandBu
}
}
if !gomaccUsed && allowCCache {
- processCCacheFlag(sysroot, builder)
+ processCCacheFlag(builder)
}
return nil
}
@@ -225,22 +258,40 @@ func printCompilerError(writer io.Writer, compilerErr error) {
if _, ok := compilerErr.(userError); ok {
fmt.Fprintf(writer, "%s\n", compilerErr)
} else {
+ emailAccount := "chromeos-toolchain"
+ if isAndroidConfig() {
+ emailAccount = "android-llvm"
+ }
fmt.Fprintf(writer,
- "Internal error. Please report to chromeos-toolchain@google.com.\n%s\n",
- compilerErr)
+ "Internal error. Please report to %s@google.com.\n%s\n",
+ emailAccount, compilerErr)
}
}
-func teeStdinIfNeeded(env env, inputCmd *command, dest io.Writer) io.Reader {
- // We can't use io.TeeReader unconditionally, as that would block
- // calls to exec.Cmd.Run(), even if the underlying process has already
- // terminated. See https://github.com/golang/go/issues/7990 for more details.
+func needStdinTee(inputCmd *command) bool {
lastArg := ""
for _, arg := range inputCmd.Args {
if arg == "-" && lastArg != "-o" {
- return io.TeeReader(env.stdin(), dest)
+ return true
}
lastArg = arg
}
- return env.stdin()
+ return false
+}
+
+func prebufferStdinIfNeeded(env env, inputCmd *command) (getStdin func() io.Reader, err error) {
+ // We pre-buffer the entirety of stdin, since the compiler may exit mid-invocation with an
+ // error, which may leave stdin partially read.
+ if !needStdinTee(inputCmd) {
+ // This won't produce deterministic input to the compiler, but stdin shouldn't
+ // matter in this case, so...
+ return env.stdin, nil
+ }
+
+ stdinBuffer := &bytes.Buffer{}
+ if _, err := stdinBuffer.ReadFrom(env.stdin()); err != nil {
+ return nil, wrapErrorwithSourceLocf(err, "prebuffering stdin")
+ }
+
+ return func() io.Reader { return bytes.NewReader(stdinBuffer.Bytes()) }, nil
}
diff --git a/compiler_wrapper/compiler_wrapper_test.go b/compiler_wrapper/compiler_wrapper_test.go
index 67cbda92..52b92f56 100644
--- a/compiler_wrapper/compiler_wrapper_test.go
+++ b/compiler_wrapper/compiler_wrapper_test.go
@@ -148,3 +148,53 @@ func TestPrintOtherCompilerError(t *testing.T) {
t.Errorf("Unexpected string. Got: %s", buffer.String())
}
}
+
+func TestPrintOtherCompilerErrorForAndroidLLVM(t *testing.T) {
+ buffer := bytes.Buffer{}
+
+ oldConfigName := ConfigName
+ defer func() { ConfigName = oldConfigName }()
+
+ ConfigName = "android"
+ printCompilerError(&buffer, errors.New("abcd"))
+ if buffer.String() != "Internal error. Please report to android-llvm@google.com.\nabcd\n" {
+ t.Errorf("Unexpected string. Got: %s", buffer.String())
+ }
+}
+
+func TestCalculateAndroidWrapperPath(t *testing.T) {
+ t.Parallel()
+
+ testCases := []struct {
+ mainBuilderPath string
+ absWrapperPath string
+ want string
+ }{
+ {
+ mainBuilderPath: "/foo/bar",
+ absWrapperPath: "/bar/baz",
+ want: "/foo/baz.real",
+ },
+ {
+ mainBuilderPath: "/my_wrapper",
+ absWrapperPath: "/bar/baz",
+ want: "/baz.real",
+ },
+ {
+ mainBuilderPath: "no_seps",
+ absWrapperPath: "/bar/baz",
+ want: "baz.real",
+ },
+ {
+ mainBuilderPath: "./a_sep",
+ absWrapperPath: "/bar/baz",
+ want: "./baz.real",
+ },
+ }
+
+ for _, tc := range testCases {
+ if result := calculateAndroidWrapperPath(tc.mainBuilderPath, tc.absWrapperPath); result != tc.want {
+ t.Errorf("Failed calculating the wrapper path with (%q, %q); got %q, want %q", tc.mainBuilderPath, tc.absWrapperPath, result, tc.want)
+ }
+ }
+}
diff --git a/compiler_wrapper/config.go b/compiler_wrapper/config.go
index 5f389684..8b5432b8 100644
--- a/compiler_wrapper/config.go
+++ b/compiler_wrapper/config.go
@@ -14,6 +14,8 @@ type config struct {
isAndroidWrapper bool
// Whether to use ccache.
useCCache bool
+ // Whether llvmNext wrapper.
+ useLlvmNext bool
// Flags to add to gcc and clang.
commonFlags []string
// Flags to add to gcc only.
@@ -27,6 +29,10 @@ type config struct {
rootRelPath string
// Directory to store errors that were prevented with -Wno-error.
newWarningsDir string
+ // Directory to store nits in when using `WITH_TIDY=tricium`.
+ triciumNitsDir string
+ // Directory to store crash artifacts in.
+ crashArtifactsDir string
// Version. Only used for printing via -print-cmd.
version string
}
@@ -68,6 +74,10 @@ func getRealConfig() (*config, error) {
return config, nil
}
+func isAndroidConfig() bool {
+ return ConfigName == "android"
+}
+
func getConfig(configName string, useCCache bool, useLlvmNext bool, version string) (*config, error) {
cfg := config{}
switch configName {
@@ -83,18 +93,15 @@ func getConfig(configName string, useCCache bool, useLlvmNext bool, version stri
return nil, newErrorwithSourceLocf("unknown config name: %s", configName)
}
cfg.useCCache = useCCache
+ cfg.useLlvmNext = useLlvmNext
if useLlvmNext {
cfg.clangFlags = append(cfg.clangFlags, llvmNextFlags...)
+ cfg.clangPostFlags = append(cfg.clangPostFlags, llvmNextPostFlags...)
}
cfg.version = version
return &cfg, nil
}
-// TODO: Enable test in config_test.go, once we have new llvm-next flags.
-var llvmNextFlags = []string{}
-
-var llvmNextPostFlags = []string{}
-
// Full hardening.
// Temporarily disable function splitting because of chromium:434751.
var crosHardenedConfig = &config{
@@ -115,25 +122,33 @@ var crosHardenedConfig = &config{
// Temporarily add no-unknown-warning-option to deal with old clang versions.
// Temporarily disable Wsection since kernel gets a bunch of these. chromium:778867
// Disable "-faddrsig" since it produces object files that strip doesn't understand, chromium:915742.
+ // Pass "-fcommon" till the packages are fixed to work with new clang default
+ // "-fno-common", crbug.com/1060413.
+ // crbug.com/1103065: -grecord-gcc-switches pollutes the Goma cache;
+ // removed that flag for now.
clangFlags: []string{
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
},
clangPostFlags: []string{
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
},
- newWarningsDir: "/tmp/fatal_clang_warnings",
+ newWarningsDir: "/tmp/fatal_clang_warnings",
+ triciumNitsDir: "/tmp/linting_output/clang-tidy",
+ crashArtifactsDir: "/tmp/clang_crash_diagnostics",
}
// Flags to be added to non-hardened toolchain.
@@ -156,15 +171,19 @@ var crosNonHardenedConfig = &config{
"-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",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
},
clangPostFlags: []string{
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
},
- newWarningsDir: "/tmp/fatal_clang_warnings",
+ newWarningsDir: "/tmp/fatal_clang_warnings",
+ triciumNitsDir: "/tmp/linting_output/clang-tidy",
+ crashArtifactsDir: "/tmp/clang_crash_diagnostics",
}
// Flags to be added to host toolchain.
@@ -179,34 +198,44 @@ var crosHostConfig = &config{
},
// Temporarily disable tautological-*-compare chromium:778316.
// Temporarily add no-unknown-warning-option to deal with old clang versions.
+ // Pass "-fcommon" till the packages are fixed to work with new clang default
+ // "-fno-common", crbug.com/1060413.
+ // crbug.com/1103065: -grecord-gcc-switches pollutes the Goma cache;
+ // removed that flag for now.
clangFlags: []string{
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
},
clangPostFlags: []string{
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
},
- newWarningsDir: "/tmp/fatal_clang_warnings",
+ newWarningsDir: "/tmp/fatal_clang_warnings",
+ triciumNitsDir: "/tmp/linting_output/clang-tidy",
+ crashArtifactsDir: "/tmp/clang_crash_diagnostics",
}
var androidConfig = &config{
- isHostWrapper: false,
- isAndroidWrapper: true,
- rootRelPath: "./",
- commonFlags: []string{},
- gccFlags: []string{},
- clangFlags: []string{},
- clangPostFlags: []string{},
- newWarningsDir: "/tmp/fatal_clang_warnings",
+ isHostWrapper: false,
+ isAndroidWrapper: true,
+ rootRelPath: "./",
+ commonFlags: []string{},
+ gccFlags: []string{},
+ clangFlags: []string{},
+ clangPostFlags: []string{},
+ newWarningsDir: "",
+ triciumNitsDir: "",
+ crashArtifactsDir: "",
}
diff --git a/compiler_wrapper/cros_llvm_next_flags.go b/compiler_wrapper/cros_llvm_next_flags.go
new file mode 100644
index 00000000..6cd7cd2a
--- /dev/null
+++ b/compiler_wrapper/cros_llvm_next_flags.go
@@ -0,0 +1,18 @@
+// Copyright 2020 The Chromium OS Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+// +build !android_llvm_next_flags
+
+package main
+
+// This file defines extra flags for llvm-next testing for Chrome OS. Importantly, these flags don't
+// apply to Android's llvm-next wrapper. Android's toolchain-utils copy has a
+// `android_llvm_next_flags.go` file downstream that defines its llvm-next arguments. As you can
+// probably infer, `android_llvm_next_flags.go` is only compiled if the `android_llvm_next_flags`
+// tag is set.
+
+// TODO: Enable test in config_test.go, once we have new llvm-next flags.
+var llvmNextFlags = []string{}
+
+var llvmNextPostFlags = []string{}
diff --git a/compiler_wrapper/disable_werror_flag.go b/compiler_wrapper/disable_werror_flag.go
index 864397dd..8f20b6f3 100644
--- a/compiler_wrapper/disable_werror_flag.go
+++ b/compiler_wrapper/disable_werror_flag.go
@@ -7,17 +7,55 @@ package main
import (
"bytes"
"encoding/json"
+ "fmt"
+ "io"
"io/ioutil"
"os"
+ "path"
+ "strconv"
"strings"
"syscall"
)
-func shouldForceDisableWError(env env) bool {
+const numWErrorEstimate = 30
+
+func shouldForceDisableWerror(env env, cfg *config) bool {
+ if cfg.isAndroidWrapper {
+ return cfg.useLlvmNext
+ }
value, _ := env.getenv("FORCE_DISABLE_WERROR")
return value != ""
}
+func disableWerrorFlags(originalArgs []string) []string {
+ extraArgs := []string{"-Wno-error"}
+ newArgs := make([]string, 0, len(originalArgs)+numWErrorEstimate)
+ for _, flag := range originalArgs {
+ if strings.HasPrefix(flag, "-Werror=") {
+ extraArgs = append(extraArgs, strings.Replace(flag, "-Werror", "-Wno-error", 1))
+ }
+ if !strings.Contains(flag, "-warnings-as-errors") {
+ newArgs = append(newArgs, flag)
+ }
+ }
+ return append(newArgs, extraArgs...)
+}
+
+func isLikelyAConfTest(cfg *config, cmd *command) bool {
+ // Android doesn't do mid-build `configure`s, so we don't need to worry about this there.
+ if cfg.isAndroidWrapper {
+ return false
+ }
+
+ for _, a := range cmd.Args {
+ // The kernel, for example, will do configure tests with /dev/null as a source file.
+ if a == "/dev/null" || strings.HasPrefix(a, "conftest.c") {
+ return true
+ }
+ }
+ return false
+}
+
func doubleBuildWithWNoError(env env, cfg *config, originalCmd *command) (exitCode int, err error) {
originalStdoutBuffer := &bytes.Buffer{}
originalStderrBuffer := &bytes.Buffer{}
@@ -26,15 +64,27 @@ func doubleBuildWithWNoError(env env, cfg *config, originalCmd *command) (exitCo
if originalCmd.Path == "/usr/bin/ccache" {
originalCmd.Path = "ccache"
}
- originalStdinBuffer := &bytes.Buffer{}
+
+ getStdin, err := prebufferStdinIfNeeded(env, originalCmd)
+ if err != nil {
+ return 0, wrapErrorwithSourceLocf(err, "prebuffering stdin: %v", err)
+ }
+
originalExitCode, err := wrapSubprocessErrorWithSourceLoc(originalCmd,
- env.run(originalCmd, teeStdinIfNeeded(env, originalCmd, originalStdinBuffer), originalStdoutBuffer, originalStderrBuffer))
+ env.run(originalCmd, getStdin(), originalStdoutBuffer, originalStderrBuffer))
if err != nil {
return 0, err
}
+
// The only way we can do anything useful is if it looks like the failure
// was -Werror-related.
- if originalExitCode == 0 || !strings.Contains(originalStderrBuffer.String(), "-Werror") {
+ originalStdoutBufferBytes := originalStdoutBuffer.Bytes()
+ shouldRetry := originalExitCode != 0 &&
+ !isLikelyAConfTest(cfg, originalCmd) &&
+ (bytes.Contains(originalStderrBuffer.Bytes(), []byte("-Werror")) ||
+ bytes.Contains(originalStdoutBufferBytes, []byte("warnings-as-errors")) ||
+ bytes.Contains(originalStdoutBufferBytes, []byte("clang-diagnostic-")))
+ if !shouldRetry {
originalStdoutBuffer.WriteTo(env.stdout())
originalStderrBuffer.WriteTo(env.stderr())
return originalExitCode, nil
@@ -44,23 +94,55 @@ func doubleBuildWithWNoError(env env, cfg *config, originalCmd *command) (exitCo
retryStderrBuffer := &bytes.Buffer{}
retryCommand := &command{
Path: originalCmd.Path,
- Args: append(originalCmd.Args, "-Wno-error"),
+ Args: disableWerrorFlags(originalCmd.Args),
EnvUpdates: originalCmd.EnvUpdates,
}
retryExitCode, err := wrapSubprocessErrorWithSourceLoc(retryCommand,
- env.run(retryCommand, bytes.NewReader(originalStdinBuffer.Bytes()), retryStdoutBuffer, retryStderrBuffer))
+ env.run(retryCommand, getStdin(), retryStdoutBuffer, retryStderrBuffer))
if err != nil {
return 0, err
}
- // If -Wno-error fixed us, pretend that we never ran without -Wno-error.
- // Otherwise, pretend that we never ran the second invocation. Since -Werror
- // is an issue, log in either case.
- if retryExitCode == 0 {
- retryStdoutBuffer.WriteTo(env.stdout())
- retryStderrBuffer.WriteTo(env.stderr())
- } else {
+ // If -Wno-error fixed us, pretend that we never ran without -Wno-error. Otherwise, pretend
+ // that we never ran the second invocation.
+ if retryExitCode != 0 {
originalStdoutBuffer.WriteTo(env.stdout())
originalStderrBuffer.WriteTo(env.stderr())
+ return originalExitCode, nil
+ }
+
+ retryStdoutBuffer.WriteTo(env.stdout())
+ retryStderrBuffer.WriteTo(env.stderr())
+
+ lines := []string{}
+ if originalStderrBuffer.Len() > 0 {
+ lines = append(lines, originalStderrBuffer.String())
+ }
+ if originalStdoutBuffer.Len() > 0 {
+ lines = append(lines, originalStdoutBuffer.String())
+ }
+ outputToLog := strings.Join(lines, "\n")
+
+ // Ignore the error here; we can't do anything about it. The result is always valid (though
+ // perhaps incomplete) even if this returns an error.
+ parentProcesses, _ := collectAllParentProcesses()
+ jsonData := warningsJSONData{
+ Cwd: env.getwd(),
+ Command: append([]string{originalCmd.Path}, originalCmd.Args...),
+ Stdout: outputToLog,
+ ParentProcesses: parentProcesses,
+ }
+
+ // Write warning report to stdout for Android. On Android,
+ // double-build can be requested on remote builds as well, where there
+ // is no canonical place to write the warnings report.
+ if cfg.isAndroidWrapper {
+ stdout := env.stdout()
+ io.WriteString(stdout, "<LLVM_NEXT_ERROR_REPORT>")
+ if err := json.NewEncoder(stdout).Encode(jsonData); err != nil {
+ return 0, wrapErrorwithSourceLocf(err, "error in json.Marshal")
+ }
+ io.WriteString(stdout, "</LLVM_NEXT_ERROR_REPORT>")
+ return retryExitCode, nil
}
// All of the below is basically logging. If we fail at any point, it's
@@ -94,20 +176,6 @@ func doubleBuildWithWNoError(env env, cfg *config, originalCmd *command) (exitCo
return 0, wrapErrorwithSourceLocf(err, "error chmoding the file to be world-readable/writeable")
}
- lines := []string{}
- if originalStderrBuffer.Len() > 0 {
- lines = append(lines, originalStderrBuffer.String())
- }
- if originalStdoutBuffer.Len() > 0 {
- lines = append(lines, originalStdoutBuffer.String())
- }
- outputToLog := strings.Join(lines, "\n")
-
- jsonData := warningsJSONData{
- Cwd: env.getwd(),
- Command: append([]string{originalCmd.Path}, originalCmd.Args...),
- Stdout: outputToLog,
- }
enc := json.NewEncoder(tmpFile)
if err := enc.Encode(jsonData); err != nil {
_ = tmpFile.Close()
@@ -125,10 +193,87 @@ func doubleBuildWithWNoError(env env, cfg *config, originalCmd *command) (exitCo
return retryExitCode, nil
}
-// Struct used to write JSON. Fileds have to be uppercase for the json
-// encoder to read them.
+func parseParentPidFromPidStat(pidStatContents string) (parentPid int, ok bool) {
+ // The parent's pid is the fourth field of /proc/[pid]/stat. Sadly, the second field can
+ // have spaces in it. It ends at the last ')' in the contents of /proc/[pid]/stat.
+ lastParen := strings.LastIndex(pidStatContents, ")")
+ if lastParen == -1 {
+ return 0, false
+ }
+
+ thirdFieldAndBeyond := strings.TrimSpace(pidStatContents[lastParen+1:])
+ fields := strings.Fields(thirdFieldAndBeyond)
+ if len(fields) < 2 {
+ return 0, false
+ }
+
+ fourthField := fields[1]
+ parentPid, err := strconv.Atoi(fourthField)
+ if err != nil {
+ return 0, false
+ }
+ return parentPid, true
+}
+
+func collectProcessData(pid int) (args, env []string, parentPid int, err error) {
+ procDir := fmt.Sprintf("/proc/%d", pid)
+
+ readFile := func(fileName string) (string, error) {
+ s, err := ioutil.ReadFile(path.Join(procDir, fileName))
+ if err != nil {
+ return "", fmt.Errorf("reading %s: %v", fileName, err)
+ }
+ return string(s), nil
+ }
+
+ statStr, err := readFile("stat")
+ if err != nil {
+ return nil, nil, 0, err
+ }
+
+ parentPid, ok := parseParentPidFromPidStat(statStr)
+ if !ok {
+ return nil, nil, 0, fmt.Errorf("no parseable parent PID found in %q", statStr)
+ }
+
+ argsStr, err := readFile("cmdline")
+ if err != nil {
+ return nil, nil, 0, err
+ }
+ args = strings.Split(argsStr, "\x00")
+
+ envStr, err := readFile("environ")
+ if err != nil {
+ return nil, nil, 0, err
+ }
+ env = strings.Split(envStr, "\x00")
+ return args, env, parentPid, nil
+}
+
+// The returned []processData is valid even if this returns an error. The error is just the first we
+// encountered when trying to collect parent process data.
+func collectAllParentProcesses() ([]processData, error) {
+ results := []processData{}
+ for parent := os.Getppid(); parent != 1; {
+ args, env, p, err := collectProcessData(parent)
+ if err != nil {
+ return results, fmt.Errorf("inspecting parent %d: %v", parent, err)
+ }
+ results = append(results, processData{Args: args, Env: env})
+ parent = p
+ }
+ return results, nil
+}
+
+type processData struct {
+ Args []string `json:"invocation"`
+ Env []string `json:"env"`
+}
+
+// Struct used to write JSON. Fields have to be uppercase for the json encoder to read them.
type warningsJSONData struct {
- Cwd string `json:"cwd"`
- Command []string `json:"command"`
- Stdout string `json:"stdout"`
+ Cwd string `json:"cwd"`
+ Command []string `json:"command"`
+ Stdout string `json:"stdout"`
+ ParentProcesses []processData `json:"parent_process_data"`
}
diff --git a/compiler_wrapper/disable_werror_flag_test.go b/compiler_wrapper/disable_werror_flag_test.go
index fb25d193..0c43dbe0 100644
--- a/compiler_wrapper/disable_werror_flag_test.go
+++ b/compiler_wrapper/disable_werror_flag_test.go
@@ -70,6 +70,39 @@ func TestDoubleBuildWithWNoErrorFlag(t *testing.T) {
})
}
+func TestKnownConfigureFileParsing(t *testing.T) {
+ withTestContext(t, func(ctx *testContext) {
+ for _, f := range []string{"conftest.c", "conftest.cpp", "/dev/null"} {
+ if !isLikelyAConfTest(ctx.cfg, ctx.newCommand(clangX86_64, f)) {
+ t.Errorf("%q isn't considered a conf test file", f)
+ }
+ }
+ })
+}
+
+func TestDoubleBuildWithKnownConfigureFile(t *testing.T) {
+ withForceDisableWErrorTestContext(t, func(ctx *testContext) {
+ ctx.cmdMock = func(cmd *command, stdin io.Reader, stdout io.Writer, stderr io.Writer) error {
+ switch ctx.cmdCount {
+ case 1:
+ if err := verifyArgCount(cmd, 0, "-Wno-error"); err != nil {
+ return err
+ }
+ fmt.Fprint(stderr, "-Werror originalerror")
+ return newExitCodeError(1)
+ default:
+ t.Fatalf("unexpected command: %#v", cmd)
+ return nil
+ }
+ }
+
+ ctx.mustFail(callCompiler(ctx, ctx.cfg, ctx.newCommand(clangX86_64, "conftest.c")))
+ if ctx.cmdCount != 1 {
+ t.Errorf("expected 1 call. Got: %d", ctx.cmdCount)
+ }
+ })
+}
+
func TestDoubleBuildWithWNoErrorAndCCache(t *testing.T) {
withForceDisableWErrorTestContext(t, func(ctx *testContext) {
ctx.cfg.useCCache = true
@@ -145,7 +178,7 @@ func TestForwardStdoutAndStderrWhenDoubleBuildFails(t *testing.T) {
}
}
exitCode := callCompiler(ctx, ctx.cfg, ctx.newCommand(clangX86_64, mainCc))
- if exitCode != 5 {
+ if exitCode != 3 {
t.Errorf("unexpected exitcode. Got: %d", exitCode)
}
if err := verifyNonInternalError(ctx.stderrString(), "-Werror originalerror"); err != nil {
@@ -277,8 +310,8 @@ func TestLogWarningsWhenDoubleBuildFails(t *testing.T) {
}
ctx.mustFail(callCompiler(ctx, ctx.cfg, ctx.newCommand(clangX86_64, mainCc)))
loggedWarnings := readLoggedWarnings(ctx)
- if loggedWarnings == nil {
- t.Fatal("expected logged warnings")
+ if loggedWarnings != nil {
+ t.Fatal("expected no warnings to be logged")
}
})
}
@@ -372,3 +405,163 @@ func TestDoubleBuildWerrorChmodsThingsAppropriately(t *testing.T) {
}
})
}
+
+func TestAndroidDisableWerror(t *testing.T) {
+ withTestContext(t, func(ctx *testContext) {
+ ctx.cfg.isAndroidWrapper = true
+
+ // Disable werror ON
+ ctx.cfg.useLlvmNext = true
+ if !shouldForceDisableWerror(ctx, ctx.cfg) {
+ t.Errorf("disable Werror not enabled for Android with useLlvmNext")
+ }
+
+ // Disable werror OFF
+ ctx.cfg.useLlvmNext = false
+ if shouldForceDisableWerror(ctx, ctx.cfg) {
+ t.Errorf("disable-Werror enabled for Android without useLlvmNext")
+ }
+ })
+}
+
+func TestChromeOSNoForceDisableWerror(t *testing.T) {
+ withTestContext(t, func(ctx *testContext) {
+ if shouldForceDisableWerror(ctx, ctx.cfg) {
+ t.Errorf("disable Werror enabled for ChromeOS without FORCE_DISABLE_WERROR set")
+ }
+ })
+}
+
+func TestClangTidyNoDoubleBuild(t *testing.T) {
+ withTestContext(t, func(ctx *testContext) {
+ ctx.cfg.isAndroidWrapper = true
+ ctx.cfg.useLlvmNext = true
+ ctx.must(callCompiler(ctx, ctx.cfg, ctx.newCommand(clangTidyAndroid, "--", mainCc)))
+ if ctx.cmdCount != 1 {
+ t.Errorf("expected 1 call. Got: %d", ctx.cmdCount)
+ }
+ })
+}
+
+func withAndroidClangTidyTestContext(t *testing.T, work func(ctx *testContext)) {
+ withTestContext(t, func(ctx *testContext) {
+ ctx.cfg.isAndroidWrapper = true
+ ctx.cfg.useLlvmNext = true
+ ctx.env = []string{"OUT_DIR=/tmp"}
+
+ ctx.cmdMock = func(cmd *command, stdin io.Reader, stdout io.Writer, stderr io.Writer) error {
+ hasArg := func(s string) bool {
+ for _, e := range cmd.Args {
+ if strings.Contains(e, s) {
+ return true
+ }
+ }
+ return false
+ }
+ switch ctx.cmdCount {
+ case 1:
+ if hasArg("-Werror") {
+ fmt.Fprint(stdout, "clang-diagnostic-")
+ return newExitCodeError(1)
+ }
+ if hasArg("-warnings-as-errors") {
+ fmt.Fprint(stdout, "warnings-as-errors")
+ return newExitCodeError(1)
+ }
+ return nil
+ case 2:
+ if hasArg("warnings-as-errors") {
+ return fmt.Errorf("Unexpected arg warnings-as-errors found. All args: %s", cmd.Args)
+ }
+ return nil
+ default:
+ t.Fatalf("unexpected command: %#v", cmd)
+ return nil
+ }
+ }
+ work(ctx)
+ })
+}
+
+func TestClangTidyDoubleBuildClangTidyError(t *testing.T) {
+ withAndroidClangTidyTestContext(t, func(ctx *testContext) {
+ ctx.must(callCompiler(ctx, ctx.cfg, ctx.newCommand(clangTidyAndroid, "-warnings-as-errors=*", "--", mainCc)))
+ if ctx.cmdCount != 2 {
+ t.Errorf("expected 2 calls. Got: %d", ctx.cmdCount)
+ }
+ })
+}
+
+func TestClangTidyDoubleBuildClangError(t *testing.T) {
+ withAndroidClangTidyTestContext(t, func(ctx *testContext) {
+ ctx.must(callCompiler(ctx, ctx.cfg, ctx.newCommand(clangTidyAndroid, "-Werrors=*", "--", mainCc)))
+ if ctx.cmdCount != 2 {
+ t.Errorf("expected 2 calls. Got: %d", ctx.cmdCount)
+ }
+ })
+}
+
+func TestProcPidStatParsingWorksAsIntended(t *testing.T) {
+ t.Parallel()
+
+ type expected struct {
+ parent int
+ ok bool
+ }
+
+ testCases := []struct {
+ input string
+ expected expected
+ }{
+ {
+ input: "2556041 (cat) R 2519408 2556041 2519408 34818 2556041 4194304",
+ expected: expected{
+ parent: 2519408,
+ ok: true,
+ },
+ },
+ {
+ input: "2556041 (c a t) R 2519408 2556041 2519408 34818 2556041 4194304",
+ expected: expected{
+ parent: 2519408,
+ ok: true,
+ },
+ },
+ {
+ input: "",
+ expected: expected{
+ ok: false,
+ },
+ },
+ {
+ input: "foo (bar)",
+ expected: expected{
+ ok: false,
+ },
+ },
+ {
+ input: "foo (bar) baz",
+ expected: expected{
+ ok: false,
+ },
+ },
+ {
+ input: "foo (bar) baz 1qux2",
+ expected: expected{
+ ok: false,
+ },
+ },
+ }
+
+ for _, tc := range testCases {
+ parent, ok := parseParentPidFromPidStat(tc.input)
+ if tc.expected.ok != ok {
+ t.Errorf("Got ok=%v when parsing %q; expected %v", ok, tc.input, tc.expected.ok)
+ continue
+ }
+
+ if tc.expected.parent != parent {
+ t.Errorf("Got parent=%v when parsing %q; expected %v", parent, tc.input, tc.expected.parent)
+ }
+ }
+}
diff --git a/compiler_wrapper/env.go b/compiler_wrapper/env.go
index 56b3a913..2c48ad30 100644
--- a/compiler_wrapper/env.go
+++ b/compiler_wrapper/env.go
@@ -28,19 +28,25 @@ type processEnv struct {
}
func newProcessEnv() (env, error) {
- // Note: We are not using os.getwd() as this sometimes uses the value of the PWD
- // env variable. This has the following problems:
- // - if PWD=/proc/self/cwd, os.getwd() will return "/proc/self/cwd",
- // and we need to read the link to get the actual wd. However, we can't always
- // do this as we are calculating
- // the path to clang, and following a symlinked cwd first would make
- // this calculation invalid.
- // - the old python wrapper doesn't respect the PWD env variable either, so if we
- // did we would fail the comparison to the old wrapper.
- wd, err := os.Readlink("/proc/self/cwd")
+ wd, err := os.Getwd()
if err != nil {
return nil, wrapErrorwithSourceLocf(err, "failed to read working directory")
}
+
+ // Note: On Linux, Getwd may resolve to /proc/self/cwd, since it checks the PWD environment
+ // variable. We need to read the link to get the actual working directory. We can't always
+ // do this as we are calculating the path to clang, since following a symlinked cwd first
+ // would make this calculation invalid.
+ //
+ // FIXME(gbiv): It's not clear why always Readlink()ing here an issue. crrev.com/c/1764624
+ // might provide helpful context?
+ if wd == "/proc/self/cwd" {
+ wd, err = os.Readlink(wd)
+ if err != nil {
+ return nil, wrapErrorwithSourceLocf(err, "resolving /proc/self/cwd")
+ }
+ }
+
return &processEnv{wd: wd}, nil
}
diff --git a/compiler_wrapper/env_test.go b/compiler_wrapper/env_test.go
index 8580d4aa..e03d60a8 100644
--- a/compiler_wrapper/env_test.go
+++ b/compiler_wrapper/env_test.go
@@ -7,6 +7,7 @@ package main
import (
"bytes"
"flag"
+ "io/ioutil"
"os"
"os/exec"
"path/filepath"
@@ -163,6 +164,79 @@ func TestProcessEnvRunCmdDeleteEnv(t *testing.T) {
})
}
+func TestNewProcessEnvResolvesPwdAwayProperly(t *testing.T) {
+ // This test cannot be t.Parallel(), since it modifies our environment.
+ const envPwd = "PWD"
+
+ oldEnvPwd := os.Getenv(envPwd)
+ defer func() {
+ if oldEnvPwd == "" {
+ os.Unsetenv(envPwd)
+ } else {
+ os.Setenv(envPwd, oldEnvPwd)
+ }
+ }()
+
+ os.Unsetenv(envPwd)
+
+ initialWd, err := os.Getwd()
+ if initialWd == "/proc/self/cwd" {
+ t.Fatalf("Working directory should never be %q when env is unset", initialWd)
+ }
+
+ defer func() {
+ if err := os.Chdir(initialWd); err != nil {
+ t.Errorf("Changing back to %q failed: %v", initialWd, err)
+ }
+ }()
+
+ tempDir, err := ioutil.TempDir("", "wrapper_env_test")
+ if err != nil {
+ t.Fatalf("Failed making temp dir: %v", err)
+ }
+
+ // Nothing we can do if this breaks, unfortunately.
+ defer os.RemoveAll(tempDir)
+
+ tempDirLink := tempDir + ".symlink"
+ if err := os.Symlink(tempDir, tempDirLink); err != nil {
+ t.Fatalf("Failed creating symlink %q => %q: %v", tempDirLink, tempDir, err)
+ }
+
+ if err := os.Chdir(tempDir); err != nil {
+ t.Fatalf("Failed chdir'ing to tempdir at %q: %v", tempDirLink, err)
+ }
+
+ if err := os.Setenv(envPwd, tempDirLink); err != nil {
+ t.Fatalf("Failed setting pwd to tempdir at %q: %v", tempDirLink, err)
+ }
+
+ // Ensure that we don't resolve symlinks if they're present in our CWD somehow, except for
+ // /proc/self/cwd, which tells us nothing about where we are.
+ env, err := newProcessEnv()
+ if err != nil {
+ t.Fatalf("Failed making a new env: %v", err)
+ }
+
+ if wd := env.getwd(); wd != tempDirLink {
+ t.Errorf("Environment setup had a wd of %q; wanted %q", wd, tempDirLink)
+ }
+
+ const cwdLink = "/proc/self/cwd"
+ if err := os.Setenv(envPwd, cwdLink); err != nil {
+ t.Fatalf("Failed setting pwd to /proc/self/cwd: %v", err)
+ }
+
+ env, err = newProcessEnv()
+ if err != nil {
+ t.Fatalf("Failed making a new env: %v", err)
+ }
+
+ if wd := env.getwd(); wd != tempDir {
+ t.Errorf("Environment setup had a wd of %q; wanted %q", cwdLink, tempDir)
+ }
+}
+
func execEcho(ctx *testContext, cmd *command) {
env := &processEnv{}
err := env.exec(createEcho(ctx, cmd))
diff --git a/compiler_wrapper/gcc_flags.go b/compiler_wrapper/gcc_flags.go
index 397bf82d..7141d14c 100644
--- a/compiler_wrapper/gcc_flags.go
+++ b/compiler_wrapper/gcc_flags.go
@@ -14,6 +14,7 @@ func processGccFlags(builder *commandBuilder) {
"-march=goldmont": "-march=silvermont",
"-march=goldmont-plus": "-march=silvermont",
"-march=skylake": "-march=corei7",
+ "-march=tigerlake": "-march=corei7",
"-march=tremont": "-march=silvermont",
}
diff --git a/compiler_wrapper/gcc_flags_test.go b/compiler_wrapper/gcc_flags_test.go
index 8f8e9023..8de07a47 100644
--- a/compiler_wrapper/gcc_flags_test.go
+++ b/compiler_wrapper/gcc_flags_test.go
@@ -37,6 +37,7 @@ func TestConvertClangToGccFlags(t *testing.T) {
{"-march=goldmont", "-march=silvermont"},
{"-march=goldmont-plus", "-march=silvermont"},
{"-march=skylake", "-march=corei7"},
+ {"-march=tigerlake", "-march=corei7"},
{"-march=tremont", "-march=silvermont"},
}
diff --git a/compiler_wrapper/update_compiler_wrapper.sh b/compiler_wrapper/install_compiler_wrapper.sh
index 93de2be4..479b112c 100755
--- a/compiler_wrapper/update_compiler_wrapper.sh
+++ b/compiler_wrapper/install_compiler_wrapper.sh
@@ -1,4 +1,8 @@
#!/bin/bash
+#
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
# This script rebuilds and installs compiler wrappers
@@ -17,13 +21,20 @@ sudo cp ../binary_search_tool/bisect_driver.py /usr/bin
echo "/usr/bin/clang_host_wrapper/bisect_driver.py"
# Update the target wrappers
for GCC in cross-x86_64-cros-linux-gnu/gcc cross-armv7a-cros-linux-gnueabihf/gcc cross-aarch64-cros-linux-gnu/gcc; do
- FILES="$(equery f $GCC)"
+ if ! FILES="$(equery f ${GCC})"; then
+ if [[ $(equery l "${GCC}" 2>&1 | wc -c) -eq 0 ]]; then
+ echo "no ${GCC} package found; skipping" >&2
+ continue
+ fi
+ # Something went wrong, and the equery above probably complained about it.
+ exit 1
+ fi
./build.py --config=cros.hardened --use_ccache=false --use_llvm_next=false --output_file=./sysroot_wrapper.hardened.noccache
sudo mv ./sysroot_wrapper.hardened.noccache "$(grep sysroot_wrapper.hardened.noccache <<< "${FILES}")"
- echo "$(grep sysroot_wrapper.hardened.noccache <<< "${FILES}")"
+ grep sysroot_wrapper.hardened.noccache <<< "${FILES}"
./build.py --config=cros.hardened --use_ccache=true --use_llvm_next=false --output_file=./sysroot_wrapper.hardened.ccache
sudo mv ./sysroot_wrapper.hardened.ccache "$(grep sysroot_wrapper.hardened.ccache <<< "${FILES}")"
- echo "$(grep sysroot_wrapper.hardened.ccache <<< "${FILES}")"
+ grep sysroot_wrapper.hardened.ccache <<< "${FILES}"
sudo cp ../binary_search_tool/bisect_driver.py "$(grep bisect_driver.py <<< "${FILES}")"
- echo "$(grep bisect_driver.py <<< "${FILES}")"
+ grep bisect_driver.py <<< "${FILES}"
done
diff --git a/compiler_wrapper/libc_exec.go b/compiler_wrapper/libc_exec.go
index f8db9d86..d9867733 100644
--- a/compiler_wrapper/libc_exec.go
+++ b/compiler_wrapper/libc_exec.go
@@ -7,15 +7,31 @@
package main
// #include <errno.h>
+// #include <stdio.h>
// #include <stdlib.h>
// #include <string.h>
// #include <unistd.h>
+// #include <sys/types.h>
+// #include <sys/wait.h>
//
// int libc_exec(const char *pathname, char *const argv[], char *const envp[]) {
-// if (execve(pathname, argv, envp) != 0) {
+// // Since fork() brings us to one thread, we can only use async-signal-safe funcs below.
+// pid_t pid = fork();
+// if (pid == 0) {
+// execve(pathname, argv, envp);
+// fprintf(stderr, "exec failed (errno: %d)\n", errno);
+// _exit(1);
+// }
+// if (pid < 0) {
+// return errno;
+// }
+//
+// int wstatus;
+// pid_t waited = waitpid(pid, &wstatus, 0);
+// if (waited == -1) {
// return errno;
// }
-// return 0;
+// exit(WEXITSTATUS(wstatus));
//}
import "C"
import (
@@ -29,7 +45,7 @@ import (
// Note that this changes the go binary to be a dynamically linked one.
// See crbug.com/1000863 for details.
// To use this version of exec, please add '-tags libc_exec' when building Go binary.
-// Without the tags, libc_exec.go will be used.
+// Without the tags, libc_exec.go will not be used.
func execCmd(env env, cmd *command) error {
freeList := []unsafe.Pointer{}
diff --git a/compiler_wrapper/rusage_flag.go b/compiler_wrapper/rusage_flag.go
index 2a3768c1..690308b2 100644
--- a/compiler_wrapper/rusage_flag.go
+++ b/compiler_wrapper/rusage_flag.go
@@ -18,6 +18,26 @@ func getRusageLogFilename(env env) string {
return value
}
+func lockFileExclusive(fd uintptr) error {
+ maxTries := 100
+ for i := 0; i < maxTries; i++ {
+ const seekSet = 0
+ err := syscall.FcntlFlock(fd, syscall.F_SETLKW, &syscall.Flock_t{
+ Type: syscall.F_WRLCK,
+ Whence: seekSet,
+ Start: 0,
+ Len: 0,
+ })
+ if err == nil {
+ return nil
+ }
+ if err != syscall.EINTR {
+ return fmt.Errorf("locking file: %v", err)
+ }
+ }
+ return fmt.Errorf("locking file failed after %d tries", maxTries)
+}
+
func logRusage(env env, logFileName string, compilerCmd *command) (exitCode int, err error) {
rusageBefore := syscall.Rusage{}
if err := syscall.Getrusage(syscall.RUSAGE_CHILDREN, &rusageBefore); err != nil {
@@ -49,21 +69,35 @@ func logRusage(env env, logFileName string, compilerCmd *command) (exitCode int,
if err := os.MkdirAll(filepath.Dir(logFileName), 0777); err != nil {
return 0, wrapErrorwithSourceLocf(err, "error creating rusage log directory %s", logFileName)
}
+
+ timeUnit := float64(time.Second)
+ data := fmt.Sprintf("%.5f : %.5f : %.5f : %d : %s : %s\n",
+ float64(elapsedRealTime)/timeUnit, float64(elapsedUserTime)/timeUnit, float64(elapsedSysTime)/timeUnit,
+ maxMemUsed, absCompilerPath,
+ strings.Join(append([]string{filepath.Base(absCompilerPath)}, compilerCmd.Args...), " "))
+
// Note: using file mode 0666 so that a root-created log is writable by others.
logFile, err := os.OpenFile(logFileName, os.O_CREATE|os.O_APPEND|os.O_WRONLY, 0666)
if err != nil {
- return 0, wrapErrorwithSourceLocf(err, "error creating rusage logfile %s", logFileName)
+ return 0, wrapErrorwithSourceLocf(err, "creating rusage logfile %s", logFileName)
}
- timeUnit := float64(time.Second)
- if _, err := fmt.Fprintf(logFile, "%.5f : %.5f : %.5f : %d : %s : %s\n",
- float64(elapsedRealTime)/timeUnit, float64(elapsedUserTime)/timeUnit, float64(elapsedSysTime)/timeUnit,
- maxMemUsed, absCompilerPath,
- strings.Join(append([]string{filepath.Base(absCompilerPath)}, compilerCmd.Args...), " ")); err != nil {
+
+ // O_APPEND's atomicity guarantees are only for writes up to a certain size. If we don't
+ // lock the file, we might end up with corrupted records.
+ //
+ // Note that Close()'ing the file releases all associated locks.
+ if err := lockFileExclusive(logFile.Fd()); err != nil {
_ = logFile.Close()
- return 0, wrapErrorwithSourceLocf(err, "error writing rusage logfile %s", logFileName)
+ return 0, wrapErrorwithSourceLocf(err, "locking rusage logfile %s: %v", logFileName, err)
+ }
+
+ _, err = logFile.WriteString(data)
+ closeErr := logFile.Close()
+ if err != nil {
+ return 0, wrapErrorwithSourceLocf(err, "writing to rusage logfile %s: %v", logFileName, err)
}
- if err := logFile.Close(); err != nil {
- return 0, wrapErrorwithSourceLocf(err, "error closing rusage logfile %s", logFileName)
+ if closeErr != nil {
+ return 0, wrapErrorwithSourceLocf(err, "closing rusage logfile %s: %v", logFileName, closeErr)
}
return exitCode, nil
diff --git a/compiler_wrapper/sysroot_flag.go b/compiler_wrapper/sysroot_flag.go
index 67625b3b..501fb20e 100644
--- a/compiler_wrapper/sysroot_flag.go
+++ b/compiler_wrapper/sysroot_flag.go
@@ -9,7 +9,7 @@ import (
"strings"
)
-func processSysrootFlag(builder *commandBuilder) string {
+func processSysrootFlag(builder *commandBuilder) {
fromUser := false
for _, arg := range builder.args {
if arg.fromUser && strings.HasPrefix(arg.value, "--sysroot=") {
@@ -28,5 +28,4 @@ func processSysrootFlag(builder *commandBuilder) string {
if !fromUser {
builder.addPreUserArgs("--sysroot=" + sysroot)
}
- return sysroot
}
diff --git a/compiler_wrapper/testdata/android_golden/bisect.json b/compiler_wrapper/testdata/android_golden/bisect.json
index 25df7f17..a1ffc50b 100644
--- a/compiler_wrapper/testdata/android_golden/bisect.json
+++ b/compiler_wrapper/testdata/android_golden/bisect.json
@@ -18,9 +18,9 @@
"cmd": {
"path": "/usr/bin/env",
"args": [
- "python",
+ "python3",
"-c",
- "\nimport bisect_driver\nimport shlex\nimport sys\n\ndef ExpandArgs(args, target):\n\tfor arg in args:\n\t\tif arg[0] == '@':\n\t\t\twith open(arg[1:], 'rb') as f:\n\t\t\t\tExpandArgs(shlex.split(f.read()), target)\n\t\telse:\n\t\t\ttarget.append(arg)\n\treturn target\n\nstage = sys.argv[1]\ndir = sys.argv[2]\nexecargs = ExpandArgs(sys.argv[3:], [])\n\nsys.exit(bisect_driver.bisect_driver(stage, dir, execargs))\n",
+ "\nimport bisect_driver\nimport shlex\nimport sys\n\ndef ExpandArgs(args, target):\n\tfor arg in args:\n\t\tif arg[0] == '@':\n\t\t\twith open(arg[1:], 'r', encoding='utf-8') as f:\n\t\t\t\tExpandArgs(shlex.split(f.read()), target)\n\t\telse:\n\t\t\ttarget.append(arg)\n\treturn target\n\nstage = sys.argv[1]\ndir = sys.argv[2]\nexecargs = ExpandArgs(sys.argv[3:], [])\n\nsys.exit(bisect_driver.bisect_driver(stage, dir, execargs))\n",
"someBisectStage",
"/user/home/ANDROID_BISECT",
"/tmp/stable/clang.real",
@@ -53,9 +53,9 @@
"cmd": {
"path": "/usr/bin/env",
"args": [
- "python",
+ "python3",
"-c",
- "\nimport bisect_driver\nimport shlex\nimport sys\n\ndef ExpandArgs(args, target):\n\tfor arg in args:\n\t\tif arg[0] == '@':\n\t\t\twith open(arg[1:], 'rb') as f:\n\t\t\t\tExpandArgs(shlex.split(f.read()), target)\n\t\telse:\n\t\t\ttarget.append(arg)\n\treturn target\n\nstage = sys.argv[1]\ndir = sys.argv[2]\nexecargs = ExpandArgs(sys.argv[3:], [])\n\nsys.exit(bisect_driver.bisect_driver(stage, dir, execargs))\n",
+ "\nimport bisect_driver\nimport shlex\nimport sys\n\ndef ExpandArgs(args, target):\n\tfor arg in args:\n\t\tif arg[0] == '@':\n\t\t\twith open(arg[1:], 'r', encoding='utf-8') as f:\n\t\t\t\tExpandArgs(shlex.split(f.read()), target)\n\t\telse:\n\t\t\ttarget.append(arg)\n\treturn target\n\nstage = sys.argv[1]\ndir = sys.argv[2]\nexecargs = ExpandArgs(sys.argv[3:], [])\n\nsys.exit(bisect_driver.bisect_driver(stage, dir, execargs))\n",
"someBisectStage",
"someBisectDir",
"/tmp/stable/clang.real",
@@ -91,9 +91,9 @@
"cmd": {
"path": "/usr/bin/env",
"args": [
- "python",
+ "python3",
"-c",
- "\nimport bisect_driver\nimport shlex\nimport sys\n\ndef ExpandArgs(args, target):\n\tfor arg in args:\n\t\tif arg[0] == '@':\n\t\t\twith open(arg[1:], 'rb') as f:\n\t\t\t\tExpandArgs(shlex.split(f.read()), target)\n\t\telse:\n\t\t\ttarget.append(arg)\n\treturn target\n\nstage = sys.argv[1]\ndir = sys.argv[2]\nexecargs = ExpandArgs(sys.argv[3:], [])\n\nsys.exit(bisect_driver.bisect_driver(stage, dir, execargs))\n",
+ "\nimport bisect_driver\nimport shlex\nimport sys\n\ndef ExpandArgs(args, target):\n\tfor arg in args:\n\t\tif arg[0] == '@':\n\t\t\twith open(arg[1:], 'r', encoding='utf-8') as f:\n\t\t\t\tExpandArgs(shlex.split(f.read()), target)\n\t\telse:\n\t\t\ttarget.append(arg)\n\treturn target\n\nstage = sys.argv[1]\ndir = sys.argv[2]\nexecargs = ExpandArgs(sys.argv[3:], [])\n\nsys.exit(bisect_driver.bisect_driver(stage, dir, execargs))\n",
"someBisectStage",
"someBisectDir",
"/tmp/stable/clang.real",
diff --git a/compiler_wrapper/testdata/cros_clang_host_golden/bisect.json b/compiler_wrapper/testdata/cros_clang_host_golden/bisect.json
index 28adfee2..1c2e5a0e 100644
--- a/compiler_wrapper/testdata/cros_clang_host_golden/bisect.json
+++ b/compiler_wrapper/testdata/cros_clang_host_golden/bisect.json
@@ -18,27 +18,30 @@
"cmd": {
"path": "/usr/bin/env",
"args": [
- "python",
+ "python3",
"-c",
- "\nimport bisect_driver\nimport shlex\nimport sys\n\ndef ExpandArgs(args, target):\n\tfor arg in args:\n\t\tif arg[0] == '@':\n\t\t\twith open(arg[1:], 'rb') as f:\n\t\t\t\tExpandArgs(shlex.split(f.read()), target)\n\t\telse:\n\t\t\ttarget.append(arg)\n\treturn target\n\nstage = sys.argv[1]\ndir = sys.argv[2]\nexecargs = ExpandArgs(sys.argv[3:], [])\n\nsys.exit(bisect_driver.bisect_driver(stage, dir, execargs))\n",
+ "\nimport bisect_driver\nimport shlex\nimport sys\n\ndef ExpandArgs(args, target):\n\tfor arg in args:\n\t\tif arg[0] == '@':\n\t\t\twith open(arg[1:], 'r', encoding='utf-8') as f:\n\t\t\t\tExpandArgs(shlex.split(f.read()), target)\n\t\telse:\n\t\t\ttarget.append(arg)\n\treturn target\n\nstage = sys.argv[1]\ndir = sys.argv[2]\nexecargs = ExpandArgs(sys.argv[3:], [])\n\nsys.exit(bisect_driver.bisect_driver(stage, dir, execargs))\n",
"someBisectStage",
"/tmp/sysroot_bisect",
"/tmp/stable/clang",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
],
"env_updates": [
"PYTHONPATH=/somepath/test_binary"
@@ -67,27 +70,30 @@
"cmd": {
"path": "/usr/bin/env",
"args": [
- "python",
+ "python3",
"-c",
- "\nimport bisect_driver\nimport shlex\nimport sys\n\ndef ExpandArgs(args, target):\n\tfor arg in args:\n\t\tif arg[0] == '@':\n\t\t\twith open(arg[1:], 'rb') as f:\n\t\t\t\tExpandArgs(shlex.split(f.read()), target)\n\t\telse:\n\t\t\ttarget.append(arg)\n\treturn target\n\nstage = sys.argv[1]\ndir = sys.argv[2]\nexecargs = ExpandArgs(sys.argv[3:], [])\n\nsys.exit(bisect_driver.bisect_driver(stage, dir, execargs))\n",
+ "\nimport bisect_driver\nimport shlex\nimport sys\n\ndef ExpandArgs(args, target):\n\tfor arg in args:\n\t\tif arg[0] == '@':\n\t\t\twith open(arg[1:], 'r', encoding='utf-8') as f:\n\t\t\t\tExpandArgs(shlex.split(f.read()), target)\n\t\telse:\n\t\t\ttarget.append(arg)\n\treturn target\n\nstage = sys.argv[1]\ndir = sys.argv[2]\nexecargs = ExpandArgs(sys.argv[3:], [])\n\nsys.exit(bisect_driver.bisect_driver(stage, dir, execargs))\n",
"someBisectStage",
"someBisectDir",
"/tmp/stable/clang",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
],
"env_updates": [
"PYTHONPATH=/somepath/test_binary"
@@ -119,27 +125,30 @@
"cmd": {
"path": "/usr/bin/env",
"args": [
- "python",
+ "python3",
"-c",
- "\nimport bisect_driver\nimport shlex\nimport sys\n\ndef ExpandArgs(args, target):\n\tfor arg in args:\n\t\tif arg[0] == '@':\n\t\t\twith open(arg[1:], 'rb') as f:\n\t\t\t\tExpandArgs(shlex.split(f.read()), target)\n\t\telse:\n\t\t\ttarget.append(arg)\n\treturn target\n\nstage = sys.argv[1]\ndir = sys.argv[2]\nexecargs = ExpandArgs(sys.argv[3:], [])\n\nsys.exit(bisect_driver.bisect_driver(stage, dir, execargs))\n",
+ "\nimport bisect_driver\nimport shlex\nimport sys\n\ndef ExpandArgs(args, target):\n\tfor arg in args:\n\t\tif arg[0] == '@':\n\t\t\twith open(arg[1:], 'r', encoding='utf-8') as f:\n\t\t\t\tExpandArgs(shlex.split(f.read()), target)\n\t\telse:\n\t\t\ttarget.append(arg)\n\treturn target\n\nstage = sys.argv[1]\ndir = sys.argv[2]\nexecargs = ExpandArgs(sys.argv[3:], [])\n\nsys.exit(bisect_driver.bisect_driver(stage, dir, execargs))\n",
"someBisectStage",
"someBisectDir",
"/tmp/stable/clang",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
],
"env_updates": [
"PYTHONPATH=/somepath/test_binary"
diff --git a/compiler_wrapper/testdata/cros_clang_host_golden/clang_ftrapv_maincc_target_specific.json b/compiler_wrapper/testdata/cros_clang_host_golden/clang_ftrapv_maincc_target_specific.json
index b52f0c85..ec57b0d7 100644
--- a/compiler_wrapper/testdata/cros_clang_host_golden/clang_ftrapv_maincc_target_specific.json
+++ b/compiler_wrapper/testdata/cros_clang_host_golden/clang_ftrapv_maincc_target_specific.json
@@ -16,20 +16,23 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
@@ -52,20 +55,23 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
@@ -88,20 +94,23 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
@@ -124,20 +133,23 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
@@ -160,20 +172,23 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
@@ -196,20 +211,23 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
@@ -232,20 +250,23 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
@@ -268,20 +289,23 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
@@ -304,20 +328,23 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
diff --git a/compiler_wrapper/testdata/cros_clang_host_golden/clang_host_wrapper.json b/compiler_wrapper/testdata/cros_clang_host_golden/clang_host_wrapper.json
index 251694e8..99c12725 100644
--- a/compiler_wrapper/testdata/cros_clang_host_golden/clang_host_wrapper.json
+++ b/compiler_wrapper/testdata/cros_clang_host_golden/clang_host_wrapper.json
@@ -15,20 +15,23 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
diff --git a/compiler_wrapper/testdata/cros_clang_host_golden/clang_maincc_target_specific.json b/compiler_wrapper/testdata/cros_clang_host_golden/clang_maincc_target_specific.json
index e5a8afa7..9389a4d8 100644
--- a/compiler_wrapper/testdata/cros_clang_host_golden/clang_maincc_target_specific.json
+++ b/compiler_wrapper/testdata/cros_clang_host_golden/clang_maincc_target_specific.json
@@ -15,20 +15,23 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
@@ -50,20 +53,23 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
@@ -85,20 +91,23 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
@@ -120,20 +129,23 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
@@ -155,20 +167,23 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
@@ -190,20 +205,23 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
@@ -225,20 +243,23 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
@@ -260,20 +281,23 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
@@ -295,20 +319,23 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
diff --git a/compiler_wrapper/testdata/cros_clang_host_golden/clang_path.json b/compiler_wrapper/testdata/cros_clang_host_golden/clang_path.json
index cb175e05..080f1d48 100644
--- a/compiler_wrapper/testdata/cros_clang_host_golden/clang_path.json
+++ b/compiler_wrapper/testdata/cros_clang_host_golden/clang_path.json
@@ -15,20 +15,23 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
@@ -53,20 +56,23 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
},
"stdout": "somemessage",
@@ -91,20 +97,23 @@
"path": "/tmp/stable/clang++",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
@@ -129,20 +138,23 @@
"path": "somepath/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
@@ -174,22 +186,25 @@
"path": "/somedir/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-resource-dir=someResourceDir",
"--gcc-toolchain=/usr",
"main.cc",
- "-Wno-implicit-int-float-conversion"
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
@@ -224,22 +239,25 @@
"path": "/somedir/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-resource-dir=someResourceDir",
"--gcc-toolchain=/usr",
"main.cc",
- "-Wno-implicit-int-float-conversion"
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
@@ -274,22 +292,25 @@
"path": "/somedir/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-resource-dir=someResourceDir",
"--gcc-toolchain=/usr",
"main.cc",
- "-Wno-implicit-int-float-conversion"
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
},
"stdout": "somemessage",
@@ -314,20 +335,23 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
@@ -349,20 +373,23 @@
"path": "/tmp/stable/a/b/c/d/e/f/g/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
@@ -384,20 +411,23 @@
"path": "/tmp/stable/a/b/c/d/e/f/g/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
@@ -419,20 +449,23 @@
"path": "/tmp/stable/somedir/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
@@ -457,20 +490,23 @@
"path": "/tmp/stable/pathenv/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
diff --git a/compiler_wrapper/testdata/cros_clang_host_golden/clang_sanitizer_args.json b/compiler_wrapper/testdata/cros_clang_host_golden/clang_sanitizer_args.json
index 3df459fa..0aeb2362 100644
--- a/compiler_wrapper/testdata/cros_clang_host_golden/clang_sanitizer_args.json
+++ b/compiler_wrapper/testdata/cros_clang_host_golden/clang_sanitizer_args.json
@@ -17,21 +17,24 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fsanitize=kernel-address",
"main.cc",
- "-Wno-implicit-int-float-conversion"
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
@@ -55,21 +58,24 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fsanitize=kernel-address",
"main.cc",
- "-Wno-implicit-int-float-conversion"
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
@@ -93,21 +99,24 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fsanitize=kernel-address",
"main.cc",
- "-Wno-implicit-int-float-conversion"
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
@@ -131,21 +140,24 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fsanitize=kernel-address",
"main.cc",
- "-Wno-implicit-int-float-conversion"
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
@@ -168,22 +180,25 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fno-experimental-new-pass-manager",
"-fsanitize=fuzzer",
"main.cc",
- "-Wno-implicit-int-float-conversion"
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
@@ -207,23 +222,26 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fno-experimental-new-pass-manager",
"-fsanitize=address",
"-fprofile-instr-generate",
"main.cc",
- "-Wno-implicit-int-float-conversion"
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
@@ -246,21 +264,24 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fsanitize=address",
"main.cc",
- "-Wno-implicit-int-float-conversion"
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
@@ -283,21 +304,24 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fprofile-instr-generate",
"main.cc",
- "-Wno-implicit-int-float-conversion"
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
diff --git a/compiler_wrapper/testdata/cros_clang_host_golden/clang_specific_args.json b/compiler_wrapper/testdata/cros_clang_host_golden/clang_specific_args.json
index 40427b96..bddb110e 100644
--- a/compiler_wrapper/testdata/cros_clang_host_golden/clang_specific_args.json
+++ b/compiler_wrapper/testdata/cros_clang_host_golden/clang_specific_args.json
@@ -26,20 +26,31 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
+ "-mno-movbe",
+ "-Wclobbered",
+ "-Wno-psabi",
+ "-Wlogical-op",
+ "-Wmissing-parameter-type",
+ "-Wold-style-declaration",
+ "-Woverride-init",
+ "-Wunsafe-loop-optimizations",
"main.cc",
- "-Wno-implicit-int-float-conversion"
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
@@ -62,21 +73,24 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-Wno-#warnings",
"main.cc",
- "-Wno-implicit-int-float-conversion"
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
@@ -99,21 +113,24 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-Wno-error=uninitialized",
"main.cc",
- "-Wno-implicit-int-float-conversion"
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
@@ -136,21 +153,24 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-Wno-error=unused-variable",
"main.cc",
- "-Wno-implicit-int-float-conversion"
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
@@ -173,21 +193,24 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-Wno-unused-variable",
"main.cc",
- "-Wno-implicit-int-float-conversion"
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
@@ -210,21 +233,24 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-Wunused-variable",
"main.cc",
- "-Wno-implicit-int-float-conversion"
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
@@ -247,21 +273,24 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-someflag",
"main.cc",
- "-Wno-implicit-int-float-conversion"
+ "-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
diff --git a/compiler_wrapper/testdata/cros_clang_host_golden/clangtidy.json b/compiler_wrapper/testdata/cros_clang_host_golden/clangtidy.json
index eebda022..89e4c6f3 100644
--- a/compiler_wrapper/testdata/cros_clang_host_golden/clangtidy.json
+++ b/compiler_wrapper/testdata/cros_clang_host_golden/clangtidy.json
@@ -26,25 +26,28 @@
"cmd": {
"path": "/tmp/stable/clang-tidy",
"args": [
- "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*",
+ "-checks=*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-readability*,-google-runtime-references,-hicpp-*,-llvm-*,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*",
"main.cc",
"--",
"-resource-dir=someResourceDir",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
},
@@ -53,20 +56,23 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
@@ -100,25 +106,28 @@
"cmd": {
"path": "/tmp/stable/clang-tidy",
"args": [
- "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*",
+ "-checks=*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-readability*,-google-runtime-references,-hicpp-*,-llvm-*,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*",
"main.cc",
"--",
"-resource-dir=someResourceDir",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
},
@@ -127,20 +136,23 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
@@ -176,25 +188,28 @@
"cmd": {
"path": "/tmp/stable/clang-tidy",
"args": [
- "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*",
+ "-checks=*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-readability*,-google-runtime-references,-hicpp-*,-llvm-*,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*",
"main.cc",
"--",
"-resource-dir=someResourceDir",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
},
"stdout": "somemessage",
@@ -206,20 +221,23 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
@@ -256,25 +274,28 @@
"cmd": {
"path": "/tmp/stable/clang-tidy",
"args": [
- "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*",
+ "-checks=*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-readability*,-google-runtime-references,-hicpp-*,-llvm-*,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*",
"main.cc",
"--",
"-resource-dir=someResourceDir",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
},
@@ -283,20 +304,23 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
},
"stdout": "somemessage",
diff --git a/compiler_wrapper/testdata/cros_clang_host_golden/force_disable_werror.json b/compiler_wrapper/testdata/cros_clang_host_golden/force_disable_werror.json
index 248fcb4b..75f5e474 100644
--- a/compiler_wrapper/testdata/cros_clang_host_golden/force_disable_werror.json
+++ b/compiler_wrapper/testdata/cros_clang_host_golden/force_disable_werror.json
@@ -18,20 +18,23 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
}
}
@@ -56,20 +59,23 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
},
"stderr": "-Werror originalerror",
@@ -80,21 +86,25 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-error"
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-Wno-error",
+ "-Wno-error=poison-system-directories"
]
}
}
@@ -121,20 +131,23 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation"
]
},
"stderr": "-Werror originalerror",
@@ -145,21 +158,25 @@
"path": "/tmp/stable/clang",
"args": [
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-fuse-ld=lld",
"-Wno-unused-local-typedefs",
"-Wno-deprecated-declarations",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
"-Wno-unknown-warning-option",
+ "-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-error"
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-Wno-error",
+ "-Wno-error=poison-system-directories"
]
},
"stdout": "somemessage",
diff --git a/compiler_wrapper/testdata/cros_hardened_golden/bisect.json b/compiler_wrapper/testdata/cros_hardened_golden/bisect.json
index b00f9740..b8e0e462 100644
--- a/compiler_wrapper/testdata/cros_hardened_golden/bisect.json
+++ b/compiler_wrapper/testdata/cros_hardened_golden/bisect.json
@@ -18,27 +18,28 @@
"cmd": {
"path": "/usr/bin/env",
"args": [
- "python",
+ "python3",
"-c",
- "\nimport bisect_driver\nimport shlex\nimport sys\n\ndef ExpandArgs(args, target):\n\tfor arg in args:\n\t\tif arg[0] == '@':\n\t\t\twith open(arg[1:], 'rb') as f:\n\t\t\t\tExpandArgs(shlex.split(f.read()), target)\n\t\telse:\n\t\t\ttarget.append(arg)\n\treturn target\n\nstage = sys.argv[1]\ndir = sys.argv[2]\nexecargs = ExpandArgs(sys.argv[3:], [])\n\nsys.exit(bisect_driver.bisect_driver(stage, dir, execargs))\n",
+ "\nimport bisect_driver\nimport shlex\nimport sys\n\ndef ExpandArgs(args, target):\n\tfor arg in args:\n\t\tif arg[0] == '@':\n\t\t\twith open(arg[1:], 'r', encoding='utf-8') as f:\n\t\t\t\tExpandArgs(shlex.split(f.read()), target)\n\t\telse:\n\t\t\ttarget.append(arg)\n\treturn target\n\nstage = sys.argv[1]\ndir = sys.argv[2]\nexecargs = ExpandArgs(sys.argv[3:], [])\n\nsys.exit(bisect_driver.bisect_driver(stage, dir, execargs))\n",
"someBisectStage",
"/tmp/sysroot_bisect",
"/usr/bin/ccache",
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -46,12 +47,14 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes",
@@ -81,27 +84,28 @@
"cmd": {
"path": "/usr/bin/env",
"args": [
- "python",
+ "python3",
"-c",
- "\nimport bisect_driver\nimport shlex\nimport sys\n\ndef ExpandArgs(args, target):\n\tfor arg in args:\n\t\tif arg[0] == '@':\n\t\t\twith open(arg[1:], 'rb') as f:\n\t\t\t\tExpandArgs(shlex.split(f.read()), target)\n\t\telse:\n\t\t\ttarget.append(arg)\n\treturn target\n\nstage = sys.argv[1]\ndir = sys.argv[2]\nexecargs = ExpandArgs(sys.argv[3:], [])\n\nsys.exit(bisect_driver.bisect_driver(stage, dir, execargs))\n",
+ "\nimport bisect_driver\nimport shlex\nimport sys\n\ndef ExpandArgs(args, target):\n\tfor arg in args:\n\t\tif arg[0] == '@':\n\t\t\twith open(arg[1:], 'r', encoding='utf-8') as f:\n\t\t\t\tExpandArgs(shlex.split(f.read()), target)\n\t\telse:\n\t\t\ttarget.append(arg)\n\treturn target\n\nstage = sys.argv[1]\ndir = sys.argv[2]\nexecargs = ExpandArgs(sys.argv[3:], [])\n\nsys.exit(bisect_driver.bisect_driver(stage, dir, execargs))\n",
"someBisectStage",
"someBisectDir",
"/usr/bin/ccache",
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -109,12 +113,14 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes",
@@ -147,27 +153,28 @@
"cmd": {
"path": "/usr/bin/env",
"args": [
- "python",
+ "python3",
"-c",
- "\nimport bisect_driver\nimport shlex\nimport sys\n\ndef ExpandArgs(args, target):\n\tfor arg in args:\n\t\tif arg[0] == '@':\n\t\t\twith open(arg[1:], 'rb') as f:\n\t\t\t\tExpandArgs(shlex.split(f.read()), target)\n\t\telse:\n\t\t\ttarget.append(arg)\n\treturn target\n\nstage = sys.argv[1]\ndir = sys.argv[2]\nexecargs = ExpandArgs(sys.argv[3:], [])\n\nsys.exit(bisect_driver.bisect_driver(stage, dir, execargs))\n",
+ "\nimport bisect_driver\nimport shlex\nimport sys\n\ndef ExpandArgs(args, target):\n\tfor arg in args:\n\t\tif arg[0] == '@':\n\t\t\twith open(arg[1:], 'r', encoding='utf-8') as f:\n\t\t\t\tExpandArgs(shlex.split(f.read()), target)\n\t\telse:\n\t\t\ttarget.append(arg)\n\treturn target\n\nstage = sys.argv[1]\ndir = sys.argv[2]\nexecargs = ExpandArgs(sys.argv[3:], [])\n\nsys.exit(bisect_driver.bisect_driver(stage, dir, execargs))\n",
"someBisectStage",
"someBisectDir",
"/usr/bin/ccache",
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -175,12 +182,14 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes",
diff --git a/compiler_wrapper/testdata/cros_hardened_golden/clang_ftrapv_maincc_target_specific.json b/compiler_wrapper/testdata/cros_hardened_golden/clang_ftrapv_maincc_target_specific.json
index f71551be..13e97dc0 100644
--- a/compiler_wrapper/testdata/cros_hardened_golden/clang_ftrapv_maincc_target_specific.json
+++ b/compiler_wrapper/testdata/cros_hardened_golden/clang_ftrapv_maincc_target_specific.json
@@ -18,18 +18,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -38,12 +39,14 @@
"-ftrapv",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -71,18 +74,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-eabi",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -91,12 +95,14 @@
"-ftrapv",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-eabi"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-eabi",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -124,18 +130,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-win-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -144,12 +151,14 @@
"-ftrapv",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-win-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-win-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -177,18 +186,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/armv7m-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -197,12 +207,13 @@
"-ftrapv",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv7m-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/armv7m-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -230,18 +241,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/armv7m-cros-eabi",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -250,12 +262,13 @@
"-ftrapv",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv7m-cros-eabi"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/armv7m-cros-eabi",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -283,18 +296,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/armv7m-cros-win-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -303,12 +317,13 @@
"-ftrapv",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv7m-cros-win-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/armv7m-cros-win-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -336,18 +351,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/armv8m-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -356,12 +372,13 @@
"-ftrapv",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv8m-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/armv8m-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -389,18 +406,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/armv8m-cros-eabi",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -409,12 +427,13 @@
"-ftrapv",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv8m-cros-eabi"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/armv8m-cros-eabi",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -442,18 +461,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/armv8m-cros-win-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -462,12 +482,13 @@
"-ftrapv",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv8m-cros-win-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/armv8m-cros-win-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
diff --git a/compiler_wrapper/testdata/cros_hardened_golden/clang_maincc_target_specific.json b/compiler_wrapper/testdata/cros_hardened_golden/clang_maincc_target_specific.json
index 0dae3e82..b604692a 100644
--- a/compiler_wrapper/testdata/cros_hardened_golden/clang_maincc_target_specific.json
+++ b/compiler_wrapper/testdata/cros_hardened_golden/clang_maincc_target_specific.json
@@ -17,18 +17,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -36,12 +37,14 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -68,18 +71,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-eabi",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -87,12 +91,14 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-eabi"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-eabi",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -119,18 +125,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-win-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -138,12 +145,14 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-win-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-win-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -170,18 +179,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/armv7m-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -189,12 +199,13 @@
"-mthumb",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv7m-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/armv7m-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -221,18 +232,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/armv7m-cros-eabi",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -240,12 +252,13 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv7m-cros-eabi"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/armv7m-cros-eabi",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -272,18 +285,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/armv7m-cros-win-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -291,12 +305,13 @@
"-mthumb",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv7m-cros-win-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/armv7m-cros-win-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -323,18 +338,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/armv8m-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -342,12 +358,13 @@
"-mthumb",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv8m-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/armv8m-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -374,18 +391,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/armv8m-cros-eabi",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -393,12 +411,13 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv8m-cros-eabi"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/armv8m-cros-eabi",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -425,18 +444,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/armv8m-cros-win-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -444,12 +464,13 @@
"-mthumb",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv8m-cros-win-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/armv8m-cros-win-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
diff --git a/compiler_wrapper/testdata/cros_hardened_golden/clang_path.json b/compiler_wrapper/testdata/cros_hardened_golden/clang_path.json
index 6932398b..9780356e 100644
--- a/compiler_wrapper/testdata/cros_hardened_golden/clang_path.json
+++ b/compiler_wrapper/testdata/cros_hardened_golden/clang_path.json
@@ -17,18 +17,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -36,12 +37,14 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -71,18 +74,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -90,12 +94,14 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -125,18 +131,19 @@
"../../usr/bin/clang++",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -144,12 +151,14 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -179,18 +188,19 @@
"somepath/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -198,12 +208,14 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -240,18 +252,19 @@
"/somedir/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -261,12 +274,14 @@
"--gcc-toolchain=/usr",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -306,18 +321,19 @@
"/somedir/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -327,6 +343,9 @@
"--gcc-toolchain=/usr",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
@@ -366,18 +385,19 @@
"/somedir/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -387,12 +407,14 @@
"--gcc-toolchain=/usr",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -422,18 +444,19 @@
"/usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -441,12 +464,14 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -473,18 +498,19 @@
"a/b/usr/bin/clang",
"--sysroot=/tmp/stable/a/b/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -492,12 +518,14 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-Ba/b/bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/tmp/stable/a/b/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -524,18 +552,19 @@
"a/b/usr/bin/clang",
"--sysroot=/tmp/stable/a/b/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -543,12 +572,14 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-Ba/b/bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/tmp/stable/a/b/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -575,18 +606,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -594,12 +626,14 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -629,18 +663,19 @@
"/usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -648,12 +683,14 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
diff --git a/compiler_wrapper/testdata/cros_hardened_golden/clang_sanitizer_args.json b/compiler_wrapper/testdata/cros_hardened_golden/clang_sanitizer_args.json
index 398b6d5c..b90ad65d 100644
--- a/compiler_wrapper/testdata/cros_hardened_golden/clang_sanitizer_args.json
+++ b/compiler_wrapper/testdata/cros_hardened_golden/clang_sanitizer_args.json
@@ -19,18 +19,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -38,12 +39,14 @@
"-fsanitize=kernel-address",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -72,18 +75,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -91,12 +95,14 @@
"-fsanitize=kernel-address",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -125,18 +131,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -144,12 +151,14 @@
"-fsanitize=kernel-address",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -178,18 +187,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -197,12 +207,14 @@
"-fsanitize=kernel-address",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -230,18 +242,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -250,12 +263,14 @@
"-fsanitize=fuzzer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -284,18 +299,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -305,12 +321,14 @@
"-fprofile-instr-generate",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -338,18 +356,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -357,12 +376,14 @@
"-fsanitize=address",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -390,18 +411,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -410,12 +432,14 @@
"-fprofile-instr-generate",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
diff --git a/compiler_wrapper/testdata/cros_hardened_golden/clang_specific_args.json b/compiler_wrapper/testdata/cros_hardened_golden/clang_specific_args.json
index a1a05c22..0d4aaf92 100644
--- a/compiler_wrapper/testdata/cros_hardened_golden/clang_specific_args.json
+++ b/compiler_wrapper/testdata/cros_hardened_golden/clang_specific_args.json
@@ -28,31 +28,42 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
+ "-mno-movbe",
+ "-Wclobbered",
+ "-Wno-psabi",
+ "-Wlogical-op",
+ "-Wmissing-parameter-type",
+ "-Wold-style-declaration",
+ "-Woverride-init",
+ "-Wunsafe-loop-optimizations",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -80,18 +91,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -100,12 +112,14 @@
"-Wno-#warnings",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -133,18 +147,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -153,12 +168,14 @@
"-Wno-error=uninitialized",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -186,18 +203,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -206,12 +224,14 @@
"-Wno-error=unused-variable",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -239,18 +259,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -259,12 +280,14 @@
"-Wno-unused-variable",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -292,18 +315,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -312,12 +336,14 @@
"-Wunused-variable",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -345,18 +371,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -365,12 +392,14 @@
"-someflag",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
diff --git a/compiler_wrapper/testdata/cros_hardened_golden/clang_sysroot_wrapper_common.json b/compiler_wrapper/testdata/cros_hardened_golden/clang_sysroot_wrapper_common.json
index 161bad6f..0ef55357 100644
--- a/compiler_wrapper/testdata/cros_hardened_golden/clang_sysroot_wrapper_common.json
+++ b/compiler_wrapper/testdata/cros_hardened_golden/clang_sysroot_wrapper_common.json
@@ -52,18 +52,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -71,12 +72,14 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -106,18 +109,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -125,6 +129,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
@@ -152,29 +159,32 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -202,30 +212,33 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-D_FORTIFY_SOURCE=2",
"-fno-omit-frame-pointer",
"-fno-stack-protector",
"-D__KERNEL__",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -253,30 +266,32 @@
"../../usr/bin/clang",
"--sysroot=/usr/armv7a-cros-linux-gnueabihf",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-D_FORTIFY_SOURCE=2",
"-mthumb",
"-fno-stack-protector",
"-D__KERNEL__",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv7a-cros-linux-gnueabihf"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/armv7a-cros-linux-gnueabihf",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -303,18 +318,19 @@
"args": [
"../../usr/bin/clang",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -323,12 +339,14 @@
"--sysroot=xyz",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
diff --git a/compiler_wrapper/testdata/cros_hardened_golden/clangtidy.json b/compiler_wrapper/testdata/cros_hardened_golden/clangtidy.json
index d75eb527..06e114cb 100644
--- a/compiler_wrapper/testdata/cros_hardened_golden/clangtidy.json
+++ b/compiler_wrapper/testdata/cros_hardened_golden/clangtidy.json
@@ -26,24 +26,25 @@
"cmd": {
"path": "../../usr/bin/clang-tidy",
"args": [
- "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*",
+ "-checks=*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-readability*,-google-runtime-references,-hicpp-*,-llvm-*,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*",
"main.cc",
"--",
"-resource-dir=someResourceDir",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -51,6 +52,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
@@ -63,18 +67,19 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -82,6 +87,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
@@ -118,24 +126,25 @@
"cmd": {
"path": "../../usr/bin/clang-tidy",
"args": [
- "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*",
+ "-checks=*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-readability*,-google-runtime-references,-hicpp-*,-llvm-*,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*",
"main.cc",
"--",
"-resource-dir=someResourceDir",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -143,6 +152,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
@@ -156,18 +168,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -175,6 +188,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
@@ -213,24 +229,25 @@
"cmd": {
"path": "../../usr/bin/clang-tidy",
"args": [
- "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*",
+ "-checks=*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-readability*,-google-runtime-references,-hicpp-*,-llvm-*,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*",
"main.cc",
"--",
"-resource-dir=someResourceDir",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -238,6 +255,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
@@ -254,18 +274,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -273,6 +294,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
@@ -312,24 +336,25 @@
"cmd": {
"path": "../../usr/bin/clang-tidy",
"args": [
- "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*",
+ "-checks=*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-readability*,-google-runtime-references,-hicpp-*,-llvm-*,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*",
"main.cc",
"--",
"-resource-dir=someResourceDir",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -337,6 +362,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
@@ -350,18 +378,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -369,6 +398,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
diff --git a/compiler_wrapper/testdata/cros_hardened_golden/force_disable_werror.json b/compiler_wrapper/testdata/cros_hardened_golden/force_disable_werror.json
index f975f452..cd460a79 100644
--- a/compiler_wrapper/testdata/cros_hardened_golden/force_disable_werror.json
+++ b/compiler_wrapper/testdata/cros_hardened_golden/force_disable_werror.json
@@ -20,18 +20,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -39,12 +40,14 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -74,18 +77,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -93,12 +97,14 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -114,18 +120,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -133,13 +140,16 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu",
- "-Wno-error"
+ "-Wno-error",
+ "-Wno-error=poison-system-directories"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -171,18 +181,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -190,12 +201,14 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -211,18 +224,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -230,13 +244,16 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu",
- "-Wno-error"
+ "-Wno-error",
+ "-Wno-error=poison-system-directories"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
diff --git a/compiler_wrapper/testdata/cros_hardened_golden/gcc_clang_syntax.json b/compiler_wrapper/testdata/cros_hardened_golden/gcc_clang_syntax.json
index b9582f6d..c7f619d9 100644
--- a/compiler_wrapper/testdata/cros_hardened_golden/gcc_clang_syntax.json
+++ b/compiler_wrapper/testdata/cros_hardened_golden/gcc_clang_syntax.json
@@ -17,18 +17,19 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -36,6 +37,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu",
@@ -62,7 +66,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -92,18 +95,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -111,6 +115,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu",
@@ -161,18 +168,19 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -180,6 +188,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu",
@@ -214,18 +225,19 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -233,6 +245,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu",
@@ -259,7 +274,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
diff --git a/compiler_wrapper/testdata/cros_hardened_golden/gcc_maincc_target_specific.json b/compiler_wrapper/testdata/cros_hardened_golden/gcc_maincc_target_specific.json
index a037dd10..a45c95f1 100644
--- a/compiler_wrapper/testdata/cros_hardened_golden/gcc_maincc_target_specific.json
+++ b/compiler_wrapper/testdata/cros_hardened_golden/gcc_maincc_target_specific.json
@@ -28,7 +28,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -65,7 +64,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-eabi",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -102,7 +100,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-win-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -138,7 +135,6 @@
"main.cc"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/armv7m-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -174,7 +170,6 @@
"main.cc"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/armv7m-cros-eabi",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -210,7 +205,6 @@
"main.cc"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/armv7m-cros-win-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -246,7 +240,6 @@
"main.cc"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/armv8m-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -282,7 +275,6 @@
"main.cc"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/armv8m-cros-eabi",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -318,7 +310,6 @@
"main.cc"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/armv8m-cros-win-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
diff --git a/compiler_wrapper/testdata/cros_hardened_golden/gcc_path.json b/compiler_wrapper/testdata/cros_hardened_golden/gcc_path.json
index 24ad65ae..36bf222b 100644
--- a/compiler_wrapper/testdata/cros_hardened_golden/gcc_path.json
+++ b/compiler_wrapper/testdata/cros_hardened_golden/gcc_path.json
@@ -28,7 +28,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -68,7 +67,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -108,7 +106,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -145,7 +142,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/tmp/stable/a/b/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -182,7 +178,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/tmp/stable/a/b/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -222,7 +217,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
diff --git a/compiler_wrapper/testdata/cros_hardened_golden/gcc_sanitizer_args.json b/compiler_wrapper/testdata/cros_hardened_golden/gcc_sanitizer_args.json
index a63aa25c..3807d8ab 100644
--- a/compiler_wrapper/testdata/cros_hardened_golden/gcc_sanitizer_args.json
+++ b/compiler_wrapper/testdata/cros_hardened_golden/gcc_sanitizer_args.json
@@ -31,7 +31,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -71,7 +70,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -111,7 +109,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -151,7 +148,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -190,7 +186,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -231,7 +226,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -270,7 +264,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -309,7 +302,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
diff --git a/compiler_wrapper/testdata/cros_hardened_golden/gcc_specific_args.json b/compiler_wrapper/testdata/cros_hardened_golden/gcc_specific_args.json
index b7a56ce4..e8a57b2f 100644
--- a/compiler_wrapper/testdata/cros_hardened_golden/gcc_specific_args.json
+++ b/compiler_wrapper/testdata/cros_hardened_golden/gcc_specific_args.json
@@ -30,7 +30,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -69,7 +68,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -108,7 +106,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
diff --git a/compiler_wrapper/testdata/cros_hardened_golden/gcc_sysroot_wrapper_common.json b/compiler_wrapper/testdata/cros_hardened_golden/gcc_sysroot_wrapper_common.json
index c52003b7..d17707a8 100644
--- a/compiler_wrapper/testdata/cros_hardened_golden/gcc_sysroot_wrapper_common.json
+++ b/compiler_wrapper/testdata/cros_hardened_golden/gcc_sysroot_wrapper_common.json
@@ -63,7 +63,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -134,7 +133,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -171,7 +169,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -207,7 +204,6 @@
"main.cc"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/armv7a-cros-linux-gnueabihf",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -245,7 +241,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
diff --git a/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/bisect.json b/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/bisect.json
index b00f9740..b8e0e462 100644
--- a/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/bisect.json
+++ b/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/bisect.json
@@ -18,27 +18,28 @@
"cmd": {
"path": "/usr/bin/env",
"args": [
- "python",
+ "python3",
"-c",
- "\nimport bisect_driver\nimport shlex\nimport sys\n\ndef ExpandArgs(args, target):\n\tfor arg in args:\n\t\tif arg[0] == '@':\n\t\t\twith open(arg[1:], 'rb') as f:\n\t\t\t\tExpandArgs(shlex.split(f.read()), target)\n\t\telse:\n\t\t\ttarget.append(arg)\n\treturn target\n\nstage = sys.argv[1]\ndir = sys.argv[2]\nexecargs = ExpandArgs(sys.argv[3:], [])\n\nsys.exit(bisect_driver.bisect_driver(stage, dir, execargs))\n",
+ "\nimport bisect_driver\nimport shlex\nimport sys\n\ndef ExpandArgs(args, target):\n\tfor arg in args:\n\t\tif arg[0] == '@':\n\t\t\twith open(arg[1:], 'r', encoding='utf-8') as f:\n\t\t\t\tExpandArgs(shlex.split(f.read()), target)\n\t\telse:\n\t\t\ttarget.append(arg)\n\treturn target\n\nstage = sys.argv[1]\ndir = sys.argv[2]\nexecargs = ExpandArgs(sys.argv[3:], [])\n\nsys.exit(bisect_driver.bisect_driver(stage, dir, execargs))\n",
"someBisectStage",
"/tmp/sysroot_bisect",
"/usr/bin/ccache",
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -46,12 +47,14 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes",
@@ -81,27 +84,28 @@
"cmd": {
"path": "/usr/bin/env",
"args": [
- "python",
+ "python3",
"-c",
- "\nimport bisect_driver\nimport shlex\nimport sys\n\ndef ExpandArgs(args, target):\n\tfor arg in args:\n\t\tif arg[0] == '@':\n\t\t\twith open(arg[1:], 'rb') as f:\n\t\t\t\tExpandArgs(shlex.split(f.read()), target)\n\t\telse:\n\t\t\ttarget.append(arg)\n\treturn target\n\nstage = sys.argv[1]\ndir = sys.argv[2]\nexecargs = ExpandArgs(sys.argv[3:], [])\n\nsys.exit(bisect_driver.bisect_driver(stage, dir, execargs))\n",
+ "\nimport bisect_driver\nimport shlex\nimport sys\n\ndef ExpandArgs(args, target):\n\tfor arg in args:\n\t\tif arg[0] == '@':\n\t\t\twith open(arg[1:], 'r', encoding='utf-8') as f:\n\t\t\t\tExpandArgs(shlex.split(f.read()), target)\n\t\telse:\n\t\t\ttarget.append(arg)\n\treturn target\n\nstage = sys.argv[1]\ndir = sys.argv[2]\nexecargs = ExpandArgs(sys.argv[3:], [])\n\nsys.exit(bisect_driver.bisect_driver(stage, dir, execargs))\n",
"someBisectStage",
"someBisectDir",
"/usr/bin/ccache",
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -109,12 +113,14 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes",
@@ -147,27 +153,28 @@
"cmd": {
"path": "/usr/bin/env",
"args": [
- "python",
+ "python3",
"-c",
- "\nimport bisect_driver\nimport shlex\nimport sys\n\ndef ExpandArgs(args, target):\n\tfor arg in args:\n\t\tif arg[0] == '@':\n\t\t\twith open(arg[1:], 'rb') as f:\n\t\t\t\tExpandArgs(shlex.split(f.read()), target)\n\t\telse:\n\t\t\ttarget.append(arg)\n\treturn target\n\nstage = sys.argv[1]\ndir = sys.argv[2]\nexecargs = ExpandArgs(sys.argv[3:], [])\n\nsys.exit(bisect_driver.bisect_driver(stage, dir, execargs))\n",
+ "\nimport bisect_driver\nimport shlex\nimport sys\n\ndef ExpandArgs(args, target):\n\tfor arg in args:\n\t\tif arg[0] == '@':\n\t\t\twith open(arg[1:], 'r', encoding='utf-8') as f:\n\t\t\t\tExpandArgs(shlex.split(f.read()), target)\n\t\telse:\n\t\t\ttarget.append(arg)\n\treturn target\n\nstage = sys.argv[1]\ndir = sys.argv[2]\nexecargs = ExpandArgs(sys.argv[3:], [])\n\nsys.exit(bisect_driver.bisect_driver(stage, dir, execargs))\n",
"someBisectStage",
"someBisectDir",
"/usr/bin/ccache",
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -175,12 +182,14 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes",
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 6932398b..9780356e 100644
--- a/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/clang_path.json
+++ b/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/clang_path.json
@@ -17,18 +17,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -36,12 +37,14 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -71,18 +74,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -90,12 +94,14 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -125,18 +131,19 @@
"../../usr/bin/clang++",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -144,12 +151,14 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -179,18 +188,19 @@
"somepath/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -198,12 +208,14 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -240,18 +252,19 @@
"/somedir/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -261,12 +274,14 @@
"--gcc-toolchain=/usr",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -306,18 +321,19 @@
"/somedir/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -327,6 +343,9 @@
"--gcc-toolchain=/usr",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
@@ -366,18 +385,19 @@
"/somedir/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -387,12 +407,14 @@
"--gcc-toolchain=/usr",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -422,18 +444,19 @@
"/usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -441,12 +464,14 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -473,18 +498,19 @@
"a/b/usr/bin/clang",
"--sysroot=/tmp/stable/a/b/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -492,12 +518,14 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-Ba/b/bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/tmp/stable/a/b/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -524,18 +552,19 @@
"a/b/usr/bin/clang",
"--sysroot=/tmp/stable/a/b/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -543,12 +572,14 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-Ba/b/bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/tmp/stable/a/b/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -575,18 +606,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -594,12 +626,14 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -629,18 +663,19 @@
"/usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -648,12 +683,14 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
diff --git a/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/clangtidy.json b/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/clangtidy.json
index d75eb527..06e114cb 100644
--- a/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/clangtidy.json
+++ b/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/clangtidy.json
@@ -26,24 +26,25 @@
"cmd": {
"path": "../../usr/bin/clang-tidy",
"args": [
- "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*",
+ "-checks=*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-readability*,-google-runtime-references,-hicpp-*,-llvm-*,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*",
"main.cc",
"--",
"-resource-dir=someResourceDir",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -51,6 +52,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
@@ -63,18 +67,19 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -82,6 +87,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
@@ -118,24 +126,25 @@
"cmd": {
"path": "../../usr/bin/clang-tidy",
"args": [
- "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*",
+ "-checks=*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-readability*,-google-runtime-references,-hicpp-*,-llvm-*,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*",
"main.cc",
"--",
"-resource-dir=someResourceDir",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -143,6 +152,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
@@ -156,18 +168,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -175,6 +188,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
@@ -213,24 +229,25 @@
"cmd": {
"path": "../../usr/bin/clang-tidy",
"args": [
- "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*",
+ "-checks=*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-readability*,-google-runtime-references,-hicpp-*,-llvm-*,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*",
"main.cc",
"--",
"-resource-dir=someResourceDir",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -238,6 +255,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
@@ -254,18 +274,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -273,6 +294,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
@@ -312,24 +336,25 @@
"cmd": {
"path": "../../usr/bin/clang-tidy",
"args": [
- "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*",
+ "-checks=*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-readability*,-google-runtime-references,-hicpp-*,-llvm-*,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*",
"main.cc",
"--",
"-resource-dir=someResourceDir",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -337,6 +362,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
@@ -350,18 +378,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -369,6 +398,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
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 f975f452..cd460a79 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
@@ -20,18 +20,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -39,12 +40,14 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -74,18 +77,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -93,12 +97,14 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -114,18 +120,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -133,13 +140,16 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu",
- "-Wno-error"
+ "-Wno-error",
+ "-Wno-error=poison-system-directories"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -171,18 +181,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -190,12 +201,14 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -211,18 +224,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -230,13 +244,16 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu",
- "-Wno-error"
+ "-Wno-error",
+ "-Wno-error=poison-system-directories"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
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 b9582f6d..c7f619d9 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
@@ -17,18 +17,19 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -36,6 +37,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu",
@@ -62,7 +66,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -92,18 +95,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -111,6 +115,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu",
@@ -161,18 +168,19 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -180,6 +188,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu",
@@ -214,18 +225,19 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -233,6 +245,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu",
@@ -259,7 +274,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
diff --git a/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/gcc_path.json b/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/gcc_path.json
index 24ad65ae..36bf222b 100644
--- a/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/gcc_path.json
+++ b/compiler_wrapper/testdata/cros_hardened_llvmnext_golden/gcc_path.json
@@ -28,7 +28,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -68,7 +67,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -108,7 +106,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -145,7 +142,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/tmp/stable/a/b/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -182,7 +178,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/tmp/stable/a/b/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -222,7 +217,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
diff --git a/compiler_wrapper/testdata/cros_hardened_noccache_golden/bisect.json b/compiler_wrapper/testdata/cros_hardened_noccache_golden/bisect.json
index 5075f843..b53bcc59 100644
--- a/compiler_wrapper/testdata/cros_hardened_noccache_golden/bisect.json
+++ b/compiler_wrapper/testdata/cros_hardened_noccache_golden/bisect.json
@@ -18,26 +18,27 @@
"cmd": {
"path": "/usr/bin/env",
"args": [
- "python",
+ "python3",
"-c",
- "\nimport bisect_driver\nimport shlex\nimport sys\n\ndef ExpandArgs(args, target):\n\tfor arg in args:\n\t\tif arg[0] == '@':\n\t\t\twith open(arg[1:], 'rb') as f:\n\t\t\t\tExpandArgs(shlex.split(f.read()), target)\n\t\telse:\n\t\t\ttarget.append(arg)\n\treturn target\n\nstage = sys.argv[1]\ndir = sys.argv[2]\nexecargs = ExpandArgs(sys.argv[3:], [])\n\nsys.exit(bisect_driver.bisect_driver(stage, dir, execargs))\n",
+ "\nimport bisect_driver\nimport shlex\nimport sys\n\ndef ExpandArgs(args, target):\n\tfor arg in args:\n\t\tif arg[0] == '@':\n\t\t\twith open(arg[1:], 'r', encoding='utf-8') as f:\n\t\t\t\tExpandArgs(shlex.split(f.read()), target)\n\t\telse:\n\t\t\ttarget.append(arg)\n\treturn target\n\nstage = sys.argv[1]\ndir = sys.argv[2]\nexecargs = ExpandArgs(sys.argv[3:], [])\n\nsys.exit(bisect_driver.bisect_driver(stage, dir, execargs))\n",
"someBisectStage",
"/tmp/sysroot_bisect",
"/usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -45,6 +46,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
@@ -76,26 +80,27 @@
"cmd": {
"path": "/usr/bin/env",
"args": [
- "python",
+ "python3",
"-c",
- "\nimport bisect_driver\nimport shlex\nimport sys\n\ndef ExpandArgs(args, target):\n\tfor arg in args:\n\t\tif arg[0] == '@':\n\t\t\twith open(arg[1:], 'rb') as f:\n\t\t\t\tExpandArgs(shlex.split(f.read()), target)\n\t\telse:\n\t\t\ttarget.append(arg)\n\treturn target\n\nstage = sys.argv[1]\ndir = sys.argv[2]\nexecargs = ExpandArgs(sys.argv[3:], [])\n\nsys.exit(bisect_driver.bisect_driver(stage, dir, execargs))\n",
+ "\nimport bisect_driver\nimport shlex\nimport sys\n\ndef ExpandArgs(args, target):\n\tfor arg in args:\n\t\tif arg[0] == '@':\n\t\t\twith open(arg[1:], 'r', encoding='utf-8') as f:\n\t\t\t\tExpandArgs(shlex.split(f.read()), target)\n\t\telse:\n\t\t\ttarget.append(arg)\n\treturn target\n\nstage = sys.argv[1]\ndir = sys.argv[2]\nexecargs = ExpandArgs(sys.argv[3:], [])\n\nsys.exit(bisect_driver.bisect_driver(stage, dir, execargs))\n",
"someBisectStage",
"someBisectDir",
"/usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -103,6 +108,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
@@ -137,26 +145,27 @@
"cmd": {
"path": "/usr/bin/env",
"args": [
- "python",
+ "python3",
"-c",
- "\nimport bisect_driver\nimport shlex\nimport sys\n\ndef ExpandArgs(args, target):\n\tfor arg in args:\n\t\tif arg[0] == '@':\n\t\t\twith open(arg[1:], 'rb') as f:\n\t\t\t\tExpandArgs(shlex.split(f.read()), target)\n\t\telse:\n\t\t\ttarget.append(arg)\n\treturn target\n\nstage = sys.argv[1]\ndir = sys.argv[2]\nexecargs = ExpandArgs(sys.argv[3:], [])\n\nsys.exit(bisect_driver.bisect_driver(stage, dir, execargs))\n",
+ "\nimport bisect_driver\nimport shlex\nimport sys\n\ndef ExpandArgs(args, target):\n\tfor arg in args:\n\t\tif arg[0] == '@':\n\t\t\twith open(arg[1:], 'r', encoding='utf-8') as f:\n\t\t\t\tExpandArgs(shlex.split(f.read()), target)\n\t\telse:\n\t\t\ttarget.append(arg)\n\treturn target\n\nstage = sys.argv[1]\ndir = sys.argv[2]\nexecargs = ExpandArgs(sys.argv[3:], [])\n\nsys.exit(bisect_driver.bisect_driver(stage, dir, execargs))\n",
"someBisectStage",
"someBisectDir",
"/usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -164,6 +173,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
diff --git a/compiler_wrapper/testdata/cros_hardened_noccache_golden/clang_path.json b/compiler_wrapper/testdata/cros_hardened_noccache_golden/clang_path.json
index 096d1aaf..9176e9d7 100644
--- a/compiler_wrapper/testdata/cros_hardened_noccache_golden/clang_path.json
+++ b/compiler_wrapper/testdata/cros_hardened_noccache_golden/clang_path.json
@@ -16,18 +16,19 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -35,6 +36,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
@@ -63,18 +67,19 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -82,6 +87,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
@@ -110,18 +118,19 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -129,6 +138,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
@@ -157,18 +169,19 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -176,6 +189,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
@@ -211,18 +227,19 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -232,6 +249,9 @@
"--gcc-toolchain=/usr",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
@@ -271,18 +291,19 @@
"/somedir/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -292,6 +313,9 @@
"--gcc-toolchain=/usr",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
@@ -330,18 +354,19 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -351,6 +376,9 @@
"--gcc-toolchain=/usr",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
@@ -379,18 +407,19 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -398,6 +427,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
@@ -423,18 +455,19 @@
"args": [
"--sysroot=/tmp/stable/a/b/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -442,6 +475,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-Ba/b/bin",
"-target",
"x86_64-cros-linux-gnu"
@@ -467,18 +503,19 @@
"args": [
"--sysroot=/tmp/stable/a/b/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -486,6 +523,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-Ba/b/bin",
"-target",
"x86_64-cros-linux-gnu"
@@ -511,18 +551,19 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -530,6 +571,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
@@ -558,18 +602,19 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -577,6 +622,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
diff --git a/compiler_wrapper/testdata/cros_hardened_noccache_golden/clangtidy.json b/compiler_wrapper/testdata/cros_hardened_noccache_golden/clangtidy.json
index d75eb527..06e114cb 100644
--- a/compiler_wrapper/testdata/cros_hardened_noccache_golden/clangtidy.json
+++ b/compiler_wrapper/testdata/cros_hardened_noccache_golden/clangtidy.json
@@ -26,24 +26,25 @@
"cmd": {
"path": "../../usr/bin/clang-tidy",
"args": [
- "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*",
+ "-checks=*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-readability*,-google-runtime-references,-hicpp-*,-llvm-*,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*",
"main.cc",
"--",
"-resource-dir=someResourceDir",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -51,6 +52,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
@@ -63,18 +67,19 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -82,6 +87,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
@@ -118,24 +126,25 @@
"cmd": {
"path": "../../usr/bin/clang-tidy",
"args": [
- "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*",
+ "-checks=*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-readability*,-google-runtime-references,-hicpp-*,-llvm-*,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*",
"main.cc",
"--",
"-resource-dir=someResourceDir",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -143,6 +152,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
@@ -156,18 +168,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -175,6 +188,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
@@ -213,24 +229,25 @@
"cmd": {
"path": "../../usr/bin/clang-tidy",
"args": [
- "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*",
+ "-checks=*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-readability*,-google-runtime-references,-hicpp-*,-llvm-*,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*",
"main.cc",
"--",
"-resource-dir=someResourceDir",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -238,6 +255,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
@@ -254,18 +274,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -273,6 +294,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
@@ -312,24 +336,25 @@
"cmd": {
"path": "../../usr/bin/clang-tidy",
"args": [
- "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*",
+ "-checks=*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-readability*,-google-runtime-references,-hicpp-*,-llvm-*,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*",
"main.cc",
"--",
"-resource-dir=someResourceDir",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -337,6 +362,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
@@ -350,18 +378,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -369,6 +398,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
diff --git a/compiler_wrapper/testdata/cros_hardened_noccache_golden/force_disable_werror.json b/compiler_wrapper/testdata/cros_hardened_noccache_golden/force_disable_werror.json
index 59dfb93e..a85e91ee 100644
--- a/compiler_wrapper/testdata/cros_hardened_noccache_golden/force_disable_werror.json
+++ b/compiler_wrapper/testdata/cros_hardened_noccache_golden/force_disable_werror.json
@@ -19,18 +19,19 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -38,6 +39,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
@@ -66,18 +70,19 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -85,6 +90,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
@@ -99,18 +107,19 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -118,10 +127,14 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu",
- "-Wno-error"
+ "-Wno-error",
+ "-Wno-error=poison-system-directories"
]
}
}
@@ -149,18 +162,19 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -168,6 +182,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
@@ -182,18 +199,19 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -201,10 +219,14 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu",
- "-Wno-error"
+ "-Wno-error",
+ "-Wno-error=poison-system-directories"
]
},
"stdout": "somemessage",
diff --git a/compiler_wrapper/testdata/cros_hardened_noccache_golden/gcc_clang_syntax.json b/compiler_wrapper/testdata/cros_hardened_noccache_golden/gcc_clang_syntax.json
index 1bb779f0..fe1e9b35 100644
--- a/compiler_wrapper/testdata/cros_hardened_noccache_golden/gcc_clang_syntax.json
+++ b/compiler_wrapper/testdata/cros_hardened_noccache_golden/gcc_clang_syntax.json
@@ -17,18 +17,19 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -36,6 +37,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu",
@@ -86,18 +90,19 @@
"../../usr/bin/clang",
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -105,6 +110,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu",
@@ -155,18 +163,19 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -174,6 +183,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu",
@@ -208,18 +220,19 @@
"args": [
"--sysroot=/usr/x86_64-cros-linux-gnu",
"-Qunused-arguments",
- "-grecord-gcc-switches",
"-fno-addrsig",
+ "-fcommon",
"-Wno-tautological-constant-compare",
"-Wno-tautological-unsigned-enum-zero-compare",
"-Wno-unknown-warning-option",
"-Wno-section",
"-static-libgcc",
"-fuse-ld=lld",
- "-Wno-reorder-init-list",
"-Wno-final-dtor-non-final-class",
- "-Wno-return-stack-address",
"-Werror=poison-system-directories",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fstack-protector-strong",
"-fPIE",
"-pie",
@@ -227,6 +240,9 @@
"-fno-omit-frame-pointer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu",
diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/bisect.json b/compiler_wrapper/testdata/cros_nonhardened_golden/bisect.json
index cb5dea01..b7e4de39 100644
--- a/compiler_wrapper/testdata/cros_nonhardened_golden/bisect.json
+++ b/compiler_wrapper/testdata/cros_nonhardened_golden/bisect.json
@@ -18,9 +18,9 @@
"cmd": {
"path": "/usr/bin/env",
"args": [
- "python",
+ "python3",
"-c",
- "\nimport bisect_driver\nimport shlex\nimport sys\n\ndef ExpandArgs(args, target):\n\tfor arg in args:\n\t\tif arg[0] == '@':\n\t\t\twith open(arg[1:], 'rb') as f:\n\t\t\t\tExpandArgs(shlex.split(f.read()), target)\n\t\telse:\n\t\t\ttarget.append(arg)\n\treturn target\n\nstage = sys.argv[1]\ndir = sys.argv[2]\nexecargs = ExpandArgs(sys.argv[3:], [])\n\nsys.exit(bisect_driver.bisect_driver(stage, dir, execargs))\n",
+ "\nimport bisect_driver\nimport shlex\nimport sys\n\ndef ExpandArgs(args, target):\n\tfor arg in args:\n\t\tif arg[0] == '@':\n\t\t\twith open(arg[1:], 'r', encoding='utf-8') as f:\n\t\t\t\tExpandArgs(shlex.split(f.read()), target)\n\t\telse:\n\t\t\ttarget.append(arg)\n\treturn target\n\nstage = sys.argv[1]\ndir = sys.argv[2]\nexecargs = ExpandArgs(sys.argv[3:], [])\n\nsys.exit(bisect_driver.bisect_driver(stage, dir, execargs))\n",
"someBisectStage",
"/tmp/sysroot_bisect",
"/usr/bin/ccache",
@@ -32,18 +32,21 @@
"-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",
+ "-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",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes",
@@ -73,9 +76,9 @@
"cmd": {
"path": "/usr/bin/env",
"args": [
- "python",
+ "python3",
"-c",
- "\nimport bisect_driver\nimport shlex\nimport sys\n\ndef ExpandArgs(args, target):\n\tfor arg in args:\n\t\tif arg[0] == '@':\n\t\t\twith open(arg[1:], 'rb') as f:\n\t\t\t\tExpandArgs(shlex.split(f.read()), target)\n\t\telse:\n\t\t\ttarget.append(arg)\n\treturn target\n\nstage = sys.argv[1]\ndir = sys.argv[2]\nexecargs = ExpandArgs(sys.argv[3:], [])\n\nsys.exit(bisect_driver.bisect_driver(stage, dir, execargs))\n",
+ "\nimport bisect_driver\nimport shlex\nimport sys\n\ndef ExpandArgs(args, target):\n\tfor arg in args:\n\t\tif arg[0] == '@':\n\t\t\twith open(arg[1:], 'r', encoding='utf-8') as f:\n\t\t\t\tExpandArgs(shlex.split(f.read()), target)\n\t\telse:\n\t\t\ttarget.append(arg)\n\treturn target\n\nstage = sys.argv[1]\ndir = sys.argv[2]\nexecargs = ExpandArgs(sys.argv[3:], [])\n\nsys.exit(bisect_driver.bisect_driver(stage, dir, execargs))\n",
"someBisectStage",
"someBisectDir",
"/usr/bin/ccache",
@@ -87,18 +90,21 @@
"-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",
+ "-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",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes",
@@ -131,9 +137,9 @@
"cmd": {
"path": "/usr/bin/env",
"args": [
- "python",
+ "python3",
"-c",
- "\nimport bisect_driver\nimport shlex\nimport sys\n\ndef ExpandArgs(args, target):\n\tfor arg in args:\n\t\tif arg[0] == '@':\n\t\t\twith open(arg[1:], 'rb') as f:\n\t\t\t\tExpandArgs(shlex.split(f.read()), target)\n\t\telse:\n\t\t\ttarget.append(arg)\n\treturn target\n\nstage = sys.argv[1]\ndir = sys.argv[2]\nexecargs = ExpandArgs(sys.argv[3:], [])\n\nsys.exit(bisect_driver.bisect_driver(stage, dir, execargs))\n",
+ "\nimport bisect_driver\nimport shlex\nimport sys\n\ndef ExpandArgs(args, target):\n\tfor arg in args:\n\t\tif arg[0] == '@':\n\t\t\twith open(arg[1:], 'r', encoding='utf-8') as f:\n\t\t\t\tExpandArgs(shlex.split(f.read()), target)\n\t\telse:\n\t\t\ttarget.append(arg)\n\treturn target\n\nstage = sys.argv[1]\ndir = sys.argv[2]\nexecargs = ExpandArgs(sys.argv[3:], [])\n\nsys.exit(bisect_driver.bisect_driver(stage, dir, execargs))\n",
"someBisectStage",
"someBisectDir",
"/usr/bin/ccache",
@@ -145,18 +151,21 @@
"-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",
+ "-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",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes",
diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/clang_ftrapv_maincc_target_specific.json b/compiler_wrapper/testdata/cros_nonhardened_golden/clang_ftrapv_maincc_target_specific.json
index ae4a85c3..a9e8b859 100644
--- a/compiler_wrapper/testdata/cros_nonhardened_golden/clang_ftrapv_maincc_target_specific.json
+++ b/compiler_wrapper/testdata/cros_nonhardened_golden/clang_ftrapv_maincc_target_specific.json
@@ -23,19 +23,22 @@
"-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",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-ftrapv",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -68,19 +71,22 @@
"-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",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-ftrapv",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-eabi"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-eabi",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -113,19 +119,22 @@
"-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",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-ftrapv",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-win-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-win-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -158,20 +167,22 @@
"-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",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-mthumb",
"-ftrapv",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv7m-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/armv7m-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -204,19 +215,21 @@
"-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",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-ftrapv",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv7m-cros-eabi"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/armv7m-cros-eabi",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -249,20 +262,22 @@
"-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",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-mthumb",
"-ftrapv",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv7m-cros-win-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/armv7m-cros-win-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -295,20 +310,22 @@
"-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",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-mthumb",
"-ftrapv",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv8m-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/armv8m-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -341,19 +358,21 @@
"-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",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-ftrapv",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv8m-cros-eabi"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/armv8m-cros-eabi",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -386,20 +405,22 @@
"-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",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-mthumb",
"-ftrapv",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv8m-cros-win-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/armv8m-cros-win-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/clang_maincc_target_specific.json b/compiler_wrapper/testdata/cros_nonhardened_golden/clang_maincc_target_specific.json
index bf91b019..bedbd6eb 100644
--- a/compiler_wrapper/testdata/cros_nonhardened_golden/clang_maincc_target_specific.json
+++ b/compiler_wrapper/testdata/cros_nonhardened_golden/clang_maincc_target_specific.json
@@ -22,18 +22,21 @@
"-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",
+ "-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",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -65,18 +68,21 @@
"-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",
+ "-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",
"x86_64-cros-eabi"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-eabi",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -108,18 +114,21 @@
"-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",
+ "-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",
"x86_64-cros-win-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-win-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -151,19 +160,21 @@
"-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",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-mthumb",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv7m-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/armv7m-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -195,18 +206,20 @@
"-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",
+ "-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",
"-B../../bin",
"-target",
"armv7m-cros-eabi"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/armv7m-cros-eabi",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -238,19 +251,21 @@
"-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",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-mthumb",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv7m-cros-win-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/armv7m-cros-win-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -282,19 +297,21 @@
"-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",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-mthumb",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv8m-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/armv8m-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -326,18 +343,20 @@
"-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",
+ "-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",
"-B../../bin",
"-target",
"armv8m-cros-eabi"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/armv8m-cros-eabi",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -369,19 +388,21 @@
"-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",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-mthumb",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv8m-cros-win-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/armv8m-cros-win-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/clang_path.json b/compiler_wrapper/testdata/cros_nonhardened_golden/clang_path.json
index 2f843529..edd40b72 100644
--- a/compiler_wrapper/testdata/cros_nonhardened_golden/clang_path.json
+++ b/compiler_wrapper/testdata/cros_nonhardened_golden/clang_path.json
@@ -22,18 +22,21 @@
"-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",
+ "-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",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -68,18 +71,21 @@
"-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",
+ "-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",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -114,18 +120,21 @@
"-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",
+ "-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",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -160,18 +169,21 @@
"-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",
+ "-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",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -213,20 +225,23 @@
"-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",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-resource-dir=someResourceDir",
"--gcc-toolchain=/usr",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -271,14 +286,18 @@
"-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",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-resource-dir=someResourceDir",
"--gcc-toolchain=/usr",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
@@ -323,20 +342,23 @@
"-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",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-resource-dir=someResourceDir",
"--gcc-toolchain=/usr",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -371,18 +393,21 @@
"-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",
+ "-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",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -414,18 +439,21 @@
"-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",
+ "-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",
"-Ba/b/bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/tmp/stable/a/b/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -457,18 +485,21 @@
"-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",
+ "-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",
"-Ba/b/bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/tmp/stable/a/b/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -500,18 +531,21 @@
"-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",
+ "-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",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -546,18 +580,21 @@
"-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",
+ "-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",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/clang_sanitizer_args.json b/compiler_wrapper/testdata/cros_nonhardened_golden/clang_sanitizer_args.json
index 9cc90057..e10a92b9 100644
--- a/compiler_wrapper/testdata/cros_nonhardened_golden/clang_sanitizer_args.json
+++ b/compiler_wrapper/testdata/cros_nonhardened_golden/clang_sanitizer_args.json
@@ -24,19 +24,22 @@
"-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",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fsanitize=kernel-address",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -70,19 +73,22 @@
"-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",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fsanitize=kernel-address",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -116,19 +122,22 @@
"-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",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fsanitize=kernel-address",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -162,19 +171,22 @@
"-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",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fsanitize=kernel-address",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -207,20 +219,23 @@
"-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",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fno-experimental-new-pass-manager",
"-fsanitize=fuzzer",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -254,21 +269,24 @@
"-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",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fno-experimental-new-pass-manager",
"-fsanitize=address",
"-fprofile-instr-generate",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -301,19 +319,22 @@
"-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",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fsanitize=address",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -346,19 +367,22 @@
"-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",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fprofile-instr-generate",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/clang_specific_args.json b/compiler_wrapper/testdata/cros_nonhardened_golden/clang_specific_args.json
index c1c78dc2..aafdaba0 100644
--- a/compiler_wrapper/testdata/cros_nonhardened_golden/clang_specific_args.json
+++ b/compiler_wrapper/testdata/cros_nonhardened_golden/clang_specific_args.json
@@ -33,18 +33,29 @@
"-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",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
+ "-mno-movbe",
+ "-Wclobbered",
+ "-Wno-psabi",
+ "-Wlogical-op",
+ "-Wmissing-parameter-type",
+ "-Wold-style-declaration",
+ "-Woverride-init",
+ "-Wunsafe-loop-optimizations",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -77,19 +88,22 @@
"-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",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-Wno-#warnings",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -122,19 +136,22 @@
"-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",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-Wno-error=uninitialized",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -167,19 +184,22 @@
"-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",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-Wno-error=unused-variable",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -212,19 +232,22 @@
"-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",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-Wno-unused-variable",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -257,19 +280,22 @@
"-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",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-Wunused-variable",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -302,19 +328,22 @@
"-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",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-someflag",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/clang_sysroot_wrapper_common.json b/compiler_wrapper/testdata/cros_nonhardened_golden/clang_sysroot_wrapper_common.json
index 46c0c832..e094f911 100644
--- a/compiler_wrapper/testdata/cros_nonhardened_golden/clang_sysroot_wrapper_common.json
+++ b/compiler_wrapper/testdata/cros_nonhardened_golden/clang_sysroot_wrapper_common.json
@@ -53,18 +53,21 @@
"-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",
+ "-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",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -99,12 +102,16 @@
"-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",
+ "-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",
"x86_64-cros-linux-gnu"
@@ -137,18 +144,21 @@
"-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",
+ "-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",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -181,20 +191,23 @@
"-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",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-fno-stack-protector",
"-D__KERNEL__",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -227,21 +240,23 @@
"-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",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"-mthumb",
"-fno-stack-protector",
"-D__KERNEL__",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
"-B../../bin",
"-target",
"armv7a-cros-linux-gnueabihf"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/armv7a-cros-linux-gnueabihf",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -273,19 +288,22 @@
"-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",
+ "-fexperimental-new-pass-manager",
+ "-Wno-compound-token-split-by-macro",
+ "-fcrash-diagnostics-dir=/tmp/stable/clang_crash_diagnostics",
"--sysroot=xyz",
"main.cc",
"-Wno-implicit-int-float-conversion",
+ "-Wno-compound-token-split-by-space",
+ "-Wno-string-concatenation",
+ "-mno-movbe",
"-B../../bin",
"-target",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/clangtidy.json b/compiler_wrapper/testdata/cros_nonhardened_golden/clangtidy.json
index 3a15badd..4e6ec630 100644
--- a/compiler_wrapper/testdata/cros_nonhardened_golden/clangtidy.json
+++ b/compiler_wrapper/testdata/cros_nonhardened_golden/clangtidy.json
@@ -26,7 +26,7 @@
"cmd": {
"path": "../../usr/bin/clang-tidy",
"args": [
- "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*",
+ "-checks=*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-readability*,-google-runtime-references,-hicpp-*,-llvm-*,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*",
"main.cc",
"--",
"-resource-dir=someResourceDir",
@@ -37,12 +37,16 @@
"-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",
+ "-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",
"x86_64-cros-linux-gnu"
@@ -60,12 +64,16 @@
"-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",
+ "-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",
"x86_64-cros-linux-gnu"
@@ -102,7 +110,7 @@
"cmd": {
"path": "../../usr/bin/clang-tidy",
"args": [
- "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*",
+ "-checks=*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-readability*,-google-runtime-references,-hicpp-*,-llvm-*,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*",
"main.cc",
"--",
"-resource-dir=someResourceDir",
@@ -113,12 +121,16 @@
"-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",
+ "-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",
"x86_64-cros-linux-gnu"
@@ -137,12 +149,16 @@
"-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",
+ "-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",
"x86_64-cros-linux-gnu"
@@ -181,7 +197,7 @@
"cmd": {
"path": "../../usr/bin/clang-tidy",
"args": [
- "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*",
+ "-checks=*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-readability*,-google-runtime-references,-hicpp-*,-llvm-*,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*",
"main.cc",
"--",
"-resource-dir=someResourceDir",
@@ -192,12 +208,16 @@
"-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",
+ "-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",
"x86_64-cros-linux-gnu"
@@ -219,12 +239,16 @@
"-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",
+ "-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",
"x86_64-cros-linux-gnu"
@@ -264,7 +288,7 @@
"cmd": {
"path": "../../usr/bin/clang-tidy",
"args": [
- "-checks=*,google*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-build-using-namespace,-google-default-arguments,-google-explicit-constructor,-google-readability*,-google-runtime-int,-google-runtime-references,-hicpp-avoid-c-arrays,-hicpp-braces-around-statements,-hicpp-no-array-decay,-hicpp-signed-bitwise,-hicpp-uppercase-literal-suffix,-hicpp-use-auto,-llvm-namespace-comment,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*",
+ "-checks=*,-bugprone-narrowing-conversions,-cppcoreguidelines-*,-fuchsia-*,-google-readability*,-google-runtime-references,-hicpp-*,-llvm-*,-misc-non-private-member-variables-in-classes,-misc-unused-parameters,-modernize-*,-readability-*",
"main.cc",
"--",
"-resource-dir=someResourceDir",
@@ -275,12 +299,16 @@
"-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",
+ "-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",
"x86_64-cros-linux-gnu"
@@ -299,12 +327,16 @@
"-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",
+ "-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",
"x86_64-cros-linux-gnu"
diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/force_disable_werror.json b/compiler_wrapper/testdata/cros_nonhardened_golden/force_disable_werror.json
index 787ce95d..ef266efa 100644
--- a/compiler_wrapper/testdata/cros_nonhardened_golden/force_disable_werror.json
+++ b/compiler_wrapper/testdata/cros_nonhardened_golden/force_disable_werror.json
@@ -25,18 +25,21 @@
"-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",
+ "-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",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -71,18 +74,21 @@
"-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",
+ "-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",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -103,19 +109,23 @@
"-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",
+ "-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",
"x86_64-cros-linux-gnu",
- "-Wno-error"
+ "-Wno-error",
+ "-Wno-error=poison-system-directories"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -152,18 +162,21 @@
"-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",
+ "-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",
"x86_64-cros-linux-gnu"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
@@ -184,19 +197,23 @@
"-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",
+ "-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",
"x86_64-cros-linux-gnu",
- "-Wno-error"
+ "-Wno-error",
+ "-Wno-error=poison-system-directories"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002",
"CCACHE_CPP2=yes"
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..9ea1c01d 100644
--- a/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json
+++ b/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_clang_syntax.json
@@ -22,12 +22,16 @@
"-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",
+ "-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",
"x86_64-cros-linux-gnu",
@@ -50,7 +54,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -85,12 +88,16 @@
"-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",
+ "-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",
"x86_64-cros-linux-gnu",
@@ -142,12 +149,16 @@
"-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",
+ "-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",
"x86_64-cros-linux-gnu",
@@ -187,12 +198,16 @@
"-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",
+ "-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",
"x86_64-cros-linux-gnu",
@@ -215,7 +230,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_maincc_target_specific.json b/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_maincc_target_specific.json
index 5efa5ed6..d11a7413 100644
--- a/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_maincc_target_specific.json
+++ b/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_maincc_target_specific.json
@@ -24,7 +24,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -57,7 +56,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-eabi",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -90,7 +88,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-win-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -123,7 +120,6 @@
"main.cc"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/armv7m-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -155,7 +151,6 @@
"main.cc"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/armv7m-cros-eabi",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -188,7 +183,6 @@
"main.cc"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/armv7m-cros-win-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -221,7 +215,6 @@
"main.cc"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/armv8m-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -253,7 +246,6 @@
"main.cc"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/armv8m-cros-eabi",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -286,7 +278,6 @@
"main.cc"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/armv8m-cros-win-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_path.json b/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_path.json
index 92a261ce..17483eee 100644
--- a/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_path.json
+++ b/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_path.json
@@ -24,7 +24,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -60,7 +59,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -96,7 +94,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -129,7 +126,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/tmp/stable/a/b/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -162,7 +158,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/tmp/stable/a/b/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -198,7 +193,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_sanitizer_args.json b/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_sanitizer_args.json
index 7091f608..4aacc51a 100644
--- a/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_sanitizer_args.json
+++ b/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_sanitizer_args.json
@@ -27,7 +27,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -63,7 +62,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -99,7 +97,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -135,7 +132,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -170,7 +166,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -207,7 +202,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -242,7 +236,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -277,7 +270,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_specific_args.json b/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_specific_args.json
index 6e519429..c2f7cd07 100644
--- a/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_specific_args.json
+++ b/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_specific_args.json
@@ -26,7 +26,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -61,7 +60,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -96,7 +94,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_sysroot_wrapper_common.json b/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_sysroot_wrapper_common.json
index a3cfc34a..be2df4cf 100644
--- a/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_sysroot_wrapper_common.json
+++ b/compiler_wrapper/testdata/cros_nonhardened_golden/gcc_sysroot_wrapper_common.json
@@ -55,7 +55,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -120,7 +119,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -156,7 +154,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -192,7 +189,6 @@
"main.cc"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/armv7a-cros-linux-gnueabihf",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
@@ -226,7 +222,6 @@
"-mno-movbe"
],
"env_updates": [
- "CCACHE_BASEDIR=/usr/x86_64-cros-linux-gnu",
"CCACHE_DIR=/var/cache/distfiles/ccache",
"CCACHE_UMASK=002"
]
diff --git a/compiler_wrapper/testutil_test.go b/compiler_wrapper/testutil_test.go
index 57a68df2..21b7169d 100644
--- a/compiler_wrapper/testutil_test.go
+++ b/compiler_wrapper/testutil_test.go
@@ -17,15 +17,18 @@ import (
"testing"
)
-const mainCc = "main.cc"
-const clangAndroid = "./clang"
-const clangX86_64 = "./x86_64-cros-linux-gnu-clang"
-const gccX86_64 = "./x86_64-cros-linux-gnu-gcc"
-const gccX86_64Eabi = "./x86_64-cros-eabi-gcc"
-const gccArmV7 = "./armv7m-cros-linux-gnu-gcc"
-const gccArmV7Eabi = "./armv7m-cros-eabi-gcc"
-const gccArmV8 = "./armv8m-cros-linux-gnu-gcc"
-const gccArmV8Eabi = "./armv8m-cros-eabi-gcc"
+const (
+ mainCc = "main.cc"
+ clangAndroid = "./clang"
+ clangTidyAndroid = "./clang-tidy"
+ clangX86_64 = "./x86_64-cros-linux-gnu-clang"
+ gccX86_64 = "./x86_64-cros-linux-gnu-gcc"
+ gccX86_64Eabi = "./x86_64-cros-eabi-gcc"
+ gccArmV7 = "./armv7m-cros-linux-gnu-gcc"
+ gccArmV7Eabi = "./armv7m-cros-eabi-gcc"
+ gccArmV8 = "./armv8m-cros-linux-gnu-gcc"
+ gccArmV8Eabi = "./armv8m-cros-eabi-gcc"
+)
type testContext struct {
t *testing.T
@@ -138,6 +141,8 @@ func (ctx *testContext) mustFail(exitCode int) string {
func (ctx *testContext) updateConfig(cfg *config) {
*ctx.cfg = *cfg
ctx.cfg.newWarningsDir = filepath.Join(ctx.tempDir, "fatal_clang_warnings")
+ ctx.cfg.triciumNitsDir = filepath.Join(ctx.tempDir, "tricium_nits")
+ ctx.cfg.crashArtifactsDir = filepath.Join(ctx.tempDir, "clang_crash_diagnostics")
}
func (ctx *testContext) newCommand(path string, args ...string) *command {