diff options
author | Tobias Bosch <tbosch@google.com> | 2019-07-18 07:34:03 -0700 |
---|---|---|
committer | Tobias Bosch <tbosch@google.com> | 2019-07-22 08:06:42 +0000 |
commit | 31dec2c8cf3e272dc0bd1523e72565d9b2d3bcfb (patch) | |
tree | a032bcc2e6aaf651b79c0a078a9fe65641877099 /compiler_wrapper/testdata | |
parent | e23905c00b38f3a2858018040d73ec402e97c15f (diff) | |
download | toolchain-utils-31dec2c8cf3e272dc0bd1523e72565d9b2d3bcfb.tar.gz |
Support clang host wrapper.
This change adds support for the clang host wrapper.
The implementation is verified via comparing to the old
clang host wrapper in the golden tests.
BUG=chromium:773875
TEST=unit test
Change-Id: I48284736014ab4b66bfd7e31e88ffd23956007bb
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1708750
Tested-by: Tobias Bosch <tbosch@google.com>
Reviewed-by: George Burgess <gbiv@chromium.org>
Diffstat (limited to 'compiler_wrapper/testdata')
-rw-r--r-- | compiler_wrapper/testdata/cros_clang_host_golden.json | 1695 | ||||
-rw-r--r-- | compiler_wrapper/testdata/cros_hardened_golden.json | 62 | ||||
-rw-r--r-- | compiler_wrapper/testdata/cros_nonhardened_golden.json | 60 |
3 files changed, 1766 insertions, 51 deletions
diff --git a/compiler_wrapper/testdata/cros_clang_host_golden.json b/compiler_wrapper/testdata/cros_clang_host_golden.json new file mode 100644 index 00000000..0bb9332c --- /dev/null +++ b/compiler_wrapper/testdata/cros_clang_host_golden.json @@ -0,0 +1,1695 @@ +[ + { + "name": "clang path", + "records": [ + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang++", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang++", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "CLANG=somepath/clang" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "somepath/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-Xclang-path=/somedir", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "--print-resource-dir" + ] + }, + "stdout": "someResourceDir" + }, + { + "cmd": { + "path": "/somedir/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-resource-dir=someResourceDir", + "--gcc-toolchain=/usr", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "GOMACC_PATH=/tmp/stable/gomacc" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-Xclang-path=/somedir", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "--print-resource-dir" + ] + }, + "stdout": "someResourceDir" + }, + { + "cmd": { + "path": "/somedir/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-resource-dir=someResourceDir", + "--gcc-toolchain=/usr", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-Xclang-path=/somedir", + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "--print-resource-dir" + ] + }, + "stdout": "someResourceDir" + }, + { + "cmd": { + "path": "/somedir/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-resource-dir=someResourceDir", + "--gcc-toolchain=/usr", + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + } + ] + } + ] + }, + { + "name": "clang [main.cc] target specific", + "records": [ + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-eabi-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-win-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv7m-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv7m-cros-linux-eabi-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv7m-cros-win-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv8m-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv8m-cros-linux-eabi-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv8m-cros-win-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + } + ] + }, + { + "name": "clang [-ftrapv main.cc] target specific", + "records": [ + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-ftrapv", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-eabi-clang", + "args": [ + "-ftrapv", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-win-gnu-clang", + "args": [ + "-ftrapv", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv7m-cros-linux-gnu-clang", + "args": [ + "-ftrapv", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv7m-cros-linux-eabi-clang", + "args": [ + "-ftrapv", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv7m-cros-win-gnu-clang", + "args": [ + "-ftrapv", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv8m-cros-linux-gnu-clang", + "args": [ + "-ftrapv", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv8m-cros-linux-eabi-clang", + "args": [ + "-ftrapv", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./armv8m-cros-win-gnu-clang", + "args": [ + "-ftrapv", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + } + ] + }, + { + "name": "clang sanitizer args", + "records": [ + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-fsanitize=kernel-address", + "-Wl,--no-undefined", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-fsanitize=kernel-address", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-fsanitize=kernel-address", + "-Wl,-z,defs", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-fsanitize=kernel-address", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-fsanitize=kernel-address", + "-D_FORTIFY_SOURCE=1", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-fsanitize=kernel-address", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-fsanitize=kernel-address", + "-D_FORTIFY_SOURCE=2", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-fsanitize=kernel-address", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-fsanitize=fuzzer", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-fno-experimental-new-pass-manager", + "-fsanitize=fuzzer", + "main.cc" + ] + } + } + ] + } + ] + }, + { + "name": "clang specific args", + "records": [ + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-mno-movbe", + "-pass-exit-codes", + "-Wclobbered", + "-Wno-psabi", + "-Wlogical-op", + "-Wmissing-parameter-type", + "-Wold-style-declaration", + "-Woverride-init", + "-Wunsafe-loop-optimizations", + "-Wstrict-aliasing=abc", + "-finline-limit=abc", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-Wno-error=cpp", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-#warnings", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-Wno-error=maybe-uninitialized", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-error=uninitialized", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-Wno-error=unused-but-set-variable", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-error=unused-variable", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-Wno-unused-but-set-variable", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wno-unused-variable", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-Wunused-but-set-variable", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-Wunused-variable", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "-Xclang-only=-someflag", + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "-someflag", + "main.cc" + ] + } + } + ] + } + ] + }, + { + "name": "bisect", + "records": [ + { + "wd": "/tmp/stable", + "env": [ + "BISECT_STAGE=someBisectStage", + "BISECT_DIR=someBisectDir" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/python2", + "args": [ + "-c", + "import bisect_driver; sys.exit(bisect_driver.bisect_driver(sys.argv[1], sys.argv[2], sys.argv[3:]))", + "someBisectStage", + "someBisectDir", + "/tmp/stable/clang", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "BISECT_STAGE=someBisectStage", + "BISECT_DIR=someBisectDir" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + }, + "cmds": [ + { + "cmd": { + "path": "/usr/bin/python2", + "args": [ + "-c", + "import bisect_driver; sys.exit(bisect_driver.bisect_driver(sys.argv[1], sys.argv[2], sys.argv[3:]))", + "someBisectStage", + "someBisectDir", + "/tmp/stable/clang", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + } + ] + } + ] + }, + { + "name": "force disable werror", + "records": [ + { + "wd": "/tmp/stable", + "env": [ + "FORCE_DISABLE_WERROR=1" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "FORCE_DISABLE_WERROR=1" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + }, + "stderr": "-Werror originalerror", + "exitcode": 1 + }, + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc", + "-Wno-error" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "FORCE_DISABLE_WERROR=1" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + }, + "stderr": "-Werror originalerror", + "exitcode": 1 + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + }, + "stderr": "-Werror originalerror", + "exitcode": 1 + }, + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc", + "-Wno-error" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + } + ] + } + ] + }, + { + "name": "clang-tidy", + "records": [ + { + "wd": "/tmp/stable", + "env": [ + "WITH_TIDY=1" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "--print-resource-dir" + ] + }, + "stdout": "someResourceDir" + }, + { + "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-*", + "main.cc", + "--", + "-resource-dir=someResourceDir", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + }, + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "WITH_TIDY=1", + "GOMACC_PATH=/tmp/stable/gomacc" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + } + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "--print-resource-dir" + ] + }, + "stdout": "someResourceDir" + }, + { + "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-*", + "main.cc", + "--", + "-resource-dir=someResourceDir", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + }, + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "WITH_TIDY=1", + "GOMACC_PATH=/tmp/stable/gomacc" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerrorclang-tidy failed" + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "--print-resource-dir" + ] + }, + "stdout": "someResourceDir" + }, + { + "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-*", + "main.cc", + "--", + "-resource-dir=someResourceDir", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + }, + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + } + ] + }, + { + "wd": "/tmp/stable", + "env": [ + "WITH_TIDY=1", + "GOMACC_PATH=/tmp/stable/gomacc" + ], + "wrapper": { + "cmd": { + "path": "./x86_64-cros-linux-gnu-clang", + "args": [ + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + }, + "cmds": [ + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "--print-resource-dir" + ] + }, + "stdout": "someResourceDir" + }, + { + "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-*", + "main.cc", + "--", + "-resource-dir=someResourceDir", + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + } + }, + { + "cmd": { + "path": "/tmp/stable/clang", + "args": [ + "-Qunused-arguments", + "-grecord-gcc-switches", + "-fno-addrsig", + "-Wno-unused-local-typedefs", + "-Wno-deprecated-declarations", + "-Wno-tautological-constant-compare", + "-Wno-tautological-unsigned-enum-zero-compare", + "-Wno-unknown-warning-option", + "main.cc" + ] + }, + "stdout": "somemessage", + "stderr": "someerror", + "exitcode": 1 + } + ] + } + ] + } +] diff --git a/compiler_wrapper/testdata/cros_hardened_golden.json b/compiler_wrapper/testdata/cros_hardened_golden.json index e80cd882..1b318f7b 100644 --- a/compiler_wrapper/testdata/cros_hardened_golden.json +++ b/compiler_wrapper/testdata/cros_hardened_golden.json @@ -605,8 +605,7 @@ "cmd": { "path": "./x86_64-cros-linux-gnu-gcc", "args": [ - "-fsanitize=kernel-address", - "-Wl,--no-undefined", + "--sysroot=xyz", "main.cc" ] } @@ -617,7 +616,6 @@ "path": "/usr/bin/ccache", "args": [ "./x86_64-cros-linux-gnu-gcc.real", - "--sysroot=/usr/x86_64-cros-linux-gnu", "-fno-reorder-blocks-and-partition", "-Wno-unused-local-typedefs", "-Wno-maybe-uninitialized", @@ -626,7 +624,7 @@ "-pie", "-D_FORTIFY_SOURCE=2", "-fno-omit-frame-pointer", - "-fsanitize=kernel-address", + "--sysroot=xyz", "main.cc", "-mno-movbe" ], @@ -638,7 +636,12 @@ } } ] - }, + } + ] + }, + { + "name": "gcc sanitizer args", + "records": [ { "wd": "/tmp/stable", "wrapper": { @@ -646,7 +649,7 @@ "path": "./x86_64-cros-linux-gnu-gcc", "args": [ "-fsanitize=kernel-address", - "-Wl,-z,defs", + "-Wl,--no-undefined", "main.cc" ] } @@ -686,7 +689,7 @@ "path": "./x86_64-cros-linux-gnu-gcc", "args": [ "-fsanitize=kernel-address", - "-D_FORTIFY_SOURCE=1", + "-Wl,-z,defs", "main.cc" ] } @@ -726,7 +729,7 @@ "path": "./x86_64-cros-linux-gnu-gcc", "args": [ "-fsanitize=kernel-address", - "-D_FORTIFY_SOURCE=2", + "-D_FORTIFY_SOURCE=1", "main.cc" ] } @@ -765,7 +768,8 @@ "cmd": { "path": "./x86_64-cros-linux-gnu-gcc", "args": [ - "-fsanitize=fuzzer", + "-fsanitize=kernel-address", + "-D_FORTIFY_SOURCE=2", "main.cc" ] } @@ -785,7 +789,7 @@ "-pie", "-D_FORTIFY_SOURCE=2", "-fno-omit-frame-pointer", - "-fsanitize=fuzzer", + "-fsanitize=kernel-address", "main.cc", "-mno-movbe" ], @@ -804,7 +808,7 @@ "cmd": { "path": "./x86_64-cros-linux-gnu-gcc", "args": [ - "--sysroot=xyz", + "-fsanitize=fuzzer", "main.cc" ] } @@ -815,6 +819,7 @@ "path": "/usr/bin/ccache", "args": [ "./x86_64-cros-linux-gnu-gcc.real", + "--sysroot=/usr/x86_64-cros-linux-gnu", "-fno-reorder-blocks-and-partition", "-Wno-unused-local-typedefs", "-Wno-maybe-uninitialized", @@ -823,7 +828,7 @@ "-pie", "-D_FORTIFY_SOURCE=2", "-fno-omit-frame-pointer", - "--sysroot=xyz", + "-fsanitize=fuzzer", "main.cc", "-mno-movbe" ], @@ -2638,8 +2643,7 @@ "cmd": { "path": "./x86_64-cros-linux-gnu-clang", "args": [ - "-fsanitize=kernel-address", - "-Wl,--no-undefined", + "--sysroot=xyz", "main.cc" ] } @@ -2650,7 +2654,6 @@ "path": "/usr/bin/ccache", "args": [ "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", "-Qunused-arguments", "-grecord-gcc-switches", "-fno-addrsig", @@ -2662,8 +2665,9 @@ "-fstack-protector-strong", "-fPIE", "-pie", + "-D_FORTIFY_SOURCE=2", "-fno-omit-frame-pointer", - "-fsanitize=kernel-address", + "--sysroot=xyz", "main.cc", "-B../../bin", "-target", @@ -2678,7 +2682,12 @@ } } ] - }, + } + ] + }, + { + "name": "clang sanitizer args", + "records": [ { "wd": "/tmp/stable", "wrapper": { @@ -2686,7 +2695,7 @@ "path": "./x86_64-cros-linux-gnu-clang", "args": [ "-fsanitize=kernel-address", - "-Wl,-z,defs", + "-Wl,--no-undefined", "main.cc" ] } @@ -2733,7 +2742,7 @@ "path": "./x86_64-cros-linux-gnu-clang", "args": [ "-fsanitize=kernel-address", - "-D_FORTIFY_SOURCE=1", + "-Wl,-z,defs", "main.cc" ] } @@ -2780,7 +2789,7 @@ "path": "./x86_64-cros-linux-gnu-clang", "args": [ "-fsanitize=kernel-address", - "-D_FORTIFY_SOURCE=2", + "-D_FORTIFY_SOURCE=1", "main.cc" ] } @@ -2826,7 +2835,8 @@ "cmd": { "path": "./x86_64-cros-linux-gnu-clang", "args": [ - "-fsanitize=fuzzer", + "-fsanitize=kernel-address", + "-D_FORTIFY_SOURCE=2", "main.cc" ] } @@ -2850,8 +2860,7 @@ "-fPIE", "-pie", "-fno-omit-frame-pointer", - "-fno-experimental-new-pass-manager", - "-fsanitize=fuzzer", + "-fsanitize=kernel-address", "main.cc", "-B../../bin", "-target", @@ -2873,7 +2882,7 @@ "cmd": { "path": "./x86_64-cros-linux-gnu-clang", "args": [ - "--sysroot=xyz", + "-fsanitize=fuzzer", "main.cc" ] } @@ -2884,6 +2893,7 @@ "path": "/usr/bin/ccache", "args": [ "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", "-Qunused-arguments", "-grecord-gcc-switches", "-fno-addrsig", @@ -2895,9 +2905,9 @@ "-fstack-protector-strong", "-fPIE", "-pie", - "-D_FORTIFY_SOURCE=2", "-fno-omit-frame-pointer", - "--sysroot=xyz", + "-fno-experimental-new-pass-manager", + "-fsanitize=fuzzer", "main.cc", "-B../../bin", "-target", diff --git a/compiler_wrapper/testdata/cros_nonhardened_golden.json b/compiler_wrapper/testdata/cros_nonhardened_golden.json index 05cacadb..059ce2c4 100644 --- a/compiler_wrapper/testdata/cros_nonhardened_golden.json +++ b/compiler_wrapper/testdata/cros_nonhardened_golden.json @@ -550,8 +550,7 @@ "cmd": { "path": "./x86_64-cros-linux-gnu-gcc", "args": [ - "-fsanitize=kernel-address", - "-Wl,--no-undefined", + "--sysroot=xyz", "main.cc" ] } @@ -562,12 +561,11 @@ "path": "/usr/bin/ccache", "args": [ "./x86_64-cros-linux-gnu-gcc.real", - "--sysroot=/usr/x86_64-cros-linux-gnu", "-Wno-maybe-uninitialized", "-Wno-unused-local-typedefs", "-Wno-deprecated-declarations", "-Wtrampolines", - "-fsanitize=kernel-address", + "--sysroot=xyz", "main.cc", "-mno-movbe" ], @@ -579,7 +577,12 @@ } } ] - }, + } + ] + }, + { + "name": "gcc sanitizer args", + "records": [ { "wd": "/tmp/stable", "wrapper": { @@ -587,7 +590,7 @@ "path": "./x86_64-cros-linux-gnu-gcc", "args": [ "-fsanitize=kernel-address", - "-Wl,-z,defs", + "-Wl,--no-undefined", "main.cc" ] } @@ -623,7 +626,7 @@ "path": "./x86_64-cros-linux-gnu-gcc", "args": [ "-fsanitize=kernel-address", - "-D_FORTIFY_SOURCE=1", + "-Wl,-z,defs", "main.cc" ] } @@ -659,7 +662,7 @@ "path": "./x86_64-cros-linux-gnu-gcc", "args": [ "-fsanitize=kernel-address", - "-D_FORTIFY_SOURCE=2", + "-D_FORTIFY_SOURCE=1", "main.cc" ] } @@ -694,7 +697,8 @@ "cmd": { "path": "./x86_64-cros-linux-gnu-gcc", "args": [ - "-fsanitize=fuzzer", + "-fsanitize=kernel-address", + "-D_FORTIFY_SOURCE=2", "main.cc" ] } @@ -710,7 +714,7 @@ "-Wno-unused-local-typedefs", "-Wno-deprecated-declarations", "-Wtrampolines", - "-fsanitize=fuzzer", + "-fsanitize=kernel-address", "main.cc", "-mno-movbe" ], @@ -729,7 +733,7 @@ "cmd": { "path": "./x86_64-cros-linux-gnu-gcc", "args": [ - "--sysroot=xyz", + "-fsanitize=fuzzer", "main.cc" ] } @@ -740,11 +744,12 @@ "path": "/usr/bin/ccache", "args": [ "./x86_64-cros-linux-gnu-gcc.real", + "--sysroot=/usr/x86_64-cros-linux-gnu", "-Wno-maybe-uninitialized", "-Wno-unused-local-typedefs", "-Wno-deprecated-declarations", "-Wtrampolines", - "--sysroot=xyz", + "-fsanitize=fuzzer", "main.cc", "-mno-movbe" ], @@ -2313,8 +2318,7 @@ "cmd": { "path": "./x86_64-cros-linux-gnu-clang", "args": [ - "-fsanitize=kernel-address", - "-Wl,--no-undefined", + "--sysroot=xyz", "main.cc" ] } @@ -2325,14 +2329,13 @@ "path": "/usr/bin/ccache", "args": [ "../../usr/bin/clang", - "--sysroot=/usr/x86_64-cros-linux-gnu", "-Qunused-arguments", "-Wno-tautological-constant-compare", "-Wno-tautological-unsigned-enum-zero-compare", "-Wno-unknown-warning-option", "-Wno-section", "-static-libgcc", - "-fsanitize=kernel-address", + "--sysroot=xyz", "main.cc", "-B../../bin", "-target", @@ -2347,7 +2350,12 @@ } } ] - }, + } + ] + }, + { + "name": "clang sanitizer args", + "records": [ { "wd": "/tmp/stable", "wrapper": { @@ -2355,7 +2363,7 @@ "path": "./x86_64-cros-linux-gnu-clang", "args": [ "-fsanitize=kernel-address", - "-Wl,-z,defs", + "-Wl,--no-undefined", "main.cc" ] } @@ -2396,7 +2404,7 @@ "path": "./x86_64-cros-linux-gnu-clang", "args": [ "-fsanitize=kernel-address", - "-D_FORTIFY_SOURCE=1", + "-Wl,-z,defs", "main.cc" ] } @@ -2437,7 +2445,7 @@ "path": "./x86_64-cros-linux-gnu-clang", "args": [ "-fsanitize=kernel-address", - "-D_FORTIFY_SOURCE=2", + "-D_FORTIFY_SOURCE=1", "main.cc" ] } @@ -2477,7 +2485,8 @@ "cmd": { "path": "./x86_64-cros-linux-gnu-clang", "args": [ - "-fsanitize=fuzzer", + "-fsanitize=kernel-address", + "-D_FORTIFY_SOURCE=2", "main.cc" ] } @@ -2495,8 +2504,7 @@ "-Wno-unknown-warning-option", "-Wno-section", "-static-libgcc", - "-fno-experimental-new-pass-manager", - "-fsanitize=fuzzer", + "-fsanitize=kernel-address", "main.cc", "-B../../bin", "-target", @@ -2518,7 +2526,7 @@ "cmd": { "path": "./x86_64-cros-linux-gnu-clang", "args": [ - "--sysroot=xyz", + "-fsanitize=fuzzer", "main.cc" ] } @@ -2529,13 +2537,15 @@ "path": "/usr/bin/ccache", "args": [ "../../usr/bin/clang", + "--sysroot=/usr/x86_64-cros-linux-gnu", "-Qunused-arguments", "-Wno-tautological-constant-compare", "-Wno-tautological-unsigned-enum-zero-compare", "-Wno-unknown-warning-option", "-Wno-section", "-static-libgcc", - "--sysroot=xyz", + "-fno-experimental-new-pass-manager", + "-fsanitize=fuzzer", "main.cc", "-B../../bin", "-target", |