diff options
author | android-build-team Robot <android-build-team-robot@google.com> | 2021-06-19 12:04:54 +0000 |
---|---|---|
committer | android-build-team Robot <android-build-team-robot@google.com> | 2021-06-19 12:04:54 +0000 |
commit | 4ac7ca7c4f6d13380afa6b0d52313f0f18765038 (patch) | |
tree | 73936aba47fe1dc71e9cc05af9747036e935608c /compiler_wrapper | |
parent | b75f321fc8978b92ce3db6886ccb966768f0c7a8 (diff) | |
parent | 4e4201457e5f51a132101c611c79ccff9f713c8b (diff) | |
download | toolchain-utils-4ac7ca7c4f6d13380afa6b0d52313f0f18765038.tar.gz |
Snap for 7474514 from 4e4201457e5f51a132101c611c79ccff9f713c8b to mainline-media-releaseandroid-mainline-12.0.0_r89android-mainline-12.0.0_r74android-mainline-12.0.0_r62android-mainline-12.0.0_r46android-mainline-12.0.0_r29android-mainline-12.0.0_r12android-mainline-12.0.0_r119android-mainline-12.0.0_r104android12-mainline-media-release
Change-Id: I2fe70a8ca191c683886391da7cc959d8659fac4c
Diffstat (limited to 'compiler_wrapper')
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 { |