aboutsummaryrefslogtreecommitdiff
path: root/compiler_wrapper/testdata
diff options
context:
space:
mode:
authorTobias Bosch <tbosch@google.com>2019-07-18 07:34:03 -0700
committerTobias Bosch <tbosch@google.com>2019-07-22 08:06:42 +0000
commit31dec2c8cf3e272dc0bd1523e72565d9b2d3bcfb (patch)
treea032bcc2e6aaf651b79c0a078a9fe65641877099 /compiler_wrapper/testdata
parente23905c00b38f3a2858018040d73ec402e97c15f (diff)
downloadtoolchain-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.json1695
-rw-r--r--compiler_wrapper/testdata/cros_hardened_golden.json62
-rw-r--r--compiler_wrapper/testdata/cros_nonhardened_golden.json60
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",